20#ifndef __FPSDK_COMMON_PARSER_TYPES_HPP__
21#define __FPSDK_COMMON_PARSER_TYPES_HPP__
static constexpr std::size_t MIN_ANY_SIZE
The smallest of the above.
static constexpr std::size_t MAX_NMEA_SIZE
Maximum NMEA message size (standard NMEA would be 82!)
Protocol StrProtocol(const char *name)
Get Protocol from name.
static constexpr std::size_t MAX_NAME_SIZE
Maximum size of message name string (incl. nul termination)
static constexpr const char * PROTOCOL_NAME_UBX
Name (label) for Protocol::UBX.
static constexpr const char * PROTOCOL_NAME_FP_A
Name (label) for Protocol::FP_A.
static constexpr std::size_t MAX_SPARTN_SIZE
Maximum SPARTN message size.
static constexpr const char * PROTOCOL_NAME_FP_B
Name (label) for Protocol::FP_B.
static constexpr std::size_t MAX_FP_A_SIZE
Maximum FP_A message size (must be the same as MAX_NMEA_SIZE)
static constexpr const char * PROTOCOL_NAME_UNI_B
Name (label) for Protocol::UNI_B.
static constexpr std::size_t MAX_RTCM3_SIZE
Maximum RTCM3 message size.
static constexpr const char * PROTOCOL_NAME_RTCM3
Name (label) for Protocol::RTCM3.
static constexpr std::size_t MAX_INFO_SIZE
Maximum size of message info string (incl. nul termination)
static constexpr const char * PROTOCOL_NAME_NOV_B
Name (label) for Protocol::NOV_B.
static constexpr std::size_t MAX_UNI_B_SIZE
Maximum UNI_B message size.
static constexpr std::size_t MAX_FP_B_SIZE
Maximum FP_B message size.
static constexpr std::size_t MAX_NOV_B_SIZE
Maximum NOV_B message size.
Protocol
Protocols (message types), see also Protocol and message naming.
@ OTHER
Other "message" (unknown or corrupt message, spurious data, line noise, ...) (PROTOCOL_NAME_OTHER)
@ SPARTN
SPARTN (PROTOCOL_NAME_SPARTN)
@ FP_B
FP_B (Fixposition proprietary binary) (PROTOCOL_NAME_FP_B)
@ NMEA
NMEA (PROTOCOL_NAME_NMEA)
@ UNI_B
UNI_B (Unicore proprietary binary) (PROTOCOL_NAME_UNI_B)
@ NOV_B
NOV_B (NovAtel proprietary binary, long or short header) (PROTOCOL_NAME_NOV_B)
@ UBX
UBX (u-blox proprietary binary) (PROTOCOL_NAME_UBX)
@ FP_A
FP_A (Fixposition proprietary ASCII) (PROTOCOL_NAME_FP_A)
@ RTCM3
RTCM3 (PROTOCOL_NAME_RTCM3)
const char * ProtocolStr(const Protocol proto)
Stringify Protocol.
static constexpr const char * PROTOCOL_NAME_NMEA
Name (label) for Protocol::NMEA.
static constexpr std::size_t MAX_ADD_SIZE
Max size for Parser::Add() that is guaranteed to work.
static constexpr const char * PROTOCOL_NAME_SPARTN
Name (label) for Protocol::SPARTN.
static constexpr std::size_t MAX_ANY_SIZE
The largest of the above.
static constexpr std::size_t MAX_UBX_SIZE
Maximum UBX message size.
static constexpr std::size_t MAX_OTHER_SIZE
Maximum OTHER message size.
static constexpr const char * PROTOCOL_NAME_OTHER
Name (label) for Protocol::OTHER.
Message frame output by the Parser.
std::string info_
Message (debug) info, default empty, call MakeInfo() to fill.
Protocol proto_
Protocol (message type)
std::string name_
Name of the message.
void MakeInfo() const
Make info_ field.
uint64_t seq_
Message counter (starting at 1)
std::vector< uint8_t > data_
Message data.
uint64_t s_other_
Total size of Protocol::OTHER messages.
uint64_t s_nmea_
Total size of Protocol::NMEA messages.
uint64_t n_other_
Number of Protocol::OTHER messages.
uint64_t n_spartn_
Number of Protocol::SPARTN messages.
uint64_t s_fpa_
Total size of Protocol::FP_A messages.
uint64_t s_spartn_
Total size of Protocol::SPARTN messages.
uint64_t n_fpb_
Number of Protocol::FP_B messages.
uint64_t n_unib_
Number of Protocol::UNI_B messages.
uint64_t n_fpa_
Number of Protocol::FP_A messages.
uint64_t s_fpb_
Total size of Protocol::FP_B messages.
uint64_t s_rtcm3_
Total size of Protocol::RTCM3 messages.
uint64_t n_rtcm3_
Number of Protocol::RTCM3 messages.
uint64_t s_msgs_
Total size of messages parsed.
uint64_t n_ubx_
Number of Protocol::UBX messages.
uint64_t n_msgs_
Number of messages parsed.
uint64_t n_novb_
Number of Protocol::NOV_B messages.
uint64_t n_nmea_
Number of Protocol::NMEA messages.
uint64_t s_unib_
Total size of Protocol::UNI_B messages.
uint64_t s_ubx_
Total size of Protocol::UBX messages.
uint64_t s_novb_
Total size of Protocol::NOV_B messages.