ManoMotion Unity SDK 2.0
SDK documentation
Loading...
Searching...
No Matches
ManoMotion.ManoMotionManager Class Reference

The ManomotionManager handles the communication with the SDK.

Inheritance diagram for ManoMotion.ManoMotionManager:
ManoMotion.ManoMotionManagerBase

Public Member Functions

void StopProcessing ()
 Stops the SDK from processing.
 
- Public Member Functions inherited from ManoMotion.ManoMotionManagerBase
void ShouldCalculateSkeleton3D (bool condition)
 Lets the SDK know if it should calculate the Skeleton in 3D or 2D. And gives information to SkeletonManager which skeleton model to display.
 
void ShouldCalculateGestures (bool condition)
 Lets the SDK know that it needs to calculate the Gestures.
 
void ShouldRunFastMode (bool condition)
 Lets the SDK know if it should run fast mode or not.
 
void ShouldRunWristInfo (bool condition)
 Lets the SDK know if it should calculate wrist information.
 
void ShouldRunFingerInfo (bool condition)
 Lets the SDK know if it should calculate finger information. 4 will run the finger_info for the ring finger, 0 is off.
 
void ToggleFingerInfoFinger (int index)
 Toggle wich finger to use for the finger information. 0 = off 1 = Thumb 2 = Index 3 = Middle 4 = Ring 5 = Pinky.
 
bool TryGetHandInfo (LeftOrRightHand leftRight, out HandInfo handInfo)
 Returns true and gives back the hand info of the left/right hand specified.
 
bool TryGetHandInfo (LeftOrRightHand leftRight, out HandInfo handInfo, out int handIndex)
 Returns true and gives back the hand info of the left/right hand specified.
 
void SetProcessingType (ProcessingType processingType)
 
void ToggleProcessingType ()
 

Protected Member Functions

override void Awake ()
 
virtual void OnEnable ()
 
virtual void OnDisable ()
 
void HandleAddOnSet (AddOn addon)
 Gets the correct manomotion_session addon from the inputManager.
 
void ProcessFrameNoThreading (ManoMotionFrame frame)
 Processes the current frame and updates the handInfos.
 
void HandleManoMotionFrameInitializedPointer (Texture2D image, int splittingFactor)
 Set camera frame pointer for the SDK to process with multithreading.
 
void ProcessFrame ()
 Gets the updated information from the SDK when using multithreading.
 
virtual void HandleNewFrame (ManoMotionFrame newFrame)
 Respond to the event of a ManoMotionFrame being updated. Processes the image if runMultithreading is false.
 
void HandleManomotionFrameUpdated (ManoMotionFrame newFrame)
 Handles changes to Manomotion frame.
 
void HandleOrientationChanged ()
 Updates the orientation information as captured from the device to the Session.
 
- Protected Member Functions inherited from ManoMotion.ManoMotionManagerBase
static void initSetup (int imageFormat, ref AssetStatus status)
 
static void initSetupWithKey (ManoSettings settings, ref AssetStatus status)
 
static void stop ()
 
static void SetTextureFromUnity (IntPtr textureHandleLeft, int width, int height, int splittingFactor)
 
static IntPtr GetRenderEventFunc ()
 Tell the SDK to process the current frame.
 
static int copyHandInfo (ref HandInfo first_hand_info, ref HandInfo second_hand_info, ref Session manomotion_session)
 
static void processFrameTwoHands (ref HandInfo first_hand_info, ref HandInfo second_hand_info, ref Session manomotion_session)
 
static void setLeftFrameArray (Color32[] frame)
 
static void setResolution (int width, int height)
 
static void getPerformanceInfo (ref int processingTime, ref int getImageTime)
 
void Init ()
 
void CalculateFPSAndProcessingTime ()
 Calculates the Frames Per Second in the application and retrieves the estimated Processing time.
 
void CalculateProcessingTime ()
 Calculates the elapses time needed for processing the frame.
 
virtual void SetResolutionValues (int width, int height)
 Sets the resolution values used throughout the initialization methods of the arrays and textures.
 

Static Protected Attributes

static ManoMotionManager instance
 
- Static Protected Attributes inherited from ManoMotion.ManoMotionManagerBase
const string library = "manomotion"
 

Properties

static ManoMotionManager Instance [get]
 
- Properties inherited from ManoMotion.ManoMotionManagerBase
int ProcessingTime [get]
 
int Fps [get]
 
int Width [get]
 
int Height [get]
 
float Version [get]
 
ref VisualizationInfo VisualizationInfo [get]
 
HandInfo[] HandInfos [get]
 
AssetStatus LicenseStatus [get]
 
Session ManomotionSession [get]
 
InputManagerBase InputManager [get]
 

Private Member Functions

IEnumerator Process ()
 
void Update ()
 

Private Attributes

IntPtr renderEventFunc
 

Additional Inherited Members

- Public Attributes inherited from ManoMotion.ManoMotionManagerBase
float oneEuroFilterSmoothing
 Smoothing value.
 
- Static Public Attributes inherited from ManoMotion.ManoMotionManagerBase
static Action OnManoMotionFrameProcessed
 Sends information after each frame is processed by the SDK.
 
static Action OnManoMotionLicenseInitialized
 Sends information after the license is checked by the SDK.
 
static Action< SkeletonModelOnSkeletonActivated
 Sends information when changing between 2D and 3D joints.
 
static Action< float > OnSmoothingValueChanged
 Sends information when changing the smoothing value.
 
- Protected Attributes inherited from ManoMotion.ManoMotionManagerBase
ProcessingType processingType = ProcessingType.Async
 
Session manomotionSession
 
HandInfo[] handInfos
 
bool overrideLicense
 
string customLicense
 
AssetStatus status
 
ManoSettings settings
 
float version
 
InputManagerBase inputManager
 
ManoMotionFrame currentManomotionFrame
 Information about camera image(s)
 
VisualizationInfo visualizationInfo
 
int width
 
int height
 
int fps
 
int processingTime
 
float fpsUpdateTimer = 0
 
int frameCount = 0
 
List< int > processingTimeList = new List<int>()
 

Member Function Documentation

◆ Awake()

override void ManoMotion.ManoMotionManager.Awake ( )
inlineprotectedvirtual

Reimplemented from ManoMotion.ManoMotionManagerBase.

◆ HandleAddOnSet()

void ManoMotion.ManoMotionManager.HandleAddOnSet ( AddOn addon)
inlineprotected
Parameters
addonThe addon used with the inputManager

◆ HandleManoMotionFrameInitializedPointer()

void ManoMotion.ManoMotionManager.HandleManoMotionFrameInitializedPointer ( Texture2D image,
int splittingFactor )
inlineprotected

◆ HandleManomotionFrameUpdated()

void ManoMotion.ManoMotionManager.HandleManomotionFrameUpdated ( ManoMotionFrame newFrame)
inlineprotected
Parameters
newFrameThe new frame to process

◆ HandleNewFrame()

virtual void ManoMotion.ManoMotionManager.HandleNewFrame ( ManoMotionFrame newFrame)
inlineprotectedvirtual
Parameters
newFrameThe new camera frame

◆ HandleOrientationChanged()

void ManoMotion.ManoMotionManager.HandleOrientationChanged ( )
inlineprotected

◆ OnDisable()

virtual void ManoMotion.ManoMotionManager.OnDisable ( )
inlineprotectedvirtual

◆ OnEnable()

virtual void ManoMotion.ManoMotionManager.OnEnable ( )
inlineprotectedvirtual

◆ Process()

IEnumerator ManoMotion.ManoMotionManager.Process ( )
inlineprivate

◆ ProcessFrame()

void ManoMotion.ManoMotionManager.ProcessFrame ( )
inlineprotected

◆ ProcessFrameNoThreading()

void ManoMotion.ManoMotionManager.ProcessFrameNoThreading ( ManoMotionFrame frame)
inlineprotected

◆ StopProcessing()

void ManoMotion.ManoMotionManager.StopProcessing ( )
inline

◆ Update()

void ManoMotion.ManoMotionManager.Update ( )
inlineprivate

Member Data Documentation

◆ instance

ManoMotionManager ManoMotion.ManoMotionManager.instance
staticprotected

◆ renderEventFunc

IntPtr ManoMotion.ManoMotionManager.renderEventFunc
private

Property Documentation

◆ Instance

ManoMotionManager ManoMotion.ManoMotionManager.Instance
staticget