sbgECom  1.11.920-stable
sbgEComBinaryLogMag.h
Go to the documentation of this file.
1 
20 #ifndef __SBG_ECOM_BINARY_LOG_MAG_H__
21 #define __SBG_ECOM_BINARY_LOG_MAG_H__
22 
23 #include <sbgCommon.h>
24 #include <streamBuffer/sbgStreamBuffer.h>
25 
26 //----------------------------------------------------------------------//
27 //- Log magnetometers status definitions -//
28 //----------------------------------------------------------------------//
29 
33 #define SBG_ECOM_MAG_MAG_X_BIT (0x00000001u << 0)
34 #define SBG_ECOM_MAG_MAG_Y_BIT (0x00000001u << 1)
35 #define SBG_ECOM_MAG_MAG_Z_BIT (0x00000001u << 2)
37 #define SBG_ECOM_MAG_ACCEL_X_BIT (0x00000001u << 3)
38 #define SBG_ECOM_MAG_ACCEL_Y_BIT (0x00000001u << 4)
39 #define SBG_ECOM_MAG_ACCEL_Z_BIT (0x00000001u << 5)
41 #define SBG_ECOM_MAG_MAGS_IN_RANGE (0x00000001u << 6)
42 #define SBG_ECOM_MAG_ACCELS_IN_RANGE (0x00000001u << 7)
44 #define SBG_ECOM_MAG_CALIBRATION_OK (0x00000001u << 8)
46 //----------------------------------------------------------------------//
47 //- Log structure definitions -//
48 //----------------------------------------------------------------------//
49 
53 typedef struct _SbgLogMag
54 {
55  uint32_t timeStamp;
56  uint16_t status;
57  float magnetometers[3];
58  float accelerometers[3];
59 } SbgLogMag;
60 
64 typedef struct _SbgLogMagCalib
65 {
66  uint32_t timeStamp;
67  uint16_t reserved;
68  uint8_t magData[16];
70 
71 //----------------------------------------------------------------------//
72 //- Operations -//
73 //----------------------------------------------------------------------//
74 
81 SbgErrorCode sbgEComBinaryLogParseMagData(SbgStreamBuffer *pInputStream, SbgLogMag *pOutputData);
82 
89 SbgErrorCode sbgEComBinaryLogWriteMagData(SbgStreamBuffer *pOutputStream, const SbgLogMag *pInputData);
90 
97 SbgErrorCode sbgEComBinaryLogParseMagCalibData(SbgStreamBuffer *pInputStream, SbgLogMagCalib *pOutputData);
98 
105 SbgErrorCode sbgEComBinaryLogWriteMagCalibData(SbgStreamBuffer *pOutputStream, const SbgLogMagCalib *pInputData);
106 
107 #endif
uint16_t reserved
Definition: sbgEComBinaryLogMag.h:67
uint32_t timeStamp
Definition: sbgEComBinaryLogMag.h:55
SbgErrorCode sbgEComBinaryLogWriteMagCalibData(SbgStreamBuffer *pOutputStream, const SbgLogMagCalib *pInputData)
struct _SbgLogMag SbgLogMag
float accelerometers[3]
Definition: sbgEComBinaryLogMag.h:58
SbgErrorCode sbgEComBinaryLogParseMagData(SbgStreamBuffer *pInputStream, SbgLogMag *pOutputData)
Definition: sbgEComBinaryLogMag.h:53
uint16_t status
Definition: sbgEComBinaryLogMag.h:56
float magnetometers[3]
Definition: sbgEComBinaryLogMag.h:57
SbgErrorCode sbgEComBinaryLogWriteMagData(SbgStreamBuffer *pOutputStream, const SbgLogMag *pInputData)
struct _SbgLogMagCalib SbgLogMagCalib
Definition: sbgEComBinaryLogMag.h:64
uint32_t timeStamp
Definition: sbgEComBinaryLogMag.h:66
SbgErrorCode sbgEComBinaryLogParseMagCalibData(SbgStreamBuffer *pInputStream, SbgLogMagCalib *pOutputData)