sbgECom Library  5.6.2730-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
167
168//----------------------------------------------------------------------//
169//- Public methods -//
170//----------------------------------------------------------------------//
171
178
187
196
197//----------------------------------------------------------------------//
198//- Public setters/getters -//
199//----------------------------------------------------------------------//
200
208
218
226
236
243void sbgEComLogGnssPosSetSignalsUsed(SbgEComLogGnssPos *pLogData, uint32_t signalMask);
244
254bool sbgEComLogGnssPosSignalsAreUsed(const SbgEComLogGnssPos *pLogData, uint32_t signalsMask);
255
263
271
279
287
297void sbgEComLogGnssPosSetDifferentialAge(SbgEComLogGnssPos *pLogData, float differentialAge);
298
308
316
324
332
340
348
356
363
371
372//----------------------------------------------------------------------//
373//- DEPRECATED - Used for backward compatibility -//
374//----------------------------------------------------------------------//
375
376#ifdef SBG_ECOM_USE_DEPRECATED_MACROS
377 #define SBG_ECOM_GPS_POS_GPS_L1_USED (0x00000001u << 12)
378 #define SBG_ECOM_GPS_POS_GPS_L2_USED (0x00000001u << 13)
379 #define SBG_ECOM_GPS_POS_GPS_L5_USED (0x00000001u << 14)
380
381 #define SBG_ECOM_GPS_POS_GLO_L1_USED (0x00000001u << 15)
382 #define SBG_ECOM_GPS_POS_GLO_L2_USED (0x00000001u << 16)
383 #define SBG_ECOM_GPS_POS_GLO_L3_USED (0x00000001u << 17)
384
385 #define SBG_ECOM_GPS_POS_GAL_E1_USED (0x00000001u << 18)
386 #define SBG_ECOM_GPS_POS_GAL_E5A_USED (0x00000001u << 19)
387 #define SBG_ECOM_GPS_POS_GAL_E5B_USED (0x00000001u << 20)
388 #define SBG_ECOM_GPS_POS_GAL_E5ALT_USED (0x00000001u << 21)
389 #define SBG_ECOM_GPS_POS_GAL_E6_USED (0x00000001u << 22)
390
391 #define SBG_ECOM_GPS_POS_BDS_B1_USED (0x00000001u << 23)
392 #define SBG_ECOM_GPS_POS_BDS_B2_USED (0x00000001u << 24)
393 #define SBG_ECOM_GPS_POS_BDS_B3_USED (0x00000001u << 25)
394
395 #define SBG_ECOM_GPS_POS_QZSS_L1_USED (0x00000001u << 26)
396 #define SBG_ECOM_GPS_POS_QZSS_L2_USED (0x00000001u << 27)
397 #define SBG_ECOM_GPS_POS_QZSS_L5_USED (0x00000001u << 28)
398 #define SBG_ECOM_GPS_POS_QZSS_L6_USED (0x00000001u << 29)
399
400 #define SBG_ECOM_POS_SOL_COMPUTED (SBG_ECOM_GNSS_POS_STATUS_SOL_COMPUTED)
401 #define SBG_ECOM_POS_INSUFFICIENT_OBS (SBG_ECOM_GNSS_POS_STATUS_INSUFFICIENT_OBS)
402 #define SBG_ECOM_POS_INTERNAL_ERROR (SBG_ECOM_GNSS_POS_STATUS_INTERNAL_ERROR)
403 #define SBG_ECOM_POS_HEIGHT_LIMIT (SBG_ECOM_GNSS_POS_STATUS_HEIGHT_LIMIT)
404
405 #define SBG_ECOM_POS_NO_SOLUTION (SBG_ECOM_GNSS_POS_TYPE_NO_SOLUTION)
406 #define SBG_ECOM_POS_UNKNOWN_TYPE (SBG_ECOM_GNSS_POS_TYPE_UNKNOWN)
407 #define SBG_ECOM_POS_SINGLE (SBG_ECOM_GNSS_POS_TYPE_SINGLE)
408 #define SBG_ECOM_POS_PSRDIFF (SBG_ECOM_GNSS_POS_TYPE_PSRDIFF)
409 #define SBG_ECOM_POS_SBAS (SBG_ECOM_GNSS_POS_TYPE_SBAS)
410 #define SBG_ECOM_POS_OMNISTAR (SBG_ECOM_GNSS_POS_TYPE_OMNISTAR)
411 #define SBG_ECOM_POS_RTK_FLOAT (SBG_ECOM_GNSS_POS_TYPE_RTK_FLOAT)
412 #define SBG_ECOM_POS_RTK_INT (SBG_ECOM_GNSS_POS_TYPE_RTK_INT)
413 #define SBG_ECOM_POS_PPP_FLOAT (SBG_ECOM_GNSS_POS_TYPE_PPP_FLOAT)
414 #define SBG_ECOM_POS_PPP_INT (SBG_ECOM_GNSS_POS_TYPE_PPP_INT)
415 #define SBG_ECOM_POS_FIXED (SBG_ECOM_GNSS_POS_TYPE_FIXED)
416#endif
417
418SBG_DEPRECATED_TYPEDEF(typedef enum _SbgEComGnssPosStatus SbgEComGpsPosStatus);
419SBG_DEPRECATED_TYPEDEF(typedef enum _SbgEComGnssPosType SbgEComGpsPosType);
420SBG_DEPRECATED_TYPEDEF(typedef struct _SbgEComLogGnssPos SbgLogGpsPos);
421
422SBG_DEPRECATED(uint32_t sbgEComLogGpsPosBuildStatus(SbgEComGnssPosStatus status, SbgEComGnssPosType type, uint32_t masks));
423SBG_DEPRECATED(SbgEComGnssPosStatus sbgEComLogGpsPosGetStatus(uint32_t status));
424SBG_DEPRECATED(SbgEComGnssPosType sbgEComLogGpsPosGetType(uint32_t status));
425
426SBG_DEPRECATED(SbgErrorCode sbgEComBinaryLogParseGpsPosData(SbgStreamBuffer *pStreamBuffer, SbgEComLogGnssPos *pLogData));
427SBG_DEPRECATED(SbgErrorCode sbgEComBinaryLogWriteGpsPosData(SbgStreamBuffer *pStreamBuffer, const SbgEComLogGnssPos *pLogData));
428
429#ifdef __cplusplus
430}
431#endif
432
433#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 sbgEComLogGnssPosSetUpTimeInvalid(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)
bool sbgEComLogGnssPosUpTimeIsValid(const SbgEComLogGnssPos *pLogData)
_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
uint32_t upTime
Definition sbgEComLogGnssPos.h:165
uint16_t baseStationId
Definition sbgEComLogGnssPos.h:160
uint16_t differentialAge
Definition sbgEComLogGnssPos.h:161
uint32_t timeStamp
Definition sbgEComLogGnssPos.h:149
uint8_t nrDiagReboots
Definition sbgEComLogGnssPos.h:164
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