MIP SDK  0.0.1
MicroStrain Communications Library for embedded systems
data_gnss.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #include "descriptors.h"
4 #include "../mip_result.h"
5 
6 #include <stdint.h>
7 #include <stddef.h>
8 #include <stdbool.h>
9 
10 namespace mip {
11 class Serializer;
12 
13 namespace C {
14 struct mip_interface;
15 } // namespace C
16 
17 namespace data_gnss {
18 
25 
27 // Descriptors
29 
30 enum
31 {
33 
38  DATA_DOP = 0x07,
39  DATA_UTC_TIME = 0x08,
40  DATA_GPS_TIME = 0x09,
42  DATA_FIX_INFO = 0x0B,
43  DATA_SV_INFO = 0x0C,
54  DATA_RAW = 0x22,
63 
64 };
65 
67 // Shared Type Definitions
69 
70 static const uint8_t MIP_GNSS1_DATA_DESC_SET = 0x91;
71 static const uint8_t MIP_GNSS2_DATA_DESC_SET = 0x92;
72 static const uint8_t MIP_GNSS3_DATA_DESC_SET = 0x93;
73 static const uint8_t MIP_GNSS4_DATA_DESC_SET = 0x94;
74 static const uint8_t MIP_GNSS5_DATA_DESC_SET = 0x95;
75 enum class GnssConstellationId : uint8_t
76 {
77  UNKNOWN = 0,
78  GPS = 1,
79  GLONASS = 2,
80  GALILEO = 3,
81  BEIDOU = 4,
82  SBAS = 5,
83 };
84 
85 enum class GnssSignalId : uint8_t
86 {
87  UNKNOWN = 0,
88  GPS_L1CA = 1,
89  GPS_L1P = 2,
90  GPS_L1Z = 3,
91  GPS_L2CA = 4,
92  GPS_L2P = 5,
93  GPS_L2Z = 6,
94  GPS_L2CL = 7,
95  GPS_L2CM = 8,
96  GPS_L2CML = 9,
97  GPS_L5I = 10,
98  GPS_L5Q = 11,
99  GPS_L5IQ = 12,
100  GPS_L1CD = 13,
101  GPS_L1CP = 14,
102  GPS_L1CDP = 15,
103  GLONASS_G1CA = 32,
104  GLONASS_G1P = 33,
105  GLONASS_G2C = 34,
106  GLONASS_G2P = 35,
107  GALILEO_E1C = 64,
108  GALILEO_E1A = 65,
109  GALILEO_E1B = 66,
110  GALILEO_E1BC = 67,
111  GALILEO_E1ABC = 68,
112  GALILEO_E6C = 69,
113  GALILEO_E6A = 70,
114  GALILEO_E6B = 71,
115  GALILEO_E6BC = 72,
116  GALILEO_E6ABC = 73,
117  GALILEO_E5BI = 74,
118  GALILEO_E5BQ = 75,
119  GALILEO_E5BIQ = 76,
120  GALILEO_E5ABI = 77,
121  GALILEO_E5ABQ = 78,
122  GALILEO_E5ABIQ = 79,
123  GALILEO_E5AI = 80,
124  GALILEO_E5AQ = 81,
125  GALILEO_E5AIQ = 82,
126  SBAS_L1CA = 96,
127  SBAS_L5I = 97,
128  SBAS_L5Q = 98,
129  SBAS_L5IQ = 99,
130  QZSS_L1CA = 128,
131  QZSS_LEXS = 129,
132  QZSS_LEXL = 130,
133  QZSS_LEXSL = 131,
134  QZSS_L2CM = 132,
135  QZSS_L2CL = 133,
136  QZSS_L2CML = 134,
137  QZSS_L5I = 135,
138  QZSS_L5Q = 136,
139  QZSS_L5IQ = 137,
140  QZSS_L1CD = 138,
141  QZSS_L1CP = 139,
142  QZSS_L1CDP = 140,
143  BEIDOU_B1I = 160,
144  BEIDOU_B1Q = 161,
145  BEIDOU_B1IQ = 162,
146  BEIDOU_B3I = 163,
147  BEIDOU_B3Q = 164,
148  BEIDOU_B3IQ = 165,
149  BEIDOU_B2I = 166,
150  BEIDOU_B2Q = 167,
151  BEIDOU_B2IQ = 168,
152 };
153 
154 enum class SbasSystem : uint8_t
155 {
156  UNKNOWN = 0,
157  WAAS = 1,
158  EGNOS = 2,
159  MSAS = 3,
160  GAGAN = 4,
161 };
162 
163 static const uint32_t GNSS_DGPS_INFO_MAX_CHANNEL_NUMBER = 32;
164 static const uint32_t GNSS_SV_INFO_MAX_SV_NUMBER = 32;
165 
167 // Mip Fields
169 
175 
176 struct PosLlh
177 {
180 
181  static const bool HAS_FUNCTION_SELECTOR = false;
182 
183  struct ValidFlags : Bitfield<ValidFlags>
184  {
185  enum _enumType : uint16_t
186  {
187  NONE = 0x0000,
188  LAT_LON = 0x0001,
189  ELLIPSOID_HEIGHT = 0x0002,
190  MSL_HEIGHT = 0x0004,
192  VERTICAL_ACCURACY = 0x0010,
193  FLAGS = 0x001F,
194  };
195  uint16_t value = NONE;
196 
198  ValidFlags(int val) : value((uint16_t)val) {}
199  operator uint16_t() const { return value; }
200  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
201  ValidFlags& operator=(int val) { value = val; return *this; }
202  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
203  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
204  };
205 
206  double latitude = 0;
207  double longitude = 0;
208  double ellipsoid_height = 0;
209  double msl_height = 0;
211  float vertical_accuracy = 0;
213 
214 };
215 void insert(Serializer& serializer, const PosLlh& self);
216 void extract(Serializer& serializer, PosLlh& self);
217 
225 
226 struct PosEcef
227 {
230 
231  static const bool HAS_FUNCTION_SELECTOR = false;
232 
233  struct ValidFlags : Bitfield<ValidFlags>
234  {
235  enum _enumType : uint16_t
236  {
237  NONE = 0x0000,
238  POSITION = 0x0001,
239  POSITION_ACCURACY = 0x0002,
240  FLAGS = 0x0003,
241  };
242  uint16_t value = NONE;
243 
245  ValidFlags(int val) : value((uint16_t)val) {}
246  operator uint16_t() const { return value; }
247  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
248  ValidFlags& operator=(int val) { value = val; return *this; }
249  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
250  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
251  };
252 
253  double x[3] = {0};
254  float x_accuracy = 0;
256 
257 };
258 void insert(Serializer& serializer, const PosEcef& self);
259 void extract(Serializer& serializer, PosEcef& self);
260 
268 
269 struct VelNed
270 {
273 
274  static const bool HAS_FUNCTION_SELECTOR = false;
275 
276  struct ValidFlags : Bitfield<ValidFlags>
277  {
278  enum _enumType : uint16_t
279  {
280  NONE = 0x0000,
281  VELOCITY = 0x0001,
282  SPEED_3D = 0x0002,
283  GROUND_SPEED = 0x0004,
284  HEADING = 0x0008,
285  SPEED_ACCURACY = 0x0010,
286  HEADING_ACCURACY = 0x0020,
287  FLAGS = 0x003F,
288  };
289  uint16_t value = NONE;
290 
292  ValidFlags(int val) : value((uint16_t)val) {}
293  operator uint16_t() const { return value; }
294  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
295  ValidFlags& operator=(int val) { value = val; return *this; }
296  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
297  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
298  };
299 
300  float v[3] = {0};
301  float speed = 0;
302  float ground_speed = 0;
303  float heading = 0;
304  float speed_accuracy = 0;
305  float heading_accuracy = 0;
307 
308 };
309 void insert(Serializer& serializer, const VelNed& self);
310 void extract(Serializer& serializer, VelNed& self);
311 
319 
320 struct VelEcef
321 {
324 
325  static const bool HAS_FUNCTION_SELECTOR = false;
326 
327  struct ValidFlags : Bitfield<ValidFlags>
328  {
329  enum _enumType : uint16_t
330  {
331  NONE = 0x0000,
332  VELOCITY = 0x0001,
333  VELOCITY_ACCURACY = 0x0002,
334  FLAGS = 0x0003,
335  };
336  uint16_t value = NONE;
337 
339  ValidFlags(int val) : value((uint16_t)val) {}
340  operator uint16_t() const { return value; }
341  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
342  ValidFlags& operator=(int val) { value = val; return *this; }
343  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
344  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
345  };
346 
347  float v[3] = {0};
348  float v_accuracy = 0;
350 
351 };
352 void insert(Serializer& serializer, const VelEcef& self);
353 void extract(Serializer& serializer, VelEcef& self);
354 
362 
363 struct Dop
364 {
367 
368  static const bool HAS_FUNCTION_SELECTOR = false;
369 
370  struct ValidFlags : Bitfield<ValidFlags>
371  {
372  enum _enumType : uint16_t
373  {
374  NONE = 0x0000,
375  GDOP = 0x0001,
376  PDOP = 0x0002,
377  HDOP = 0x0004,
378  VDOP = 0x0008,
379  TDOP = 0x0010,
380  NDOP = 0x0020,
381  EDOP = 0x0040,
382  FLAGS = 0x007F,
383  };
384  uint16_t value = NONE;
385 
387  ValidFlags(int val) : value((uint16_t)val) {}
388  operator uint16_t() const { return value; }
389  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
390  ValidFlags& operator=(int val) { value = val; return *this; }
391  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
392  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
393  };
394 
395  float gdop = 0;
396  float pdop = 0;
397  float hdop = 0;
398  float vdop = 0;
399  float tdop = 0;
400  float ndop = 0;
401  float edop = 0;
403 
404 };
405 void insert(Serializer& serializer, const Dop& self);
406 void extract(Serializer& serializer, Dop& self);
407 
415 
416 struct UtcTime
417 {
420 
421  static const bool HAS_FUNCTION_SELECTOR = false;
422 
423  struct ValidFlags : Bitfield<ValidFlags>
424  {
425  enum _enumType : uint16_t
426  {
427  NONE = 0x0000,
428  GNSS_DATE_TIME = 0x0001,
430  FLAGS = 0x0003,
431  };
432  uint16_t value = NONE;
433 
435  ValidFlags(int val) : value((uint16_t)val) {}
436  operator uint16_t() const { return value; }
437  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
438  ValidFlags& operator=(int val) { value = val; return *this; }
439  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
440  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
441  };
442 
443  uint16_t year = 0;
444  uint8_t month = 0;
445  uint8_t day = 0;
446  uint8_t hour = 0;
447  uint8_t min = 0;
448  uint8_t sec = 0;
449  uint32_t msec = 0;
451 
452 };
453 void insert(Serializer& serializer, const UtcTime& self);
454 void extract(Serializer& serializer, UtcTime& self);
455 
463 
464 struct GpsTime
465 {
468 
469  static const bool HAS_FUNCTION_SELECTOR = false;
470 
471  struct ValidFlags : Bitfield<ValidFlags>
472  {
473  enum _enumType : uint16_t
474  {
475  NONE = 0x0000,
476  TOW = 0x0001,
477  WEEK_NUMBER = 0x0002,
478  FLAGS = 0x0003,
479  };
480  uint16_t value = NONE;
481 
483  ValidFlags(int val) : value((uint16_t)val) {}
484  operator uint16_t() const { return value; }
485  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
486  ValidFlags& operator=(int val) { value = val; return *this; }
487  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
488  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
489  };
490 
491  double tow = 0;
492  uint16_t week_number = 0;
494 
495 };
496 void insert(Serializer& serializer, const GpsTime& self);
497 void extract(Serializer& serializer, GpsTime& self);
498 
506 
507 struct ClockInfo
508 {
511 
512  static const bool HAS_FUNCTION_SELECTOR = false;
513 
514  struct ValidFlags : Bitfield<ValidFlags>
515  {
516  enum _enumType : uint16_t
517  {
518  NONE = 0x0000,
519  BIAS = 0x0001,
520  DRIFT = 0x0002,
521  ACCURACY_ESTIMATE = 0x0004,
522  FLAGS = 0x0007,
523  };
524  uint16_t value = NONE;
525 
527  ValidFlags(int val) : value((uint16_t)val) {}
528  operator uint16_t() const { return value; }
529  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
530  ValidFlags& operator=(int val) { value = val; return *this; }
531  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
532  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
533  };
534 
535  double bias = 0;
536  double drift = 0;
537  double accuracy_estimate = 0;
539 
540 };
541 void insert(Serializer& serializer, const ClockInfo& self);
542 void extract(Serializer& serializer, ClockInfo& self);
543 
551 
552 struct FixInfo
553 {
556 
557  static const bool HAS_FUNCTION_SELECTOR = false;
558 
559  enum class FixType : uint8_t
560  {
561  FIX_3D = 0,
562  FIX_2D = 1,
563  FIX_TIME_ONLY = 2,
564  FIX_NONE = 3,
565  FIX_INVALID = 4,
566  FIX_RTK_FLOAT = 5,
567  FIX_RTK_FIXED = 6,
568  };
569 
570  struct FixFlags : Bitfield<FixFlags>
571  {
572  enum _enumType : uint16_t
573  {
574  NONE = 0x0000,
575  SBAS_USED = 0x0001,
576  DNGSS_USED = 0x0002,
577  };
578  uint16_t value = NONE;
579 
581  FixFlags(int val) : value((uint16_t)val) {}
582  operator uint16_t() const { return value; }
583  FixFlags& operator=(uint16_t val) { value = val; return *this; }
584  FixFlags& operator=(int val) { value = val; return *this; }
585  FixFlags& operator|=(uint16_t val) { return *this = value | val; }
586  FixFlags& operator&=(uint16_t val) { return *this = value & val; }
587  };
588 
589  struct ValidFlags : Bitfield<ValidFlags>
590  {
591  enum _enumType : uint16_t
592  {
593  NONE = 0x0000,
594  FIX_TYPE = 0x0001,
595  NUM_SV = 0x0002,
596  FIX_FLAGS = 0x0004,
597  FLAGS = 0x0007,
598  };
599  uint16_t value = NONE;
600 
602  ValidFlags(int val) : value((uint16_t)val) {}
603  operator uint16_t() const { return value; }
604  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
605  ValidFlags& operator=(int val) { value = val; return *this; }
606  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
607  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
608  };
609 
610  FixType fix_type = static_cast<FixType>(0);
611  uint8_t num_sv = 0;
614 
615 };
616 void insert(Serializer& serializer, const FixInfo& self);
617 void extract(Serializer& serializer, FixInfo& self);
618 
628 
629 struct SvInfo
630 {
633 
634  static const bool HAS_FUNCTION_SELECTOR = false;
635 
636  struct SVFlags : Bitfield<SVFlags>
637  {
638  enum _enumType : uint16_t
639  {
640  NONE = 0x0000,
642  HEALTHY = 0x0002,
643  };
644  uint16_t value = NONE;
645 
647  SVFlags(int val) : value((uint16_t)val) {}
648  operator uint16_t() const { return value; }
649  SVFlags& operator=(uint16_t val) { value = val; return *this; }
650  SVFlags& operator=(int val) { value = val; return *this; }
651  SVFlags& operator|=(uint16_t val) { return *this = value | val; }
652  SVFlags& operator&=(uint16_t val) { return *this = value & val; }
653  };
654 
655  struct ValidFlags : Bitfield<ValidFlags>
656  {
657  enum _enumType : uint16_t
658  {
659  NONE = 0x0000,
660  CHANNEL = 0x0001,
661  SV_ID = 0x0002,
663  AZIMUTH = 0x0008,
664  ELEVATION = 0x0010,
665  SV_FLAGS = 0x0020,
666  FLAGS = 0x003F,
667  };
668  uint16_t value = NONE;
669 
671  ValidFlags(int val) : value((uint16_t)val) {}
672  operator uint16_t() const { return value; }
673  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
674  ValidFlags& operator=(int val) { value = val; return *this; }
675  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
676  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
677  };
678 
679  uint8_t channel = 0;
680  uint8_t sv_id = 0;
681  uint16_t carrier_noise_ratio = 0;
682  int16_t azimuth = 0;
683  int16_t elevation = 0;
686 
687 };
688 void insert(Serializer& serializer, const SvInfo& self);
689 void extract(Serializer& serializer, SvInfo& self);
690 
698 
699 struct HwStatus
700 {
703 
704  static const bool HAS_FUNCTION_SELECTOR = false;
705 
706  enum class ReceiverState : uint8_t
707  {
708  OFF = 0,
709  ON = 1,
710  UNKNOWN = 2,
711  };
712 
713  enum class AntennaState : uint8_t
714  {
715  INIT = 1,
716  SHORT = 2,
717  OPEN = 3,
718  GOOD = 4,
719  UNKNOWN = 5,
720  };
721 
722  enum class AntennaPower : uint8_t
723  {
724  OFF = 0,
725  ON = 1,
726  UNKNOWN = 2,
727  };
728 
729  struct ValidFlags : Bitfield<ValidFlags>
730  {
731  enum _enumType : uint16_t
732  {
733  NONE = 0x0000,
734  SENSOR_STATE = 0x0001,
735  ANTENNA_STATE = 0x0002,
736  ANTENNA_POWER = 0x0004,
737  FLAGS = 0x0007,
738  };
739  uint16_t value = NONE;
740 
742  ValidFlags(int val) : value((uint16_t)val) {}
743  operator uint16_t() const { return value; }
744  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
745  ValidFlags& operator=(int val) { value = val; return *this; }
746  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
747  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
748  };
749 
754 
755 };
756 void insert(Serializer& serializer, const HwStatus& self);
757 void extract(Serializer& serializer, HwStatus& self);
758 
778 
779 struct DgpsInfo
780 {
783 
784  static const bool HAS_FUNCTION_SELECTOR = false;
785 
786  struct ValidFlags : Bitfield<ValidFlags>
787  {
788  enum _enumType : uint16_t
789  {
790  NONE = 0x0000,
791  AGE = 0x0001,
792  BASE_STATION_ID = 0x0002,
794  NUM_CHANNELS = 0x0008,
795  FLAGS = 0x000F,
796  };
797  uint16_t value = NONE;
798 
800  ValidFlags(int val) : value((uint16_t)val) {}
801  operator uint16_t() const { return value; }
802  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
803  ValidFlags& operator=(int val) { value = val; return *this; }
804  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
805  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
806  };
807 
808  uint8_t sv_id = 0;
809  float age = 0;
810  float range_correction = 0;
813 
814 };
815 void insert(Serializer& serializer, const DgpsInfo& self);
816 void extract(Serializer& serializer, DgpsInfo& self);
817 
827 
829 {
832 
833  static const bool HAS_FUNCTION_SELECTOR = false;
834 
835  struct ValidFlags : Bitfield<ValidFlags>
836  {
837  enum _enumType : uint16_t
838  {
839  NONE = 0x0000,
840  ID = 0x0001,
841  AGE = 0x0002,
842  RANGE_CORRECTION = 0x0004,
844  FLAGS = 0x000F,
845  };
846  uint16_t value = NONE;
847 
849  ValidFlags(int val) : value((uint16_t)val) {}
850  operator uint16_t() const { return value; }
851  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
852  ValidFlags& operator=(int val) { value = val; return *this; }
853  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
854  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
855  };
856 
857  uint8_t sv_id = 0;
858  float age = 0;
859  float range_correction = 0;
862 
863 };
864 void insert(Serializer& serializer, const DgpsChannel& self);
865 void extract(Serializer& serializer, DgpsChannel& self);
866 
876 
878 {
881 
882  static const bool HAS_FUNCTION_SELECTOR = false;
883 
884  struct ValidFlags : Bitfield<ValidFlags>
885  {
886  enum _enumType : uint16_t
887  {
888  NONE = 0x0000,
889  BIAS = 0x0001,
890  DRIFT = 0x0002,
891  BIAS_ACCURACY = 0x0004,
892  DRIFT_ACCURACY = 0x0008,
893  FLAGS = 0x000F,
894  };
895  uint16_t value = NONE;
896 
898  ValidFlags(int val) : value((uint16_t)val) {}
899  operator uint16_t() const { return value; }
900  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
901  ValidFlags& operator=(int val) { value = val; return *this; }
902  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
903  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
904  };
905 
906  double bias = 0;
907  double drift = 0;
911 
912 };
913 void insert(Serializer& serializer, const ClockInfo2& self);
914 void extract(Serializer& serializer, ClockInfo2& self);
915 
923 
925 {
928 
929  static const bool HAS_FUNCTION_SELECTOR = false;
930 
931  struct ValidFlags : Bitfield<ValidFlags>
932  {
933  enum _enumType : uint16_t
934  {
935  NONE = 0x0000,
936  LEAP_SECONDS = 0x0002,
937  };
938  uint16_t value = NONE;
939 
941  ValidFlags(int val) : value((uint16_t)val) {}
942  operator uint16_t() const { return value; }
943  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
944  ValidFlags& operator=(int val) { value = val; return *this; }
945  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
946  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
947  };
948 
949  uint8_t leap_seconds = 0;
951 
952 };
953 void insert(Serializer& serializer, const GpsLeapSeconds& self);
954 void extract(Serializer& serializer, GpsLeapSeconds& self);
955 
963 
964 struct SbasInfo
965 {
968 
969  static const bool HAS_FUNCTION_SELECTOR = false;
970 
971  struct SbasStatus : Bitfield<SbasStatus>
972  {
973  enum _enumType : uint8_t
974  {
975  NONE = 0x00,
979  TEST_MODE = 0x08,
980  };
981  uint8_t value = NONE;
982 
984  SbasStatus(int val) : value((uint8_t)val) {}
985  operator uint8_t() const { return value; }
986  SbasStatus& operator=(uint8_t val) { value = val; return *this; }
987  SbasStatus& operator=(int val) { value = val; return *this; }
988  SbasStatus& operator|=(uint8_t val) { return *this = value | val; }
989  SbasStatus& operator&=(uint8_t val) { return *this = value & val; }
990  };
991 
992  struct ValidFlags : Bitfield<ValidFlags>
993  {
994  enum _enumType : uint16_t
995  {
996  NONE = 0x0000,
997  TOW = 0x0001,
998  WEEK_NUMBER = 0x0002,
999  SBAS_SYSTEM = 0x0004,
1000  SBAS_ID = 0x0008,
1001  COUNT = 0x0010,
1002  SBAS_STATUS = 0x0020,
1003  FLAGS = 0x003F,
1004  };
1005  uint16_t value = NONE;
1006 
1008  ValidFlags(int val) : value((uint16_t)val) {}
1009  operator uint16_t() const { return value; }
1010  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
1011  ValidFlags& operator=(int val) { value = val; return *this; }
1012  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
1013  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
1014  };
1015 
1016  double time_of_week = 0;
1017  uint16_t week_number = 0;
1018  SbasSystem sbas_system = static_cast<SbasSystem>(0);
1019  uint8_t sbas_id = 0;
1020  uint8_t count = 0;
1023 
1024 };
1025 void insert(Serializer& serializer, const SbasInfo& self);
1026 void extract(Serializer& serializer, SbasInfo& self);
1027 
1057 
1059 {
1062 
1063  static const bool HAS_FUNCTION_SELECTOR = false;
1064 
1065  struct ValidFlags : Bitfield<ValidFlags>
1066  {
1067  enum _enumType : uint16_t
1068  {
1069  NONE = 0x0000,
1070  UDREI = 0x0001,
1072  IONO_CORRECTION = 0x0004,
1073  FLAGS = 0x0007,
1074  };
1075  uint16_t value = NONE;
1076 
1078  ValidFlags(int val) : value((uint16_t)val) {}
1079  operator uint16_t() const { return value; }
1080  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
1081  ValidFlags& operator=(int val) { value = val; return *this; }
1082  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
1083  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
1084  };
1085 
1086  uint8_t index = 0;
1087  uint8_t count = 0;
1088  double time_of_week = 0;
1089  uint16_t week_number = 0;
1091  uint8_t sv_id = 0;
1092  uint8_t udrei = 0;
1094  float iono_correction = 0;
1096 
1097 };
1098 void insert(Serializer& serializer, const SbasCorrection& self);
1099 void extract(Serializer& serializer, SbasCorrection& self);
1100 
1108 
1110 {
1113 
1114  static const bool HAS_FUNCTION_SELECTOR = false;
1115 
1116  enum class RFBand : uint8_t
1117  {
1118  UNKNOWN = 0,
1119  L1 = 1,
1120  L2 = 2,
1121  L5 = 5,
1122  };
1123 
1124  enum class JammingState : uint8_t
1125  {
1126  UNKNOWN = 0,
1127  NONE = 1,
1128  PARTIAL = 2,
1129  SIGNIFICANT = 3,
1130  };
1131 
1132  enum class SpoofingState : uint8_t
1133  {
1134  UNKNOWN = 0,
1135  NONE = 1,
1136  PARTIAL = 2,
1137  SIGNIFICANT = 3,
1138  };
1139 
1140  struct ValidFlags : Bitfield<ValidFlags>
1141  {
1142  enum _enumType : uint16_t
1143  {
1144  NONE = 0x0000,
1145  RF_BAND = 0x0001,
1146  JAMMING_STATE = 0x0002,
1147  SPOOFING_STATE = 0x0004,
1148  FLAGS = 0x0007,
1149  };
1150  uint16_t value = NONE;
1151 
1153  ValidFlags(int val) : value((uint16_t)val) {}
1154  operator uint16_t() const { return value; }
1155  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
1156  ValidFlags& operator=(int val) { value = val; return *this; }
1157  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
1158  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
1159  };
1160 
1161  RFBand rf_band = static_cast<RFBand>(0);
1164  uint8_t reserved[4] = {0};
1166 
1167 };
1168 void insert(Serializer& serializer, const RfErrorDetection& self);
1169 void extract(Serializer& serializer, RfErrorDetection& self);
1170 
1180 
1182 {
1185 
1186  static const bool HAS_FUNCTION_SELECTOR = false;
1187 
1188  struct IndicatorFlags : Bitfield<IndicatorFlags>
1189  {
1190  enum _enumType : uint16_t
1191  {
1192  NONE = 0x0000,
1193  GPS = 0x0001,
1194  GLONASS = 0x0002,
1195  GALILEO = 0x0004,
1196  BEIDOU = 0x0008,
1197  REF_STATION = 0x0010,
1198  SINGLE_RECEIVER = 0x0020,
1202  };
1203  uint16_t value = NONE;
1204 
1206  IndicatorFlags(int val) : value((uint16_t)val) {}
1207  operator uint16_t() const { return value; }
1208  IndicatorFlags& operator=(uint16_t val) { value = val; return *this; }
1209  IndicatorFlags& operator=(int val) { value = val; return *this; }
1210  IndicatorFlags& operator|=(uint16_t val) { return *this = value | val; }
1211  IndicatorFlags& operator&=(uint16_t val) { return *this = value & val; }
1212  };
1213 
1214  struct ValidFlags : Bitfield<ValidFlags>
1215  {
1216  enum _enumType : uint16_t
1217  {
1218  NONE = 0x0000,
1219  TOW = 0x0001,
1220  WEEK_NUMBER = 0x0002,
1221  ECEF_POSITION = 0x0004,
1222  HEIGHT = 0x0008,
1223  STATION_ID = 0x0010,
1224  INDICATORS = 0x0020,
1225  FLAGS = 0x003F,
1226  };
1227  uint16_t value = NONE;
1228 
1230  ValidFlags(int val) : value((uint16_t)val) {}
1231  operator uint16_t() const { return value; }
1232  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
1233  ValidFlags& operator=(int val) { value = val; return *this; }
1234  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
1235  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
1236  };
1237 
1238  double time_of_week = 0;
1239  uint16_t week_number = 0;
1240  double ecef_pos[3] = {0};
1241  float height = 0;
1242  uint16_t station_id = 0;
1245 
1246 };
1247 void insert(Serializer& serializer, const BaseStationInfo& self);
1248 void extract(Serializer& serializer, BaseStationInfo& self);
1249 
1256 
1258 {
1261 
1262  static const bool HAS_FUNCTION_SELECTOR = false;
1263 
1264  struct ValidFlags : Bitfield<ValidFlags>
1265  {
1266  enum _enumType : uint16_t
1267  {
1268  NONE = 0x0000,
1269  TOW = 0x0001,
1270  WEEK_NUMBER = 0x0002,
1271  EPOCH_STATUS = 0x0004,
1272  DONGLE_STATUS = 0x0008,
1273  GPS_LATENCY = 0x0010,
1274  GLONASS_LATENCY = 0x0020,
1275  GALILEO_LATENCY = 0x0040,
1276  BEIDOU_LATENCY = 0x0080,
1277  FLAGS = 0x00FF,
1278  };
1279  uint16_t value = NONE;
1280 
1282  ValidFlags(int val) : value((uint16_t)val) {}
1283  operator uint16_t() const { return value; }
1284  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
1285  ValidFlags& operator=(int val) { value = val; return *this; }
1286  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
1287  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
1288  };
1289 
1290  struct EpochStatus : Bitfield<EpochStatus>
1291  {
1292  enum _enumType : uint16_t
1293  {
1294  NONE = 0x0000,
1297  GPS_RECEIVED = 0x0004,
1298  GLONASS_RECEIVED = 0x0008,
1299  GALILEO_RECEIVED = 0x0010,
1300  BEIDOU_RECEIVED = 0x0020,
1304  };
1305  uint16_t value = NONE;
1306 
1308  EpochStatus(int val) : value((uint16_t)val) {}
1309  operator uint16_t() const { return value; }
1310  EpochStatus& operator=(uint16_t val) { value = val; return *this; }
1311  EpochStatus& operator=(int val) { value = val; return *this; }
1312  EpochStatus& operator|=(uint16_t val) { return *this = value | val; }
1313  EpochStatus& operator&=(uint16_t val) { return *this = value & val; }
1314  };
1315 
1316  double time_of_week = 0;
1317  uint16_t week_number = 0;
1319  uint32_t dongle_status = 0;
1324  uint32_t reserved[4] = {0};
1326 
1327 };
1328 void insert(Serializer& serializer, const RtkCorrectionsStatus& self);
1329 void extract(Serializer& serializer, RtkCorrectionsStatus& self);
1330 
1338 
1340 {
1343 
1344  static const bool HAS_FUNCTION_SELECTOR = false;
1345 
1346  struct ValidFlags : Bitfield<ValidFlags>
1347  {
1348  enum _enumType : uint16_t
1349  {
1350  NONE = 0x0000,
1351  TOW = 0x0001,
1352  WEEK_NUMBER = 0x0002,
1353  GNSS_ID = 0x0004,
1354  SATELLITE_ID = 0x0008,
1355  ELEVATION = 0x0010,
1356  AZIMUTH = 0x0020,
1357  HEALTH = 0x0040,
1358  FLAGS = 0x007F,
1359  };
1360  uint16_t value = NONE;
1361 
1363  ValidFlags(int val) : value((uint16_t)val) {}
1364  operator uint16_t() const { return value; }
1365  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
1366  ValidFlags& operator=(int val) { value = val; return *this; }
1367  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
1368  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
1369  };
1370 
1371  uint8_t index = 0;
1372  uint8_t count = 0;
1373  double time_of_week = 0;
1374  uint16_t week_number = 0;
1376  uint8_t satellite_id = 0;
1377  float elevation = 0;
1378  float azimuth = 0;
1379  bool health = 0;
1381 
1382 };
1383 void insert(Serializer& serializer, const SatelliteStatus& self);
1384 void extract(Serializer& serializer, SatelliteStatus& self);
1385 
1393 
1394 struct Raw
1395 {
1398 
1399  static const bool HAS_FUNCTION_SELECTOR = false;
1400 
1401  enum class GnssSignalQuality : uint8_t
1402  {
1403  NONE = 0,
1404  SEARCHING = 1,
1405  ACQUIRED = 2,
1406  UNUSABLE = 3,
1407  TIME_LOCKED = 4,
1408  FULLY_LOCKED = 5,
1409  };
1410 
1411  struct ValidFlags : Bitfield<ValidFlags>
1412  {
1413  enum _enumType : uint16_t
1414  {
1415  NONE = 0x0000,
1416  TOW = 0x0001,
1417  WEEK_NUMBER = 0x0002,
1418  RECEIVER_ID = 0x0004,
1419  TRACKING_CHANNEL = 0x0008,
1420  GNSS_ID = 0x0010,
1421  SATELLITE_ID = 0x0020,
1422  SIGNAL_ID = 0x0040,
1423  SIGNAL_STRENGTH = 0x0080,
1424  QUALITY = 0x0100,
1425  PSEUDORANGE = 0x0200,
1426  CARRIER_PHASE = 0x0400,
1427  DOPPLER = 0x0800,
1431  LOCK_TIME = 0x8000,
1432  FLAGS = 0xFFFF,
1433  };
1434  uint16_t value = NONE;
1435 
1437  ValidFlags(int val) : value((uint16_t)val) {}
1438  operator uint16_t() const { return value; }
1439  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
1440  ValidFlags& operator=(int val) { value = val; return *this; }
1441  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
1442  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
1443  };
1444 
1445  uint8_t index = 0;
1446  uint8_t count = 0;
1447  double time_of_week = 0;
1448  uint16_t week_number = 0;
1449  uint16_t receiver_id = 0;
1450  uint8_t tracking_channel = 0;
1452  uint8_t satellite_id = 0;
1454  float signal_strength = 0;
1456  double pseudorange = 0;
1457  double carrier_phase = 0;
1458  float doppler = 0;
1459  float range_uncert = 0;
1460  float phase_uncert = 0;
1461  float doppler_uncert = 0;
1462  float lock_time = 0;
1464 
1465 };
1466 void insert(Serializer& serializer, const Raw& self);
1467 void extract(Serializer& serializer, Raw& self);
1468 
1476 
1478 {
1481 
1482  static const bool HAS_FUNCTION_SELECTOR = false;
1483 
1484  struct ValidFlags : Bitfield<ValidFlags>
1485  {
1486  enum _enumType : uint16_t
1487  {
1488  NONE = 0x0000,
1489  EPHEMERIS = 0x0001,
1490  MODERN_DATA = 0x0002,
1491  FLAGS = 0x0003,
1492  };
1493  uint16_t value = NONE;
1494 
1496  ValidFlags(int val) : value((uint16_t)val) {}
1497  operator uint16_t() const { return value; }
1498  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
1499  ValidFlags& operator=(int val) { value = val; return *this; }
1500  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
1501  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
1502  };
1503 
1504  uint8_t index = 0;
1505  uint8_t count = 0;
1506  double time_of_week = 0;
1507  uint16_t week_number = 0;
1508  uint8_t satellite_id = 0;
1509  uint8_t health = 0;
1510  uint8_t iodc = 0;
1511  uint8_t iode = 0;
1512  double t_oc = 0;
1513  double af0 = 0;
1514  double af1 = 0;
1515  double af2 = 0;
1516  double t_gd = 0;
1517  double ISC_L1CA = 0;
1518  double ISC_L2C = 0;
1519  double t_oe = 0;
1520  double a = 0;
1521  double a_dot = 0;
1522  double mean_anomaly = 0;
1523  double delta_mean_motion = 0;
1525  double eccentricity = 0;
1526  double argument_of_perigee = 0;
1527  double omega = 0;
1528  double omega_dot = 0;
1529  double inclination = 0;
1530  double inclination_dot = 0;
1531  double c_ic = 0;
1532  double c_is = 0;
1533  double c_uc = 0;
1534  double c_us = 0;
1535  double c_rc = 0;
1536  double c_rs = 0;
1538 
1539 };
1540 void insert(Serializer& serializer, const GpsEphemeris& self);
1541 void extract(Serializer& serializer, GpsEphemeris& self);
1542 
1550 
1552 {
1555 
1556  static const bool HAS_FUNCTION_SELECTOR = false;
1557 
1558  struct ValidFlags : Bitfield<ValidFlags>
1559  {
1560  enum _enumType : uint16_t
1561  {
1562  NONE = 0x0000,
1563  EPHEMERIS = 0x0001,
1564  FLAGS = 0x0001,
1565  };
1566  uint16_t value = NONE;
1567 
1569  ValidFlags(int val) : value((uint16_t)val) {}
1570  operator uint16_t() const { return value; }
1571  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
1572  ValidFlags& operator=(int val) { value = val; return *this; }
1573  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
1574  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
1575  };
1576 
1577  uint8_t index = 0;
1578  uint8_t count = 0;
1579  double time_of_week = 0;
1580  uint16_t week_number = 0;
1581  uint8_t satellite_id = 0;
1582  int8_t freq_number = 0;
1583  uint32_t tk = 0;
1584  uint32_t tb = 0;
1585  uint8_t sat_type = 0;
1586  double gamma = 0;
1587  double tau_n = 0;
1588  double x[3] = {0};
1589  float v[3] = {0};
1590  float a[3] = {0};
1591  uint8_t health = 0;
1592  uint8_t P = 0;
1593  uint8_t NT = 0;
1594  float delta_tau_n = 0;
1595  uint8_t Ft = 0;
1596  uint8_t En = 0;
1597  uint8_t P1 = 0;
1598  uint8_t P2 = 0;
1599  uint8_t P3 = 0;
1600  uint8_t P4 = 0;
1602 
1603 };
1604 void insert(Serializer& serializer, const GloEphemeris& self);
1605 void extract(Serializer& serializer, GloEphemeris& self);
1606 
1614 
1616 {
1619 
1620  static const bool HAS_FUNCTION_SELECTOR = false;
1621 
1622  struct ValidFlags : Bitfield<ValidFlags>
1623  {
1624  enum _enumType : uint16_t
1625  {
1626  NONE = 0x0000,
1627  TOW = 0x0001,
1628  WEEK_NUMBER = 0x0002,
1629  ALPHA = 0x0004,
1630  BETA = 0x0008,
1631  FLAGS = 0x000F,
1632  };
1633  uint16_t value = NONE;
1634 
1636  ValidFlags(int val) : value((uint16_t)val) {}
1637  operator uint16_t() const { return value; }
1638  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
1639  ValidFlags& operator=(int val) { value = val; return *this; }
1640  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
1641  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
1642  };
1643 
1644  double time_of_week = 0;
1645  uint16_t week_number = 0;
1646  double alpha[4] = {0};
1647  double beta[4] = {0};
1649 
1650 };
1651 void insert(Serializer& serializer, const GpsIonoCorr& self);
1652 void extract(Serializer& serializer, GpsIonoCorr& self);
1653 
1661 
1663 {
1666 
1667  static const bool HAS_FUNCTION_SELECTOR = false;
1668 
1669  struct ValidFlags : Bitfield<ValidFlags>
1670  {
1671  enum _enumType : uint16_t
1672  {
1673  NONE = 0x0000,
1674  TOW = 0x0001,
1675  WEEK_NUMBER = 0x0002,
1676  ALPHA = 0x0004,
1678  FLAGS = 0x000F,
1679  };
1680  uint16_t value = NONE;
1681 
1683  ValidFlags(int val) : value((uint16_t)val) {}
1684  operator uint16_t() const { return value; }
1685  ValidFlags& operator=(uint16_t val) { value = val; return *this; }
1686  ValidFlags& operator=(int val) { value = val; return *this; }
1687  ValidFlags& operator|=(uint16_t val) { return *this = value | val; }
1688  ValidFlags& operator&=(uint16_t val) { return *this = value & val; }
1689  };
1690 
1691  double time_of_week = 0;
1692  uint16_t week_number = 0;
1693  double alpha[3] = {0};
1694  uint8_t disturbance_flags = 0;
1696 
1697 };
1698 void insert(Serializer& serializer, const GalileoIonoCorr& self);
1699 void extract(Serializer& serializer, GalileoIonoCorr& self);
1700 
1703 
1708 } // namespace data_gnss
1709 } // namespace mip
1710 
Serialization class.
Definition: serialization.h:145
void extract(Serializer &serializer, PosLlh &self)
Definition: data_gnss.cpp:49
void insert(Serializer &serializer, const PosLlh &self)
Definition: data_gnss.cpp:32
SbasSystem
Definition: data_gnss.hpp:155
GnssConstellationId
Definition: data_gnss.hpp:76
GnssSignalId
Definition: data_gnss.hpp:86
@ DATA_SBAS_CORRECTION
Definition: data_gnss.hpp:50
@ DATA_GLONASS_IONO_CORR
Definition: data_gnss.hpp:61
@ DATA_CLOCK_INFO_2
Definition: data_gnss.hpp:47
@ DATA_BASE_STATION_INFO
Definition: data_gnss.hpp:55
@ DATA_VELOCITY_NED
Definition: data_gnss.hpp:36
@ DATA_GALILEO_IONO_CORR
Definition: data_gnss.hpp:62
@ DATA_GLONASS_EPHEMERIS
Definition: data_gnss.hpp:58
@ DATA_RTK_CORRECTIONS_STATUS
Definition: data_gnss.hpp:56
@ DATA_POSITION_LLH
Definition: data_gnss.hpp:34
@ DATA_SV_INFO
Definition: data_gnss.hpp:43
@ DATA_SATELLITE_STATUS
Definition: data_gnss.hpp:52
@ DATA_GPS_TIME
Definition: data_gnss.hpp:40
@ DATA_DGPS_INFO
Definition: data_gnss.hpp:45
@ DATA_VELOCITY_ECEF
Definition: data_gnss.hpp:37
@ DATA_SATELLITE_SIGNAL_STATUS
Definition: data_gnss.hpp:53
@ DATA_SBAS_INFO
Definition: data_gnss.hpp:49
@ DATA_UTC_TIME
Definition: data_gnss.hpp:39
@ DATA_GPS_EPHEMERIS
Definition: data_gnss.hpp:57
@ DATA_GPS_LEAP_SECONDS
Definition: data_gnss.hpp:48
@ DATA_RF_ERROR_DETECTION
Definition: data_gnss.hpp:51
@ DATA_POSITION_ECEF
Definition: data_gnss.hpp:35
@ DATA_CLOCK_INFO
Definition: data_gnss.hpp:41
@ DATA_DOP
Definition: data_gnss.hpp:38
@ DESCRIPTOR_SET
Definition: data_gnss.hpp:32
@ DATA_DGPS_CHANNEL_STATUS
Definition: data_gnss.hpp:46
@ DATA_GALILEO_EPHEMERIS
Definition: data_gnss.hpp:59
@ DATA_RAW
Definition: data_gnss.hpp:54
@ DATA_FIX_INFO
Definition: data_gnss.hpp:42
@ DATA_HW_STATUS
Definition: data_gnss.hpp:44
@ DATA_GPS_IONO_CORR
Definition: data_gnss.hpp:60
struct mip::C::mip_interface mip_interface
State of the interface for communicating with a MIP device.
A collection of C++ classes and functions covering the full mip api.
Definition: commands_3dm.c:11
A dummy struct which is used to mark bitfield objects.
Definition: descriptors.h:95
_enumType
Definition: data_gnss.hpp:1191
@ REF_STATION
Definition: data_gnss.hpp:1197
@ GLONASS
Definition: data_gnss.hpp:1194
@ GPS
Definition: data_gnss.hpp:1193
@ BEIDOU
Definition: data_gnss.hpp:1196
@ QUARTER_CYCLE_BITS
Definition: data_gnss.hpp:1201
@ GALILEO
Definition: data_gnss.hpp:1195
@ QUARTER_CYCLE_BIT1
Definition: data_gnss.hpp:1199
@ QUARTER_CYCLE_BIT2
Definition: data_gnss.hpp:1200
@ SINGLE_RECEIVER
Definition: data_gnss.hpp:1198
@ NONE
Definition: data_gnss.hpp:1192
IndicatorFlags()
Definition: data_gnss.hpp:1205
IndicatorFlags & operator=(int val)
Definition: data_gnss.hpp:1209
IndicatorFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:1211
IndicatorFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:1208
uint16_t value
Definition: data_gnss.hpp:1203
IndicatorFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:1210
IndicatorFlags(int val)
Definition: data_gnss.hpp:1206
Definition: data_gnss.hpp:1215
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:1232
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:1234
uint16_t value
Definition: data_gnss.hpp:1227
ValidFlags(int val)
Definition: data_gnss.hpp:1230
ValidFlags()
Definition: data_gnss.hpp:1229
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:1233
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:1235
_enumType
Definition: data_gnss.hpp:1217
@ TOW
Definition: data_gnss.hpp:1219
@ WEEK_NUMBER
Definition: data_gnss.hpp:1220
@ FLAGS
Definition: data_gnss.hpp:1225
@ ECEF_POSITION
Definition: data_gnss.hpp:1221
@ STATION_ID
Definition: data_gnss.hpp:1223
@ INDICATORS
Definition: data_gnss.hpp:1224
@ HEIGHT
Definition: data_gnss.hpp:1222
@ NONE
Definition: data_gnss.hpp:1218
Definition: data_gnss.hpp:1182
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.hpp:1239
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:1184
uint16_t station_id
Range: 0-4095.
Definition: data_gnss.hpp:1242
ValidFlags valid_flags
Definition: data_gnss.hpp:1244
double time_of_week
GPS Time of week the message was received [seconds].
Definition: data_gnss.hpp:1238
float height
Antenna Height above the marker used in the survey [m].
Definition: data_gnss.hpp:1241
double ecef_pos[3]
Earth-centered, Earth-fixed [m].
Definition: data_gnss.hpp:1240
IndicatorFlags indicators
Bitfield.
Definition: data_gnss.hpp:1243
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:1186
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:1183
Definition: data_gnss.hpp:885
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:900
uint16_t value
Definition: data_gnss.hpp:895
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:901
ValidFlags(int val)
Definition: data_gnss.hpp:898
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:903
ValidFlags()
Definition: data_gnss.hpp:897
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:902
_enumType
Definition: data_gnss.hpp:887
@ FLAGS
Definition: data_gnss.hpp:893
@ DRIFT
Definition: data_gnss.hpp:890
@ BIAS
Definition: data_gnss.hpp:889
@ BIAS_ACCURACY
Definition: data_gnss.hpp:891
@ NONE
Definition: data_gnss.hpp:888
@ DRIFT_ACCURACY
Definition: data_gnss.hpp:892
Definition: data_gnss.hpp:878
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:879
double drift_accuracy_estimate
Definition: data_gnss.hpp:909
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:880
ValidFlags valid_flags
Definition: data_gnss.hpp:910
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:882
double bias
Definition: data_gnss.hpp:906
double bias_accuracy_estimate
Definition: data_gnss.hpp:908
double drift
Definition: data_gnss.hpp:907
Definition: data_gnss.hpp:515
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:530
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:531
_enumType
Definition: data_gnss.hpp:517
@ FLAGS
Definition: data_gnss.hpp:522
@ BIAS
Definition: data_gnss.hpp:519
@ NONE
Definition: data_gnss.hpp:518
@ ACCURACY_ESTIMATE
Definition: data_gnss.hpp:521
@ DRIFT
Definition: data_gnss.hpp:520
uint16_t value
Definition: data_gnss.hpp:524
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:529
ValidFlags(int val)
Definition: data_gnss.hpp:527
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:532
ValidFlags()
Definition: data_gnss.hpp:526
Definition: data_gnss.hpp:508
double bias
[seconds]
Definition: data_gnss.hpp:535
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:509
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:512
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:510
double drift
[seconds/second]
Definition: data_gnss.hpp:536
ValidFlags valid_flags
Definition: data_gnss.hpp:538
double accuracy_estimate
[seconds]
Definition: data_gnss.hpp:537
Definition: data_gnss.hpp:836
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:853
ValidFlags(int val)
Definition: data_gnss.hpp:849
ValidFlags()
Definition: data_gnss.hpp:848
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:852
_enumType
Definition: data_gnss.hpp:838
@ ID
Definition: data_gnss.hpp:840
@ RANGE_RATE_CORRECTION
Definition: data_gnss.hpp:843
@ RANGE_CORRECTION
Definition: data_gnss.hpp:842
@ FLAGS
Definition: data_gnss.hpp:844
@ AGE
Definition: data_gnss.hpp:841
@ NONE
Definition: data_gnss.hpp:839
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:854
uint16_t value
Definition: data_gnss.hpp:846
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:851
Definition: data_gnss.hpp:829
uint8_t sv_id
Definition: data_gnss.hpp:857
float range_rate_correction
[m/s]
Definition: data_gnss.hpp:860
float range_correction
[m]
Definition: data_gnss.hpp:859
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:831
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:830
float age
[s]
Definition: data_gnss.hpp:858
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:833
ValidFlags valid_flags
Definition: data_gnss.hpp:861
Definition: data_gnss.hpp:787
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:802
_enumType
Definition: data_gnss.hpp:789
@ BASE_STATION_STATUS
Definition: data_gnss.hpp:793
@ BASE_STATION_ID
Definition: data_gnss.hpp:792
@ NONE
Definition: data_gnss.hpp:790
@ AGE
Definition: data_gnss.hpp:791
@ NUM_CHANNELS
Definition: data_gnss.hpp:794
@ FLAGS
Definition: data_gnss.hpp:795
uint16_t value
Definition: data_gnss.hpp:797
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:803
ValidFlags()
Definition: data_gnss.hpp:799
ValidFlags(int val)
Definition: data_gnss.hpp:800
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:804
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:805
Definition: data_gnss.hpp:780
uint8_t sv_id
Definition: data_gnss.hpp:808
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:781
float range_rate_correction
Definition: data_gnss.hpp:811
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:782
float range_correction
Definition: data_gnss.hpp:810
ValidFlags valid_flags
Definition: data_gnss.hpp:812
float age
Definition: data_gnss.hpp:809
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:784
Definition: data_gnss.hpp:371
_enumType
Definition: data_gnss.hpp:373
@ TDOP
Definition: data_gnss.hpp:379
@ FLAGS
Definition: data_gnss.hpp:382
@ VDOP
Definition: data_gnss.hpp:378
@ GDOP
Definition: data_gnss.hpp:375
@ NONE
Definition: data_gnss.hpp:374
@ EDOP
Definition: data_gnss.hpp:381
@ NDOP
Definition: data_gnss.hpp:380
@ HDOP
Definition: data_gnss.hpp:377
@ PDOP
Definition: data_gnss.hpp:376
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:392
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:390
uint16_t value
Definition: data_gnss.hpp:384
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:389
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:391
ValidFlags()
Definition: data_gnss.hpp:386
ValidFlags(int val)
Definition: data_gnss.hpp:387
Definition: data_gnss.hpp:364
ValidFlags valid_flags
Definition: data_gnss.hpp:402
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:368
float gdop
Geometric DOP.
Definition: data_gnss.hpp:395
float tdop
Time DOP.
Definition: data_gnss.hpp:399
float ndop
Northing DOP.
Definition: data_gnss.hpp:400
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:365
float hdop
Horizontal DOP.
Definition: data_gnss.hpp:397
float edop
Easting DOP.
Definition: data_gnss.hpp:401
float pdop
Position DOP.
Definition: data_gnss.hpp:396
float vdop
Vertical DOP.
Definition: data_gnss.hpp:398
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:366
Definition: data_gnss.hpp:571
FixFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:586
_enumType
Definition: data_gnss.hpp:573
@ SBAS_USED
Definition: data_gnss.hpp:575
@ NONE
Definition: data_gnss.hpp:574
@ DNGSS_USED
Definition: data_gnss.hpp:576
FixFlags & operator=(int val)
Definition: data_gnss.hpp:584
FixFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:585
uint16_t value
Definition: data_gnss.hpp:578
FixFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:583
FixFlags(int val)
Definition: data_gnss.hpp:581
FixFlags()
Definition: data_gnss.hpp:580
Definition: data_gnss.hpp:590
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:607
ValidFlags(int val)
Definition: data_gnss.hpp:602
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:604
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:606
ValidFlags()
Definition: data_gnss.hpp:601
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:605
uint16_t value
Definition: data_gnss.hpp:599
_enumType
Definition: data_gnss.hpp:592
@ FIX_FLAGS
Definition: data_gnss.hpp:596
@ NONE
Definition: data_gnss.hpp:593
@ FLAGS
Definition: data_gnss.hpp:597
@ NUM_SV
Definition: data_gnss.hpp:595
@ FIX_TYPE
Definition: data_gnss.hpp:594
Definition: data_gnss.hpp:553
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:557
FixFlags fix_flags
Definition: data_gnss.hpp:612
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:555
FixType fix_type
Definition: data_gnss.hpp:610
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:554
ValidFlags valid_flags
Definition: data_gnss.hpp:613
uint8_t num_sv
Definition: data_gnss.hpp:611
FixType
Definition: data_gnss.hpp:560
Definition: data_gnss.hpp:1670
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:1687
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:1685
_enumType
Definition: data_gnss.hpp:1672
@ DISTURBANCE_FLAGS
Definition: data_gnss.hpp:1677
@ FLAGS
Definition: data_gnss.hpp:1678
@ TOW
Definition: data_gnss.hpp:1674
@ ALPHA
Definition: data_gnss.hpp:1676
@ WEEK_NUMBER
Definition: data_gnss.hpp:1675
@ NONE
Definition: data_gnss.hpp:1673
uint16_t value
Definition: data_gnss.hpp:1680
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:1686
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:1688
ValidFlags()
Definition: data_gnss.hpp:1682
ValidFlags(int val)
Definition: data_gnss.hpp:1683
Definition: data_gnss.hpp:1663
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:1664
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:1665
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.hpp:1691
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:1667
double alpha[3]
Coefficients for the model.
Definition: data_gnss.hpp:1693
ValidFlags valid_flags
Definition: data_gnss.hpp:1695
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.hpp:1692
uint8_t disturbance_flags
Region disturbance flags (bits 1-5).
Definition: data_gnss.hpp:1694
Definition: data_gnss.hpp:1559
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:1572
ValidFlags()
Definition: data_gnss.hpp:1568
_enumType
Definition: data_gnss.hpp:1561
@ NONE
Definition: data_gnss.hpp:1562
@ FLAGS
Definition: data_gnss.hpp:1564
@ EPHEMERIS
Definition: data_gnss.hpp:1563
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:1573
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:1571
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:1574
uint16_t value
Definition: data_gnss.hpp:1566
ValidFlags(int val)
Definition: data_gnss.hpp:1569
Definition: data_gnss.hpp:1552
float v[3]
Satellite PE-90 velocity [m/s].
Definition: data_gnss.hpp:1589
uint8_t health
Satellite Health (Bn), Non-zero indicates satellite malfunction.
Definition: data_gnss.hpp:1591
uint8_t P3
Number of satellites in almanac for this frame.
Definition: data_gnss.hpp:1599
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.hpp:1580
double x[3]
Satellite PE-90 position [m].
Definition: data_gnss.hpp:1588
float delta_tau_n
Time difference between L1 and L2[m/s].
Definition: data_gnss.hpp:1594
uint32_t tb
Ephemeris reference time [seconds].
Definition: data_gnss.hpp:1584
double tau_n
Time correction relative to GLONASS Time [seconds].
Definition: data_gnss.hpp:1587
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:1553
uint8_t index
Index of this field in this epoch.
Definition: data_gnss.hpp:1577
int8_t freq_number
GLONASS frequency number (-7 to 24)
Definition: data_gnss.hpp:1582
uint8_t P4
Flag indicating ephemeris parameters are present.
Definition: data_gnss.hpp:1600
uint8_t sat_type
Type of satellite (M) GLONASS = 0, GLONASS-M = 1.
Definition: data_gnss.hpp:1585
uint8_t count
Total number of fields in this epoch.
Definition: data_gnss.hpp:1578
uint8_t P
Satellite operation mode (See GLONASS ICD)
Definition: data_gnss.hpp:1592
uint8_t NT
Day number within a 4 year period.
Definition: data_gnss.hpp:1593
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:1554
uint32_t tk
Frame start time within current day [seconds].
Definition: data_gnss.hpp:1583
uint8_t P1
Time interval between adjacent values of tb [minutes].
Definition: data_gnss.hpp:1597
ValidFlags valid_flags
Definition: data_gnss.hpp:1601
float a[3]
Satellite PE-90 acceleration due to pertubations [m/s^2].
Definition: data_gnss.hpp:1590
uint8_t En
Age of current information [days].
Definition: data_gnss.hpp:1596
double gamma
Relative deviation of carrier frequency from nominal [dimesnionless].
Definition: data_gnss.hpp:1586
uint8_t P2
Oddness "1" or evenness "0" of the value of tb.
Definition: data_gnss.hpp:1598
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:1556
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.hpp:1579
uint8_t satellite_id
GNSS satellite id within the constellation.
Definition: data_gnss.hpp:1581
uint8_t Ft
User Range Accuracy (See GLONASS ICD)
Definition: data_gnss.hpp:1595
Definition: data_gnss.hpp:1485
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:1501
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:1498
uint16_t value
Definition: data_gnss.hpp:1493
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:1500
ValidFlags(int val)
Definition: data_gnss.hpp:1496
ValidFlags()
Definition: data_gnss.hpp:1495
_enumType
Definition: data_gnss.hpp:1487
@ NONE
Definition: data_gnss.hpp:1488
@ MODERN_DATA
Definition: data_gnss.hpp:1490
@ FLAGS
Definition: data_gnss.hpp:1491
@ EPHEMERIS
Definition: data_gnss.hpp:1489
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:1499
Definition: data_gnss.hpp:1478
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:1479
double t_gd
T Group Delay [s].
Definition: data_gnss.hpp:1516
ValidFlags valid_flags
Definition: data_gnss.hpp:1537
double af0
Clock bias in [s].
Definition: data_gnss.hpp:1513
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.hpp:1507
double af1
Clock drift in [s/s].
Definition: data_gnss.hpp:1514
double a
Semi-major axis [m].
Definition: data_gnss.hpp:1520
double omega
Longitude of Ascending Node [rad].
Definition: data_gnss.hpp:1527
double t_oc
Reference time for clock data.
Definition: data_gnss.hpp:1512
double ISC_L1CA
Definition: data_gnss.hpp:1517
double delta_mean_motion
[rad].
Definition: data_gnss.hpp:1523
uint8_t health
Satellite and signal health.
Definition: data_gnss.hpp:1509
double omega_dot
Rate of Right Ascention [rad/s].
Definition: data_gnss.hpp:1528
uint8_t index
Index of this field in this epoch.
Definition: data_gnss.hpp:1504
double ISC_L2C
Definition: data_gnss.hpp:1518
uint8_t count
Total number of fields in this epoch.
Definition: data_gnss.hpp:1505
double inclination
Inclination angle [rad].
Definition: data_gnss.hpp:1529
double argument_of_perigee
[rad].
Definition: data_gnss.hpp:1526
double c_uc
Harmonic Correction Term.
Definition: data_gnss.hpp:1533
double c_rs
Harmonic Correction Term.
Definition: data_gnss.hpp:1536
uint8_t satellite_id
GNSS satellite id within the constellation.
Definition: data_gnss.hpp:1508
double eccentricity
Definition: data_gnss.hpp:1525
double c_is
Harmonic Correction Term.
Definition: data_gnss.hpp:1532
uint8_t iodc
Issue of Data Clock. This increments each time the data changes and rolls over at 4....
Definition: data_gnss.hpp:1510
double a_dot
Semi-matjor axis rate [m/s].
Definition: data_gnss.hpp:1521
double c_ic
Harmonic Correction Term.
Definition: data_gnss.hpp:1531
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.hpp:1506
double inclination_dot
Inclination angle rate of change [rad/s].
Definition: data_gnss.hpp:1530
double mean_anomaly
[rad].
Definition: data_gnss.hpp:1522
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:1482
double c_us
Harmonic Correction Term.
Definition: data_gnss.hpp:1534
double t_oe
Reference time for ephemeris in [s].
Definition: data_gnss.hpp:1519
double af2
Clock drift rate in [s/s^2].
Definition: data_gnss.hpp:1515
double delta_mean_motion_dot
[rad/s].
Definition: data_gnss.hpp:1524
double c_rc
Harmonic Correction Term.
Definition: data_gnss.hpp:1535
uint8_t iode
Issue of Data Ephemeris.
Definition: data_gnss.hpp:1511
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:1480
Definition: data_gnss.hpp:1623
ValidFlags(int val)
Definition: data_gnss.hpp:1636
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:1641
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:1639
_enumType
Definition: data_gnss.hpp:1625
@ ALPHA
Definition: data_gnss.hpp:1629
@ WEEK_NUMBER
Definition: data_gnss.hpp:1628
@ BETA
Definition: data_gnss.hpp:1630
@ NONE
Definition: data_gnss.hpp:1626
@ TOW
Definition: data_gnss.hpp:1627
@ FLAGS
Definition: data_gnss.hpp:1631
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:1638
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:1640
uint16_t value
Definition: data_gnss.hpp:1633
ValidFlags()
Definition: data_gnss.hpp:1635
Definition: data_gnss.hpp:1616
double alpha[4]
Ionospheric Correction Terms.
Definition: data_gnss.hpp:1646
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:1617
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.hpp:1645
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.hpp:1644
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:1618
ValidFlags valid_flags
Definition: data_gnss.hpp:1648
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:1620
double beta[4]
Ionospheric Correction Terms.
Definition: data_gnss.hpp:1647
Definition: data_gnss.hpp:932
ValidFlags()
Definition: data_gnss.hpp:940
_enumType
Definition: data_gnss.hpp:934
@ NONE
Definition: data_gnss.hpp:935
@ LEAP_SECONDS
Definition: data_gnss.hpp:936
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:944
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:943
uint16_t value
Definition: data_gnss.hpp:938
ValidFlags(int val)
Definition: data_gnss.hpp:941
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:946
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:945
Definition: data_gnss.hpp:925
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:926
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:927
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:929
ValidFlags valid_flags
Definition: data_gnss.hpp:950
uint8_t leap_seconds
[s]
Definition: data_gnss.hpp:949
Definition: data_gnss.hpp:472
_enumType
Definition: data_gnss.hpp:474
@ FLAGS
Definition: data_gnss.hpp:478
@ WEEK_NUMBER
Definition: data_gnss.hpp:477
@ TOW
Definition: data_gnss.hpp:476
@ NONE
Definition: data_gnss.hpp:475
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:485
ValidFlags()
Definition: data_gnss.hpp:482
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:488
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:487
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:486
uint16_t value
Definition: data_gnss.hpp:480
ValidFlags(int val)
Definition: data_gnss.hpp:483
Definition: data_gnss.hpp:465
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:469
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:466
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.hpp:492
double tow
GPS Time of week [seconds].
Definition: data_gnss.hpp:491
ValidFlags valid_flags
Definition: data_gnss.hpp:493
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:467
Definition: data_gnss.hpp:730
ValidFlags(int val)
Definition: data_gnss.hpp:742
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:746
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:747
_enumType
Definition: data_gnss.hpp:732
@ NONE
Definition: data_gnss.hpp:733
@ FLAGS
Definition: data_gnss.hpp:737
@ ANTENNA_POWER
Definition: data_gnss.hpp:736
@ ANTENNA_STATE
Definition: data_gnss.hpp:735
@ SENSOR_STATE
Definition: data_gnss.hpp:734
uint16_t value
Definition: data_gnss.hpp:739
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:745
ValidFlags()
Definition: data_gnss.hpp:741
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:744
Definition: data_gnss.hpp:700
AntennaState antenna_state
Definition: data_gnss.hpp:751
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:702
AntennaPower antenna_power
Definition: data_gnss.hpp:752
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:704
ValidFlags valid_flags
Definition: data_gnss.hpp:753
ReceiverState
Definition: data_gnss.hpp:707
ReceiverState receiver_state
Definition: data_gnss.hpp:750
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:701
AntennaState
Definition: data_gnss.hpp:714
AntennaPower
Definition: data_gnss.hpp:723
Definition: data_gnss.hpp:234
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:249
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:248
uint16_t value
Definition: data_gnss.hpp:242
ValidFlags()
Definition: data_gnss.hpp:244
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:247
ValidFlags(int val)
Definition: data_gnss.hpp:245
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:250
_enumType
Definition: data_gnss.hpp:236
@ POSITION
Definition: data_gnss.hpp:238
@ POSITION_ACCURACY
Definition: data_gnss.hpp:239
@ FLAGS
Definition: data_gnss.hpp:240
@ NONE
Definition: data_gnss.hpp:237
Definition: data_gnss.hpp:227
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:229
float x_accuracy
[meters]
Definition: data_gnss.hpp:254
ValidFlags valid_flags
Definition: data_gnss.hpp:255
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:228
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:231
double x[3]
[meters]
Definition: data_gnss.hpp:253
Definition: data_gnss.hpp:184
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:201
_enumType
Definition: data_gnss.hpp:186
@ HORIZONTAL_ACCURACY
Definition: data_gnss.hpp:191
@ MSL_HEIGHT
Definition: data_gnss.hpp:190
@ FLAGS
Definition: data_gnss.hpp:193
@ NONE
Definition: data_gnss.hpp:187
@ LAT_LON
Definition: data_gnss.hpp:188
@ ELLIPSOID_HEIGHT
Definition: data_gnss.hpp:189
@ VERTICAL_ACCURACY
Definition: data_gnss.hpp:192
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:203
ValidFlags(int val)
Definition: data_gnss.hpp:198
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:200
uint16_t value
Definition: data_gnss.hpp:195
ValidFlags()
Definition: data_gnss.hpp:197
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:202
Definition: data_gnss.hpp:177
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:179
double ellipsoid_height
[meters]
Definition: data_gnss.hpp:208
ValidFlags valid_flags
Definition: data_gnss.hpp:212
double latitude
[degrees]
Definition: data_gnss.hpp:206
double msl_height
[meters]
Definition: data_gnss.hpp:209
float horizontal_accuracy
[meters]
Definition: data_gnss.hpp:210
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:178
double longitude
[degrees]
Definition: data_gnss.hpp:207
float vertical_accuracy
[meters]
Definition: data_gnss.hpp:211
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:181
Definition: data_gnss.hpp:1412
ValidFlags()
Definition: data_gnss.hpp:1436
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:1440
ValidFlags(int val)
Definition: data_gnss.hpp:1437
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:1442
_enumType
Definition: data_gnss.hpp:1414
@ CARRIER_PHASE
Definition: data_gnss.hpp:1426
@ PSEUDORANGE
Definition: data_gnss.hpp:1425
@ WEEK_NUMBER
Definition: data_gnss.hpp:1417
@ NONE
Definition: data_gnss.hpp:1415
@ CARRIER_PHASE_UNCERTAINTY
Definition: data_gnss.hpp:1429
@ SIGNAL_ID
Definition: data_gnss.hpp:1422
@ DOPPLER
Definition: data_gnss.hpp:1427
@ TOW
Definition: data_gnss.hpp:1416
@ RECEIVER_ID
Definition: data_gnss.hpp:1418
@ SATELLITE_ID
Definition: data_gnss.hpp:1421
@ TRACKING_CHANNEL
Definition: data_gnss.hpp:1419
@ GNSS_ID
Definition: data_gnss.hpp:1420
@ RANGE_UNCERTAINTY
Definition: data_gnss.hpp:1428
@ QUALITY
Definition: data_gnss.hpp:1424
@ FLAGS
Definition: data_gnss.hpp:1432
@ SIGNAL_STRENGTH
Definition: data_gnss.hpp:1423
@ DOPPLER_UNCERTAINTY
Definition: data_gnss.hpp:1430
@ LOCK_TIME
Definition: data_gnss.hpp:1431
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:1439
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:1441
uint16_t value
Definition: data_gnss.hpp:1434
Definition: data_gnss.hpp:1395
float doppler_uncert
Uncertainty of the measured doppler shift [Hz].
Definition: data_gnss.hpp:1461
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:1396
GnssSignalId signal_id
Signal identifier for the satellite.
Definition: data_gnss.hpp:1453
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:1399
double carrier_phase
Carrier phase measurement [Carrier periods].
Definition: data_gnss.hpp:1457
uint8_t count
Total number of fields in this epoch.
Definition: data_gnss.hpp:1446
float signal_strength
Carrier to noise ratio [dBHz].
Definition: data_gnss.hpp:1454
float range_uncert
Uncertainty of the pseudorange measurement [m].
Definition: data_gnss.hpp:1459
float phase_uncert
Uncertainty of the phase measurement [Carrier periods].
Definition: data_gnss.hpp:1460
uint16_t receiver_id
When the measurement comes from RTCM, this will be the reference station ID; otherwise,...
Definition: data_gnss.hpp:1449
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.hpp:1448
GnssConstellationId gnss_id
Definition: data_gnss.hpp:1451
uint8_t tracking_channel
Channel the receiver is using to track this satellite.
Definition: data_gnss.hpp:1450
uint8_t satellite_id
GNSS satellite id within the constellation.
Definition: data_gnss.hpp:1452
uint8_t index
Index of this field in this epoch.
Definition: data_gnss.hpp:1445
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.hpp:1447
ValidFlags valid_flags
Definition: data_gnss.hpp:1463
float doppler
Measured doppler shift [Hz].
Definition: data_gnss.hpp:1458
GnssSignalQuality
Definition: data_gnss.hpp:1402
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:1397
double pseudorange
Pseudorange measurement [meters].
Definition: data_gnss.hpp:1456
GnssSignalQuality quality
Indicator of signal quality.
Definition: data_gnss.hpp:1455
float lock_time
DOC Minimum carrier phase lock time [s]. Note: the maximum value is dependent on the receiver.
Definition: data_gnss.hpp:1462
Definition: data_gnss.hpp:1141
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:1157
ValidFlags()
Definition: data_gnss.hpp:1152
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:1155
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:1156
ValidFlags(int val)
Definition: data_gnss.hpp:1153
_enumType
Definition: data_gnss.hpp:1143
@ JAMMING_STATE
Definition: data_gnss.hpp:1146
@ RF_BAND
Definition: data_gnss.hpp:1145
@ NONE
Definition: data_gnss.hpp:1144
@ SPOOFING_STATE
Definition: data_gnss.hpp:1147
@ FLAGS
Definition: data_gnss.hpp:1148
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:1158
uint16_t value
Definition: data_gnss.hpp:1150
Definition: data_gnss.hpp:1110
ValidFlags valid_flags
Definition: data_gnss.hpp:1165
uint8_t reserved[4]
Reserved for future use.
Definition: data_gnss.hpp:1164
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:1114
RFBand rf_band
RF Band of the reported information.
Definition: data_gnss.hpp:1161
JammingState
Definition: data_gnss.hpp:1125
RFBand
Definition: data_gnss.hpp:1117
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:1112
SpoofingState spoofing_state
GNSS Spoofing State (as reported by the GNSS module)
Definition: data_gnss.hpp:1163
SpoofingState
Definition: data_gnss.hpp:1133
JammingState jamming_state
GNSS Jamming State (as reported by the GNSS module)
Definition: data_gnss.hpp:1162
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:1111
EpochStatus & operator=(int val)
Definition: data_gnss.hpp:1311
EpochStatus & operator|=(uint16_t val)
Definition: data_gnss.hpp:1312
EpochStatus & operator&=(uint16_t val)
Definition: data_gnss.hpp:1313
EpochStatus(int val)
Definition: data_gnss.hpp:1308
uint16_t value
Definition: data_gnss.hpp:1305
EpochStatus()
Definition: data_gnss.hpp:1307
@ GPS_RECEIVED
Definition: data_gnss.hpp:1297
@ USING_GLONASS_MSM_MESSAGES
Using MSM messages for GLONASS corrections instead of RTCM messages 1009-1012.
Definition: data_gnss.hpp:1302
@ DONGLE_STATUS_READ_FAILED
A read of the dongle status was attempted, but failed.
Definition: data_gnss.hpp:1303
@ ANTENNA_DESCRIPTION_RECEIVED
Definition: data_gnss.hpp:1296
@ BEIDOU_RECEIVED
Definition: data_gnss.hpp:1300
@ GLONASS_RECEIVED
Definition: data_gnss.hpp:1298
@ ANTENNA_LOCATION_RECEIVED
Definition: data_gnss.hpp:1295
@ USING_GPS_MSM_MESSAGES
Using MSM messages for GPS corrections instead of RTCM messages 1001-1004.
Definition: data_gnss.hpp:1301
@ GALILEO_RECEIVED
Definition: data_gnss.hpp:1299
EpochStatus & operator=(uint16_t val)
Definition: data_gnss.hpp:1310
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:1286
ValidFlags(int val)
Definition: data_gnss.hpp:1282
uint16_t value
Definition: data_gnss.hpp:1279
@ GPS_LATENCY
Definition: data_gnss.hpp:1273
@ BEIDOU_LATENCY
Definition: data_gnss.hpp:1276
@ EPOCH_STATUS
Definition: data_gnss.hpp:1271
@ GLONASS_LATENCY
Definition: data_gnss.hpp:1274
@ GALILEO_LATENCY
Definition: data_gnss.hpp:1275
@ FLAGS
Definition: data_gnss.hpp:1277
@ DONGLE_STATUS
Definition: data_gnss.hpp:1272
@ WEEK_NUMBER
Definition: data_gnss.hpp:1270
@ NONE
Definition: data_gnss.hpp:1268
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:1284
ValidFlags()
Definition: data_gnss.hpp:1281
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:1287
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:1285
Definition: data_gnss.hpp:1258
EpochStatus epoch_status
Status of the corrections received during this epoch.
Definition: data_gnss.hpp:1318
ValidFlags valid_flags
Definition: data_gnss.hpp:1325
float gps_correction_latency
Latency of last GPS correction [seconds].
Definition: data_gnss.hpp:1320
uint32_t dongle_status
RTK Dongle Status Flags (valid only when using RTK dongle, see MIP_CMD_DESC_RTK_GET_STATUS_FLAGS for ...
Definition: data_gnss.hpp:1319
float galileo_correction_latency
Latency of last Galileo correction [seconds].
Definition: data_gnss.hpp:1322
uint32_t reserved[4]
Reserved for future use.
Definition: data_gnss.hpp:1324
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:1260
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.hpp:1316
float glonass_correction_latency
Latency of last GLONASS correction [seconds].
Definition: data_gnss.hpp:1321
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:1262
float beidou_correction_latency
Latency of last Beidou correction [seconds].
Definition: data_gnss.hpp:1323
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.hpp:1317
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:1259
Definition: data_gnss.hpp:1347
uint16_t value
Definition: data_gnss.hpp:1360
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:1366
ValidFlags(int val)
Definition: data_gnss.hpp:1363
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:1368
_enumType
Definition: data_gnss.hpp:1349
@ GNSS_ID
Definition: data_gnss.hpp:1353
@ HEALTH
Definition: data_gnss.hpp:1357
@ SATELLITE_ID
Definition: data_gnss.hpp:1354
@ FLAGS
Definition: data_gnss.hpp:1358
@ TOW
Definition: data_gnss.hpp:1351
@ NONE
Definition: data_gnss.hpp:1350
@ ELEVATION
Definition: data_gnss.hpp:1355
@ AZIMUTH
Definition: data_gnss.hpp:1356
@ WEEK_NUMBER
Definition: data_gnss.hpp:1352
ValidFlags()
Definition: data_gnss.hpp:1362
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:1365
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:1367
Definition: data_gnss.hpp:1340
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:1341
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.hpp:1373
ValidFlags valid_flags
Definition: data_gnss.hpp:1380
uint8_t satellite_id
GNSS satellite id within the constellation.
Definition: data_gnss.hpp:1376
uint8_t count
Total number of fields in this epoch.
Definition: data_gnss.hpp:1372
bool health
True if the satellite is healthy.
Definition: data_gnss.hpp:1379
uint8_t index
Index of this field in this epoch.
Definition: data_gnss.hpp:1371
float elevation
Elevation of the satellite relative to the rover [degrees].
Definition: data_gnss.hpp:1377
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:1342
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.hpp:1374
float azimuth
Azimuth of the satellite relative to the rover [degrees].
Definition: data_gnss.hpp:1378
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:1344
GnssConstellationId gnss_id
Definition: data_gnss.hpp:1375
Definition: data_gnss.hpp:1066
ValidFlags()
Definition: data_gnss.hpp:1077
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:1081
_enumType
Definition: data_gnss.hpp:1068
@ FLAGS
Definition: data_gnss.hpp:1073
@ PSEUDORANGE_CORRECTION
Definition: data_gnss.hpp:1071
@ IONO_CORRECTION
Definition: data_gnss.hpp:1072
@ UDREI
Definition: data_gnss.hpp:1070
@ NONE
Definition: data_gnss.hpp:1069
uint16_t value
Definition: data_gnss.hpp:1075
ValidFlags(int val)
Definition: data_gnss.hpp:1078
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:1080
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:1083
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:1082
Definition: data_gnss.hpp:1059
GnssConstellationId gnss_id
GNSS constellation id.
Definition: data_gnss.hpp:1090
ValidFlags valid_flags
Definition: data_gnss.hpp:1095
float pseudorange_correction
Pseudorange correction [meters].
Definition: data_gnss.hpp:1093
uint8_t sv_id
GNSS satellite id within the constellation.
Definition: data_gnss.hpp:1091
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:1061
uint8_t index
Index of this field in this epoch.
Definition: data_gnss.hpp:1086
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.hpp:1089
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:1063
double time_of_week
GPS Time of week the message was received [seconds].
Definition: data_gnss.hpp:1088
uint8_t udrei
[See above 0-13 usable, 14 not monitored, 15 - do not use]
Definition: data_gnss.hpp:1092
float iono_correction
Ionospheric correction [meters].
Definition: data_gnss.hpp:1094
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:1060
uint8_t count
Total number of fields in this epoch.
Definition: data_gnss.hpp:1087
Definition: data_gnss.hpp:972
SbasStatus(int val)
Definition: data_gnss.hpp:984
SbasStatus & operator|=(uint8_t val)
Definition: data_gnss.hpp:988
SbasStatus & operator=(int val)
Definition: data_gnss.hpp:987
SbasStatus()
Definition: data_gnss.hpp:983
uint8_t value
Definition: data_gnss.hpp:981
SbasStatus & operator&=(uint8_t val)
Definition: data_gnss.hpp:989
_enumType
Definition: data_gnss.hpp:974
@ RANGE_AVAILABLE
Definition: data_gnss.hpp:976
@ CORRECTIONS_AVAILABLE
Definition: data_gnss.hpp:977
@ TEST_MODE
Definition: data_gnss.hpp:979
@ INTEGRITY_AVAILABLE
Definition: data_gnss.hpp:978
@ NONE
Definition: data_gnss.hpp:975
SbasStatus & operator=(uint8_t val)
Definition: data_gnss.hpp:986
Definition: data_gnss.hpp:993
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:1013
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:1010
uint16_t value
Definition: data_gnss.hpp:1005
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:1011
_enumType
Definition: data_gnss.hpp:995
@ SBAS_SYSTEM
Definition: data_gnss.hpp:999
@ SBAS_STATUS
Definition: data_gnss.hpp:1002
@ WEEK_NUMBER
Definition: data_gnss.hpp:998
@ FLAGS
Definition: data_gnss.hpp:1003
@ TOW
Definition: data_gnss.hpp:997
@ COUNT
Definition: data_gnss.hpp:1001
@ SBAS_ID
Definition: data_gnss.hpp:1000
@ NONE
Definition: data_gnss.hpp:996
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:1012
ValidFlags(int val)
Definition: data_gnss.hpp:1008
ValidFlags()
Definition: data_gnss.hpp:1007
Definition: data_gnss.hpp:965
uint8_t sbas_id
SBAS satellite id.
Definition: data_gnss.hpp:1019
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.hpp:1016
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:969
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:967
ValidFlags valid_flags
Definition: data_gnss.hpp:1022
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:966
SbasStatus sbas_status
Status of the SBAS service.
Definition: data_gnss.hpp:1021
SbasSystem sbas_system
SBAS system id.
Definition: data_gnss.hpp:1018
uint8_t count
Number of SBAS corrections.
Definition: data_gnss.hpp:1020
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.hpp:1017
Definition: data_gnss.hpp:637
uint16_t value
Definition: data_gnss.hpp:644
SVFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:649
SVFlags(int val)
Definition: data_gnss.hpp:647
_enumType
Definition: data_gnss.hpp:639
@ NONE
Definition: data_gnss.hpp:640
@ USED_FOR_NAVIGATION
Definition: data_gnss.hpp:641
@ HEALTHY
Definition: data_gnss.hpp:642
SVFlags & operator=(int val)
Definition: data_gnss.hpp:650
SVFlags()
Definition: data_gnss.hpp:646
SVFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:651
SVFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:652
Definition: data_gnss.hpp:656
_enumType
Definition: data_gnss.hpp:658
@ NONE
Definition: data_gnss.hpp:659
@ FLAGS
Definition: data_gnss.hpp:666
@ ELEVATION
Definition: data_gnss.hpp:664
@ CARRIER_NOISE_RATIO
Definition: data_gnss.hpp:662
@ SV_FLAGS
Definition: data_gnss.hpp:665
@ AZIMUTH
Definition: data_gnss.hpp:663
@ CHANNEL
Definition: data_gnss.hpp:660
@ SV_ID
Definition: data_gnss.hpp:661
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:676
ValidFlags(int val)
Definition: data_gnss.hpp:671
uint16_t value
Definition: data_gnss.hpp:668
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:673
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:674
ValidFlags()
Definition: data_gnss.hpp:670
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:675
Definition: data_gnss.hpp:630
uint16_t carrier_noise_ratio
[dBHz]
Definition: data_gnss.hpp:681
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:632
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:634
int16_t azimuth
[deg]
Definition: data_gnss.hpp:682
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:631
uint8_t channel
Receiver channel number.
Definition: data_gnss.hpp:679
ValidFlags valid_flags
Definition: data_gnss.hpp:685
uint8_t sv_id
GNSS Satellite ID.
Definition: data_gnss.hpp:680
int16_t elevation
[deg]
Definition: data_gnss.hpp:683
SVFlags sv_flags
Definition: data_gnss.hpp:684
Definition: data_gnss.hpp:424
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:437
uint16_t value
Definition: data_gnss.hpp:432
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:439
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:438
_enumType
Definition: data_gnss.hpp:426
@ LEAP_SECONDS_KNOWN
Definition: data_gnss.hpp:429
@ FLAGS
Definition: data_gnss.hpp:430
@ NONE
Definition: data_gnss.hpp:427
@ GNSS_DATE_TIME
Definition: data_gnss.hpp:428
ValidFlags()
Definition: data_gnss.hpp:434
ValidFlags(int val)
Definition: data_gnss.hpp:435
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:440
Definition: data_gnss.hpp:417
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:421
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:419
uint8_t sec
Definition: data_gnss.hpp:448
ValidFlags valid_flags
Definition: data_gnss.hpp:450
uint8_t month
Definition: data_gnss.hpp:444
uint16_t year
Definition: data_gnss.hpp:443
uint8_t day
Definition: data_gnss.hpp:445
uint32_t msec
[Milliseconds]
Definition: data_gnss.hpp:449
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:418
uint8_t hour
Definition: data_gnss.hpp:446
uint8_t min
Definition: data_gnss.hpp:447
Definition: data_gnss.hpp:328
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:342
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:341
ValidFlags()
Definition: data_gnss.hpp:338
_enumType
Definition: data_gnss.hpp:330
@ NONE
Definition: data_gnss.hpp:331
@ VELOCITY_ACCURACY
Definition: data_gnss.hpp:333
@ VELOCITY
Definition: data_gnss.hpp:332
@ FLAGS
Definition: data_gnss.hpp:334
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:343
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:344
ValidFlags(int val)
Definition: data_gnss.hpp:339
uint16_t value
Definition: data_gnss.hpp:336
Definition: data_gnss.hpp:321
float v[3]
[meters/second]
Definition: data_gnss.hpp:347
float v_accuracy
[meters/second]
Definition: data_gnss.hpp:348
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:323
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:325
ValidFlags valid_flags
Definition: data_gnss.hpp:349
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:322
Definition: data_gnss.hpp:277
ValidFlags & operator=(uint16_t val)
Definition: data_gnss.hpp:294
uint16_t value
Definition: data_gnss.hpp:289
ValidFlags & operator|=(uint16_t val)
Definition: data_gnss.hpp:296
_enumType
Definition: data_gnss.hpp:279
@ HEADING
Definition: data_gnss.hpp:284
@ NONE
Definition: data_gnss.hpp:280
@ FLAGS
Definition: data_gnss.hpp:287
@ VELOCITY
Definition: data_gnss.hpp:281
@ GROUND_SPEED
Definition: data_gnss.hpp:283
@ SPEED_3D
Definition: data_gnss.hpp:282
@ SPEED_ACCURACY
Definition: data_gnss.hpp:285
@ HEADING_ACCURACY
Definition: data_gnss.hpp:286
ValidFlags & operator=(int val)
Definition: data_gnss.hpp:295
ValidFlags()
Definition: data_gnss.hpp:291
ValidFlags & operator&=(uint16_t val)
Definition: data_gnss.hpp:297
ValidFlags(int val)
Definition: data_gnss.hpp:292
Definition: data_gnss.hpp:270
static const uint8_t FIELD_DESCRIPTOR
Definition: data_gnss.hpp:272
float v[3]
[meters/second]
Definition: data_gnss.hpp:300
float speed
[meters/second]
Definition: data_gnss.hpp:301
float heading
[degrees]
Definition: data_gnss.hpp:303
static const uint8_t DESCRIPTOR_SET
Definition: data_gnss.hpp:271
static const bool HAS_FUNCTION_SELECTOR
Definition: data_gnss.hpp:274
float ground_speed
[meters/second]
Definition: data_gnss.hpp:302
float heading_accuracy
[degrees]
Definition: data_gnss.hpp:305
float speed_accuracy
[meters/second]
Definition: data_gnss.hpp:304
ValidFlags valid_flags
Definition: data_gnss.hpp:306