summaryrefslogtreecommitdiffhomepage
path: root/contrib-noinst/tester/npifc.h
blob: d580e16d6654c10bff81b0fa42df1d7d00a8957b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#ifndef NPIFC__H
#define NPIFC__H


#include <stdbool.h>

#ifdef __cplusplus
extern "C" {
#endif
  bool npifc_init(HWND wnd, int id);
  void npifc_close();

#pragma pack(1)
typedef struct tir_data{
  short status;
  short frame;
  unsigned int cksum;
  float roll, pitch, yaw;
  float tx, ty, tz;
  float padding[9];
} tir_data_t;

typedef struct tir_signature{
    char DllSignature[200];
    char AppSignature[200];
} tir_signature_t;
#pragma pack(0)

int npifc_getdata(tir_data_t *data);

typedef int __stdcall (*NP_RegisterWindowHandle_t)(HWND hwnd);
typedef int __stdcall (*NP_UnregisterWindowHandle_t)(void);
typedef int __stdcall (*NP_RegisterProgramProfileID_t)(unsigned short id);
typedef int __stdcall (*NP_QueryVersion_t)(unsigned short *version);
typedef int __stdcall (*NP_RequestData_t)(unsigned short req);
typedef int __stdcall (*NP_GetSignature_t)(tir_signature_t *sig);
typedef int __stdcall (*NP_GetData_t)(tir_data_t *data);
typedef int __stdcall (*NP_GetParameter_t)(void);
typedef int __stdcall (*NP_SetParameter_t)(void);
typedef int __stdcall (*NP_StartCursor_t)(void);
typedef int __stdcall (*NP_StopCursor_t)(void);
typedef int __stdcall (*NP_ReCenter_t)(void);
typedef int __stdcall (*NP_StartDataTransmission_t)(void);
typedef int __stdcall (*NP_StopDataTransmission_t)(void);

extern NP_RegisterWindowHandle_t NP_RegisterWindowHandle;
extern NP_UnregisterWindowHandle_t NP_UnregisterWindowHandle;
extern NP_RegisterProgramProfileID_t NP_RegisterProgramProfileID;
extern NP_QueryVersion_t NP_QueryVersion;
extern NP_RequestData_t NP_RequestData;
extern NP_GetSignature_t NP_GetSignature;
extern NP_GetData_t NP_GetData;
extern NP_GetParameter_t NP_GetParameter;
extern NP_SetParameter_t NP_SetParameter;
extern NP_StartCursor_t NP_StartCursor;
extern NP_StopCursor_t NP_StopCursor;
extern NP_ReCenter_t NP_ReCenter;
extern NP_StartDataTransmission_t NP_StartDataTransmission;
extern NP_StopDataTransmission_t NP_StopDataTransmission;

#ifdef __cplusplus
}
#endif

#endif