C++ SDK for MANUS Core 2.0
Loading...
Searching...
No Matches
ManusSDK.h
Go to the documentation of this file.
1#ifndef _MANUS_SDK_H_
2#define _MANUS_SDK_H_
3
4// Set up a Doxygen group.
9#ifdef __cplusplus
10extern "C"
11{
12#endif
13
14#include "ManusSDKTypes.h"
16
17#include <stdint.h>
18
19#ifdef _WIN32
20 // CORESDKWRAPPER_EXPORTS defines if the functions are exported to or
21 // imported from a DLL.
22#ifdef CORESDKWRAPPER_EXPORTS
23#define CORESDK_API __declspec(dllexport)
24#else
25#define CORESDK_API __declspec(dllimport)
26#endif
27#elif defined(__linux__)
28#define CORESDK_API
29#else
30#error Unrecognized platform.
31#endif
32
33 /******************************************************************************
34 * Wrapper startup and shutdown.
35 *****************************************************************************/
36
42 CORESDK_API SDKReturnCode CoreSdk_Initialize(SessionType p_TypeOfSession);
43
49
50 /******************************************************************************
51 * Utility functions.
52 *****************************************************************************/
53
57 CORESDK_API SDKReturnCode CoreSdk_WasDllBuiltInDebugConfiguration(bool* p_WasBuiltInDebugConfiguration);
58
64
70
71
72 /******************************************************************************
73 * Connection handling.
74 *****************************************************************************/
75
84 CORESDK_API SDKReturnCode CoreSdk_LookForHosts(uint32_t p_WaitSeconds = 1, bool p_LoopbackOnly = false);
85
92 CORESDK_API SDKReturnCode CoreSdk_GetNumberOfAvailableHostsFound(uint32_t* p_NumberOfAvailableHostsFound);
93
108 CORESDK_API SDKReturnCode CoreSdk_GetAvailableHostsFound(ManusHost* p_AvailableHostsFound, const uint32_t p_NumberOfHostsThatFitInArray);
109
110
116 CORESDK_API SDKReturnCode CoreSdk_GetIsConnectedToCore(bool* p_ConnectedToCore);
117
122
131
139 CORESDK_API SDKReturnCode CoreSdk_InitializeCoordinateSystemWithVUH(CoordinateSystemVUH p_CoordinateSystem, bool p_UseWorldCoordinates);
140
148 CORESDK_API SDKReturnCode CoreSdk_InitializeCoordinateSystemWithDirection(CoordinateSystemDirection p_CoordinateSystem, bool p_UseWorldCoordinates);
149
157 CORESDK_API SDKReturnCode CoreSdk_GetVersionsAndCheckCompatibility(ManusVersion* p_SdkVersion, ManusVersion* p_CoreVersion, bool* p_AreVersionsCompatible);
158
164 CORESDK_API SDKReturnCode CoreSdk_GetSessionId(uint32_t* p_SessionId);
165
171
177
183
189
195
201
202 /******************************************************************************
203 * Basic glove interaction.
204 *****************************************************************************/
205
214 CORESDK_API SDKReturnCode CoreSdk_VibrateFingers(uint32_t p_DongleId, Side p_HandType, const float* p_Powers);
215
224 CORESDK_API SDKReturnCode CoreSdk_VibrateFingersForSkeleton(uint32_t p_SkeletonId, Side p_HandType, const float* p_Powers);
225
235 CORESDK_API SDKReturnCode CoreSdk_GetGloveIdOfUser_UsingUserId(uint32_t p_UserId, Side p_HandType, uint32_t* p_GloveId);
236
243 CORESDK_API SDKReturnCode CoreSdk_GetNumberOfAvailableGloves(uint32_t* p_NumberOfAvailableGloves);
244
255 CORESDK_API SDKReturnCode CoreSdk_GetIdsOfAvailableGloves(uint32_t* p_IdsOfAvailableGloves, uint32_t p_NumberOfIdsThatFitInArray);
256
264 CORESDK_API SDKReturnCode CoreSdk_GetGlovesForDongle(uint32_t p_DongleId, uint32_t* p_LeftGloveId, uint32_t* p_RightGloveId);
265
273 CORESDK_API SDKReturnCode CoreSdk_GetDataForGlove_UsingGloveId(uint32_t p_GloveId, GloveLandscapeData* p_GloveData);
274
282 CORESDK_API SDKReturnCode CoreSdk_GetDataForDongle(uint32_t p_DongleId, DongleLandscapeData* p_DongleData);
283
290 CORESDK_API SDKReturnCode CoreSdk_GetNumberOfDongles(uint32_t* p_NumberOfDongles);
291
302 CORESDK_API SDKReturnCode CoreSdk_GetDongleIds(uint32_t* p_DongleIds, uint32_t p_NumberOfIdsThatFitInArray);
303
304 /******************************************************************************
305 * Haptics module.
306 *****************************************************************************/
307
314 CORESDK_API SDKReturnCode CoreSdk_GetNumberOfHapticsDongles(uint32_t* p_NumberOfHapticsDongles);
315
326 CORESDK_API SDKReturnCode CoreSdk_GetHapticsDongleIds(uint32_t* p_HapticsDongleIds, uint32_t p_NumberOfIdsThatFitInArray);
327
328 /******************************************************************************
329 * Users.
330 *****************************************************************************/
331
340 CORESDK_API SDKReturnCode CoreSdk_GetNumberOfAvailableUsers(uint32_t* p_NumberOfAvailableUsers);
341
353 CORESDK_API SDKReturnCode CoreSdk_GetIdsOfAvailableUsers(uint32_t* p_IdsOfAvailableUsers, uint32_t p_NumberOfIdsThatFitInArray);
354
355 /******************************************************************************
356 * Tracking.
357 *****************************************************************************/
358
365 CORESDK_API SDKReturnCode CoreSdk_GetNumberOfAvailableTrackers(uint32_t* p_NumberOfAvailableTrackers);
366
378 CORESDK_API SDKReturnCode CoreSdk_GetIdsOfAvailableTrackers(TrackerId* p_IdsOfAvailableTrackers, uint32_t p_NumberOfIdsThatFitInArray);
379
387 CORESDK_API SDKReturnCode CoreSdk_GetNumberOfAvailableTrackersForUserId(uint32_t* p_NumberOfAvailableTrackers, uint32_t p_UserId);
388
401 CORESDK_API SDKReturnCode CoreSdk_GetIdsOfAvailableTrackersForUserId(TrackerId* p_IdsOfAvailableTrackers, uint32_t p_UserId, uint32_t p_NumberOfIdsThatFitInArray);
402
411
420 CORESDK_API SDKReturnCode CoreSdk_GetDataForTracker_UsingIdAndType(uint32_t p_UserId, uint32_t p_TrackerType, TrackerData* p_TrackerData);
421
431 CORESDK_API SDKReturnCode CoreSdk_SendDataForTrackers(const TrackerData* p_TrackerData, uint32_t p_NumberOfTrackers);
432
433 /******************************************************************************
434 * Skeletal System.
435 *****************************************************************************/
436
444 CORESDK_API SDKReturnCode CoreSdk_GetSkeletonInfo(uint32_t p_SkeletonIndex, SkeletonInfo* p_Info);
445
457 CORESDK_API SDKReturnCode CoreSdk_GetSkeletonData(uint32_t p_SkeletonIndex, SkeletonNode* p_Nodes, uint32_t p_NodeCount);
458
468 CORESDK_API SDKReturnCode CoreSdk_DoesSkeletonGloveSupportHaptics(uint32_t p_SkeletonId, Side p_HandType, bool* p_IsHaptics);
469 /******************************************************************************
470 * Skeletal System Setup.
471 *****************************************************************************/
472
481 CORESDK_API SDKReturnCode CoreSdk_CreateSkeletonSetup(SkeletonSetupInfo p_Skeleton, uint32_t* p_SkeletonSetupIndex);
482
490 CORESDK_API SDKReturnCode CoreSdk_AddNodeToSkeletonSetup(uint32_t p_SkeletonSetupIndex, NodeSetup p_Node);
491
499 CORESDK_API SDKReturnCode CoreSdk_AddChainToSkeletonSetup(uint32_t p_SkeletonSetupIndex, ChainSetup p_Chain);
500
508 CORESDK_API SDKReturnCode CoreSdk_AddColliderToSkeletonSetup(uint32_t p_SkeletonSetupIndex, ColliderSetup p_Collider);
509
518 CORESDK_API SDKReturnCode CoreSdk_AddMeshSetupToSkeletonSetup(uint32_t p_SkeletonSetupIndex, uint32_t p_NodeID, uint32_t* p_MeshSetupIndex);
519
528 CORESDK_API SDKReturnCode CoreSdk_AddVertexToMeshSetup(uint32_t p_SkeletonSetupIndex, uint32_t p_MeshSetupIndex, Vertex p_Vertex);
529
530
539 CORESDK_API SDKReturnCode CoreSdk_AddTriangleToMeshSetup(uint32_t p_SkeletonSetupIndex, uint32_t p_MeshSetupIndex, Triangle p_Triangle);
540
550 CORESDK_API SDKReturnCode CoreSdk_OverwriteSkeletonSetup(uint32_t p_SkeletonSetupIndex, SkeletonSetupInfo p_SkeletonSetup);
551
559 CORESDK_API SDKReturnCode CoreSdk_OverwriteChainToSkeletonSetup(uint32_t p_SkeletonSetupIndex, ChainSetup p_Chain);
560
568 CORESDK_API SDKReturnCode CoreSdk_OverwriteNodeToSkeletonSetup(uint32_t p_SkeletonSetupIndex, NodeSetup p_Node);
569
577 CORESDK_API SDKReturnCode CoreSdk_GetSkeletonSetupArraySizes(uint32_t p_SkeletonSetupIndex, SkeletonSetupArraySizes* p_SkeletonInfo);
578
586 CORESDK_API SDKReturnCode CoreSdk_AllocateChainsForSkeletonSetup(uint32_t p_SkeletonSetupIndex);
587
595 CORESDK_API SDKReturnCode CoreSdk_GetSkeletonSetupInfo(uint32_t p_SkeletonSetupIndex, SkeletonSetupInfo* p_SDK);
596
608 CORESDK_API SDKReturnCode CoreSdk_GetSkeletonSetupChains(uint32_t p_SkeletonSetupIndex, ChainSetup* p_SDK);
609
621 CORESDK_API SDKReturnCode CoreSdk_GetSkeletonSetupNodes(uint32_t p_SkeletonSetupIndex, NodeSetup* p_SDK);
622
634 CORESDK_API SDKReturnCode CoreSdk_GetSkeletonSetupColliders(uint32_t p_SkeletonSetupIndex, ColliderSetup* p_SDK);
635
647 CORESDK_API SDKReturnCode CoreSdk_LoadSkeleton(uint32_t p_SkeletonSetupIndex, uint32_t* p_SkeletonId);
648
655 CORESDK_API SDKReturnCode CoreSdk_UnloadSkeleton(uint32_t p_SkeletonId);
656
668 CORESDK_API SDKReturnCode CoreSdk_SaveTemporarySkeleton(uint32_t p_SkeletonSetupIndex, uint32_t p_SessionId, bool p_IsSkeletonModified);
669
677 CORESDK_API SDKReturnCode CoreSdk_CompressTemporarySkeletonAndGetSize(uint32_t p_SkeletonSetupIndex, uint32_t p_SessionId, uint32_t* p_TemporarySkeletonLengthInBytes);
678
688 CORESDK_API SDKReturnCode CoreSdk_GetCompressedTemporarySkeletonData(unsigned char* p_TemporarySkeletonData, uint32_t p_TemporarySkeletonLengthInBytes);
689
698 CORESDK_API SDKReturnCode CoreSdk_GetTemporarySkeleton(uint32_t p_SkeletonSetupIndex, uint32_t p_SessionId);
699
710 CORESDK_API SDKReturnCode CoreSdk_GetTemporarySkeletonFromCompressedData(uint32_t p_SkeletonSetupIndex, uint32_t p_SessionId, unsigned char* p_TemporarySkeletonData, uint32_t p_TemporarySkeletonLengthInBytes);
711
721 CORESDK_API SDKReturnCode CoreSdk_ClearTemporarySkeleton(uint32_t p_SkeletonSetupIndex, uint32_t p_SessionId);
722
730
738
739#ifdef __cplusplus
740} // extern "C"
741#endif
742
743// Close the Doxygen group.
746#endif // #ifndef H_MANUS_SDK
CORESDK_API SDKReturnCode CoreSdk_GetDataForDongle(uint32_t p_DongleId, DongleLandscapeData *p_DongleData)
Gets the data for a dongle with the given id.
CORESDK_API SDKReturnCode CoreSdk_GetSkeletonSetupNodes(uint32_t p_SkeletonSetupIndex, NodeSetup *p_SDK)
Get setup nodes for a SkeletonSetup at a given index. The size of the given array must match the node...
CORESDK_API SDKReturnCode CoreSdk_OverwriteNodeToSkeletonSetup(uint32_t p_SkeletonSetupIndex, NodeSetup p_Node)
Overwrite a node in a SkeletonSetup, the node to be overwritten is identified by p_Node....
CORESDK_API SDKReturnCode CoreSdk_GetNumberOfAvailableTrackersForUserId(uint32_t *p_NumberOfAvailableTrackers, uint32_t p_UserId)
Get the number of available trackers for a user with given Id.
CORESDK_API SDKReturnCode CoreSdk_AddVertexToMeshSetup(uint32_t p_SkeletonSetupIndex, uint32_t p_MeshSetupIndex, Vertex p_Vertex)
Add a Vertex to a mesh setup at a given index.
CORESDK_API SDKReturnCode CoreSdk_SaveTemporarySkeleton(uint32_t p_SkeletonSetupIndex, uint32_t p_SessionId, bool p_IsSkeletonModified)
Save a SkeletonSetup at a given index and sessionId into Manus Core for use in the Dev Tools....
CORESDK_API SDKReturnCode CoreSdk_GetSkeletonSetupChains(uint32_t p_SkeletonSetupIndex, ChainSetup *p_SDK)
Get setup chains for a SkeletonSetup at a given index. The size of the given array must match the cha...
CORESDK_API SDKReturnCode CoreSdk_GetNumberOfHapticsDongles(uint32_t *p_NumberOfHapticsDongles)
Get the number of available haptics dongles.
CORESDK_API SDKReturnCode CoreSdk_CompressTemporarySkeletonAndGetSize(uint32_t p_SkeletonSetupIndex, uint32_t p_SessionId, uint32_t *p_TemporarySkeletonLengthInBytes)
Send a temporary skeleton to Core to compress it (convert it into an array of bytes) and then get the...
CORESDK_API SDKReturnCode CoreSdk_OverwriteSkeletonSetup(uint32_t p_SkeletonSetupIndex, SkeletonSetupInfo p_SkeletonSetup)
Overwrite an existing SkeletonSetup at a given index. This will remove all chains and nodes from the ...
CORESDK_API SDKReturnCode CoreSdk_AllocateChainsForSkeletonSetup(uint32_t p_SkeletonSetupIndex)
Allocate chains for a SkeletonSetup at a given index.
CORESDK_API SDKReturnCode CoreSdk_GetAvailableHostsFound(ManusHost *p_AvailableHostsFound, const uint32_t p_NumberOfHostsThatFitInArray)
Fill the given array with information on the hosts that were found. This is the third and final funct...
CORESDK_API SDKReturnCode CoreSdk_GetNumberOfAvailableTrackers(uint32_t *p_NumberOfAvailableTrackers)
Get the number of available trackers.
CORESDK_API SDKReturnCode CoreSdk_GetIdsOfAvailableTrackers(TrackerId *p_IdsOfAvailableTrackers, uint32_t p_NumberOfIdsThatFitInArray)
Fill the given array with the IDs of available trackers. The size of the given array must match the n...
CORESDK_API SDKReturnCode CoreSdk_GetDongleIds(uint32_t *p_DongleIds, uint32_t p_NumberOfIdsThatFitInArray)
Fill the given array with the IDs of all available dongles. The size of the given array must match th...
CORESDK_API SDKReturnCode CoreSdk_ConnectGRPC()
Connect to the preset GRPC address.
CORESDK_API SDKReturnCode CoreSdk_Initialize(SessionType p_TypeOfSession)
Initialize the wrapper. Call this before using the wrapper.
CORESDK_API SDKReturnCode CoreSdk_ShutDown()
Shut down the wrapper. This needs to be called last.
CORESDK_API SDKReturnCode CoreSdk_GetDataForGlove_UsingGloveId(uint32_t p_GloveId, GloveLandscapeData *p_GloveData)
Get data for the glove with the given glove ID.
CORESDK_API SDKReturnCode CoreSdk_LoadSkeleton(uint32_t p_SkeletonSetupIndex, uint32_t *p_SkeletonId)
Sends a skeleton setup to core to become a skeleton upon which data is applied. Returns the skeleton ...
CORESDK_API SDKReturnCode CoreSdk_AddColliderToSkeletonSetup(uint32_t p_SkeletonSetupIndex, ColliderSetup p_Collider)
Add a collider to a SkeletonSetup at a given index.
CORESDK_API SDKReturnCode CoreSdk_GetCompressedTemporarySkeletonData(unsigned char *p_TemporarySkeletonData, uint32_t p_TemporarySkeletonLengthInBytes)
Get the compressed temporary skeleton data which are stored internally when calling function CoreSdk_...
CORESDK_API SDKReturnCode CoreSdk_VibrateFingersForSkeleton(uint32_t p_SkeletonId, Side p_HandType, const float *p_Powers)
Vibrate the motor on the fingers of a haptic glove associated to skeleton with given id....
CORESDK_API SDKReturnCode CoreSdk_GetSkeletonInfo(uint32_t p_SkeletonIndex, SkeletonInfo *p_Info)
Get information about the final animated skeleton with given index.
CORESDK_API SDKReturnCode CoreSdk_GetSkeletonSetupColliders(uint32_t p_SkeletonSetupIndex, ColliderSetup *p_SDK)
Get setup colliders for a SkeletonSetup at a given index. The size of the given array must match the ...
CORESDK_API SDKReturnCode CoreSdk_GetNumberOfDongles(uint32_t *p_NumberOfDongles)
Get the number of available dongles.
CORESDK_API SDKReturnCode CoreSdk_InitializeCoordinateSystemWithDirection(CoordinateSystemDirection p_CoordinateSystem, bool p_UseWorldCoordinates)
Initialize a coordinate system of type CoordinateSystemDirection. This has to be called before a conn...
CORESDK_API SDKReturnCode CoreSdk_GetNumberOfAvailableUsers(uint32_t *p_NumberOfAvailableUsers)
Get the number of available users. Note that this is reliant on the landscape, and the first second a...
CORESDK_API SDKReturnCode CoreSdk_CreateSkeletonSetup(SkeletonSetupInfo p_Skeleton, uint32_t *p_SkeletonSetupIndex)
Create a new SkeletonSetup with the given information and returns the index on which it is saved.
CORESDK_API SDKReturnCode CoreSdk_AddMeshSetupToSkeletonSetup(uint32_t p_SkeletonSetupIndex, uint32_t p_NodeID, uint32_t *p_MeshSetupIndex)
Add a mesh setup to a SkeletonSetup at a given index.
CORESDK_API SDKReturnCode CoreSdk_RegisterCallbackForSkeletonStream(SkeletonStreamCallback_t p_SkeletonStreamCallback)
Register the callback function that is called when skeleton data comes in.
CORESDK_API SDKReturnCode CoreSdk_GetTemporarySkeleton(uint32_t p_SkeletonSetupIndex, uint32_t p_SessionId)
Get a SkeletonSetup at a given index and sessionId from Manus Core. This function does NOT return a l...
CORESDK_API SDKReturnCode CoreSdk_GetTemporarySkeletonFromCompressedData(uint32_t p_SkeletonSetupIndex, uint32_t p_SessionId, unsigned char *p_TemporarySkeletonData, uint32_t p_TemporarySkeletonLengthInBytes)
Send the compressed data (an array of bytes) retrieved from a file to Core to be decompressed and con...
CORESDK_API SDKReturnCode CoreSdk_ClearAllTemporarySkeletons()
Clear all temporary skeletons associated to the current session both in the sdk and core....
CORESDK_API SDKReturnCode CoreSdk_RegisterCallbackForOnConnect(ConnectedToCoreCallback_t p_ConnectedCallback)
Register the callback function that is called when manus core gets connected to the sdk.
CORESDK_API SDKReturnCode CoreSdk_GetSkeletonSetupInfo(uint32_t p_SkeletonSetupIndex, SkeletonSetupInfo *p_SDK)
Get setup info for a SkeletonSetup at a given index.
CORESDK_API SDKReturnCode CoreSdk_UnloadSkeleton(uint32_t p_SkeletonId)
Unload a skeleton with a certain ID from Manus Core, so data will no longer be generated for it.
CORESDK_API SDKReturnCode CoreSdk_ClearTemporarySkeleton(uint32_t p_SkeletonSetupIndex, uint32_t p_SessionId)
Clear a SkeletonSetup at a given index and sessionId in Manus Core and the SDK. The given setup index...
CORESDK_API SDKReturnCode CoreSdk_SetTimestampInfo(ManusTimestamp *p_Timestamp, ManusTimestampInfo p_Info)
Sets the timestamp according to the info (more readable form of timestamp).
CORESDK_API SDKReturnCode CoreSdk_GetTemporarySkeletonsForAllSessions(TemporarySkeletonSessionsData *p_temporarySkeletonSessionsData)
Get information (name and index) for the SkeletonSetups of the all sessions connected to Core.
CORESDK_API SDKReturnCode CoreSdk_AddNodeToSkeletonSetup(uint32_t p_SkeletonSetupIndex, NodeSetup p_Node)
Add a node to a SkeletonSetup at a given index.
CORESDK_API SDKReturnCode CoreSdk_WasDllBuiltInDebugConfiguration(bool *p_WasBuiltInDebugConfiguration)
Check if the wrapper DLL was built in the debug configuration.
CORESDK_API SDKReturnCode CoreSdk_GetHapticsDongleIds(uint32_t *p_HapticsDongleIds, uint32_t p_NumberOfIdsThatFitInArray)
Fill the given array with the IDs of all available haptics dongles. The size of the given array must ...
CORESDK_API SDKReturnCode CoreSdk_InitializeCoordinateSystemWithVUH(CoordinateSystemVUH p_CoordinateSystem, bool p_UseWorldCoordinates)
Initialize a coordinate system of type CoordinateSystemVUH. (View Up Handedness) This has to be calle...
CORESDK_API SDKReturnCode CoreSdk_GetVersionsAndCheckCompatibility(ManusVersion *p_SdkVersion, ManusVersion *p_CoreVersion, bool *p_AreVersionsCompatible)
Get the SDK and Core version used and check if they are compatible with each other.
CORESDK_API SDKReturnCode CoreSdk_RegisterCallbackForLandscapeStream(LandscapeStreamCallback_t p_LandscapeStreamCallback)
Register the callback function that is called when the landscape data comes in.
CORESDK_API SDKReturnCode CoreSdk_RegisterCallbackForErgonomicsStream(ErgonomicsStreamCallback_t p_ErgonomicsStreamCallback)
Register the callback function that is called when ergonomics data comes in.
CORESDK_API SDKReturnCode CoreSdk_GetNumberOfAvailableHostsFound(uint32_t *p_NumberOfAvailableHostsFound)
Get the number of hosts running Manus Core that were found. This is the second function to call when ...
CORESDK_API SDKReturnCode CoreSdk_GetDataForTracker_UsingIdAndType(uint32_t p_UserId, uint32_t p_TrackerType, TrackerData *p_TrackerData)
Get data for the tracker with the given user id and type.
CORESDK_API SDKReturnCode CoreSdk_DoesSkeletonGloveSupportHaptics(uint32_t p_SkeletonId, Side p_HandType, bool *p_IsHaptics)
Identifies if the glove associated to the skeleton with given id and side is a haptic one.
CORESDK_API SDKReturnCode CoreSdk_GetIdsOfAvailableUsers(uint32_t *p_IdsOfAvailableUsers, uint32_t p_NumberOfIdsThatFitInArray)
Fill the given array with the IDs of all available users. The size of the given array must match the ...
CORESDK_API SDKReturnCode CoreSdk_GetIdsOfAvailableTrackersForUserId(TrackerId *p_IdsOfAvailableTrackers, uint32_t p_UserId, uint32_t p_NumberOfIdsThatFitInArray)
Fill the given array with the IDs of available trackers for a user with given Id. The size of the giv...
CORESDK_API SDKReturnCode CoreSdk_ConnectToHost(ManusHost p_Host)
Connect to a host using the given host information.
CORESDK_API SDKReturnCode CoreSdk_RegisterCallbackForSystemStream(SystemStreamCallback_t p_SystemStreamCallback)
Register the callback function that is called when core system related data comes in.
CORESDK_API SDKReturnCode CoreSdk_GetSkeletonSetupArraySizes(uint32_t p_SkeletonSetupIndex, SkeletonSetupArraySizes *p_SkeletonInfo)
Get the skeleton info (number of nodes and chains) for a SkeletonSetup at a given index.
CORESDK_API SDKReturnCode CoreSdk_GetNumberOfAvailableGloves(uint32_t *p_NumberOfAvailableGloves)
Get the number of gloves that are available.
CORESDK_API SDKReturnCode CoreSdk_GetSessionId(uint32_t *p_SessionId)
Get the current session Id.
CORESDK_API SDKReturnCode CoreSdk_SendDataForTrackers(const TrackerData *p_TrackerData, uint32_t p_NumberOfTrackers)
Send data to Core for a tracker.
CORESDK_API SDKReturnCode CoreSdk_GetGloveIdOfUser_UsingUserId(uint32_t p_UserId, Side p_HandType, uint32_t *p_GloveId)
Get a glove ID for the given hand of the given user identified by its Id.
CORESDK_API SDKReturnCode CoreSdk_GetIdsOfAvailableGloves(uint32_t *p_IdsOfAvailableGloves, uint32_t p_NumberOfIdsThatFitInArray)
Fill the given array with the IDs of all available gloves. The size of the given array must match the...
CORESDK_API SDKReturnCode CoreSdk_OverwriteChainToSkeletonSetup(uint32_t p_SkeletonSetupIndex, ChainSetup p_Chain)
Overwrite a chain in a SkeletonSetup, the chain to be overwritten is idenfified by p_Chain....
CORESDK_API SDKReturnCode CoreSdk_VibrateFingers(uint32_t p_DongleId, Side p_HandType, const float *p_Powers)
Vibrate the motor on the given fingers of a haptic glove. The order of the fingers is Thumb,...
CORESDK_API SDKReturnCode CoreSdk_GetDataForTracker_UsingTrackerId(TrackerId p_TrackerId, TrackerData *p_TrackerData)
Get data for the tracker with the given tracker Id.
CORESDK_API SDKReturnCode CoreSdk_AddChainToSkeletonSetup(uint32_t p_SkeletonSetupIndex, ChainSetup p_Chain)
Add a chain to a SkeletonSetup at a given index.
CORESDK_API SDKReturnCode CoreSdk_RegisterCallbackForOnDisconnect(DisconnectedFromCoreCallback_t p_DisconnectedCallback)
Register the callback function that is called when manus core gets disconnected from the sdk.
CORESDK_API SDKReturnCode CoreSdk_GetIsConnectedToCore(bool *p_ConnectedToCore)
Check if the wrapper is connected to ManusCore.
CORESDK_API SDKReturnCode CoreSdk_GetSkeletonData(uint32_t p_SkeletonIndex, SkeletonNode *p_Nodes, uint32_t p_NodeCount)
Get data for the final animated skeleton with given index. The size of the given array must match the...
CORESDK_API SDKReturnCode CoreSdk_AddTriangleToMeshSetup(uint32_t p_SkeletonSetupIndex, uint32_t p_MeshSetupIndex, Triangle p_Triangle)
Add a Triangle to a mesh setup at a given index.
CORESDK_API SDKReturnCode CoreSdk_LookForHosts(uint32_t p_WaitSeconds=1, bool p_LoopbackOnly=false)
Start a background task that looks for hosts running Manus Core. Call this first when looking for hos...
CORESDK_API SDKReturnCode CoreSdk_GetGlovesForDongle(uint32_t p_DongleId, uint32_t *p_LeftGloveId, uint32_t *p_RightGloveId)
Get glove id's for given dongle id.
CORESDK_API SDKReturnCode CoreSdk_GetTimestampInfo(ManusTimestamp p_Timestamp, ManusTimestampInfo *p_Info)
Gets the timestamp info (more readable form of timestamp).
SDKReturnCode
The return values that can be given by SDK wrapper functions.
SessionType
Used to tell what client is using the wrapper. This makes the session easier to identify in the lands...
void(* LandscapeStreamCallback_t)(const Landscape *const p_Landscape)
Describes the LandscapeStreamCallback function type.
Side
Describes the possible chain side.
void(* ErgonomicsStreamCallback_t)(const ErgonomicsStream *const p_Ergonomics)
Describes the ErgonomicsStreamCallback type.
void(* SkeletonStreamCallback_t)(const SkeletonStreamInfo *const p_SkeletonInfo)
Describes the SkeletonStreamCallback function type.
void(* SystemStreamCallback_t)(const SystemMessage *const p_SystemMessage)
Describes the SystemStreamCallback function type.
void(* DisconnectedFromCoreCallback_t)(const ManusHost *const p_Host)
Describes the DisconnectedToCoreCallback function type.
void(* ConnectedToCoreCallback_t)(const ManusHost *const p_Host)
Describes the ConnectedToCoreCallback function type.
Stores the chain setup information.
Stores the collider setup information.
Stores the information regarding the coordinate system used by the client, defined by each axis direc...
Stores the information regarding the coordinate system used by the client, defined as VUH (view,...
Stores all the received dongle data.
Stores all the received glove data.
Contains information for connecting to a host running Manus Core. Note that if one of these values is...
A compressed timestamp.
Stores a single version string.
Stores the node setup information. Each node represents a segment of the skeleton that can be animate...
Stores the information regarding the skeletons that have been added to Manus Core.
Stores the information regarding each skeleton node. The transform is defined as a local or global tr...
Stores the amount of nodes and chains in the skeleton setup.
Stores the skeleton setup information.
Stores the temporary skeleton available for all sessions connected to Core.
Stores all the tracker data that can be sent or received.
Stores the name of a tracker.
Stores the triangle information.
Stores the vertex information.