sbgECom Library  5.2.590-stable
Interface SBG Systems IMU/AHRS/INS
Loading...
Searching...
No Matches
sbgEComLogGnssPos.h
Go to the documentation of this file.
1
32
33#ifndef SBG_ECOM_LOG_GPS_POS_H
34#define SBG_ECOM_LOG_GPS_POS_H
35
36// sbgCommonLib headers
37#include <sbgCommon.h>
39
40#ifdef __cplusplus
41extern "C" {
42#endif
43
44//----------------------------------------------------------------------//
45//- Public definitions -//
46//----------------------------------------------------------------------//
47
51#define SBG_ECOM_GNSS_POS_GPS_L1_USED (0x00000001u << 12)
52#define SBG_ECOM_GNSS_POS_GPS_L2_USED (0x00000001u << 13)
53#define SBG_ECOM_GNSS_POS_GPS_L5_USED (0x00000001u << 14)
54
55#define SBG_ECOM_GNSS_POS_GLO_L1_USED (0x00000001u << 15)
56#define SBG_ECOM_GNSS_POS_GLO_L2_USED (0x00000001u << 16)
57#define SBG_ECOM_GNSS_POS_GLO_L3_USED (0x00000001u << 17)
58
59#define SBG_ECOM_GNSS_POS_GAL_E1_USED (0x00000001u << 18)
60#define SBG_ECOM_GNSS_POS_GAL_E5A_USED (0x00000001u << 19)
61#define SBG_ECOM_GNSS_POS_GAL_E5B_USED (0x00000001u << 20)
62#define SBG_ECOM_GNSS_POS_GAL_E5ALT_USED (0x00000001u << 21)
63#define SBG_ECOM_GNSS_POS_GAL_E6_USED (0x00000001u << 22)
64
65#define SBG_ECOM_GNSS_POS_BDS_B1_USED (0x00000001u << 23)
66#define SBG_ECOM_GNSS_POS_BDS_B2_USED (0x00000001u << 24)
67#define SBG_ECOM_GNSS_POS_BDS_B3_USED (0x00000001u << 25)
68
69#define SBG_ECOM_GNSS_POS_QZSS_L1_USED (0x00000001u << 26)
70#define SBG_ECOM_GNSS_POS_QZSS_L2_USED (0x00000001u << 27)
71#define SBG_ECOM_GNSS_POS_QZSS_L5_USED (0x00000001u << 28)
72#define SBG_ECOM_GNSS_POS_QZSS_L6_USED (0x00000001u << 29)
73
84
102
114
126
139
140//----------------------------------------------------------------------//
141//- Log structure definitions -//
142//----------------------------------------------------------------------//
143
165
166//----------------------------------------------------------------------//
167//- Public methods -//
168//----------------------------------------------------------------------//
169
176
185
194
195//----------------------------------------------------------------------//
196//- Public setters/getters -//
197//----------------------------------------------------------------------//
198
206
216
224
234
241void sbgEComLogGnssPosSetSignalsUsed(SbgEComLogGnssPos *pLogData, uint32_t signalMask);
242
252bool sbgEComLogGnssPosSignalsAreUsed(const SbgEComLogGnssPos *pLogData, uint32_t signalsMask);
253
261
269
277
285
295void sbgEComLogGnssPosSetDifferentialAge(SbgEComLogGnssPos *pLogData, float differentialAge);
296
306
314
322
330
338
346
354
355//----------------------------------------------------------------------//
356//- DEPRECATED - Used for backward compatibility -//
357//----------------------------------------------------------------------//
358
359#ifdef SBG_ECOM_USE_DEPRECATED_MACROS
360 #define SBG_ECOM_GPS_POS_GPS_L1_USED (0x00000001u << 12)
361 #define SBG_ECOM_GPS_POS_GPS_L2_USED (0x00000001u << 13)
362 #define SBG_ECOM_GPS_POS_GPS_L5_USED (0x00000001u << 14)
363
364 #define SBG_ECOM_GPS_POS_GLO_L1_USED (0x00000001u << 15)
365 #define SBG_ECOM_GPS_POS_GLO_L2_USED (0x00000001u << 16)
366 #define SBG_ECOM_GPS_POS_GLO_L3_USED (0x00000001u << 17)
367
368 #define SBG_ECOM_GPS_POS_GAL_E1_USED (0x00000001u << 18)
369 #define SBG_ECOM_GPS_POS_GAL_E5A_USED (0x00000001u << 19)
370 #define SBG_ECOM_GPS_POS_GAL_E5B_USED (0x00000001u << 20)
371 #define SBG_ECOM_GPS_POS_GAL_E5ALT_USED (0x00000001u << 21)
372 #define SBG_ECOM_GPS_POS_GAL_E6_USED (0x00000001u << 22)
373
374 #define SBG_ECOM_GPS_POS_BDS_B1_USED (0x00000001u << 23)
375 #define SBG_ECOM_GPS_POS_BDS_B2_USED (0x00000001u << 24)
376 #define SBG_ECOM_GPS_POS_BDS_B3_USED (0x00000001u << 25)
377
378 #define SBG_ECOM_GPS_POS_QZSS_L1_USED (0x00000001u << 26)
379 #define SBG_ECOM_GPS_POS_QZSS_L2_USED (0x00000001u << 27)
380 #define SBG_ECOM_GPS_POS_QZSS_L5_USED (0x00000001u << 28)
381 #define SBG_ECOM_GPS_POS_QZSS_L6_USED (0x00000001u << 29)
382
383 #define SBG_ECOM_POS_SOL_COMPUTED (SBG_ECOM_GNSS_POS_STATUS_SOL_COMPUTED)
384 #define SBG_ECOM_POS_INSUFFICIENT_OBS (SBG_ECOM_GNSS_POS_STATUS_INSUFFICIENT_OBS)
385 #define SBG_ECOM_POS_INTERNAL_ERROR (SBG_ECOM_GNSS_POS_STATUS_INTERNAL_ERROR)
386 #define SBG_ECOM_POS_HEIGHT_LIMIT (SBG_ECOM_GNSS_POS_STATUS_HEIGHT_LIMIT)
387
388 #define SBG_ECOM_POS_NO_SOLUTION (SBG_ECOM_GNSS_POS_TYPE_NO_SOLUTION)
389 #define SBG_ECOM_POS_UNKNOWN_TYPE (SBG_ECOM_GNSS_POS_TYPE_UNKNOWN)
390 #define SBG_ECOM_POS_SINGLE (SBG_ECOM_GNSS_POS_TYPE_SINGLE)
391 #define SBG_ECOM_POS_PSRDIFF (SBG_ECOM_GNSS_POS_TYPE_PSRDIFF)
392 #define SBG_ECOM_POS_SBAS (SBG_ECOM_GNSS_POS_TYPE_SBAS)
393 #define SBG_ECOM_POS_OMNISTAR (SBG_ECOM_GNSS_POS_TYPE_OMNISTAR)
394 #define SBG_ECOM_POS_RTK_FLOAT (SBG_ECOM_GNSS_POS_TYPE_RTK_FLOAT)
395 #define SBG_ECOM_POS_RTK_INT (SBG_ECOM_GNSS_POS_TYPE_RTK_INT)
396 #define SBG_ECOM_POS_PPP_FLOAT (SBG_ECOM_GNSS_POS_TYPE_PPP_FLOAT)
397 #define SBG_ECOM_POS_PPP_INT (SBG_ECOM_GNSS_POS_TYPE_PPP_INT)
398 #define SBG_ECOM_POS_FIXED (SBG_ECOM_GNSS_POS_TYPE_FIXED)
399#endif
400
401SBG_DEPRECATED_TYPEDEF(typedef enum _SbgEComGnssPosStatus SbgEComGpsPosStatus);
402SBG_DEPRECATED_TYPEDEF(typedef enum _SbgEComGnssPosType SbgEComGpsPosType);
403SBG_DEPRECATED_TYPEDEF(typedef struct _SbgEComLogGnssPos SbgLogGpsPos);
404
405SBG_DEPRECATED(uint32_t sbgEComLogGpsPosBuildStatus(SbgEComGnssPosStatus status, SbgEComGnssPosType type, uint32_t masks));
406SBG_DEPRECATED(SbgEComGnssPosStatus sbgEComLogGpsPosGetStatus(uint32_t status));
407SBG_DEPRECATED(SbgEComGnssPosType sbgEComLogGpsPosGetType(uint32_t status));
408
409SBG_DEPRECATED(SbgErrorCode sbgEComBinaryLogParseGpsPosData(SbgStreamBuffer *pStreamBuffer, SbgEComLogGnssPos *pLogData));
410SBG_DEPRECATED(SbgErrorCode sbgEComBinaryLogWriteGpsPosData(SbgStreamBuffer *pStreamBuffer, const SbgEComLogGnssPos *pLogData));
411
412#ifdef __cplusplus
413}
414#endif
415
416#endif // SBG_ECOM_LOG_GNSS_POS_H
Main header for the SBG Systems common C library.
#define SBG_DEPRECATED(func)
Definition sbgDefines.h:316
#define SBG_DEPRECATED_TYPEDEF(decl)
Definition sbgDefines.h:349
enum _SbgEComGnssPosStatus SbgEComGnssPosStatus
bool sbgEComLogGnssPosSignalsAreUsed(const SbgEComLogGnssPos *pLogData, uint32_t signalsMask)
bool sbgEComLogGnssPosDifferentialAgeIsValid(const SbgEComLogGnssPos *pLogData)
enum _SbgEComGnssPosType SbgEComGnssPosType
void sbgEComLogGnssPosSetType(SbgEComLogGnssPos *pLogData, SbgEComGnssPosType posType)
SbgErrorCode sbgEComLogGnssPosReadFromStream(SbgEComLogGnssPos *pLogData, SbgStreamBuffer *pStreamBuffer)
float sbgEComLogGnssPosGetDifferentialAge(const SbgEComLogGnssPos *pLogData)
void sbgEComLogGnssPosSetStatus(SbgEComLogGnssPos *pLogData, SbgEComGnssPosStatus status)
SbgEComGnssOsnmaStatus sbgEComLogGnssPosGetOsnmaStatus(const SbgEComLogGnssPos *pLogData)
bool sbgEComLogGnssPosNumSvTrackedIsValid(const SbgEComLogGnssPos *pLogData)
SbgEComGnssIfmStatus sbgEComLogGnssPosGetIfmStatus(const SbgEComLogGnssPos *pLogData)
SbgEComGnssSpoofingStatus sbgEComLogGnssPosGetSpoofingStatus(const SbgEComLogGnssPos *pLogData)
bool sbgEComLogGnssPosNumSvUsedIsValid(const SbgEComLogGnssPos *pLogData)
void sbgEComLogGnssPosSetSignalsUsed(SbgEComLogGnssPos *pLogData, uint32_t signalMask)
SbgEComGnssPosStatus sbgEComLogGnssPosGetStatus(const SbgEComLogGnssPos *pLogData)
SbgEComGnssPosType sbgEComLogGnssPosGetType(const SbgEComLogGnssPos *pLogData)
_SbgEComGnssSpoofingStatus
Definition sbgEComLogGnssPos.h:119
@ SBG_ECOM_GNSS_SPOOFING_STATUS_MULTIPLE
Definition sbgEComLogGnssPos.h:124
@ SBG_ECOM_GNSS_SPOOFING_STATUS_CLEAN
Definition sbgEComLogGnssPos.h:122
@ SBG_ECOM_GNSS_SPOOFING_STATUS_SINGLE
Definition sbgEComLogGnssPos.h:123
@ SBG_ECOM_GNSS_SPOOFING_STATUS_ERROR
Definition sbgEComLogGnssPos.h:120
@ SBG_ECOM_GNSS_SPOOFING_STATUS_UNKNOWN
Definition sbgEComLogGnssPos.h:121
_SbgEComGnssPosType
Definition sbgEComLogGnssPos.h:89
@ SBG_ECOM_GNSS_POS_TYPE_RTK_FLOAT
Definition sbgEComLogGnssPos.h:96
@ SBG_ECOM_GNSS_POS_TYPE_RTK_INT
Definition sbgEComLogGnssPos.h:97
@ SBG_ECOM_GNSS_POS_TYPE_SBAS
Definition sbgEComLogGnssPos.h:94
@ SBG_ECOM_GNSS_POS_TYPE_PPP_FLOAT
Definition sbgEComLogGnssPos.h:98
@ SBG_ECOM_GNSS_POS_TYPE_PSRDIFF
Definition sbgEComLogGnssPos.h:93
@ SBG_ECOM_GNSS_POS_TYPE_NO_SOLUTION
Definition sbgEComLogGnssPos.h:90
@ SBG_ECOM_GNSS_POS_TYPE_UNKNOWN
Definition sbgEComLogGnssPos.h:91
@ SBG_ECOM_GNSS_POS_TYPE_FIXED
Definition sbgEComLogGnssPos.h:100
@ SBG_ECOM_GNSS_POS_TYPE_SINGLE
Definition sbgEComLogGnssPos.h:92
@ SBG_ECOM_GNSS_POS_TYPE_OMNISTAR
Definition sbgEComLogGnssPos.h:95
@ SBG_ECOM_GNSS_POS_TYPE_PPP_INT
Definition sbgEComLogGnssPos.h:99
_SbgEComGnssIfmStatus
Definition sbgEComLogGnssPos.h:107
@ SBG_ECOM_GNSS_IFM_STATUS_MITIGATED
Definition sbgEComLogGnssPos.h:111
@ SBG_ECOM_GNSS_IFM_STATUS_CRITICAL
Definition sbgEComLogGnssPos.h:112
@ SBG_ECOM_GNSS_IFM_STATUS_UNKNOWN
Definition sbgEComLogGnssPos.h:109
@ SBG_ECOM_GNSS_IFM_STATUS_CLEAN
Definition sbgEComLogGnssPos.h:110
@ SBG_ECOM_GNSS_IFM_STATUS_ERROR
Definition sbgEComLogGnssPos.h:108
void sbgEComLogGnssPosSetDifferentialAge(SbgEComLogGnssPos *pLogData, float differentialAge)
enum _SbgEComGnssIfmStatus SbgEComGnssIfmStatus
void sbgEComLogGnssPosSetIfmStatus(SbgEComLogGnssPos *pLogData, SbgEComGnssIfmStatus status)
void sbgEComLogGnssPosSetOsnmaStatus(SbgEComLogGnssPos *pLogData, SbgEComGnssOsnmaStatus status)
enum _SbgEComGnssOsnmaStatus SbgEComGnssOsnmaStatus
bool sbgEComLogGnssPosBaseStationIdIsValid(const SbgEComLogGnssPos *pLogData)
void sbgEComLogGnssPosZeroInit(SbgEComLogGnssPos *pLogData)
void sbgEComLogGnssPosSetSpoofingStatus(SbgEComLogGnssPos *pLogData, SbgEComGnssSpoofingStatus status)
_SbgEComGnssPosStatus
Definition sbgEComLogGnssPos.h:78
@ SBG_ECOM_GNSS_POS_STATUS_INSUFFICIENT_OBS
Definition sbgEComLogGnssPos.h:80
@ SBG_ECOM_GNSS_POS_STATUS_INTERNAL_ERROR
Definition sbgEComLogGnssPos.h:81
@ SBG_ECOM_GNSS_POS_STATUS_HEIGHT_LIMIT
Definition sbgEComLogGnssPos.h:82
@ SBG_ECOM_GNSS_POS_STATUS_SOL_COMPUTED
Definition sbgEComLogGnssPos.h:79
struct _SbgEComLogGnssPos SbgEComLogGnssPos
enum _SbgEComGnssSpoofingStatus SbgEComGnssSpoofingStatus
SbgErrorCode sbgEComLogGnssPosWriteToStream(const SbgEComLogGnssPos *pLogData, SbgStreamBuffer *pStreamBuffer)
_SbgEComGnssOsnmaStatus
Definition sbgEComLogGnssPos.h:131
@ SBG_ECOM_GNSS_OSNMA_STATUS_VALID
Definition sbgEComLogGnssPos.h:136
@ SBG_ECOM_GNSS_OSNMA_STATUS_SPOOFED
Definition sbgEComLogGnssPos.h:137
@ SBG_ECOM_GNSS_OSNMA_STATUS_ERROR
Definition sbgEComLogGnssPos.h:132
@ SBG_ECOM_GNSS_OSNMA_STATUS_DISABLED
Definition sbgEComLogGnssPos.h:133
@ SBG_ECOM_GNSS_OSNMA_STATUS_WAITING_NTP
Definition sbgEComLogGnssPos.h:135
@ SBG_ECOM_GNSS_OSNMA_STATUS_INITIALIZING
Definition sbgEComLogGnssPos.h:134
enum _SbgErrorCode SbgErrorCode
Used to read/write data from/to a memory buffer stream.
struct _SbgStreamBuffer SbgStreamBuffer
Definition sbgEComLogGnssPos.h:148
double latitude
Definition sbgEComLogGnssPos.h:152
uint16_t baseStationId
Definition sbgEComLogGnssPos.h:160
uint16_t differentialAge
Definition sbgEComLogGnssPos.h:161
uint32_t timeStamp
Definition sbgEComLogGnssPos.h:149
float longitudeAccuracy
Definition sbgEComLogGnssPos.h:157
uint32_t statusExt
Definition sbgEComLogGnssPos.h:163
double altitude
Definition sbgEComLogGnssPos.h:154
float altitudeAccuracy
Definition sbgEComLogGnssPos.h:158
double longitude
Definition sbgEComLogGnssPos.h:153
uint8_t numSvTracked
Definition sbgEComLogGnssPos.h:162
float latitudeAccuracy
Definition sbgEComLogGnssPos.h:156
float undulation
Definition sbgEComLogGnssPos.h:155
uint32_t status
Definition sbgEComLogGnssPos.h:150
uint32_t timeOfWeek
Definition sbgEComLogGnssPos.h:151
uint8_t numSvUsed
Definition sbgEComLogGnssPos.h:159