NokovSDKClient.h
Go to the documentation of this file.
1 // The following ifdef block is the standard way of creating macros which make exporting
2 // from a DLL simpler. All files within this DLL are compiled with the NOKOVSDKCLIENT_EXPORTS
3 // symbol defined on the command line. This symbol should not be defined on any project
4 // that uses this DLL. This way any other project whose source files include this file see
5 // NOKOVSDKCLIENT_API functions as being imported from a DLL, whereas this DLL sees symbols
6 // defined with this macro as being exported.
7 
8 #define _LINUX
9 //#define _WIN32
10 #pragma once
11 
12 #if defined(_WIN32)
13 #define SYSTEM_WIN32
14 #elif defined(_LINUX)
15 #define SYSTEM_LINUX
16 #else
17 #error "undefined system!"
18 #endif
19 
20 #ifdef SYSTEM_WIN32
21 #ifdef NOKOVSDKCLIENT_EXPORTS
22 #define NOKOVSDKCLIENT_API __declspec(dllexport)
23 #else
24 #define NOKOVSDKCLIENT_API __declspec(dllimport)
25 #endif
26 #elif defined(SYSTEM_LINUX)
27 #define NOKOVSDKCLIENT_API __attribute ((visibility("default")))
28 #endif
29 
30 #include "NokovSDKTypes.h"
31 
32 class ClientCore;
33 
35 public:
37  ~NokovSDKClient();
38 
39  int Initialize(char* szServerAddress);
40  int Uninitialize();
41  void NokovSDKVersion(unsigned char Version[4]);
42  void SetVerbosityLevel(int level);
43 
44  int WaitForForcePlateInit(long time = 0);
45  int SetForcePlateCallback(void (*CallbackFunction)(sForcePlates* pForcePlate, void* pUserData), void* pUserData = 0);
46 
47  int SetDataCallback(void (*CallbackFunction)(sFrameOfMocapData* pFrameOfData, void* pUserData), void* pUserData=0);
48  int SetMessageCallback(void (*CallbackFunction)(int id, char *szTraceMessage));
49  int SetNotifyMsgCallback(void (*CallbackFunc)(sNotifyMsg* pNotify, void* pUserData), void* pUserData=0);
50 
51  int GetServerDescription(sServerDescription *pServerDescription);
52 
53  int GetDataDescriptions(sDataDescriptions** pDataDescriptions);
54  int GetDataDescriptionsEx(sDataDescriptions** pDataDescriptions);
55  int GetTposeDataDescriptions(char* name, sDataDescriptions** pDataDescriptions);
56  int FreeDataDescriptions(sDataDescriptions* pDataDescriptions);
57 
58  bool DecodeTimecode(unsigned int inTimecode, unsigned int inTimecodeSubframe, int* hour, int* minute, int* second, int* frame, int* subframe);
59  bool TimecodeStringify(unsigned int inTimecode, unsigned int inTimecodeSubframe, char *Buffer, int BufferSize);
60 
61  int NokovCopyFrame(const sFrameOfMocapData* pSrc, sFrameOfMocapData* pDst);
62  int NokovFreeFrame(sFrameOfMocapData* pDst);
63  sFrameOfMocapData* GetLastFrameOfMocapData();
64 
65 private:
66  ClientCore* m_pClientCore;
67 };
sServerDescription
Definition: NokovSDKTypes.h:172
sNotifyMsg
Definition: NokovSDKTypes.h:341
NokovSDKClient::m_pClientCore
ClientCore * m_pClientCore
Definition: NokovSDKClient.h:66
NokovSDKClient
Definition: NokovSDKClient.h:34
mocap_nokov::rosparam::keys::Version
const std::string Version
Definition: mocap_config.cpp:73
NokovSDKTypes.h
NOKOVSDKCLIENT_API
#define NOKOVSDKCLIENT_API
Definition: NokovSDKClient.h:27
sDataDescriptions
Definition: NokovSDKTypes.h:295
sFrameOfMocapData
Definition: NokovSDKTypes.h:302
sForcePlates
Definition: NokovSDKTypes.h:334


mocap_nokov
Author(s):
autogenerated on Mon Mar 3 2025 03:08:00