Fixposition SDK 0.0.0-heads/main-0-g90a51ff
Collection of c++ libraries and apps for use with Fixposition products
|
Parser NMEA routines and types. More...
Classes | |
struct | NmeaAzEl |
struct | NmeaCno |
struct | NmeaCollectGsaGsv |
Collector for NMEA-Gx-GSA and NMEA-Gx-GPA. More... | |
struct | NmeaCoordinates |
NMEA coordinates (integer degrees, float minutes and a sign for N/S resp. E/W) More... | |
struct | NmeaDate |
NMEA date (year, month, day) More... | |
struct | NmeaFloat |
NMEA float value. More... | |
struct | NmeaGgaPayload |
NMEA-Gx-GGA message payload. More... | |
struct | NmeaGllPayload |
NMEA-Gx-GLL message payload. More... | |
struct | NmeaGsaPayload |
NMEA-Gx-GSA message payload (NMEA 4.11 only!) More... | |
struct | NmeaGstPayload |
NMEA-Gx-GST message payload. More... | |
struct | NmeaGsvPayload |
NMEA-Gx-GSV message payload (NMEA 4.11 only!) More... | |
struct | NmeaHdtPayload |
NMEA-Gx-HDT message payload. More... | |
struct | NmeaInt |
NMEA integer value. More... | |
struct | NmeaLlh |
NMEA geodetic position. More... | |
struct | NmeaMessageMeta |
NMEA message meta data. More... | |
struct | NmeaPayload |
NMEA payload base class. More... | |
struct | NmeaRmcPayload |
NMEA-Gx-RMC message payload. More... | |
struct | NmeaSat |
NMEA satellite (used, e.g. in GSA) More... | |
struct | NmeaTime |
NMEA time (hour, minutes, seconds) More... | |
struct | NmeaVersion |
Constants for different versions of NMEA. More... | |
struct | NmeaVtgPayload |
NMEA-Gx-VTG message payload. More... | |
struct | NmeaZdaPayload |
NMEA-Gx-ZDA message payload. More... | |
Enumerations | |
enum class | NmeaTalkerId : int { UNSPECIFIED = '!' , PROPRIETARY = 'x' , GPS_SBAS = 'P' , GLO = 'L' , GAL = 'A' , BDS = 'B' , NAVIC = 'I' , QZSS = 'Q' , GNSS = 'N' } |
NMEA talker IDs. More... | |
enum class | NmeaQualityGga : int { UNSPECIFIED = '!' , NOFIX = '0' , SPP = '1' , DGNSS = '2' , PPS = '3' , RTK_FIXED = '4' , RTK_FLOAT = '5' , ESTIMATED = '6' , MANUAL = '7' , SIM = '8' } |
NMEA-Gx-GGA quality indicator. More... | |
enum class | NmeaStatusGllRmc : int { UNSPECIFIED = '!' , INVALID = 'V' , VALID = 'A' } |
NMEA-Gx-GLL and NMEA-Gx-RMC status. More... | |
enum class | NmeaModeGllVtg : int { UNSPECIFIED = '!' , INVALID = 'N' , AUTONOMOUS = 'A' , DGNSS = 'D' , ESTIMATED = 'E' , MANUAL = 'M' , SIM = 'S' } |
NMEA-Gx-GLL and NMEA-Gx-VTG pos mode. More... | |
enum class | NmeaModeRmcGns : int { UNSPECIFIED = '!' , INVALID = 'N' , AUTONOMOUS = 'A' , DGNSS = 'D' , ESTIMATED = 'E' , RTK_FIXED = 'R' , RTK_FLOAT = 'F' , PRECISE = 'P' , MANUAL = 'M' , SIM = 'S' } |
NMEA-Gx-RMC and NMEA-Gx-GNS pos mode. More... | |
enum class | NmeaNavStatusRmc : int { UNSPECIFIED = '!' , SAFE = 'S' , CAUTION = 'C' , UNSAFE = 'U' , NA = 'V' } |
NMEA-Gx-RMC navigational status. More... | |
enum class | NmeaOpModeGsa : int { UNSPECIFIED = '!' , MANUAL = 'M' , AUTO = 'A' } |
NMEA-Gx-GNS operation mode. More... | |
enum class | NmeaNavModeGsa : int { UNSPECIFIED = '!' , NOFIX = '1' , FIX2D = '2' , FIX3D = '3' } |
NMEA-Gx-GNS nav mode. More... | |
enum class | NmeaSystemId : int { UNSPECIFIED = '!' , GPS_SBAS = '1' , GLO = '2' , GAL = '3' , BDS = '4' , QZSS = '5' , NAVIC = '6' } |
NMEA system IDs. More... | |
enum class | NmeaSignalId : int { UNSPECIFIED = 0x000 + '!' , NONE = 0x000 + '0' , GPS_L1CA = 0x100 + '1' , GPS_L2CL = 0x100 + '6' , GPS_L2CM = 0x100 + '5' , GPS_L5I = 0x100 + '7' , GPS_L5Q = 0x100 + '8' , GLO_L1OF = 0x200 + '1' , GLO_L2OF = 0x200 + '3' , GAL_E1 = 0x300 + '7' , GAL_E5A = 0x300 + '1' , GAL_E5B = 0x300 + '2' , BDS_B1ID = 0x400 + '1' , BDS_B2ID = 0x400 + 'B' , BDS_B1C = 0x400 + '3' , BDS_B2A = 0x400 + '5' , QZSS_L1CA = 0x500 + '1' , QZSS_L1S = 0x500 + '4' , QZSS_L2CM = 0x500 + '5' , QZSS_L2CL = 0x500 + '6' , QZSS_L5I = 0x500 + '7' , QZSS_L5Q = 0x500 + '8' , NAVIC_L5A = 0x600 + '5' } |
NMEA signal IDs. More... | |
Functions | |
bool | NmeaGetMessageMeta (NmeaMessageMeta &meta, const uint8_t *msg, const std::size_t msg_size) |
Get NMEA message meta data. | |
bool | NmeaGetMessageName (char *name, const std::size_t size, const uint8_t *msg, const std::size_t msg_size) |
Get NMEA message name. | |
bool | NmeaGetMessageInfo (char *info, const std::size_t size, const uint8_t *msg, const std::size_t msg_size) |
Get NMEA message info. | |
Variables | |
static constexpr uint8_t | NMEA_PREAMBLE = '$' |
NMEA framing preamble. | |
static constexpr std::size_t | NMEA_FRAME_SIZE = 6 |
NMEA frame size ("$*cc\r\n") | |
Parser NMEA routines and types.
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
NMEA-Gx-RMC and NMEA-Gx-GNS pos mode.
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
NMEA signal IDs.
bool fpsdk::common::parser::nmea::NmeaGetMessageMeta | ( | NmeaMessageMeta & | meta, |
const uint8_t * | msg, | ||
const std::size_t | msg_size ) |
Get NMEA message meta data.
[out] | meta | The meta data |
[in] | msg | Pointer to the NMEA message |
[in] | msg_size | Size of the NMEA message (>= 11) |
bool fpsdk::common::parser::nmea::NmeaGetMessageName | ( | char * | name, |
const std::size_t | size, | ||
const uint8_t * | msg, | ||
const std::size_t | msg_size ) |
Get NMEA message name.
Generates a name (string) in the form "NMEA-TALKER-FORMATTER" (for example, "NMEA-GP-GGA"). Some proprietary messages are recognised, for example, "NMEA-PUBX-POSITION".
[out] | name | String to write the name to |
[in] | size | Size of name (incl. nul termination) |
[in] | msg | Pointer to the NMEA message |
[in] | msg_size | Size of the msg |
name
buffer was too small bool fpsdk::common::parser::nmea::NmeaGetMessageInfo | ( | char * | info, |
const std::size_t | size, | ||
const uint8_t * | msg, | ||
const std::size_t | msg_size ) |
Get NMEA message info.
This stringifies the content of some NMEA messages, for debugging.
[out] | info | String to write the info to |
[in] | size | Size of name (incl. nul termination) |
[in] | msg | Pointer to the NMEA message |
[in] | msg_size | Size of the msg |
name
buffer was too small
|
staticconstexpr |