sbgECom Library  5.2.590-stable
Interface SBG Systems IMU/AHRS/INS
Loading...
Searching...
No Matches
sbgTypes.h
Go to the documentation of this file.
1
34
35#ifndef SBG_TYPES_H
36#define SBG_TYPES_H
37
38// Standard headers
39#include <stdint.h>
40
41// Local headers
42#include "sbgDefines.h"
43
44//----------------------------------------------------------------------//
45//- Limits definitions -//
46//----------------------------------------------------------------------//
47#define SBG_MIN_INT_24 (-8388608l)
48#define SBG_MAX_INT_24 (8388607l)
49#define SBG_MAX_UINT_24 (16777215ul)
50
51#define SBG_MIN_INT_40 (-549755813887ll - 1)
52#define SBG_MAX_INT_40 (549755813887ll)
53#define SBG_MAX_UINT_40 (1099511627775ull)
54
55#define SBG_MIN_INT_48 (-140737488355327ll - 1)
56#define SBG_MAX_INT_48 (140737488355327ll)
57#define SBG_MAX_UINT_48 (281474976710655ull)
58
59#define SBG_MIN_INT_56 (-36028797018963967ll - 1)
60#define SBG_MAX_INT_56 (36028797018963967ll)
61#define SBG_MAX_UINT_56 (72057594037927935ull)
62
63//----------------------------------------------------------------------//
64//- Global typedef -//
65//----------------------------------------------------------------------//
66typedef uint32_t sbgIpAddress;
67
68//------------------------------------------------------------------//
69//- Type punning safe conversion unions -//
70//------------------------------------------------------------------//
71
80
84typedef union _SbgUint8ToInt16
85{
86 int16_t value;
87 uint8_t buffer[2];
89
93typedef union _SbgUint8ToUint16
94{
95 uint16_t value;
96 uint8_t buffer[2];
98
102typedef union _SbgUint8ToInt32
103{
104 int32_t value;
105 uint8_t buffer[4];
107
111typedef union _SbgUint8ToUint32
112{
113 uint32_t value;
114 uint8_t buffer[4];
116
120typedef union _SbgUint8ToInt64
121{
122 int64_t value;
123 uint8_t buffer[8];
125
129typedef union _SbgUint8ToUint64
130{
131 uint64_t value;
132 uint8_t buffer[8];
134
138typedef union _SbgFloatNint
139{
140 float valF;
141 int32_t valI;
142 uint32_t valU;
144
148typedef union _SbgDoubleNint
149{
150 double valF;
151 uint64_t valU;
152 int64_t valI;
154
158 typedef struct _SbgVector3i
159 {
160 int32_t v[3];
162
166 typedef struct _SbgVector3ll
167 {
168 int64_t v[3];
170
171//----------------------------------------------------------------------//
172//- DEPRECATED: types definitions -//
173//----------------------------------------------------------------------//
174#ifdef SBG_COMMON_USE_DEPRECATED
175 SBG_DEPRECATED_TYPEDEF(typedef unsigned char uint8);
176 SBG_DEPRECATED_TYPEDEF(typedef unsigned short uint16);
177 SBG_DEPRECATED_TYPEDEF(typedef unsigned int uint32);
178 SBG_DEPRECATED_TYPEDEF(typedef unsigned long long int uint64);
179
180 SBG_DEPRECATED_TYPEDEF(typedef signed char int8);
181 SBG_DEPRECATED_TYPEDEF(typedef signed short int16);
182 SBG_DEPRECATED_TYPEDEF(typedef signed int int32);
183 SBG_DEPRECATED_TYPEDEF(typedef signed long long int int64);
184
185 SBG_DEPRECATED_TYPEDEF(typedef union _SbgUint8PtrToUint32Ptr Uint8PtrToUint32Ptr);
186 SBG_DEPRECATED_TYPEDEF(typedef union _SbgUint8ToInt16 Uint8ToInt16);
187 SBG_DEPRECATED_TYPEDEF(typedef union _SbgUint8ToUint16 Uint8ToUint16);
188 SBG_DEPRECATED_TYPEDEF(typedef union _SbgUint8ToInt32 Uint8ToInt32);
189 SBG_DEPRECATED_TYPEDEF(typedef union _SbgUint8ToUint32 Uint8ToUint32);
190 SBG_DEPRECATED_TYPEDEF(typedef union _SbgUint8ToInt64 Uint8ToInt64);
191 SBG_DEPRECATED_TYPEDEF(typedef union _SbgUint8ToUint64 Uint8ToUint64);
192 SBG_DEPRECATED_TYPEDEF(typedef union _SbgFloatNint FloatNint);
193 SBG_DEPRECATED_TYPEDEF(typedef union _SbgDoubleNint DoubleNint);
194#endif
195
196#endif // SBG_TYPES_H
Header file that contains all common definitions.
#define SBG_DEPRECATED_TYPEDEF(decl)
Definition sbgDefines.h:349
union _SbgUint8ToInt64 SbgUint8ToInt64
union _SbgDoubleNint SbgDoubleNint
union _SbgFloatNint SbgFloatNint
union _SbgUint8ToUint32 SbgUint8ToUint32
struct _SbgVector3i SbgVector3i
union _SbgUint8ToInt32 SbgUint8ToInt32
union _SbgUint8ToInt16 SbgUint8ToInt16
union _SbgUint8ToUint64 SbgUint8ToUint64
struct _SbgVector3ll SbgVector3ll
union _SbgUint8PtrToUint32Ptr SbgUint8PtrToUint32Ptr
uint32_t sbgIpAddress
Definition sbgTypes.h:66
union _SbgUint8ToUint16 SbgUint8ToUint16
Definition sbgTypes.h:159
Definition sbgTypes.h:167
Definition sbgTypes.h:149
Definition sbgTypes.h:139
Definition sbgTypes.h:76
uint32_t * m_pointerUint32
Definition sbgTypes.h:78
uint8_t * m_pointerUint8
Definition sbgTypes.h:77
Definition sbgTypes.h:85
Definition sbgTypes.h:103
Definition sbgTypes.h:121
Definition sbgTypes.h:94
Definition sbgTypes.h:112
Definition sbgTypes.h:130