Hermes SDK Documentation
CoreSdkWrapperTypes.h
1 #ifndef H_CORESDKWRAPPERTYPES
2 #define H_CORESDKWRAPPERTYPES
3 
4 // Set up a Doxygen group.
9 #ifdef __cplusplus
10 extern "C"
11 {
12 #endif
13 
14 #include <stdint.h>
15 
16 /******************************************************************************
17  * Preprocessor defines.
18  *****************************************************************************/
19 
24 #define NUM_FINGERS_ON_HAND 5
25 #define NUM_PHALANGES_IN_FINGER 3
30 #define NUM_FLEX_SEGMENTS_PER_FINGER 2
35 #define NUM_BONES_IN_POLYGON_SKELETON (eBONETYPE_RIGHT_HAND + 1)
40 #define MAX_NUM_IMUS_ON_GLOVE (NUM_FINGERS_ON_HAND + 1)
45 #define FLEX_SENSOR_MCP 0
51 #define FLEX_SENSOR_PIP 1
57 #define MAX_NUM_USERS 32
62 // Host name length is based on a post made here:
63 // https://community.cisco.com/t5/other-network-architecture/maximum-length-hostname/td-p/529327
64 // Which in turn was based on: https://www.ietf.org/rfc/rfc1035.txt
69 #define MAX_NUM_CHARS_IN_HOST_NAME 256
70 #define MAX_NUM_CHARS_IN_IP_ADDRESS 40
77 #define MAX_NUM_CHARS_IN_TRACKER_ID 32
82 #define MAX_NUM_CHARS_IN_TARGET_ID 32
87 #define MAX_NUM_CHARS_IN_VERSION 16
92 
94 #define UNINITIALISED_ID 0
95 
96 /******************************************************************************
97  * Enums.
98  *****************************************************************************/
99 
101 typedef enum
102 {
105 
108 
111 
115 
118 
121 
124 
127 
130 
133 
136 
139 
143 
148 typedef uint32_t WrapperReturnCode_t;
149 
151 typedef enum
152 {
155 
158 
162 
168 typedef enum
169 {
172 
175 
179 
181 typedef enum
182 {
185 
189 
192 
196 
201 typedef enum
202 {
205 
208 
211 
215 
220 typedef enum
221 {
222  eBONETYPE_ROOT,
223  eBONETYPE_HEAD,
224  eBONETYPE_NECK,
225  eBONETYPE_HIPS,
226  eBONETYPE_SPINE,
227  eBONETYPE_CHEST,
228  eBONETYPE_UPPER_CHEST,
229  eBONETYPE_LEFT_UPPER_LEG,
230  eBONETYPE_RIGHT_UPPER_LEG,
231  eBONETYPE_LEFT_LOWER_LEG,
232  eBONETYPE_RIGHT_LOWER_LEG,
233  eBONETYPE_LEFT_FOOT,
234  eBONETYPE_RIGHT_FOOT,
235  eBONETYPE_LEFT_TOES,
236  eBONETYPE_RIGHT_TOES,
237  eBONETYPE_LEFT_TOES_END,
238  eBONETYPE_RIGHT_TOES_END,
239  eBONETYPE_LEFT_SHOULDER,
240  eBONETYPE_RIGHT_SHOULDER,
241  eBONETYPE_LEFT_UPPER_ARM,
242  eBONETYPE_RIGHT_UPPER_ARM,
243  eBONETYPE_LEFT_LOWER_ARM,
244  eBONETYPE_RIGHT_LOWER_ARM,
245  eBONETYPE_LEFT_HAND,
246  eBONETYPE_RIGHT_HAND
247 } BoneType;
248 
250 typedef enum
251 {
254 
257 
263 
265 typedef enum
266 {
267  eTRACKERTYPE_UNKNOWN,
268  eTRACKERTYPE_HEAD,
269  eTRACKERTYPE_WAIST,
270  eTRACKERTYPE_LEFT_HAND,
271  eTRACKERTYPE_RIGHT_HAND,
272  eTRACKERTYPE_LEFT_FOOT,
273  eTRACKERTYPE_RIGHT_FOOT,
274  eTRACKERTYPE_LEFT_UPPER_ARM,
275  eTRACKERTYPE_RIGHT_UPPER_ARM,
276  eTRACKERTYPE_LEFT_UPPER_LEG,
277  eTRACKERTYPE_RIGHT_UPPER_LEG,
278  eTRACKERTYPE_CONTROLLER,
279  eTRACKERTYPE_CAMERA
280 } TrackerType;
281 
286 typedef uint32_t TrackerType_t;
287 
288 /******************************************************************************
289  * Structs.
290  *****************************************************************************/
291 
293 typedef struct ManusVec3
294 {
295  float x = 0.0f;
296  float y = 0.0f;
297  float z = 0.0f;
299 
301 typedef struct ManusQuaternion
302 {
303  float w = 1.0f;
304  float x = 0.0f;
305  float y = 0.0f;
306  float z = 0.0f;
308 
310 typedef struct ManusVersion
311 {
312  char m_String[MAX_NUM_CHARS_IN_VERSION];
314 
317 {
323  bool m_DataIsAvailable = false;
324 
326  uint32_t m_BatteryPercentage = 0;
327 
332 
334 typedef struct ManusRawData
335 {
340 
348 
350 typedef struct ManusWristTransform
351 {
354 
355  ManusVec3 m_Position;
356  ManusQuaternion m_Orientation;
358 
360 typedef struct ManusProcessedData
361 {
364 
369 
376 
391 
406 
408 typedef struct GloveData
409 {
410  int64_t m_LastUpdateTime = 0;
411 
412  uint32_t m_GloveId = UNINITIALISED_ID;
413  uint32_t m_DongleId = UNINITIALISED_ID;
415 
416  LessFrequentlySentData m_LowFrequencyData;
417  ManusRawData m_Raw;
418  ManusProcessedData m_Processed;
420 
422 typedef struct RetargetingSettings
423 {
424  // Hip
426  float m_MatchSameSpeed = 0.0f;
434  float m_HipHeightMultiplier = 1.0f;
435 
436  // Legs
437  float m_LegWidth = 0.0f;
438  float m_KneeRotation = 0.0f;
439 
440  // Arms
441  float m_ShoulderForwardOffset = 0.0f;
442  float m_ShoulderHeightOffset = 0.0f;
443 
444  float m_ShoulderForwardRotationMultiplier = 1.0f;
445  float m_ShoulderHeightRotationMultiplier = 1.0f;
446 
447  float m_ElbowRotation = 0.0f;
448  HandLocalTo m_HandLocalPosition = HandLocalTo::eHANDLOCALTO_ARMS;
449  HandLocalTo m_HandLocalRotation = HandLocalTo::eHANDLOCALTO_ROOT;
450 
451  float m_ArmSpacing = 0.0f;
452  float m_ArmLengthMultiplier = 1.0f;
453  float m_ArmIK = 0.0f;
454  bool m_HandRotationLocal = false;
455 
456  // HandIK
457  float m_HandForwardOffset = 0.0f;
458  float m_HandWidthOffset = 0.0f;
459  float m_HandHeightOffset = 0.0f;
460 
461  float m_HandForwardMultiplier = 1.0f;
462  float m_HandWidthMultiplier = 1.0f;
463  float m_HandHeightMultiplier = 1.0f;
464 
465  // Spine
466  float m_DefaultHipBend = 0.0f;
467  float m_DefaultSpineBend = 0.0f;
468  float m_DefaultNeckBend = 0.0f;
469 
470  float m_SpineBendMultiplier = 1.0f;
471  float m_SpineAngleMultiplier = 1.0f;
472  float m_SpineTwistMultiplier = 1.0f;
474 
477 {
478  uint32_t m_ID = 0;
479  RetargetingSettings m_Settings;
481 
483 typedef struct PolygonBone
484 {
491 
492  ManusQuaternion m_Rotation;
493  ManusVec3 m_Position;
494  float m_Scale;
496 
498 typedef struct TargetSkeletonTarget
499 {
500  char m_String[MAX_NUM_CHARS_IN_TARGET_ID];
501 
503 
505 typedef struct BodyEstimationTarget
506 {
507  int32_t m_UserIndex;
509 
511 typedef struct PolygonTarget
512 {
515 
522 
527 
529 
531 typedef struct PolygonTargetArgs
532 {
533  uint32_t m_SkeletonID;
534  PolygonTarget m_Target;
536 
538 typedef struct PolygonSkeletonData
539 {
540  int64_t m_LastUpdateTime = 0;
541 
550  uint32_t m_UserIndex = 0;
551 
552  uint32_t m_SkeletonId = 0;
553 
555 
560  bool m_ScaleToUser = false;
561 
563  float m_Height = 1.8f;
564 
567 
569 
571 typedef struct RemoveSkeletonArgs
572 {
573  uint32_t m_SkeletonID;
575 
576 /******************************************************************************
577  * Tracking
578  *****************************************************************************/
579 
581 typedef struct TrackerId
582 {
583  char m_String[MAX_NUM_CHARS_IN_TRACKER_ID];
585 
587 typedef struct TrackerData
588 {
589  int64_t m_LastUpdateTime = 0;
590 
591  TrackerId m_TrackerId;
592 
601  int32_t m_UserIndex = 0;
602 
603  bool m_IsHmd = false;
604  TrackerType_t m_Type = TrackerType::eTRACKERTYPE_UNKNOWN;
605 
606  ManusQuaternion m_Rotation;
607  ManusVec3 m_Position;
609 
614 typedef struct ManusHost
615 {
616  char m_HostName[MAX_NUM_CHARS_IN_HOST_NAME];
617  char m_IpAddress[MAX_NUM_CHARS_IN_IP_ADDRESS];
619 
620 // Callbacks
621 typedef void(*ConnectedToCoreCallback_t)(void);
622 typedef void(*DisconnectedFromCoreCallback_t)(void);
623 
624 #ifdef __cplusplus
625 } // extern "C"
626 #endif
627 
628 // Close the Doxygen group.
631 #endif // #ifndef H_CORESDKWRAPPERTYPES
ManusVersion
struct ManusVersion ManusVersion
Stores a single version string.
WrapperReturnCode
WrapperReturnCode
The return values that can be given by SDK wrapper functions.
Definition: CoreSdkWrapperTypes.h:102
WrapperReturnCode_t
uint32_t WrapperReturnCode_t
The type used for the return values of SDK wrapper functions.
Definition: CoreSdkWrapperTypes.h:148
ManusProcessedData::m_Joints
ManusQuaternion m_Joints[NUM_FINGERS_ON_HAND][NUM_PHALANGES_IN_FINGER]
Orientation of skeletal joints, from thumb to pinky.
Definition: CoreSdkWrapperTypes.h:375
eHANDLOCALTO_ROOT
@ eHANDLOCALTO_ROOT
Hand rotation and translation is relative to the skeleton's root.
Definition: CoreSdkWrapperTypes.h:204
eCORESDKWRAPPER_SDK_NOT_AVAILABLE
@ eCORESDKWRAPPER_SDK_NOT_AVAILABLE
The Core SDK is not available.
Definition: CoreSdkWrapperTypes.h:120
ePOLYGONTARGETCASE_BODYESTIMATION
@ ePOLYGONTARGETCASE_BODYESTIMATION
The Polygon skeleton will be generated from tracking data.
Definition: CoreSdkWrapperTypes.h:256
PolygonSkeletonData::m_Target
PolygonTarget m_Target
Polygon retargeting target.
Definition: CoreSdkWrapperTypes.h:566
PolygonTarget::m_BodyEstimationTarget
BodyEstimationTarget m_BodyEstimationTarget
The target for body estimation targeting.
Definition: CoreSdkWrapperTypes.h:526
TrackerData
struct TrackerData TrackerData
All the tracker data that can be sent or received.
MAX_NUM_CHARS_IN_VERSION
#define MAX_NUM_CHARS_IN_VERSION
Used to descriptively refer to the maximum version string length.
Definition: CoreSdkWrapperTypes.h:91
eHANDLOCALTO_ARMS
@ eHANDLOCALTO_ARMS
Hand rotation and translation is relative to the skeleton's arms.
Definition: CoreSdkWrapperTypes.h:213
eHANDTYPE_LEFT_HAND
@ eHANDTYPE_LEFT_HAND
Selects the left hand.
Definition: CoreSdkWrapperTypes.h:157
TargetSkeletonTarget
struct TargetSkeletonTarget TargetSkeletonTarget
Stores the name of a skeleton target.
MAX_NUM_IMUS_ON_GLOVE
#define MAX_NUM_IMUS_ON_GLOVE
Used to descriptively refer to the maximum IMUs count on a glove.
Definition: CoreSdkWrapperTypes.h:44
BodyEstimationTarget
struct BodyEstimationTarget BodyEstimationTarget
Stores the target to be used for body estimation.
eHANDLOCALTO_HIPS
@ eHANDLOCALTO_HIPS
Hand rotation and translation is relative to the skeleton's hips.
Definition: CoreSdkWrapperTypes.h:207
NUM_FINGERS_ON_HAND
#define NUM_FINGERS_ON_HAND
Used to descriptively refer to the number of fingers on a hand.
Definition: CoreSdkWrapperTypes.h:24
ManusVersion
Stores a single version string.
Definition: CoreSdkWrapperTypes.h:311
ManusHost
struct ManusHost ManusHost
Contains information for connecting to a host running Manus Core.
LessFrequentlySentData::m_TransmissionStrengthInDb
int32_t m_TransmissionStrengthInDb
The strength of the glove's signal. The lower, the better.
Definition: CoreSdkWrapperTypes.h:329
PolygonBone
struct PolygonBone PolygonBone
Polygon data for a single bone.
GloveData
All data for a single glove.
Definition: CoreSdkWrapperTypes.h:409
MAX_NUM_USERS
#define MAX_NUM_USERS
Used to descriptively refer to the maximum number of Polygon users.
Definition: CoreSdkWrapperTypes.h:61
ManusQuaternion
A quaternion, used for rotations.
Definition: CoreSdkWrapperTypes.h:302
PolygonBone
Polygon data for a single bone.
Definition: CoreSdkWrapperTypes.h:484
PolygonTargetCase
PolygonTargetCase
The different targets a Polygon skeleton can have.
Definition: CoreSdkWrapperTypes.h:251
TrackerType
TrackerType
The different types of trackers that can be used.
Definition: CoreSdkWrapperTypes.h:266
eCORESDKWRAPPER_SUCCESS
@ eCORESDKWRAPPER_SUCCESS
No issues occurred.
Definition: CoreSdkWrapperTypes.h:104
ManusWristTransform
struct ManusWristTransform ManusWristTransform
Processed transform of the wrist computed from tracker data.
PolygonTargetArgs
struct PolygonTargetArgs PolygonTargetArgs
Contains everything needed to set a Polygon target.
PolygonTarget::m_TargetSkeletonTarget
TargetSkeletonTarget m_TargetSkeletonTarget
The name, if any, of what is being targeted.
Definition: CoreSdkWrapperTypes.h:521
HandType
HandType
Used to tell what hand is being referred to.
Definition: CoreSdkWrapperTypes.h:152
LessFrequentlySentData
struct LessFrequentlySentData LessFrequentlySentData
All the glove data that is sent at a lower rate than other data.
eCORESDKWRAPPER_INTERNAL_ERROR
@ eCORESDKWRAPPER_INTERNAL_ERROR
Something went wrong in the SDK internally.
Definition: CoreSdkWrapperTypes.h:132
RetargetingSettings
struct RetargetingSettings RetargetingSettings
Polygon retargeting settings.
GloveData
struct GloveData GloveData
All data for a single glove.
NUM_BONES_IN_POLYGON_SKELETON
#define NUM_BONES_IN_POLYGON_SKELETON
Used to descriptively refer to the number of Polygon skeleton bones.
Definition: CoreSdkWrapperTypes.h:39
eGLOVETYPE_INVALID
@ eGLOVETYPE_INVALID
An invalid value used for uninitialised variables.
Definition: CoreSdkWrapperTypes.h:184
TrackerData::m_UserIndex
int32_t m_UserIndex
The Polygon user number this data belongs to.
Definition: CoreSdkWrapperTypes.h:601
PolygonSkeletonData::m_UserIndex
uint32_t m_UserIndex
The Polygon user number this data belongs to.
Definition: CoreSdkWrapperTypes.h:550
MAX_NUM_CHARS_IN_TRACKER_ID
#define MAX_NUM_CHARS_IN_TRACKER_ID
Used to descriptively refer to the maximum tracker name length.
Definition: CoreSdkWrapperTypes.h:81
MAX_NUM_CHARS_IN_TARGET_ID
#define MAX_NUM_CHARS_IN_TARGET_ID
Used to descriptively refer to the maximum target name length.
Definition: CoreSdkWrapperTypes.h:86
ClientType
ClientType
Used to tell what client is using the wrapper.
Definition: CoreSdkWrapperTypes.h:169
eCORESDKWRAPPER_FUNCTION_CALLED_AT_WRONG_TIME
@ eCORESDKWRAPPER_FUNCTION_CALLED_AT_WRONG_TIME
The function was not intended to be called at this time.
Definition: CoreSdkWrapperTypes.h:135
PolygonTarget
struct PolygonTarget PolygonTarget
Stores the target used for Polygon.
PolygonSkeletonData
struct PolygonSkeletonData PolygonSkeletonData
All the skeleton data that can be sent to or received from Polygon.
eCORESDKWRAPPER_DATA_NOT_AVAILABLE
@ eCORESDKWRAPPER_DATA_NOT_AVAILABLE
The data requested is not available.
Definition: CoreSdkWrapperTypes.h:126
ePOLYGONTARGETCASE_TARGETSKELETON
@ ePOLYGONTARGETCASE_TARGETSKELETON
Used to retarget on an existing skeleton.
Definition: CoreSdkWrapperTypes.h:261
eCLIENTTYPE_UNREAL
@ eCLIENTTYPE_UNREAL
Make data work for Unreal.
Definition: CoreSdkWrapperTypes.h:177
LessFrequentlySentData::m_BatteryPercentage
uint32_t m_BatteryPercentage
The current charge of the battery.
Definition: CoreSdkWrapperTypes.h:326
TrackerData
All the tracker data that can be sent or received.
Definition: CoreSdkWrapperTypes.h:588
PolygonSkeletonData::m_Height
float m_Height
The height of the skeleton.
Definition: CoreSdkWrapperTypes.h:563
ManusRawData::m_Imus
ManusQuaternion m_Imus[MAX_NUM_IMUS_ON_GLOVE]
IMU rotations.
Definition: CoreSdkWrapperTypes.h:346
ManusHost
Contains information for connecting to a host running Manus Core.
Definition: CoreSdkWrapperTypes.h:615
eCORESDKWRAPPER_ARGUMENT_SIZE_MISMATCH
@ eCORESDKWRAPPER_ARGUMENT_SIZE_MISMATCH
Definition: CoreSdkWrapperTypes.h:114
TrackerId
struct TrackerId TrackerId
Stores the name of a tracker.
ManusVec3
A 3D vector, used for translations.
Definition: CoreSdkWrapperTypes.h:294
LessFrequentlySentData::m_DataIsAvailable
bool m_DataIsAvailable
If the data in this struct can be used yet.
Definition: CoreSdkWrapperTypes.h:323
RetargetingSettings
Polygon retargeting settings.
Definition: CoreSdkWrapperTypes.h:423
RetargetingSettings::m_HipHeightMultiplier
float m_HipHeightMultiplier
Change the height of the skeleton's hips.
Definition: CoreSdkWrapperTypes.h:434
PolygonBone::m_ContainsValidBoneData
bool m_ContainsValidBoneData
Can be used to ignore some bones when sending Polygon data.
Definition: CoreSdkWrapperTypes.h:490
ManusWristTransform::m_DataIsAvailable
bool m_DataIsAvailable
If the data in this struct can be used yet.
Definition: CoreSdkWrapperTypes.h:353
PolygonTargetArgs
Contains everything needed to set a Polygon target.
Definition: CoreSdkWrapperTypes.h:532
eCORESDKWRAPPER_NOT_CONNECTED
@ eCORESDKWRAPPER_NOT_CONNECTED
No connection to Core was made.
Definition: CoreSdkWrapperTypes.h:138
NUM_FLEX_SEGMENTS_PER_FINGER
#define NUM_FLEX_SEGMENTS_PER_FINGER
Used to descriptively refer to the number of flex sensor segments.
Definition: CoreSdkWrapperTypes.h:34
eCLIENTTYPE_MOTIONBUILDER
@ eCLIENTTYPE_MOTIONBUILDER
Make data work for MotionBuilder.
Definition: CoreSdkWrapperTypes.h:174
eCORESDKWRAPPER_INVALID_ARGUMENT
@ eCORESDKWRAPPER_INVALID_ARGUMENT
One of the arguments given had an invalid value.
Definition: CoreSdkWrapperTypes.h:110
ManusProcessedData::m_WristImu
ManusQuaternion m_WristImu
Orientation of the wrist computed from the wrist IMU.
Definition: CoreSdkWrapperTypes.h:363
ManusVec3
struct ManusVec3 ManusVec3
A 3D vector, used for translations.
eGLOVETYPE_PRIME_ONE
@ eGLOVETYPE_PRIME_ONE
A Prime One glove.
Definition: CoreSdkWrapperTypes.h:191
RemoveSkeletonArgs
Data required for the removal of a skeleton.
Definition: CoreSdkWrapperTypes.h:572
eCORESDKWRAPPER_UNSUPPORTED_STRING_SIZE_ENCOUNTERED
@ eCORESDKWRAPPER_UNSUPPORTED_STRING_SIZE_ENCOUNTERED
A string of an unsupported size was encountered.
Definition: CoreSdkWrapperTypes.h:117
eHANDLOCALTO_SPINE
@ eHANDLOCALTO_SPINE
Hand rotation and translation is relative to the skeleton's spine.
Definition: CoreSdkWrapperTypes.h:210
PolygonTarget
Stores the target used for Polygon.
Definition: CoreSdkWrapperTypes.h:512
eCORESDKWRAPPER_MEMORY_ERROR
@ eCORESDKWRAPPER_MEMORY_ERROR
Failed to allocate memory for something.
Definition: CoreSdkWrapperTypes.h:129
RetargetingSettings::m_MatchSameSpeed
float m_MatchSameSpeed
Compensate for skeleton size in movement speed.
Definition: CoreSdkWrapperTypes.h:426
UNINITIALISED_ID
#define UNINITIALISED_ID
The value given to glove and dongle IDs when they are uninitialised.
Definition: CoreSdkWrapperTypes.h:94
MAX_NUM_CHARS_IN_HOST_NAME
#define MAX_NUM_CHARS_IN_HOST_NAME
Used to descriptively refer to the maximum host name length.
Definition: CoreSdkWrapperTypes.h:69
ManusWristTransform
Processed transform of the wrist computed from tracker data.
Definition: CoreSdkWrapperTypes.h:351
BodyEstimationTarget
Stores the target to be used for body estimation.
Definition: CoreSdkWrapperTypes.h:506
ManusRawData::m_FlexSensor
float m_FlexSensor[NUM_FINGERS_ON_HAND][NUM_FLEX_SEGMENTS_PER_FINGER]
Flex sensor values, from thumb to pinky.
Definition: CoreSdkWrapperTypes.h:339
TrackerId
Stores the name of a tracker.
Definition: CoreSdkWrapperTypes.h:582
ManusRawData
struct ManusRawData ManusRawData
Raw, unprocessed glove data.
RemoveSkeletonArgs
struct RemoveSkeletonArgs RemoveSkeletonArgs
Data required for the removal of a skeleton.
eGLOVETYPE_APOLLO_LEGACY
@ eGLOVETYPE_APOLLO_LEGACY
Definition: CoreSdkWrapperTypes.h:188
ManusProcessedData::m_Stretch
float m_Stretch[NUM_FINGERS_ON_HAND][NUM_PHALANGES_IN_FINGER]
Finger bending values, from thumb to pinky.
Definition: CoreSdkWrapperTypes.h:388
PolygonSkeletonData::m_ScaleToUser
bool m_ScaleToUser
Scale the skeleton to calibrated proportions for VR.
Definition: CoreSdkWrapperTypes.h:560
ManusProcessedData::m_SpreadDegrees
float m_SpreadDegrees[NUM_FINGERS_ON_HAND]
Finger spreading values in degrees, from thumb to pinky.
Definition: CoreSdkWrapperTypes.h:404
ePOLYGONTARGETCASE_NONE
@ ePOLYGONTARGETCASE_NONE
An invalid value used for uninitialised variables.
Definition: CoreSdkWrapperTypes.h:253
BoneType
BoneType
All the bones in a skeleton that Polygon handles.
Definition: CoreSdkWrapperTypes.h:221
ManusProcessedData::m_WristTransforms
ManusWristTransform m_WristTransforms[MAX_NUM_USERS]
Transform of the wrist computed from tracker data.
Definition: CoreSdkWrapperTypes.h:368
NUM_PHALANGES_IN_FINGER
#define NUM_PHALANGES_IN_FINGER
Used to descriptively refer to the number of phalanges in a finger.
Definition: CoreSdkWrapperTypes.h:29
ManusRawData
Raw, unprocessed glove data.
Definition: CoreSdkWrapperTypes.h:335
TrackerType_t
uint32_t TrackerType_t
Used instead of TrackerType enum values to ensure a known data size.
Definition: CoreSdkWrapperTypes.h:286
RetargetingSettingsArgs
A wrapper for Polygon retargeting settings.
Definition: CoreSdkWrapperTypes.h:477
ManusProcessedData
struct ManusProcessedData ManusProcessedData
Processed glove data, based on the raw data.
HandLocalTo
HandLocalTo
Used when retargeting to select what the hand is relative to.
Definition: CoreSdkWrapperTypes.h:202
LessFrequentlySentData
All the glove data that is sent at a lower rate than other data.
Definition: CoreSdkWrapperTypes.h:317
ManusProcessedData
Processed glove data, based on the raw data.
Definition: CoreSdkWrapperTypes.h:361
GloveType
GloveType
Types of gloves that data can be received from.
Definition: CoreSdkWrapperTypes.h:182
eCLIENTTYPE_INVALID
@ eCLIENTTYPE_INVALID
An invalid value used for uninitialised variables.
Definition: CoreSdkWrapperTypes.h:171
ManusProcessedData::m_Spread
float m_Spread[NUM_FINGERS_ON_HAND]
Finger spreading values, from thumb to pinky.
Definition: CoreSdkWrapperTypes.h:402
eHANDTYPE_RIGHT_HAND
@ eHANDTYPE_RIGHT_HAND
Selects the right hand.
Definition: CoreSdkWrapperTypes.h:160
MAX_NUM_CHARS_IN_IP_ADDRESS
#define MAX_NUM_CHARS_IN_IP_ADDRESS
Used to descriptively refer to the maximum IP address length.
Definition: CoreSdkWrapperTypes.h:76
TargetSkeletonTarget
Stores the name of a skeleton target.
Definition: CoreSdkWrapperTypes.h:499
ManusProcessedData::m_StretchDegrees
float m_StretchDegrees[NUM_FINGERS_ON_HAND][NUM_PHALANGES_IN_FINGER]
Finger stretch values in degrees, from thumb to pinky.
Definition: CoreSdkWrapperTypes.h:390
ManusQuaternion
struct ManusQuaternion ManusQuaternion
A quaternion, used for rotations.
RetargetingSettingsArgs
struct RetargetingSettingsArgs RetargetingSettingsArgs
A wrapper for Polygon retargeting settings.
PolygonTarget::m_TargetCase
PolygonTargetCase m_TargetCase
The kind of targeting to use.
Definition: CoreSdkWrapperTypes.h:514
eCORESDKWRAPPER_CONNECTION_TIMEOUT
@ eCORESDKWRAPPER_CONNECTION_TIMEOUT
The connection with Core timed out.
Definition: CoreSdkWrapperTypes.h:141
eCORESDKWRAPPER_ERROR
@ eCORESDKWRAPPER_ERROR
Something went wrong, but no specific reason can be given.
Definition: CoreSdkWrapperTypes.h:107
PolygonSkeletonData
All the skeleton data that can be sent to or received from Polygon.
Definition: CoreSdkWrapperTypes.h:539
eGLOVETYPE_PRIME_TWO
@ eGLOVETYPE_PRIME_TWO
A Prime II glove.
Definition: CoreSdkWrapperTypes.h:194
eHANDTYPE_INVALID
@ eHANDTYPE_INVALID
An invalid value used for uninitialised variables.
Definition: CoreSdkWrapperTypes.h:154
eCORESDKWRAPPER_HOST_FINDER_NOT_AVAILABLE
@ eCORESDKWRAPPER_HOST_FINDER_NOT_AVAILABLE
The network host finder is not available.
Definition: CoreSdkWrapperTypes.h:123