#ifndef _SENSORIMPL_H_ #define _SENSORIMPL_H_ #include "quaternion.h" #ifdef __cplusplus extern "C"{ Quaternion GetPoseQuat(void); void UnpackSensor(const UCHAR* buffer, long* x, long* y, long* z); void GetControllerSensor(unsigned char usb_input_buffer[]); /* * 描述 : 获取偏航角Yaw */ float DM_GetYaw(void); /* * 描述 :获取俯仰角Pitch */ float DM_GetPitch(void); /* * 描述 :获取滚转角Roll */ float DM_GetRoll(void); float invSqrt(float x) ; void ResetAHRS(); void AHRSupdate(float gx, float gy, float gz, float ax, float ay, float az, float mx, float my, float mz,char useMag,int Dtime); Vector3 GetMagData(); int ResetHeading(void); } #else void UnpackSensor(const UCHAR* buffer, long* x, long* y, long* z); void GetControllerSensor(unsigned char usb_input_buffer[]); __declspec(dllexport) float GetLocX(void); __declspec(dllexport) float GetLocY(void); __declspec(dllexport) float GetLocZ(void); #endif #endif