Fixposition SDK 0.0.0-heads/main-0-g97f6014
Collection of c++ libraries and apps for use with Fixposition products on Linux
Loading...
Searching...
No Matches
sbf.hpp
Go to the documentation of this file.
1/**
2 * \verbatim
3 * ___ ___
4 * \ \ / /
5 * \ \/ / Copyright (c) Fixposition AG (www.fixposition.com) and contributors
6 * / /\ \ License: see the LICENSE file
7 * /__/ \__\
8 *
9 * Based on work by flipflip (https://github.com/phkehl)
10 * The information on message structures, IDs, descriptions etc. in this file are from publicly available data, such as:
11 * - mosaic-G5 Reference Guide, copyright 2000-2025 Septentrio NV/SA, part of HEXAGON
12 * \endverbatim
13 *
14 * @file
15 * @brief Fixposition SDK: Parser SBF routines and types
16 *
17 * @page FPSDK_COMMON_PARSER_SBF Parser SBF routines and types
18 *
19 * **API**: fpsdk_common/parser/sbf.hpp and fpsdk::common::parser::sbf
20 *
21 */
22#ifndef __FPSDK_COMMON_PARSER_SBF_HPP__
23#define __FPSDK_COMMON_PARSER_SBF_HPP__
24
25/* LIBC/STL */
26#include <cstdint>
27
28/* EXTERNAL */
29
30/* PACKAGE */
31
32namespace fpsdk {
33namespace common {
34namespace parser {
35/**
36 * @brief Parser SBF routines and types
37 */
38namespace sbf {
39/* ****************************************************************************************************************** */
40
41static constexpr uint8_t SBF_SYNC_1 = '$'; //!< Sync char 1 (like NMEA...)
42static constexpr uint8_t SBF_SYNC_2 = '@'; //!< Sync char 2
43static constexpr std::size_t SBF_HEAD_SIZE = 8; //!< Size of the SBF header (SbfHeader)
44
45/**
46 * @brief Get block type (message ID w/o revision)
47 *
48 * @param[in] msg Pointer to the start of the message
49 *
50 * @note No check on the data provided is done. The caller must ensure that the data is a valid SBF message.
51 *
52 * @returns block type
53 */
54constexpr uint16_t SbfBlockType(const uint8_t* msg)
55{
56 return (((uint16_t)((uint8_t*)msg)[5] << 8) | (uint16_t)((uint8_t*)msg)[4]) & 0x1fff;
57}
58
59/**
60 * @brief Get block revision
61 *
62 * @param[in] msg Pointer to the start of the message
63 *
64 * @note No check on the data provided is done. The caller must ensure that the data is a valid SBF message.
65 *
66 * @returns block type
67 */
68constexpr uint8_t SbfBlockRev(const uint8_t* msg)
69{
70 return ((uint8_t*)msg)[5] >> 5;
71}
72
73/**
74 * @brief Get message size
75 *
76 * @param[in] msg Pointer to the start of the message
77 *
78 * @note No check on the data provided is done. The caller must ensure that the data is a valid SBF message.
79 *
80 * @returns the message size
81 */
82constexpr uint16_t SbfMsgSize(const uint8_t* msg)
83{
84 return (((uint16_t)((uint8_t*)msg)[7] << 8) | (uint16_t)((uint8_t*)msg)[6]);
85}
86
87/**
88 * @brief Get SBF message name
89 *
90 * Generates a name (string) in the form "SBF-NAME", where NAME is a suitable stringifications of the
91 * message ID if known (for example, "SBF-NAVCART", respectively "%05u" formatted message ID if unknown (for
92 * example, "SBF-BLOCK01234").
93 *
94 * @param[out] name String to write the name to
95 * @param[in] size Size of \c name (incl. nul termination)
96 * @param[in] msg Pointer to the SBF message
97 * @param[in] msg_size Size of the \c msg
98 *
99 * @note No check on the data provided is done. The caller must ensure that the data is a valid SBF message.
100 *
101 * @returns true if message name was generated, false if \c name buffer was too small
102 */
103bool SbfGetMessageName(char* name, const std::size_t size, const uint8_t* msg, const std::size_t msg_size);
104
105/**
106 * @brief Get SBF message info
107 *
108 * This stringifies the content of some SBF messages, for debugging.
109 *
110 * @param[out] info String to write the info to
111 * @param[in] size Size of \c name (incl. nul termination)
112 * @param[in] msg Pointer to the SBF message
113 * @param[in] msg_size Size of the \c msg
114 *
115 * @note No check on the data provided is done. The caller must ensure that the data is a valid SBF message.
116 *
117 * @returns true if message info was generated (even if info is empty), false if \c name buffer was too small
118 */
119bool SbfGetMessageInfo(char* info, const std::size_t size, const uint8_t* msg, const std::size_t msg_size);
120
121// ---------------------------------------------------------------------------------------------------------------------
122
123/**
124 * @name UNI_B messages (names and IDs)
125 *
126 * @{
127 */
128// clang-format off
129// @fp_codegen_begin{FPSDK_COMMON_PARSER_SBF_MESSAGES}
130static constexpr uint16_t SBF_MEASEPOCH_MSGID = 4027; //!< SBF-MEASEPOCH message ID
131static constexpr const char* SBF_MEASEPOCH_STRID = "SBF-MEASEPOCH"; //!< SBF-MEASEPOCH message name
132static constexpr uint16_t SBF_MEASEXTRA_MSGID = 4000; //!< SBF-MEASEXTRA message ID
133static constexpr const char* SBF_MEASEXTRA_STRID = "SBF-MEASEXTRA"; //!< SBF-MEASEXTRA message name
134static constexpr uint16_t SBF_ENDOFMEAS_MSGID = 5922; //!< SBF-ENDOFMEAS message ID
135static constexpr const char* SBF_ENDOFMEAS_STRID = "SBF-ENDOFMEAS"; //!< SBF-ENDOFMEAS message name
136static constexpr uint16_t SBF_GPSRAWCA_MSGID = 4017; //!< SBF-GPSRAWCA message ID
137static constexpr const char* SBF_GPSRAWCA_STRID = "SBF-GPSRAWCA"; //!< SBF-GPSRAWCA message name
138static constexpr uint16_t SBF_GPSRAWL2C_MSGID = 4018; //!< SBF-GPSRAWL2C message ID
139static constexpr const char* SBF_GPSRAWL2C_STRID = "SBF-GPSRAWL2C"; //!< SBF-GPSRAWL2C message name
140static constexpr uint16_t SBF_GPSRAWL5_MSGID = 4019; //!< SBF-GPSRAWL5 message ID
141static constexpr const char* SBF_GPSRAWL5_STRID = "SBF-GPSRAWL5"; //!< SBF-GPSRAWL5 message name
142static constexpr uint16_t SBF_GPSRAWL1C_MSGID = 4221; //!< SBF-GPSRAWL1C message ID
143static constexpr const char* SBF_GPSRAWL1C_STRID = "SBF-GPSRAWL1C"; //!< SBF-GPSRAWL1C message name
144static constexpr uint16_t SBF_GLORAWCA_MSGID = 4026; //!< SBF-GLORAWCA message ID
145static constexpr const char* SBF_GLORAWCA_STRID = "SBF-GLORAWCA"; //!< SBF-GLORAWCA message name
146static constexpr uint16_t SBF_GALRAWFNAV_MSGID = 4022; //!< SBF-GALRAWFNAV message ID
147static constexpr const char* SBF_GALRAWFNAV_STRID = "SBF-GALRAWFNAV"; //!< SBF-GALRAWFNAV message name
148static constexpr uint16_t SBF_GALRAWINAV_MSGID = 4023; //!< SBF-GALRAWINAV message ID
149static constexpr const char* SBF_GALRAWINAV_STRID = "SBF-GALRAWINAV"; //!< SBF-GALRAWINAV message name
150static constexpr uint16_t SBF_GALRAWCNAV_MSGID = 4024; //!< SBF-GALRAWCNAV message ID
151static constexpr const char* SBF_GALRAWCNAV_STRID = "SBF-GALRAWCNAV"; //!< SBF-GALRAWCNAV message name
152static constexpr uint16_t SBF_GEORAWL1_MSGID = 4020; //!< SBF-GEORAWL1 message ID
153static constexpr const char* SBF_GEORAWL1_STRID = "SBF-GEORAWL1"; //!< SBF-GEORAWL1 message name
154static constexpr uint16_t SBF_GEORAWL5_MSGID = 4021; //!< SBF-GEORAWL5 message ID
155static constexpr const char* SBF_GEORAWL5_STRID = "SBF-GEORAWL5"; //!< SBF-GEORAWL5 message name
156static constexpr uint16_t SBF_BDSRAW_MSGID = 4047; //!< SBF-BDSRAW message ID
157static constexpr const char* SBF_BDSRAW_STRID = "SBF-BDSRAW"; //!< SBF-BDSRAW message name
158static constexpr uint16_t SBF_BDSRAWB1C_MSGID = 4218; //!< SBF-BDSRAWB1C message ID
159static constexpr const char* SBF_BDSRAWB1C_STRID = "SBF-BDSRAWB1C"; //!< SBF-BDSRAWB1C message name
160static constexpr uint16_t SBF_BDSRAWB2A_MSGID = 4219; //!< SBF-BDSRAWB2A message ID
161static constexpr const char* SBF_BDSRAWB2A_STRID = "SBF-BDSRAWB2A"; //!< SBF-BDSRAWB2A message name
162static constexpr uint16_t SBF_BDSRAWB2B_MSGID = 4242; //!< SBF-BDSRAWB2B message ID
163static constexpr const char* SBF_BDSRAWB2B_STRID = "SBF-BDSRAWB2B"; //!< SBF-BDSRAWB2B message name
164static constexpr uint16_t SBF_QZSRAWL1CA_MSGID = 4066; //!< SBF-QZSRAWL1CA message ID
165static constexpr const char* SBF_QZSRAWL1CA_STRID = "SBF-QZSRAWL1CA"; //!< SBF-QZSRAWL1CA message name
166static constexpr uint16_t SBF_QZSRAWL2C_MSGID = 4067; //!< SBF-QZSRAWL2C message ID
167static constexpr const char* SBF_QZSRAWL2C_STRID = "SBF-QZSRAWL2C"; //!< SBF-QZSRAWL2C message name
168static constexpr uint16_t SBF_QZSRAWL5_MSGID = 4068; //!< SBF-QZSRAWL5 message ID
169static constexpr const char* SBF_QZSRAWL5_STRID = "SBF-QZSRAWL5"; //!< SBF-QZSRAWL5 message name
170static constexpr uint16_t SBF_QZSRAWL6D_MSGID = 4270; //!< SBF-QZSRAWL6D message ID
171static constexpr const char* SBF_QZSRAWL6D_STRID = "SBF-QZSRAWL6D"; //!< SBF-QZSRAWL6D message name
172static constexpr uint16_t SBF_QZSRAWL6E_MSGID = 4271; //!< SBF-QZSRAWL6E message ID
173static constexpr const char* SBF_QZSRAWL6E_STRID = "SBF-QZSRAWL6E"; //!< SBF-QZSRAWL6E message name
174static constexpr uint16_t SBF_QZSRAWL1C_MSGID = 4227; //!< SBF-QZSRAWL1C message ID
175static constexpr const char* SBF_QZSRAWL1C_STRID = "SBF-QZSRAWL1C"; //!< SBF-QZSRAWL1C message name
176static constexpr uint16_t SBF_QZSRAWL1S_MSGID = 4228; //!< SBF-QZSRAWL1S message ID
177static constexpr const char* SBF_QZSRAWL1S_STRID = "SBF-QZSRAWL1S"; //!< SBF-QZSRAWL1S message name
178static constexpr uint16_t SBF_QZSRAWL5S_MSGID = 4246; //!< SBF-QZSRAWL5S message ID
179static constexpr const char* SBF_QZSRAWL5S_STRID = "SBF-QZSRAWL5S"; //!< SBF-QZSRAWL5S message name
180static constexpr uint16_t SBF_NAVICRAW_MSGID = 4093; //!< SBF-NAVICRAW message ID
181static constexpr const char* SBF_NAVICRAW_STRID = "SBF-NAVICRAW"; //!< SBF-NAVICRAW message name
182static constexpr uint16_t SBF_GPSNAV_MSGID = 5891; //!< SBF-GPSNAV message ID
183static constexpr const char* SBF_GPSNAV_STRID = "SBF-GPSNAV"; //!< SBF-GPSNAV message name
184static constexpr uint16_t SBF_GPSALM_MSGID = 5892; //!< SBF-GPSALM message ID
185static constexpr const char* SBF_GPSALM_STRID = "SBF-GPSALM"; //!< SBF-GPSALM message name
186static constexpr uint16_t SBF_GPSION_MSGID = 5893; //!< SBF-GPSION message ID
187static constexpr const char* SBF_GPSION_STRID = "SBF-GPSION"; //!< SBF-GPSION message name
188static constexpr uint16_t SBF_GPSUTC_MSGID = 5894; //!< SBF-GPSUTC message ID
189static constexpr const char* SBF_GPSUTC_STRID = "SBF-GPSUTC"; //!< SBF-GPSUTC message name
190static constexpr uint16_t SBF_GPSCNAV_MSGID = 4042; //!< SBF-GPSCNAV message ID
191static constexpr const char* SBF_GPSCNAV_STRID = "SBF-GPSCNAV"; //!< SBF-GPSCNAV message name
192static constexpr uint16_t SBF_GLONAV_MSGID = 4004; //!< SBF-GLONAV message ID
193static constexpr const char* SBF_GLONAV_STRID = "SBF-GLONAV"; //!< SBF-GLONAV message name
194static constexpr uint16_t SBF_GLOALM_MSGID = 4005; //!< SBF-GLOALM message ID
195static constexpr const char* SBF_GLOALM_STRID = "SBF-GLOALM"; //!< SBF-GLOALM message name
196static constexpr uint16_t SBF_GLOTIME_MSGID = 4036; //!< SBF-GLOTIME message ID
197static constexpr const char* SBF_GLOTIME_STRID = "SBF-GLOTIME"; //!< SBF-GLOTIME message name
198static constexpr uint16_t SBF_GALNAV_MSGID = 4002; //!< SBF-GALNAV message ID
199static constexpr const char* SBF_GALNAV_STRID = "SBF-GALNAV"; //!< SBF-GALNAV message name
200static constexpr uint16_t SBF_GALALM_MSGID = 4003; //!< SBF-GALALM message ID
201static constexpr const char* SBF_GALALM_STRID = "SBF-GALALM"; //!< SBF-GALALM message name
202static constexpr uint16_t SBF_GALION_MSGID = 4030; //!< SBF-GALION message ID
203static constexpr const char* SBF_GALION_STRID = "SBF-GALION"; //!< SBF-GALION message name
204static constexpr uint16_t SBF_GALUTC_MSGID = 4031; //!< SBF-GALUTC message ID
205static constexpr const char* SBF_GALUTC_STRID = "SBF-GALUTC"; //!< SBF-GALUTC message name
206static constexpr uint16_t SBF_GALGSTGPS_MSGID = 4032; //!< SBF-GALGSTGPS message ID
207static constexpr const char* SBF_GALGSTGPS_STRID = "SBF-GALGSTGPS"; //!< SBF-GALGSTGPS message name
208static constexpr uint16_t SBF_GALSARRLM_MSGID = 4034; //!< SBF-GALSARRLM message ID
209static constexpr const char* SBF_GALSARRLM_STRID = "SBF-GALSARRLM"; //!< SBF-GALSARRLM message name
210static constexpr uint16_t SBF_BDSNAV_MSGID = 4081; //!< SBF-BDSNAV message ID
211static constexpr const char* SBF_BDSNAV_STRID = "SBF-BDSNAV"; //!< SBF-BDSNAV message name
212static constexpr uint16_t SBF_BDSCNAV1_MSGID = 4251; //!< SBF-BDSCNAV1 message ID
213static constexpr const char* SBF_BDSCNAV1_STRID = "SBF-BDSCNAV1"; //!< SBF-BDSCNAV1 message name
214static constexpr uint16_t SBF_BDSCNAV2_MSGID = 4252; //!< SBF-BDSCNAV2 message ID
215static constexpr const char* SBF_BDSCNAV2_STRID = "SBF-BDSCNAV2"; //!< SBF-BDSCNAV2 message name
216static constexpr uint16_t SBF_BDSCNAV3_MSGID = 4253; //!< SBF-BDSCNAV3 message ID
217static constexpr const char* SBF_BDSCNAV3_STRID = "SBF-BDSCNAV3"; //!< SBF-BDSCNAV3 message name
218static constexpr uint16_t SBF_BDSALM_MSGID = 4119; //!< SBF-BDSALM message ID
219static constexpr const char* SBF_BDSALM_STRID = "SBF-BDSALM"; //!< SBF-BDSALM message name
220static constexpr uint16_t SBF_BDSION_MSGID = 4120; //!< SBF-BDSION message ID
221static constexpr const char* SBF_BDSION_STRID = "SBF-BDSION"; //!< SBF-BDSION message name
222static constexpr uint16_t SBF_BDSUTC_MSGID = 4121; //!< SBF-BDSUTC message ID
223static constexpr const char* SBF_BDSUTC_STRID = "SBF-BDSUTC"; //!< SBF-BDSUTC message name
224static constexpr uint16_t SBF_QZSNAV_MSGID = 4095; //!< SBF-QZSNAV message ID
225static constexpr const char* SBF_QZSNAV_STRID = "SBF-QZSNAV"; //!< SBF-QZSNAV message name
226static constexpr uint16_t SBF_QZSALM_MSGID = 4116; //!< SBF-QZSALM message ID
227static constexpr const char* SBF_QZSALM_STRID = "SBF-QZSALM"; //!< SBF-QZSALM message name
228static constexpr uint16_t SBF_NAVICLNAV_MSGID = 4254; //!< SBF-NAVICLNAV message ID
229static constexpr const char* SBF_NAVICLNAV_STRID = "SBF-NAVICLNAV"; //!< SBF-NAVICLNAV message name
230static constexpr uint16_t SBF_GEONAV_MSGID = 5896; //!< SBF-GEONAV message ID
231static constexpr const char* SBF_GEONAV_STRID = "SBF-GEONAV"; //!< SBF-GEONAV message name
232static constexpr uint16_t SBF_GEOALM_MSGID = 5897; //!< SBF-GEOALM message ID
233static constexpr const char* SBF_GEOALM_STRID = "SBF-GEOALM"; //!< SBF-GEOALM message name
234static constexpr uint16_t SBF_PVTCARTESIAN_MSGID = 4006; //!< SBF-PVTCARTESIAN message ID
235static constexpr const char* SBF_PVTCARTESIAN_STRID = "SBF-PVTCARTESIAN"; //!< SBF-PVTCARTESIAN message name
236static constexpr uint16_t SBF_PVTGEODETIC_MSGID = 4007; //!< SBF-PVTGEODETIC message ID
237static constexpr const char* SBF_PVTGEODETIC_STRID = "SBF-PVTGEODETIC"; //!< SBF-PVTGEODETIC message name
238static constexpr uint16_t SBF_POSCOVCARTESIAN_MSGID = 5905; //!< SBF-POSCOVCARTESIAN message ID
239static constexpr const char* SBF_POSCOVCARTESIAN_STRID = "SBF-POSCOVCARTESIAN"; //!< SBF-POSCOVCARTESIAN message name
240static constexpr uint16_t SBF_POSCOVGEODETIC_MSGID = 5906; //!< SBF-POSCOVGEODETIC message ID
241static constexpr const char* SBF_POSCOVGEODETIC_STRID = "SBF-POSCOVGEODETIC"; //!< SBF-POSCOVGEODETIC message name
242static constexpr uint16_t SBF_VELCOVCARTESIAN_MSGID = 5907; //!< SBF-VELCOVCARTESIAN message ID
243static constexpr const char* SBF_VELCOVCARTESIAN_STRID = "SBF-VELCOVCARTESIAN"; //!< SBF-VELCOVCARTESIAN message name
244static constexpr uint16_t SBF_VELCOVGEODETIC_MSGID = 5908; //!< SBF-VELCOVGEODETIC message ID
245static constexpr const char* SBF_VELCOVGEODETIC_STRID = "SBF-VELCOVGEODETIC"; //!< SBF-VELCOVGEODETIC message name
246static constexpr uint16_t SBF_DOP_MSGID = 4001; //!< SBF-DOP message ID
247static constexpr const char* SBF_DOP_STRID = "SBF-DOP"; //!< SBF-DOP message name
248static constexpr uint16_t SBF_BASEVECTORCART_MSGID = 4043; //!< SBF-BASEVECTORCART message ID
249static constexpr const char* SBF_BASEVECTORCART_STRID = "SBF-BASEVECTORCART"; //!< SBF-BASEVECTORCART message name
250static constexpr uint16_t SBF_BASEVECTORGEOD_MSGID = 4028; //!< SBF-BASEVECTORGEOD message ID
251static constexpr const char* SBF_BASEVECTORGEOD_STRID = "SBF-BASEVECTORGEOD"; //!< SBF-BASEVECTORGEOD message name
252static constexpr uint16_t SBF_PVTSUPPORT_MSGID = 4076; //!< SBF-PVTSUPPORT message ID
253static constexpr const char* SBF_PVTSUPPORT_STRID = "SBF-PVTSUPPORT"; //!< SBF-PVTSUPPORT message name
254static constexpr uint16_t SBF_PVTSUPPORTA_MSGID = 4079; //!< SBF-PVTSUPPORTA message ID
255static constexpr const char* SBF_PVTSUPPORTA_STRID = "SBF-PVTSUPPORTA"; //!< SBF-PVTSUPPORTA message name
256static constexpr uint16_t SBF_ENDOFPVT_MSGID = 5921; //!< SBF-ENDOFPVT message ID
257static constexpr const char* SBF_ENDOFPVT_STRID = "SBF-ENDOFPVT"; //!< SBF-ENDOFPVT message name
258static constexpr uint16_t SBF_NAVCART_MSGID = 4272; //!< SBF-NAVCART message ID
259static constexpr const char* SBF_NAVCART_STRID = "SBF-NAVCART"; //!< SBF-NAVCART message name
260static constexpr uint16_t SBF_ATTEULER_MSGID = 5938; //!< SBF-ATTEULER message ID
261static constexpr const char* SBF_ATTEULER_STRID = "SBF-ATTEULER"; //!< SBF-ATTEULER message name
262static constexpr uint16_t SBF_ATTCOVEULER_MSGID = 5939; //!< SBF-ATTCOVEULER message ID
263static constexpr const char* SBF_ATTCOVEULER_STRID = "SBF-ATTCOVEULER"; //!< SBF-ATTCOVEULER message name
264static constexpr uint16_t SBF_AUXANTPOSITIONS_MSGID = 5942; //!< SBF-AUXANTPOSITIONS message ID
265static constexpr const char* SBF_AUXANTPOSITIONS_STRID = "SBF-AUXANTPOSITIONS"; //!< SBF-AUXANTPOSITIONS message name
266static constexpr uint16_t SBF_ENDOFATT_MSGID = 5943; //!< SBF-ENDOFATT message ID
267static constexpr const char* SBF_ENDOFATT_STRID = "SBF-ENDOFATT"; //!< SBF-ENDOFATT message name
268static constexpr uint16_t SBF_RECEIVERTIME_MSGID = 5914; //!< SBF-RECEIVERTIME message ID
269static constexpr const char* SBF_RECEIVERTIME_STRID = "SBF-RECEIVERTIME"; //!< SBF-RECEIVERTIME message name
270static constexpr uint16_t SBF_XPPSOFFSET_MSGID = 5911; //!< SBF-XPPSOFFSET message ID
271static constexpr const char* SBF_XPPSOFFSET_STRID = "SBF-XPPSOFFSET"; //!< SBF-XPPSOFFSET message name
272static constexpr uint16_t SBF_EXTEVENT_MSGID = 5924; //!< SBF-EXTEVENT message ID
273static constexpr const char* SBF_EXTEVENT_STRID = "SBF-EXTEVENT"; //!< SBF-EXTEVENT message name
274static constexpr uint16_t SBF_EXTEVENTPVTCARTESIAN_MSGID = 4037; //!< SBF-EXTEVENTPVTCARTESIAN message ID
275static constexpr const char* SBF_EXTEVENTPVTCARTESIAN_STRID = "SBF-EXTEVENTPVTCARTESIAN"; //!< SBF-EXTEVENTPVTCARTESIAN message name
276static constexpr uint16_t SBF_EXTEVENTPVTGEODETIC_MSGID = 4038; //!< SBF-EXTEVENTPVTGEODETIC message ID
277static constexpr const char* SBF_EXTEVENTPVTGEODETIC_STRID = "SBF-EXTEVENTPVTGEODETIC"; //!< SBF-EXTEVENTPVTGEODETIC message name
278static constexpr uint16_t SBF_EXTEVENTBASEVECTGEOD_MSGID = 4217; //!< SBF-EXTEVENTBASEVECTGEOD message ID
279static constexpr const char* SBF_EXTEVENTBASEVECTGEOD_STRID = "SBF-EXTEVENTBASEVECTGEOD"; //!< SBF-EXTEVENTBASEVECTGEOD message name
280static constexpr uint16_t SBF_EXTEVENTATTEULER_MSGID = 4237; //!< SBF-EXTEVENTATTEULER message ID
281static constexpr const char* SBF_EXTEVENTATTEULER_STRID = "SBF-EXTEVENTATTEULER"; //!< SBF-EXTEVENTATTEULER message name
282static constexpr uint16_t SBF_DIFFCORRIN_MSGID = 5919; //!< SBF-DIFFCORRIN message ID
283static constexpr const char* SBF_DIFFCORRIN_STRID = "SBF-DIFFCORRIN"; //!< SBF-DIFFCORRIN message name
284static constexpr uint16_t SBF_BASESTATION_MSGID = 5949; //!< SBF-BASESTATION message ID
285static constexpr const char* SBF_BASESTATION_STRID = "SBF-BASESTATION"; //!< SBF-BASESTATION message name
286static constexpr uint16_t SBF_LBANDTRACKERSTATUS_MSGID = 4201; //!< SBF-LBANDTRACKERSTATUS message ID
287static constexpr const char* SBF_LBANDTRACKERSTATUS_STRID = "SBF-LBANDTRACKERSTATUS"; //!< SBF-LBANDTRACKERSTATUS message name
288static constexpr uint16_t SBF_LBANDRAW_MSGID = 4212; //!< SBF-LBANDRAW message ID
289static constexpr const char* SBF_LBANDRAW_STRID = "SBF-LBANDRAW"; //!< SBF-LBANDRAW message name
290static constexpr uint16_t SBF_CHANNELSTATUS_MSGID = 4013; //!< SBF-CHANNELSTATUS message ID
291static constexpr const char* SBF_CHANNELSTATUS_STRID = "SBF-CHANNELSTATUS"; //!< SBF-CHANNELSTATUS message name
292static constexpr uint16_t SBF_RECEIVERSTATUS_MSGID = 4014; //!< SBF-RECEIVERSTATUS message ID
293static constexpr const char* SBF_RECEIVERSTATUS_STRID = "SBF-RECEIVERSTATUS"; //!< SBF-RECEIVERSTATUS message name
294static constexpr uint16_t SBF_SATVISIBILITY_MSGID = 4012; //!< SBF-SATVISIBILITY message ID
295static constexpr const char* SBF_SATVISIBILITY_STRID = "SBF-SATVISIBILITY"; //!< SBF-SATVISIBILITY message name
296static constexpr uint16_t SBF_INPUTLINK_MSGID = 4090; //!< SBF-INPUTLINK message ID
297static constexpr const char* SBF_INPUTLINK_STRID = "SBF-INPUTLINK"; //!< SBF-INPUTLINK message name
298static constexpr uint16_t SBF_OUTPUTLINK_MSGID = 4091; //!< SBF-OUTPUTLINK message ID
299static constexpr const char* SBF_OUTPUTLINK_STRID = "SBF-OUTPUTLINK"; //!< SBF-OUTPUTLINK message name
300static constexpr uint16_t SBF_QUALITYIND_MSGID = 4082; //!< SBF-QUALITYIND message ID
301static constexpr const char* SBF_QUALITYIND_STRID = "SBF-QUALITYIND"; //!< SBF-QUALITYIND message name
302static constexpr uint16_t SBF_DISKSTATUS_MSGID = 4059; //!< SBF-DISKSTATUS message ID
303static constexpr const char* SBF_DISKSTATUS_STRID = "SBF-DISKSTATUS"; //!< SBF-DISKSTATUS message name
304static constexpr uint16_t SBF_RFSTATUS_MSGID = 4092; //!< SBF-RFSTATUS message ID
305static constexpr const char* SBF_RFSTATUS_STRID = "SBF-RFSTATUS"; //!< SBF-RFSTATUS message name
306static constexpr uint16_t SBF_GALAUTHSTATUS_MSGID = 4245; //!< SBF-GALAUTHSTATUS message ID
307static constexpr const char* SBF_GALAUTHSTATUS_STRID = "SBF-GALAUTHSTATUS"; //!< SBF-GALAUTHSTATUS message name
308static constexpr uint16_t SBF_RECEIVERSETUP_MSGID = 5902; //!< SBF-RECEIVERSETUP message ID
309static constexpr const char* SBF_RECEIVERSETUP_STRID = "SBF-RECEIVERSETUP"; //!< SBF-RECEIVERSETUP message name
310static constexpr uint16_t SBF_RXMESSAGE_MSGID = 4103; //!< SBF-RXMESSAGE message ID
311static constexpr const char* SBF_RXMESSAGE_STRID = "SBF-RXMESSAGE"; //!< SBF-RXMESSAGE message name
312static constexpr uint16_t SBF_COMMANDS_MSGID = 4015; //!< SBF-COMMANDS message ID
313static constexpr const char* SBF_COMMANDS_STRID = "SBF-COMMANDS"; //!< SBF-COMMANDS message name
314static constexpr uint16_t SBF_COMMENT_MSGID = 5936; //!< SBF-COMMENT message ID
315static constexpr const char* SBF_COMMENT_STRID = "SBF-COMMENT"; //!< SBF-COMMENT message name
316static constexpr uint16_t SBF_BBSAMPLES_MSGID = 4040; //!< SBF-BBSAMPLES message ID
317static constexpr const char* SBF_BBSAMPLES_STRID = "SBF-BBSAMPLES"; //!< SBF-BBSAMPLES message name
318static constexpr uint16_t SBF_ASCIIIN_MSGID = 4075; //!< SBF-ASCIIIN message ID
319static constexpr const char* SBF_ASCIIIN_STRID = "SBF-ASCIIIN"; //!< SBF-ASCIIIN message name
320// @fp_codegen_end{FPSDK_COMMON_PARSER_SBF_MESSAGES}
321// clang-format on
322///@}
323
324// ---------------------------------------------------------------------------------------------------------------------
325
326/**
327 * @brief SBF block header
328 */
330{ // clang-format off
331 uint8_t sync1; //!< = SBF_SYNC_1
332 uint8_t sync2; //!< = SBF_SYNC_2
333 uint16_t id; //!< Block (message) type (bits 0..12) and version (bits 13..15)
334 uint16_t crc; //!< CRC
335 uint16_t length; //!< Block (payload) size
336}; // clang-format on
337
338static_assert(sizeof(SbfHeader) == SBF_HEAD_SIZE, "");
339
340/* ****************************************************************************************************************** */
341} // namespace sbf
342} // namespace parser
343} // namespace common
344} // namespace fpsdk
345#endif // __FPSDK_COMMON_PARSER_SBF_HPP__
Parser SBF routines and types.
Definition sbf.hpp:38
static constexpr const char * SBF_RXMESSAGE_STRID
SBF-RXMESSAGE message name.
Definition sbf.hpp:311
static constexpr const char * SBF_BDSRAWB2B_STRID
SBF-BDSRAWB2B message name.
Definition sbf.hpp:163
static constexpr uint16_t SBF_RECEIVERTIME_MSGID
SBF-RECEIVERTIME message ID.
Definition sbf.hpp:268
static constexpr uint16_t SBF_GALGSTGPS_MSGID
SBF-GALGSTGPS message ID.
Definition sbf.hpp:206
static constexpr uint16_t SBF_DOP_MSGID
SBF-DOP message ID.
Definition sbf.hpp:246
static constexpr const char * SBF_BDSRAWB1C_STRID
SBF-BDSRAWB1C message name.
Definition sbf.hpp:159
static constexpr uint8_t SBF_SYNC_1
Sync char 1 (like NMEA...)
Definition sbf.hpp:41
static constexpr uint16_t SBF_RECEIVERSETUP_MSGID
SBF-RECEIVERSETUP message ID.
Definition sbf.hpp:308
static constexpr uint16_t SBF_BBSAMPLES_MSGID
SBF-BBSAMPLES message ID.
Definition sbf.hpp:316
static constexpr const char * SBF_COMMANDS_STRID
SBF-COMMANDS message name.
Definition sbf.hpp:313
static constexpr uint16_t SBF_GALRAWCNAV_MSGID
SBF-GALRAWCNAV message ID.
Definition sbf.hpp:150
static constexpr uint16_t SBF_GPSRAWCA_MSGID
SBF-GPSRAWCA message ID.
Definition sbf.hpp:136
static constexpr uint16_t SBF_CHANNELSTATUS_MSGID
SBF-CHANNELSTATUS message ID.
Definition sbf.hpp:290
static constexpr const char * SBF_QUALITYIND_STRID
SBF-QUALITYIND message name.
Definition sbf.hpp:301
static constexpr const char * SBF_QZSRAWL6E_STRID
SBF-QZSRAWL6E message name.
Definition sbf.hpp:173
static constexpr const char * SBF_GPSUTC_STRID
SBF-GPSUTC message name.
Definition sbf.hpp:189
static constexpr uint16_t SBF_GPSRAWL1C_MSGID
SBF-GPSRAWL1C message ID.
Definition sbf.hpp:142
static constexpr uint16_t SBF_GPSUTC_MSGID
SBF-GPSUTC message ID.
Definition sbf.hpp:188
static constexpr const char * SBF_RECEIVERTIME_STRID
SBF-RECEIVERTIME message name.
Definition sbf.hpp:269
static constexpr uint16_t SBF_GALAUTHSTATUS_MSGID
SBF-GALAUTHSTATUS message ID.
Definition sbf.hpp:306
static constexpr uint16_t SBF_GPSION_MSGID
SBF-GPSION message ID.
Definition sbf.hpp:186
static constexpr uint16_t SBF_EXTEVENTBASEVECTGEOD_MSGID
SBF-EXTEVENTBASEVECTGEOD message ID.
Definition sbf.hpp:278
static constexpr uint16_t SBF_BASEVECTORCART_MSGID
SBF-BASEVECTORCART message ID.
Definition sbf.hpp:248
static constexpr uint16_t SBF_QZSRAWL1CA_MSGID
SBF-QZSRAWL1CA message ID.
Definition sbf.hpp:164
static constexpr const char * SBF_GALRAWFNAV_STRID
SBF-GALRAWFNAV message name.
Definition sbf.hpp:147
static constexpr const char * SBF_GPSION_STRID
SBF-GPSION message name.
Definition sbf.hpp:187
static constexpr uint16_t SBF_VELCOVCARTESIAN_MSGID
SBF-VELCOVCARTESIAN message ID.
Definition sbf.hpp:242
static constexpr const char * SBF_PVTSUPPORTA_STRID
SBF-PVTSUPPORTA message name.
Definition sbf.hpp:255
static constexpr uint16_t SBF_ASCIIIN_MSGID
SBF-ASCIIIN message ID.
Definition sbf.hpp:318
static constexpr uint16_t SBF_GLONAV_MSGID
SBF-GLONAV message ID.
Definition sbf.hpp:192
static constexpr const char * SBF_RFSTATUS_STRID
SBF-RFSTATUS message name.
Definition sbf.hpp:305
static constexpr const char * SBF_SATVISIBILITY_STRID
SBF-SATVISIBILITY message name.
Definition sbf.hpp:295
static constexpr uint16_t SBF_BDSUTC_MSGID
SBF-BDSUTC message ID.
Definition sbf.hpp:222
static constexpr const char * SBF_BASEVECTORCART_STRID
SBF-BASEVECTORCART message name.
Definition sbf.hpp:249
static constexpr const char * SBF_POSCOVCARTESIAN_STRID
SBF-POSCOVCARTESIAN message name.
Definition sbf.hpp:239
static constexpr const char * SBF_GALSARRLM_STRID
SBF-GALSARRLM message name.
Definition sbf.hpp:209
static constexpr const char * SBF_BDSALM_STRID
SBF-BDSALM message name.
Definition sbf.hpp:219
static constexpr const char * SBF_EXTEVENTATTEULER_STRID
SBF-EXTEVENTATTEULER message name.
Definition sbf.hpp:281
static constexpr uint16_t SBF_BDSNAV_MSGID
SBF-BDSNAV message ID.
Definition sbf.hpp:210
static constexpr const char * SBF_LBANDTRACKERSTATUS_STRID
SBF-LBANDTRACKERSTATUS message name.
Definition sbf.hpp:287
static constexpr uint16_t SBF_QZSRAWL1S_MSGID
SBF-QZSRAWL1S message ID.
Definition sbf.hpp:176
static constexpr uint16_t SBF_GLOTIME_MSGID
SBF-GLOTIME message ID.
Definition sbf.hpp:196
static constexpr const char * SBF_GALAUTHSTATUS_STRID
SBF-GALAUTHSTATUS message name.
Definition sbf.hpp:307
static constexpr uint16_t SBF_PVTSUPPORTA_MSGID
SBF-PVTSUPPORTA message ID.
Definition sbf.hpp:254
static constexpr const char * SBF_QZSRAWL1CA_STRID
SBF-QZSRAWL1CA message name.
Definition sbf.hpp:165
static constexpr const char * SBF_QZSALM_STRID
SBF-QZSALM message name.
Definition sbf.hpp:227
static constexpr uint16_t SBF_QZSRAWL5_MSGID
SBF-QZSRAWL5 message ID.
Definition sbf.hpp:168
static constexpr uint16_t SBF_PVTSUPPORT_MSGID
SBF-PVTSUPPORT message ID.
Definition sbf.hpp:252
static constexpr const char * SBF_GPSNAV_STRID
SBF-GPSNAV message name.
Definition sbf.hpp:183
static constexpr const char * SBF_GALRAWCNAV_STRID
SBF-GALRAWCNAV message name.
Definition sbf.hpp:151
bool SbfGetMessageInfo(char *info, const std::size_t size, const uint8_t *msg, const std::size_t msg_size)
Get SBF message info.
static constexpr const char * SBF_QZSRAWL2C_STRID
SBF-QZSRAWL2C message name.
Definition sbf.hpp:167
static constexpr uint16_t SBF_GALRAWFNAV_MSGID
SBF-GALRAWFNAV message ID.
Definition sbf.hpp:146
static constexpr uint16_t SBF_GPSRAWL2C_MSGID
SBF-GPSRAWL2C message ID.
Definition sbf.hpp:138
static constexpr uint16_t SBF_VELCOVGEODETIC_MSGID
SBF-VELCOVGEODETIC message ID.
Definition sbf.hpp:244
static constexpr uint16_t SBF_LBANDRAW_MSGID
SBF-LBANDRAW message ID.
Definition sbf.hpp:288
static constexpr uint16_t SBF_NAVCART_MSGID
SBF-NAVCART message ID.
Definition sbf.hpp:258
static constexpr uint16_t SBF_XPPSOFFSET_MSGID
SBF-XPPSOFFSET message ID.
Definition sbf.hpp:270
static constexpr const char * SBF_QZSRAWL6D_STRID
SBF-QZSRAWL6D message name.
Definition sbf.hpp:171
static constexpr const char * SBF_BDSCNAV3_STRID
SBF-BDSCNAV3 message name.
Definition sbf.hpp:217
static constexpr uint16_t SBF_RFSTATUS_MSGID
SBF-RFSTATUS message ID.
Definition sbf.hpp:304
static constexpr uint16_t SBF_GALION_MSGID
SBF-GALION message ID.
Definition sbf.hpp:202
static constexpr uint16_t SBF_GPSRAWL5_MSGID
SBF-GPSRAWL5 message ID.
Definition sbf.hpp:140
static constexpr const char * SBF_INPUTLINK_STRID
SBF-INPUTLINK message name.
Definition sbf.hpp:297
static constexpr uint16_t SBF_POSCOVGEODETIC_MSGID
SBF-POSCOVGEODETIC message ID.
Definition sbf.hpp:240
static constexpr const char * SBF_GLONAV_STRID
SBF-GLONAV message name.
Definition sbf.hpp:193
static constexpr uint16_t SBF_QZSALM_MSGID
SBF-QZSALM message ID.
Definition sbf.hpp:226
static constexpr uint16_t SBF_EXTEVENTPVTGEODETIC_MSGID
SBF-EXTEVENTPVTGEODETIC message ID.
Definition sbf.hpp:276
static constexpr const char * SBF_NAVICRAW_STRID
SBF-NAVICRAW message name.
Definition sbf.hpp:181
static constexpr uint16_t SBF_ATTCOVEULER_MSGID
SBF-ATTCOVEULER message ID.
Definition sbf.hpp:262
static constexpr uint16_t SBF_MEASEPOCH_MSGID
SBF-MEASEPOCH message ID.
Definition sbf.hpp:130
static constexpr uint8_t SBF_SYNC_2
Sync char 2.
Definition sbf.hpp:42
static constexpr uint16_t SBF_BDSION_MSGID
SBF-BDSION message ID.
Definition sbf.hpp:220
static constexpr const char * SBF_EXTEVENTPVTCARTESIAN_STRID
SBF-EXTEVENTPVTCARTESIAN message name.
Definition sbf.hpp:275
static constexpr const char * SBF_GPSRAWCA_STRID
SBF-GPSRAWCA message name.
Definition sbf.hpp:137
static constexpr const char * SBF_GALGSTGPS_STRID
SBF-GALGSTGPS message name.
Definition sbf.hpp:207
static constexpr uint16_t SBF_DISKSTATUS_MSGID
SBF-DISKSTATUS message ID.
Definition sbf.hpp:302
static constexpr const char * SBF_BDSION_STRID
SBF-BDSION message name.
Definition sbf.hpp:221
static constexpr uint16_t SBF_QZSRAWL6D_MSGID
SBF-QZSRAWL6D message ID.
Definition sbf.hpp:170
static constexpr const char * SBF_BASESTATION_STRID
SBF-BASESTATION message name.
Definition sbf.hpp:285
static constexpr uint16_t SBF_OUTPUTLINK_MSGID
SBF-OUTPUTLINK message ID.
Definition sbf.hpp:298
static constexpr uint16_t SBF_GALNAV_MSGID
SBF-GALNAV message ID.
Definition sbf.hpp:198
static constexpr uint16_t SBF_QZSRAWL6E_MSGID
SBF-QZSRAWL6E message ID.
Definition sbf.hpp:172
static constexpr uint16_t SBF_GLOALM_MSGID
SBF-GLOALM message ID.
Definition sbf.hpp:194
static constexpr uint16_t SBF_NAVICLNAV_MSGID
SBF-NAVICLNAV message ID.
Definition sbf.hpp:228
static constexpr uint16_t SBF_GPSCNAV_MSGID
SBF-GPSCNAV message ID.
Definition sbf.hpp:190
static constexpr const char * SBF_GALALM_STRID
SBF-GALALM message name.
Definition sbf.hpp:201
static constexpr const char * SBF_COMMENT_STRID
SBF-COMMENT message name.
Definition sbf.hpp:315
bool SbfGetMessageName(char *name, const std::size_t size, const uint8_t *msg, const std::size_t msg_size)
Get SBF message name.
static constexpr const char * SBF_QZSNAV_STRID
SBF-QZSNAV message name.
Definition sbf.hpp:225
static constexpr const char * SBF_BDSRAW_STRID
SBF-BDSRAW message name.
Definition sbf.hpp:157
static constexpr uint16_t SBF_QZSRAWL5S_MSGID
SBF-QZSRAWL5S message ID.
Definition sbf.hpp:178
static constexpr uint16_t SBF_COMMANDS_MSGID
SBF-COMMANDS message ID.
Definition sbf.hpp:312
static constexpr uint16_t SBF_NAVICRAW_MSGID
SBF-NAVICRAW message ID.
Definition sbf.hpp:180
static constexpr uint16_t SBF_BDSRAWB1C_MSGID
SBF-BDSRAWB1C message ID.
Definition sbf.hpp:158
static constexpr uint16_t SBF_PVTCARTESIAN_MSGID
SBF-PVTCARTESIAN message ID.
Definition sbf.hpp:234
static constexpr uint16_t SBF_POSCOVCARTESIAN_MSGID
SBF-POSCOVCARTESIAN message ID.
Definition sbf.hpp:238
constexpr uint16_t SbfBlockType(const uint8_t *msg)
Get block type (message ID w/o revision)
Definition sbf.hpp:54
static constexpr const char * SBF_GALION_STRID
SBF-GALION message name.
Definition sbf.hpp:203
static constexpr const char * SBF_QZSRAWL1S_STRID
SBF-QZSRAWL1S message name.
Definition sbf.hpp:177
static constexpr const char * SBF_RECEIVERSTATUS_STRID
SBF-RECEIVERSTATUS message name.
Definition sbf.hpp:293
static constexpr uint16_t SBF_SATVISIBILITY_MSGID
SBF-SATVISIBILITY message ID.
Definition sbf.hpp:294
static constexpr const char * SBF_VELCOVGEODETIC_STRID
SBF-VELCOVGEODETIC message name.
Definition sbf.hpp:245
static constexpr const char * SBF_PVTGEODETIC_STRID
SBF-PVTGEODETIC message name.
Definition sbf.hpp:237
static constexpr uint16_t SBF_GEOALM_MSGID
SBF-GEOALM message ID.
Definition sbf.hpp:232
static constexpr const char * SBF_BBSAMPLES_STRID
SBF-BBSAMPLES message name.
Definition sbf.hpp:317
static constexpr const char * SBF_GALUTC_STRID
SBF-GALUTC message name.
Definition sbf.hpp:205
static constexpr uint16_t SBF_BDSRAWB2B_MSGID
SBF-BDSRAWB2B message ID.
Definition sbf.hpp:162
static constexpr const char * SBF_GPSRAWL5_STRID
SBF-GPSRAWL5 message name.
Definition sbf.hpp:141
static constexpr const char * SBF_BASEVECTORGEOD_STRID
SBF-BASEVECTORGEOD message name.
Definition sbf.hpp:251
static constexpr uint16_t SBF_ENDOFPVT_MSGID
SBF-ENDOFPVT message ID.
Definition sbf.hpp:256
static constexpr uint16_t SBF_PVTGEODETIC_MSGID
SBF-PVTGEODETIC message ID.
Definition sbf.hpp:236
static constexpr const char * SBF_AUXANTPOSITIONS_STRID
SBF-AUXANTPOSITIONS message name.
Definition sbf.hpp:265
static constexpr const char * SBF_GEORAWL5_STRID
SBF-GEORAWL5 message name.
Definition sbf.hpp:155
static constexpr const char * SBF_DIFFCORRIN_STRID
SBF-DIFFCORRIN message name.
Definition sbf.hpp:283
static constexpr const char * SBF_BDSUTC_STRID
SBF-BDSUTC message name.
Definition sbf.hpp:223
static constexpr uint16_t SBF_GEONAV_MSGID
SBF-GEONAV message ID.
Definition sbf.hpp:230
static constexpr uint16_t SBF_GALSARRLM_MSGID
SBF-GALSARRLM message ID.
Definition sbf.hpp:208
static constexpr uint16_t SBF_QZSRAWL1C_MSGID
SBF-QZSRAWL1C message ID.
Definition sbf.hpp:174
static constexpr const char * SBF_NAVCART_STRID
SBF-NAVCART message name.
Definition sbf.hpp:259
static constexpr uint16_t SBF_GPSALM_MSGID
SBF-GPSALM message ID.
Definition sbf.hpp:184
static constexpr uint16_t SBF_BDSRAW_MSGID
SBF-BDSRAW message ID.
Definition sbf.hpp:156
static constexpr const char * SBF_GPSALM_STRID
SBF-GPSALM message name.
Definition sbf.hpp:185
constexpr uint16_t SbfMsgSize(const uint8_t *msg)
Get message size.
Definition sbf.hpp:82
static constexpr uint16_t SBF_BASEVECTORGEOD_MSGID
SBF-BASEVECTORGEOD message ID.
Definition sbf.hpp:250
static constexpr const char * SBF_PVTCARTESIAN_STRID
SBF-PVTCARTESIAN message name.
Definition sbf.hpp:235
static constexpr uint16_t SBF_BDSRAWB2A_MSGID
SBF-BDSRAWB2A message ID.
Definition sbf.hpp:160
static constexpr const char * SBF_BDSNAV_STRID
SBF-BDSNAV message name.
Definition sbf.hpp:211
static constexpr const char * SBF_EXTEVENTPVTGEODETIC_STRID
SBF-EXTEVENTPVTGEODETIC message name.
Definition sbf.hpp:277
static constexpr uint16_t SBF_BDSCNAV3_MSGID
SBF-BDSCNAV3 message ID.
Definition sbf.hpp:216
static constexpr const char * SBF_QZSRAWL5_STRID
SBF-QZSRAWL5 message name.
Definition sbf.hpp:169
static constexpr const char * SBF_GEORAWL1_STRID
SBF-GEORAWL1 message name.
Definition sbf.hpp:153
static constexpr const char * SBF_CHANNELSTATUS_STRID
SBF-CHANNELSTATUS message name.
Definition sbf.hpp:291
static constexpr uint16_t SBF_ENDOFMEAS_MSGID
SBF-ENDOFMEAS message ID.
Definition sbf.hpp:134
static constexpr const char * SBF_ENDOFPVT_STRID
SBF-ENDOFPVT message name.
Definition sbf.hpp:257
static constexpr uint16_t SBF_GALRAWINAV_MSGID
SBF-GALRAWINAV message ID.
Definition sbf.hpp:148
static constexpr const char * SBF_EXTEVENTBASEVECTGEOD_STRID
SBF-EXTEVENTBASEVECTGEOD message name.
Definition sbf.hpp:279
static constexpr uint16_t SBF_BDSCNAV1_MSGID
SBF-BDSCNAV1 message ID.
Definition sbf.hpp:212
static constexpr const char * SBF_QZSRAWL5S_STRID
SBF-QZSRAWL5S message name.
Definition sbf.hpp:179
static constexpr uint16_t SBF_GALUTC_MSGID
SBF-GALUTC message ID.
Definition sbf.hpp:204
static constexpr uint16_t SBF_DIFFCORRIN_MSGID
SBF-DIFFCORRIN message ID.
Definition sbf.hpp:282
static constexpr const char * SBF_GLOALM_STRID
SBF-GLOALM message name.
Definition sbf.hpp:195
static constexpr uint16_t SBF_ENDOFATT_MSGID
SBF-ENDOFATT message ID.
Definition sbf.hpp:266
static constexpr const char * SBF_GEONAV_STRID
SBF-GEONAV message name.
Definition sbf.hpp:231
static constexpr uint16_t SBF_BASESTATION_MSGID
SBF-BASESTATION message ID.
Definition sbf.hpp:284
static constexpr uint16_t SBF_MEASEXTRA_MSGID
SBF-MEASEXTRA message ID.
Definition sbf.hpp:132
static constexpr const char * SBF_GPSRAWL1C_STRID
SBF-GPSRAWL1C message name.
Definition sbf.hpp:143
static constexpr const char * SBF_QZSRAWL1C_STRID
SBF-QZSRAWL1C message name.
Definition sbf.hpp:175
static constexpr const char * SBF_RECEIVERSETUP_STRID
SBF-RECEIVERSETUP message name.
Definition sbf.hpp:309
static constexpr const char * SBF_MEASEXTRA_STRID
SBF-MEASEXTRA message name.
Definition sbf.hpp:133
static constexpr uint16_t SBF_EXTEVENTATTEULER_MSGID
SBF-EXTEVENTATTEULER message ID.
Definition sbf.hpp:280
static constexpr const char * SBF_NAVICLNAV_STRID
SBF-NAVICLNAV message name.
Definition sbf.hpp:229
static constexpr const char * SBF_GALNAV_STRID
SBF-GALNAV message name.
Definition sbf.hpp:199
static constexpr const char * SBF_OUTPUTLINK_STRID
SBF-OUTPUTLINK message name.
Definition sbf.hpp:299
static constexpr const char * SBF_GALRAWINAV_STRID
SBF-GALRAWINAV message name.
Definition sbf.hpp:149
static constexpr const char * SBF_POSCOVGEODETIC_STRID
SBF-POSCOVGEODETIC message name.
Definition sbf.hpp:241
static constexpr const char * SBF_GPSRAWL2C_STRID
SBF-GPSRAWL2C message name.
Definition sbf.hpp:139
static constexpr uint16_t SBF_GEORAWL5_MSGID
SBF-GEORAWL5 message ID.
Definition sbf.hpp:154
static constexpr std::size_t SBF_HEAD_SIZE
Size of the SBF header (SbfHeader)
Definition sbf.hpp:43
static constexpr const char * SBF_ENDOFMEAS_STRID
SBF-ENDOFMEAS message name.
Definition sbf.hpp:135
static constexpr const char * SBF_ATTCOVEULER_STRID
SBF-ATTCOVEULER message name.
Definition sbf.hpp:263
static constexpr uint16_t SBF_GEORAWL1_MSGID
SBF-GEORAWL1 message ID.
Definition sbf.hpp:152
static constexpr const char * SBF_ENDOFATT_STRID
SBF-ENDOFATT message name.
Definition sbf.hpp:267
static constexpr uint16_t SBF_QZSRAWL2C_MSGID
SBF-QZSRAWL2C message ID.
Definition sbf.hpp:166
static constexpr const char * SBF_ATTEULER_STRID
SBF-ATTEULER message name.
Definition sbf.hpp:261
static constexpr uint16_t SBF_COMMENT_MSGID
SBF-COMMENT message ID.
Definition sbf.hpp:314
static constexpr const char * SBF_GEOALM_STRID
SBF-GEOALM message name.
Definition sbf.hpp:233
static constexpr uint16_t SBF_ATTEULER_MSGID
SBF-ATTEULER message ID.
Definition sbf.hpp:260
static constexpr const char * SBF_BDSRAWB2A_STRID
SBF-BDSRAWB2A message name.
Definition sbf.hpp:161
static constexpr uint16_t SBF_LBANDTRACKERSTATUS_MSGID
SBF-LBANDTRACKERSTATUS message ID.
Definition sbf.hpp:286
static constexpr uint16_t SBF_BDSALM_MSGID
SBF-BDSALM message ID.
Definition sbf.hpp:218
static constexpr uint16_t SBF_RECEIVERSTATUS_MSGID
SBF-RECEIVERSTATUS message ID.
Definition sbf.hpp:292
static constexpr uint16_t SBF_QZSNAV_MSGID
SBF-QZSNAV message ID.
Definition sbf.hpp:224
static constexpr uint16_t SBF_EXTEVENTPVTCARTESIAN_MSGID
SBF-EXTEVENTPVTCARTESIAN message ID.
Definition sbf.hpp:274
static constexpr const char * SBF_GPSCNAV_STRID
SBF-GPSCNAV message name.
Definition sbf.hpp:191
static constexpr const char * SBF_DOP_STRID
SBF-DOP message name.
Definition sbf.hpp:247
static constexpr uint16_t SBF_EXTEVENT_MSGID
SBF-EXTEVENT message ID.
Definition sbf.hpp:272
static constexpr const char * SBF_PVTSUPPORT_STRID
SBF-PVTSUPPORT message name.
Definition sbf.hpp:253
static constexpr const char * SBF_EXTEVENT_STRID
SBF-EXTEVENT message name.
Definition sbf.hpp:273
static constexpr uint16_t SBF_QUALITYIND_MSGID
SBF-QUALITYIND message ID.
Definition sbf.hpp:300
static constexpr const char * SBF_DISKSTATUS_STRID
SBF-DISKSTATUS message name.
Definition sbf.hpp:303
static constexpr const char * SBF_MEASEPOCH_STRID
SBF-MEASEPOCH message name.
Definition sbf.hpp:131
static constexpr const char * SBF_XPPSOFFSET_STRID
SBF-XPPSOFFSET message name.
Definition sbf.hpp:271
static constexpr const char * SBF_GLOTIME_STRID
SBF-GLOTIME message name.
Definition sbf.hpp:197
static constexpr uint16_t SBF_GLORAWCA_MSGID
SBF-GLORAWCA message ID.
Definition sbf.hpp:144
static constexpr uint16_t SBF_AUXANTPOSITIONS_MSGID
SBF-AUXANTPOSITIONS message ID.
Definition sbf.hpp:264
static constexpr const char * SBF_LBANDRAW_STRID
SBF-LBANDRAW message name.
Definition sbf.hpp:289
static constexpr uint16_t SBF_BDSCNAV2_MSGID
SBF-BDSCNAV2 message ID.
Definition sbf.hpp:214
static constexpr const char * SBF_GLORAWCA_STRID
SBF-GLORAWCA message name.
Definition sbf.hpp:145
static constexpr uint16_t SBF_RXMESSAGE_MSGID
SBF-RXMESSAGE message ID.
Definition sbf.hpp:310
constexpr uint8_t SbfBlockRev(const uint8_t *msg)
Get block revision.
Definition sbf.hpp:68
static constexpr const char * SBF_BDSCNAV2_STRID
SBF-BDSCNAV2 message name.
Definition sbf.hpp:215
static constexpr const char * SBF_VELCOVCARTESIAN_STRID
SBF-VELCOVCARTESIAN message name.
Definition sbf.hpp:243
static constexpr uint16_t SBF_INPUTLINK_MSGID
SBF-INPUTLINK message ID.
Definition sbf.hpp:296
static constexpr const char * SBF_BDSCNAV1_STRID
SBF-BDSCNAV1 message name.
Definition sbf.hpp:213
static constexpr const char * SBF_ASCIIIN_STRID
SBF-ASCIIIN message name.
Definition sbf.hpp:319
static constexpr uint16_t SBF_GPSNAV_MSGID
SBF-GPSNAV message ID.
Definition sbf.hpp:182
static constexpr uint16_t SBF_GALALM_MSGID
SBF-GALALM message ID.
Definition sbf.hpp:200
Fixposition SDK: Common library.
Definition doc.hpp:21
Fixposition SDK.
uint16_t id
Block (message) type (bits 0..12) and version (bits 13..15)
Definition sbf.hpp:333
uint16_t length
Block (payload) size.
Definition sbf.hpp:335