MIP SDK  0.0.1
MicroStrain Communications Library for embedded systems
data_gnss.h
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 #ifdef __cplusplus
11 namespace mip {
12 namespace C {
13 extern "C" {
14 
15 #endif // __cplusplus
16 struct mip_interface;
17 struct mip_serializer;
18 struct mip_field;
19 
26 
28 // Descriptors
30 
31 enum
32 {
34 
64 
65 };
66 
68 // Shared Type Definitions
70 
71 enum { MIP_GNSS1_DATA_DESC_SET = 0x91 };
72 enum { MIP_GNSS2_DATA_DESC_SET = 0x92 };
73 enum { MIP_GNSS3_DATA_DESC_SET = 0x93 };
74 enum { MIP_GNSS4_DATA_DESC_SET = 0x94 };
75 enum { MIP_GNSS5_DATA_DESC_SET = 0x95 };
76 typedef uint8_t mip_gnss_constellation_id;
77 static const mip_gnss_constellation_id MIP_GNSS_CONSTELLATION_ID_UNKNOWN = 0;
78 static const mip_gnss_constellation_id MIP_GNSS_CONSTELLATION_ID_GPS = 1;
79 static const mip_gnss_constellation_id MIP_GNSS_CONSTELLATION_ID_GLONASS = 2;
80 static const mip_gnss_constellation_id MIP_GNSS_CONSTELLATION_ID_GALILEO = 3;
81 static const mip_gnss_constellation_id MIP_GNSS_CONSTELLATION_ID_BEIDOU = 4;
82 static const mip_gnss_constellation_id MIP_GNSS_CONSTELLATION_ID_SBAS = 5;
83 
86 
87 typedef uint8_t mip_gnss_signal_id;
88 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_UNKNOWN = 0;
89 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L1CA = 1;
90 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L1P = 2;
91 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L1Z = 3;
92 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L2CA = 4;
93 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L2P = 5;
94 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L2Z = 6;
95 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L2CL = 7;
96 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L2CM = 8;
97 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L2CML = 9;
98 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L5I = 10;
99 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L5Q = 11;
100 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L5IQ = 12;
101 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L1CD = 13;
102 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L1CP = 14;
103 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GPS_L1CDP = 15;
104 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GLONASS_G1CA = 32;
105 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GLONASS_G1P = 33;
106 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GLONASS_G2C = 34;
107 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GLONASS_G2P = 35;
108 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E1C = 64;
109 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E1A = 65;
110 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E1B = 66;
111 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E1BC = 67;
112 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E1ABC = 68;
113 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E6C = 69;
114 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E6A = 70;
115 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E6B = 71;
116 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E6BC = 72;
117 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E6ABC = 73;
118 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E5BI = 74;
119 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E5BQ = 75;
120 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E5BIQ = 76;
121 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E5ABI = 77;
122 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E5ABQ = 78;
123 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E5ABIQ = 79;
124 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E5AI = 80;
125 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E5AQ = 81;
126 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_GALILEO_E5AIQ = 82;
127 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_SBAS_L1CA = 96;
128 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_SBAS_L5I = 97;
129 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_SBAS_L5Q = 98;
130 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_SBAS_L5IQ = 99;
131 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_QZSS_L1CA = 128;
132 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_QZSS_LEXS = 129;
133 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_QZSS_LEXL = 130;
134 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_QZSS_LEXSL = 131;
135 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_QZSS_L2CM = 132;
136 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_QZSS_L2CL = 133;
137 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_QZSS_L2CML = 134;
138 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_QZSS_L5I = 135;
139 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_QZSS_L5Q = 136;
140 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_QZSS_L5IQ = 137;
141 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_QZSS_L1CD = 138;
142 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_QZSS_L1CP = 139;
143 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_QZSS_L1CDP = 140;
144 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_BEIDOU_B1I = 160;
145 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_BEIDOU_B1Q = 161;
146 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_BEIDOU_B1IQ = 162;
147 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_BEIDOU_B3I = 163;
148 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_BEIDOU_B3Q = 164;
149 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_BEIDOU_B3IQ = 165;
150 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_BEIDOU_B2I = 166;
151 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_BEIDOU_B2Q = 167;
152 static const mip_gnss_signal_id MIP_GNSS_SIGNAL_ID_BEIDOU_B2IQ = 168;
153 
154 void insert_mip_gnss_signal_id(struct mip_serializer* serializer, const mip_gnss_signal_id self);
155 void extract_mip_gnss_signal_id(struct mip_serializer* serializer, mip_gnss_signal_id* self);
156 
157 typedef uint8_t mip_sbas_system;
158 static const mip_sbas_system MIP_SBAS_SYSTEM_UNKNOWN = 0;
159 static const mip_sbas_system MIP_SBAS_SYSTEM_WAAS = 1;
160 static const mip_sbas_system MIP_SBAS_SYSTEM_EGNOS = 2;
161 static const mip_sbas_system MIP_SBAS_SYSTEM_MSAS = 3;
162 static const mip_sbas_system MIP_SBAS_SYSTEM_GAGAN = 4;
163 
164 void insert_mip_sbas_system(struct mip_serializer* serializer, const mip_sbas_system self);
165 void extract_mip_sbas_system(struct mip_serializer* serializer, mip_sbas_system* self);
166 
169 
171 // Mip Fields
173 
179 
181 static const mip_gnss_pos_llh_data_valid_flags MIP_GNSS_POS_LLH_DATA_VALID_FLAGS_NONE = 0x0000;
182 static const mip_gnss_pos_llh_data_valid_flags MIP_GNSS_POS_LLH_DATA_VALID_FLAGS_LAT_LON = 0x0001;
183 static const mip_gnss_pos_llh_data_valid_flags MIP_GNSS_POS_LLH_DATA_VALID_FLAGS_ELLIPSOID_HEIGHT = 0x0002;
184 static const mip_gnss_pos_llh_data_valid_flags MIP_GNSS_POS_LLH_DATA_VALID_FLAGS_MSL_HEIGHT = 0x0004;
185 static const mip_gnss_pos_llh_data_valid_flags MIP_GNSS_POS_LLH_DATA_VALID_FLAGS_HORIZONTAL_ACCURACY = 0x0008;
186 static const mip_gnss_pos_llh_data_valid_flags MIP_GNSS_POS_LLH_DATA_VALID_FLAGS_VERTICAL_ACCURACY = 0x0010;
187 static const mip_gnss_pos_llh_data_valid_flags MIP_GNSS_POS_LLH_DATA_VALID_FLAGS_FLAGS = 0x001F;
188 
190 {
191  double latitude;
192  double longitude;
194  double msl_height;
198 
199 };
201 void insert_mip_gnss_pos_llh_data(struct mip_serializer* serializer, const mip_gnss_pos_llh_data* self);
203 bool extract_mip_gnss_pos_llh_data_from_field(const struct mip_field* field, void* ptr);
204 
207 
215 
217 static const mip_gnss_pos_ecef_data_valid_flags MIP_GNSS_POS_ECEF_DATA_VALID_FLAGS_NONE = 0x0000;
218 static const mip_gnss_pos_ecef_data_valid_flags MIP_GNSS_POS_ECEF_DATA_VALID_FLAGS_POSITION = 0x0001;
219 static const mip_gnss_pos_ecef_data_valid_flags MIP_GNSS_POS_ECEF_DATA_VALID_FLAGS_POSITION_ACCURACY = 0x0002;
220 static const mip_gnss_pos_ecef_data_valid_flags MIP_GNSS_POS_ECEF_DATA_VALID_FLAGS_FLAGS = 0x0003;
221 
223 {
224  double x[3];
225  float x_accuracy;
227 
228 };
230 void insert_mip_gnss_pos_ecef_data(struct mip_serializer* serializer, const mip_gnss_pos_ecef_data* self);
232 bool extract_mip_gnss_pos_ecef_data_from_field(const struct mip_field* field, void* ptr);
233 
236 
244 
246 static const mip_gnss_vel_ned_data_valid_flags MIP_GNSS_VEL_NED_DATA_VALID_FLAGS_NONE = 0x0000;
247 static const mip_gnss_vel_ned_data_valid_flags MIP_GNSS_VEL_NED_DATA_VALID_FLAGS_VELOCITY = 0x0001;
248 static const mip_gnss_vel_ned_data_valid_flags MIP_GNSS_VEL_NED_DATA_VALID_FLAGS_SPEED_3D = 0x0002;
249 static const mip_gnss_vel_ned_data_valid_flags MIP_GNSS_VEL_NED_DATA_VALID_FLAGS_GROUND_SPEED = 0x0004;
250 static const mip_gnss_vel_ned_data_valid_flags MIP_GNSS_VEL_NED_DATA_VALID_FLAGS_HEADING = 0x0008;
251 static const mip_gnss_vel_ned_data_valid_flags MIP_GNSS_VEL_NED_DATA_VALID_FLAGS_SPEED_ACCURACY = 0x0010;
252 static const mip_gnss_vel_ned_data_valid_flags MIP_GNSS_VEL_NED_DATA_VALID_FLAGS_HEADING_ACCURACY = 0x0020;
253 static const mip_gnss_vel_ned_data_valid_flags MIP_GNSS_VEL_NED_DATA_VALID_FLAGS_FLAGS = 0x003F;
254 
256 {
257  float v[3];
258  float speed;
259  float ground_speed;
260  float heading;
264 
265 };
267 void insert_mip_gnss_vel_ned_data(struct mip_serializer* serializer, const mip_gnss_vel_ned_data* self);
269 bool extract_mip_gnss_vel_ned_data_from_field(const struct mip_field* field, void* ptr);
270 
273 
281 
283 static const mip_gnss_vel_ecef_data_valid_flags MIP_GNSS_VEL_ECEF_DATA_VALID_FLAGS_NONE = 0x0000;
284 static const mip_gnss_vel_ecef_data_valid_flags MIP_GNSS_VEL_ECEF_DATA_VALID_FLAGS_VELOCITY = 0x0001;
285 static const mip_gnss_vel_ecef_data_valid_flags MIP_GNSS_VEL_ECEF_DATA_VALID_FLAGS_VELOCITY_ACCURACY = 0x0002;
286 static const mip_gnss_vel_ecef_data_valid_flags MIP_GNSS_VEL_ECEF_DATA_VALID_FLAGS_FLAGS = 0x0003;
287 
289 {
290  float v[3];
291  float v_accuracy;
293 
294 };
296 void insert_mip_gnss_vel_ecef_data(struct mip_serializer* serializer, const mip_gnss_vel_ecef_data* self);
298 bool extract_mip_gnss_vel_ecef_data_from_field(const struct mip_field* field, void* ptr);
299 
302 
310 
312 static const mip_gnss_dop_data_valid_flags MIP_GNSS_DOP_DATA_VALID_FLAGS_NONE = 0x0000;
313 static const mip_gnss_dop_data_valid_flags MIP_GNSS_DOP_DATA_VALID_FLAGS_GDOP = 0x0001;
314 static const mip_gnss_dop_data_valid_flags MIP_GNSS_DOP_DATA_VALID_FLAGS_PDOP = 0x0002;
315 static const mip_gnss_dop_data_valid_flags MIP_GNSS_DOP_DATA_VALID_FLAGS_HDOP = 0x0004;
316 static const mip_gnss_dop_data_valid_flags MIP_GNSS_DOP_DATA_VALID_FLAGS_VDOP = 0x0008;
317 static const mip_gnss_dop_data_valid_flags MIP_GNSS_DOP_DATA_VALID_FLAGS_TDOP = 0x0010;
318 static const mip_gnss_dop_data_valid_flags MIP_GNSS_DOP_DATA_VALID_FLAGS_NDOP = 0x0020;
319 static const mip_gnss_dop_data_valid_flags MIP_GNSS_DOP_DATA_VALID_FLAGS_EDOP = 0x0040;
320 static const mip_gnss_dop_data_valid_flags MIP_GNSS_DOP_DATA_VALID_FLAGS_FLAGS = 0x007F;
321 
323 {
324  float gdop;
325  float pdop;
326  float hdop;
327  float vdop;
328  float tdop;
329  float ndop;
330  float edop;
332 
333 };
334 typedef struct mip_gnss_dop_data mip_gnss_dop_data;
335 void insert_mip_gnss_dop_data(struct mip_serializer* serializer, const mip_gnss_dop_data* self);
336 void extract_mip_gnss_dop_data(struct mip_serializer* serializer, mip_gnss_dop_data* self);
337 bool extract_mip_gnss_dop_data_from_field(const struct mip_field* field, void* ptr);
338 
341 
349 
351 static const mip_gnss_utc_time_data_valid_flags MIP_GNSS_UTC_TIME_DATA_VALID_FLAGS_NONE = 0x0000;
352 static const mip_gnss_utc_time_data_valid_flags MIP_GNSS_UTC_TIME_DATA_VALID_FLAGS_GNSS_DATE_TIME = 0x0001;
353 static const mip_gnss_utc_time_data_valid_flags MIP_GNSS_UTC_TIME_DATA_VALID_FLAGS_LEAP_SECONDS_KNOWN = 0x0002;
354 static const mip_gnss_utc_time_data_valid_flags MIP_GNSS_UTC_TIME_DATA_VALID_FLAGS_FLAGS = 0x0003;
355 
357 {
358  uint16_t year;
359  uint8_t month;
360  uint8_t day;
361  uint8_t hour;
362  uint8_t min;
363  uint8_t sec;
364  uint32_t msec;
366 
367 };
369 void insert_mip_gnss_utc_time_data(struct mip_serializer* serializer, const mip_gnss_utc_time_data* self);
371 bool extract_mip_gnss_utc_time_data_from_field(const struct mip_field* field, void* ptr);
372 
375 
383 
385 static const mip_gnss_gps_time_data_valid_flags MIP_GNSS_GPS_TIME_DATA_VALID_FLAGS_NONE = 0x0000;
386 static const mip_gnss_gps_time_data_valid_flags MIP_GNSS_GPS_TIME_DATA_VALID_FLAGS_TOW = 0x0001;
387 static const mip_gnss_gps_time_data_valid_flags MIP_GNSS_GPS_TIME_DATA_VALID_FLAGS_WEEK_NUMBER = 0x0002;
388 static const mip_gnss_gps_time_data_valid_flags MIP_GNSS_GPS_TIME_DATA_VALID_FLAGS_FLAGS = 0x0003;
389 
391 {
392  double tow;
393  uint16_t week_number;
395 
396 };
398 void insert_mip_gnss_gps_time_data(struct mip_serializer* serializer, const mip_gnss_gps_time_data* self);
400 bool extract_mip_gnss_gps_time_data_from_field(const struct mip_field* field, void* ptr);
401 
404 
412 
414 static const mip_gnss_clock_info_data_valid_flags MIP_GNSS_CLOCK_INFO_DATA_VALID_FLAGS_NONE = 0x0000;
415 static const mip_gnss_clock_info_data_valid_flags MIP_GNSS_CLOCK_INFO_DATA_VALID_FLAGS_BIAS = 0x0001;
416 static const mip_gnss_clock_info_data_valid_flags MIP_GNSS_CLOCK_INFO_DATA_VALID_FLAGS_DRIFT = 0x0002;
417 static const mip_gnss_clock_info_data_valid_flags MIP_GNSS_CLOCK_INFO_DATA_VALID_FLAGS_ACCURACY_ESTIMATE = 0x0004;
418 static const mip_gnss_clock_info_data_valid_flags MIP_GNSS_CLOCK_INFO_DATA_VALID_FLAGS_FLAGS = 0x0007;
419 
421 {
422  double bias;
423  double drift;
426 
427 };
429 void insert_mip_gnss_clock_info_data(struct mip_serializer* serializer, const mip_gnss_clock_info_data* self);
431 bool extract_mip_gnss_clock_info_data_from_field(const struct mip_field* field, void* ptr);
432 
435 
443 
445 static const mip_gnss_fix_info_data_fix_type MIP_GNSS_FIX_INFO_DATA_FIX_TYPE_FIX_3D = 0;
446 static const mip_gnss_fix_info_data_fix_type MIP_GNSS_FIX_INFO_DATA_FIX_TYPE_FIX_2D = 1;
447 static const mip_gnss_fix_info_data_fix_type MIP_GNSS_FIX_INFO_DATA_FIX_TYPE_FIX_TIME_ONLY = 2;
448 static const mip_gnss_fix_info_data_fix_type MIP_GNSS_FIX_INFO_DATA_FIX_TYPE_FIX_NONE = 3;
449 static const mip_gnss_fix_info_data_fix_type MIP_GNSS_FIX_INFO_DATA_FIX_TYPE_FIX_INVALID = 4;
450 static const mip_gnss_fix_info_data_fix_type MIP_GNSS_FIX_INFO_DATA_FIX_TYPE_FIX_RTK_FLOAT = 5;
451 static const mip_gnss_fix_info_data_fix_type MIP_GNSS_FIX_INFO_DATA_FIX_TYPE_FIX_RTK_FIXED = 6;
452 
454 static const mip_gnss_fix_info_data_fix_flags MIP_GNSS_FIX_INFO_DATA_FIX_FLAGS_NONE = 0x0000;
455 static const mip_gnss_fix_info_data_fix_flags MIP_GNSS_FIX_INFO_DATA_FIX_FLAGS_SBAS_USED = 0x0001;
456 static const mip_gnss_fix_info_data_fix_flags MIP_GNSS_FIX_INFO_DATA_FIX_FLAGS_DNGSS_USED = 0x0002;
457 
459 static const mip_gnss_fix_info_data_valid_flags MIP_GNSS_FIX_INFO_DATA_VALID_FLAGS_NONE = 0x0000;
460 static const mip_gnss_fix_info_data_valid_flags MIP_GNSS_FIX_INFO_DATA_VALID_FLAGS_FIX_TYPE = 0x0001;
461 static const mip_gnss_fix_info_data_valid_flags MIP_GNSS_FIX_INFO_DATA_VALID_FLAGS_NUM_SV = 0x0002;
462 static const mip_gnss_fix_info_data_valid_flags MIP_GNSS_FIX_INFO_DATA_VALID_FLAGS_FIX_FLAGS = 0x0004;
463 static const mip_gnss_fix_info_data_valid_flags MIP_GNSS_FIX_INFO_DATA_VALID_FLAGS_FLAGS = 0x0007;
464 
466 {
468  uint8_t num_sv;
471 
472 };
474 void insert_mip_gnss_fix_info_data(struct mip_serializer* serializer, const mip_gnss_fix_info_data* self);
476 bool extract_mip_gnss_fix_info_data_from_field(const struct mip_field* field, void* ptr);
477 
480 
483 
486 
496 
498 static const mip_gnss_sv_info_data_svflags MIP_GNSS_SV_INFO_DATA_SVFLAGS_NONE = 0x0000;
499 static const mip_gnss_sv_info_data_svflags MIP_GNSS_SV_INFO_DATA_SVFLAGS_USED_FOR_NAVIGATION = 0x0001;
500 static const mip_gnss_sv_info_data_svflags MIP_GNSS_SV_INFO_DATA_SVFLAGS_HEALTHY = 0x0002;
501 
503 static const mip_gnss_sv_info_data_valid_flags MIP_GNSS_SV_INFO_DATA_VALID_FLAGS_NONE = 0x0000;
504 static const mip_gnss_sv_info_data_valid_flags MIP_GNSS_SV_INFO_DATA_VALID_FLAGS_CHANNEL = 0x0001;
505 static const mip_gnss_sv_info_data_valid_flags MIP_GNSS_SV_INFO_DATA_VALID_FLAGS_SV_ID = 0x0002;
506 static const mip_gnss_sv_info_data_valid_flags MIP_GNSS_SV_INFO_DATA_VALID_FLAGS_CARRIER_NOISE_RATIO = 0x0004;
507 static const mip_gnss_sv_info_data_valid_flags MIP_GNSS_SV_INFO_DATA_VALID_FLAGS_AZIMUTH = 0x0008;
508 static const mip_gnss_sv_info_data_valid_flags MIP_GNSS_SV_INFO_DATA_VALID_FLAGS_ELEVATION = 0x0010;
509 static const mip_gnss_sv_info_data_valid_flags MIP_GNSS_SV_INFO_DATA_VALID_FLAGS_SV_FLAGS = 0x0020;
510 static const mip_gnss_sv_info_data_valid_flags MIP_GNSS_SV_INFO_DATA_VALID_FLAGS_FLAGS = 0x003F;
511 
513 {
514  uint8_t channel;
515  uint8_t sv_id;
517  int16_t azimuth;
518  int16_t elevation;
521 
522 };
524 void insert_mip_gnss_sv_info_data(struct mip_serializer* serializer, const mip_gnss_sv_info_data* self);
526 bool extract_mip_gnss_sv_info_data_from_field(const struct mip_field* field, void* ptr);
527 
530 
533 
541 
543 static const mip_gnss_hw_status_data_receiver_state MIP_GNSS_HW_STATUS_DATA_RECEIVER_STATE_OFF = 0;
544 static const mip_gnss_hw_status_data_receiver_state MIP_GNSS_HW_STATUS_DATA_RECEIVER_STATE_ON = 1;
545 static const mip_gnss_hw_status_data_receiver_state MIP_GNSS_HW_STATUS_DATA_RECEIVER_STATE_UNKNOWN = 2;
546 
548 static const mip_gnss_hw_status_data_antenna_state MIP_GNSS_HW_STATUS_DATA_ANTENNA_STATE_INIT = 1;
549 static const mip_gnss_hw_status_data_antenna_state MIP_GNSS_HW_STATUS_DATA_ANTENNA_STATE_SHORT = 2;
550 static const mip_gnss_hw_status_data_antenna_state MIP_GNSS_HW_STATUS_DATA_ANTENNA_STATE_OPEN = 3;
551 static const mip_gnss_hw_status_data_antenna_state MIP_GNSS_HW_STATUS_DATA_ANTENNA_STATE_GOOD = 4;
552 static const mip_gnss_hw_status_data_antenna_state MIP_GNSS_HW_STATUS_DATA_ANTENNA_STATE_UNKNOWN = 5;
553 
555 static const mip_gnss_hw_status_data_antenna_power MIP_GNSS_HW_STATUS_DATA_ANTENNA_POWER_OFF = 0;
556 static const mip_gnss_hw_status_data_antenna_power MIP_GNSS_HW_STATUS_DATA_ANTENNA_POWER_ON = 1;
557 static const mip_gnss_hw_status_data_antenna_power MIP_GNSS_HW_STATUS_DATA_ANTENNA_POWER_UNKNOWN = 2;
558 
560 static const mip_gnss_hw_status_data_valid_flags MIP_GNSS_HW_STATUS_DATA_VALID_FLAGS_NONE = 0x0000;
561 static const mip_gnss_hw_status_data_valid_flags MIP_GNSS_HW_STATUS_DATA_VALID_FLAGS_SENSOR_STATE = 0x0001;
562 static const mip_gnss_hw_status_data_valid_flags MIP_GNSS_HW_STATUS_DATA_VALID_FLAGS_ANTENNA_STATE = 0x0002;
563 static const mip_gnss_hw_status_data_valid_flags MIP_GNSS_HW_STATUS_DATA_VALID_FLAGS_ANTENNA_POWER = 0x0004;
564 static const mip_gnss_hw_status_data_valid_flags MIP_GNSS_HW_STATUS_DATA_VALID_FLAGS_FLAGS = 0x0007;
565 
567 {
572 
573 };
575 void insert_mip_gnss_hw_status_data(struct mip_serializer* serializer, const mip_gnss_hw_status_data* self);
577 bool extract_mip_gnss_hw_status_data_from_field(const struct mip_field* field, void* ptr);
578 
581 
584 
587 
590 
610 
612 static const mip_gnss_dgps_info_data_valid_flags MIP_GNSS_DGPS_INFO_DATA_VALID_FLAGS_NONE = 0x0000;
613 static const mip_gnss_dgps_info_data_valid_flags MIP_GNSS_DGPS_INFO_DATA_VALID_FLAGS_AGE = 0x0001;
614 static const mip_gnss_dgps_info_data_valid_flags MIP_GNSS_DGPS_INFO_DATA_VALID_FLAGS_BASE_STATION_ID = 0x0002;
615 static const mip_gnss_dgps_info_data_valid_flags MIP_GNSS_DGPS_INFO_DATA_VALID_FLAGS_BASE_STATION_STATUS = 0x0004;
616 static const mip_gnss_dgps_info_data_valid_flags MIP_GNSS_DGPS_INFO_DATA_VALID_FLAGS_NUM_CHANNELS = 0x0008;
617 static const mip_gnss_dgps_info_data_valid_flags MIP_GNSS_DGPS_INFO_DATA_VALID_FLAGS_FLAGS = 0x000F;
618 
620 {
621  uint8_t sv_id;
622  float age;
626 
627 };
629 void insert_mip_gnss_dgps_info_data(struct mip_serializer* serializer, const mip_gnss_dgps_info_data* self);
631 bool extract_mip_gnss_dgps_info_data_from_field(const struct mip_field* field, void* ptr);
632 
635 
645 
647 static const mip_gnss_dgps_channel_data_valid_flags MIP_GNSS_DGPS_CHANNEL_DATA_VALID_FLAGS_NONE = 0x0000;
648 static const mip_gnss_dgps_channel_data_valid_flags MIP_GNSS_DGPS_CHANNEL_DATA_VALID_FLAGS_ID = 0x0001;
649 static const mip_gnss_dgps_channel_data_valid_flags MIP_GNSS_DGPS_CHANNEL_DATA_VALID_FLAGS_AGE = 0x0002;
650 static const mip_gnss_dgps_channel_data_valid_flags MIP_GNSS_DGPS_CHANNEL_DATA_VALID_FLAGS_RANGE_CORRECTION = 0x0004;
651 static const mip_gnss_dgps_channel_data_valid_flags MIP_GNSS_DGPS_CHANNEL_DATA_VALID_FLAGS_RANGE_RATE_CORRECTION = 0x0008;
652 static const mip_gnss_dgps_channel_data_valid_flags MIP_GNSS_DGPS_CHANNEL_DATA_VALID_FLAGS_FLAGS = 0x000F;
653 
655 {
656  uint8_t sv_id;
657  float age;
661 
662 };
666 bool extract_mip_gnss_dgps_channel_data_from_field(const struct mip_field* field, void* ptr);
667 
670 
680 
682 static const mip_gnss_clock_info_2_data_valid_flags MIP_GNSS_CLOCK_INFO_2_DATA_VALID_FLAGS_NONE = 0x0000;
683 static const mip_gnss_clock_info_2_data_valid_flags MIP_GNSS_CLOCK_INFO_2_DATA_VALID_FLAGS_BIAS = 0x0001;
684 static const mip_gnss_clock_info_2_data_valid_flags MIP_GNSS_CLOCK_INFO_2_DATA_VALID_FLAGS_DRIFT = 0x0002;
685 static const mip_gnss_clock_info_2_data_valid_flags MIP_GNSS_CLOCK_INFO_2_DATA_VALID_FLAGS_BIAS_ACCURACY = 0x0004;
686 static const mip_gnss_clock_info_2_data_valid_flags MIP_GNSS_CLOCK_INFO_2_DATA_VALID_FLAGS_DRIFT_ACCURACY = 0x0008;
687 static const mip_gnss_clock_info_2_data_valid_flags MIP_GNSS_CLOCK_INFO_2_DATA_VALID_FLAGS_FLAGS = 0x000F;
688 
690 {
691  double bias;
692  double drift;
696 
697 };
701 bool extract_mip_gnss_clock_info_2_data_from_field(const struct mip_field* field, void* ptr);
702 
705 
713 
715 static const mip_gnss_gps_leap_seconds_data_valid_flags MIP_GNSS_GPS_LEAP_SECONDS_DATA_VALID_FLAGS_NONE = 0x0000;
716 static const mip_gnss_gps_leap_seconds_data_valid_flags MIP_GNSS_GPS_LEAP_SECONDS_DATA_VALID_FLAGS_LEAP_SECONDS = 0x0002;
717 
719 {
720  uint8_t leap_seconds;
722 
723 };
728 
731 
739 
741 static const mip_gnss_sbas_info_data_sbas_status MIP_GNSS_SBAS_INFO_DATA_SBAS_STATUS_NONE = 0x00;
742 static const mip_gnss_sbas_info_data_sbas_status MIP_GNSS_SBAS_INFO_DATA_SBAS_STATUS_RANGE_AVAILABLE = 0x01;
743 static const mip_gnss_sbas_info_data_sbas_status MIP_GNSS_SBAS_INFO_DATA_SBAS_STATUS_CORRECTIONS_AVAILABLE = 0x02;
744 static const mip_gnss_sbas_info_data_sbas_status MIP_GNSS_SBAS_INFO_DATA_SBAS_STATUS_INTEGRITY_AVAILABLE = 0x04;
745 static const mip_gnss_sbas_info_data_sbas_status MIP_GNSS_SBAS_INFO_DATA_SBAS_STATUS_TEST_MODE = 0x08;
746 
748 static const mip_gnss_sbas_info_data_valid_flags MIP_GNSS_SBAS_INFO_DATA_VALID_FLAGS_NONE = 0x0000;
749 static const mip_gnss_sbas_info_data_valid_flags MIP_GNSS_SBAS_INFO_DATA_VALID_FLAGS_TOW = 0x0001;
750 static const mip_gnss_sbas_info_data_valid_flags MIP_GNSS_SBAS_INFO_DATA_VALID_FLAGS_WEEK_NUMBER = 0x0002;
751 static const mip_gnss_sbas_info_data_valid_flags MIP_GNSS_SBAS_INFO_DATA_VALID_FLAGS_SBAS_SYSTEM = 0x0004;
752 static const mip_gnss_sbas_info_data_valid_flags MIP_GNSS_SBAS_INFO_DATA_VALID_FLAGS_SBAS_ID = 0x0008;
753 static const mip_gnss_sbas_info_data_valid_flags MIP_GNSS_SBAS_INFO_DATA_VALID_FLAGS_COUNT = 0x0010;
754 static const mip_gnss_sbas_info_data_valid_flags MIP_GNSS_SBAS_INFO_DATA_VALID_FLAGS_SBAS_STATUS = 0x0020;
755 static const mip_gnss_sbas_info_data_valid_flags MIP_GNSS_SBAS_INFO_DATA_VALID_FLAGS_FLAGS = 0x003F;
756 
758 {
759  double time_of_week;
760  uint16_t week_number;
762  uint8_t sbas_id;
763  uint8_t count;
766 
767 };
769 void insert_mip_gnss_sbas_info_data(struct mip_serializer* serializer, const mip_gnss_sbas_info_data* self);
771 bool extract_mip_gnss_sbas_info_data_from_field(const struct mip_field* field, void* ptr);
772 
775 
778 
808 
810 static const mip_gnss_sbas_correction_data_valid_flags MIP_GNSS_SBAS_CORRECTION_DATA_VALID_FLAGS_NONE = 0x0000;
811 static const mip_gnss_sbas_correction_data_valid_flags MIP_GNSS_SBAS_CORRECTION_DATA_VALID_FLAGS_UDREI = 0x0001;
812 static const mip_gnss_sbas_correction_data_valid_flags MIP_GNSS_SBAS_CORRECTION_DATA_VALID_FLAGS_PSEUDORANGE_CORRECTION = 0x0002;
813 static const mip_gnss_sbas_correction_data_valid_flags MIP_GNSS_SBAS_CORRECTION_DATA_VALID_FLAGS_IONO_CORRECTION = 0x0004;
814 static const mip_gnss_sbas_correction_data_valid_flags MIP_GNSS_SBAS_CORRECTION_DATA_VALID_FLAGS_FLAGS = 0x0007;
815 
817 {
818  uint8_t index;
819  uint8_t count;
820  double time_of_week;
821  uint16_t week_number;
823  uint8_t sv_id;
824  uint8_t udrei;
828 
829 };
833 bool extract_mip_gnss_sbas_correction_data_from_field(const struct mip_field* field, void* ptr);
834 
837 
845 
847 static const mip_gnss_rf_error_detection_data_rfband MIP_GNSS_RF_ERROR_DETECTION_DATA_RFBAND_UNKNOWN = 0;
848 static const mip_gnss_rf_error_detection_data_rfband MIP_GNSS_RF_ERROR_DETECTION_DATA_RFBAND_L1 = 1;
849 static const mip_gnss_rf_error_detection_data_rfband MIP_GNSS_RF_ERROR_DETECTION_DATA_RFBAND_L2 = 2;
850 static const mip_gnss_rf_error_detection_data_rfband MIP_GNSS_RF_ERROR_DETECTION_DATA_RFBAND_L5 = 5;
851 
853 static const mip_gnss_rf_error_detection_data_jamming_state MIP_GNSS_RF_ERROR_DETECTION_DATA_JAMMING_STATE_UNKNOWN = 0;
854 static const mip_gnss_rf_error_detection_data_jamming_state MIP_GNSS_RF_ERROR_DETECTION_DATA_JAMMING_STATE_NONE = 1;
855 static const mip_gnss_rf_error_detection_data_jamming_state MIP_GNSS_RF_ERROR_DETECTION_DATA_JAMMING_STATE_PARTIAL = 2;
856 static const mip_gnss_rf_error_detection_data_jamming_state MIP_GNSS_RF_ERROR_DETECTION_DATA_JAMMING_STATE_SIGNIFICANT = 3;
857 
859 static const mip_gnss_rf_error_detection_data_spoofing_state MIP_GNSS_RF_ERROR_DETECTION_DATA_SPOOFING_STATE_UNKNOWN = 0;
860 static const mip_gnss_rf_error_detection_data_spoofing_state MIP_GNSS_RF_ERROR_DETECTION_DATA_SPOOFING_STATE_NONE = 1;
861 static const mip_gnss_rf_error_detection_data_spoofing_state MIP_GNSS_RF_ERROR_DETECTION_DATA_SPOOFING_STATE_PARTIAL = 2;
862 static const mip_gnss_rf_error_detection_data_spoofing_state MIP_GNSS_RF_ERROR_DETECTION_DATA_SPOOFING_STATE_SIGNIFICANT = 3;
863 
865 static const mip_gnss_rf_error_detection_data_valid_flags MIP_GNSS_RF_ERROR_DETECTION_DATA_VALID_FLAGS_NONE = 0x0000;
866 static const mip_gnss_rf_error_detection_data_valid_flags MIP_GNSS_RF_ERROR_DETECTION_DATA_VALID_FLAGS_RF_BAND = 0x0001;
867 static const mip_gnss_rf_error_detection_data_valid_flags MIP_GNSS_RF_ERROR_DETECTION_DATA_VALID_FLAGS_JAMMING_STATE = 0x0002;
868 static const mip_gnss_rf_error_detection_data_valid_flags MIP_GNSS_RF_ERROR_DETECTION_DATA_VALID_FLAGS_SPOOFING_STATE = 0x0004;
869 static const mip_gnss_rf_error_detection_data_valid_flags MIP_GNSS_RF_ERROR_DETECTION_DATA_VALID_FLAGS_FLAGS = 0x0007;
870 
872 {
876  uint8_t reserved[4];
878 
879 };
884 
887 
890 
893 
896 
906 
908 static const mip_gnss_base_station_info_data_indicator_flags MIP_GNSS_BASE_STATION_INFO_DATA_INDICATOR_FLAGS_NONE = 0x0000;
909 static const mip_gnss_base_station_info_data_indicator_flags MIP_GNSS_BASE_STATION_INFO_DATA_INDICATOR_FLAGS_GPS = 0x0001;
910 static const mip_gnss_base_station_info_data_indicator_flags MIP_GNSS_BASE_STATION_INFO_DATA_INDICATOR_FLAGS_GLONASS = 0x0002;
911 static const mip_gnss_base_station_info_data_indicator_flags MIP_GNSS_BASE_STATION_INFO_DATA_INDICATOR_FLAGS_GALILEO = 0x0004;
912 static const mip_gnss_base_station_info_data_indicator_flags MIP_GNSS_BASE_STATION_INFO_DATA_INDICATOR_FLAGS_BEIDOU = 0x0008;
913 static const mip_gnss_base_station_info_data_indicator_flags MIP_GNSS_BASE_STATION_INFO_DATA_INDICATOR_FLAGS_REF_STATION = 0x0010;
914 static const mip_gnss_base_station_info_data_indicator_flags MIP_GNSS_BASE_STATION_INFO_DATA_INDICATOR_FLAGS_SINGLE_RECEIVER = 0x0020;
915 static const mip_gnss_base_station_info_data_indicator_flags MIP_GNSS_BASE_STATION_INFO_DATA_INDICATOR_FLAGS_QUARTER_CYCLE_BIT1 = 0x0040;
916 static const mip_gnss_base_station_info_data_indicator_flags MIP_GNSS_BASE_STATION_INFO_DATA_INDICATOR_FLAGS_QUARTER_CYCLE_BIT2 = 0x0080;
917 static const mip_gnss_base_station_info_data_indicator_flags MIP_GNSS_BASE_STATION_INFO_DATA_INDICATOR_FLAGS_QUARTER_CYCLE_BITS = 0x00C0;
918 
920 static const mip_gnss_base_station_info_data_valid_flags MIP_GNSS_BASE_STATION_INFO_DATA_VALID_FLAGS_NONE = 0x0000;
921 static const mip_gnss_base_station_info_data_valid_flags MIP_GNSS_BASE_STATION_INFO_DATA_VALID_FLAGS_TOW = 0x0001;
922 static const mip_gnss_base_station_info_data_valid_flags MIP_GNSS_BASE_STATION_INFO_DATA_VALID_FLAGS_WEEK_NUMBER = 0x0002;
923 static const mip_gnss_base_station_info_data_valid_flags MIP_GNSS_BASE_STATION_INFO_DATA_VALID_FLAGS_ECEF_POSITION = 0x0004;
924 static const mip_gnss_base_station_info_data_valid_flags MIP_GNSS_BASE_STATION_INFO_DATA_VALID_FLAGS_HEIGHT = 0x0008;
925 static const mip_gnss_base_station_info_data_valid_flags MIP_GNSS_BASE_STATION_INFO_DATA_VALID_FLAGS_STATION_ID = 0x0010;
926 static const mip_gnss_base_station_info_data_valid_flags MIP_GNSS_BASE_STATION_INFO_DATA_VALID_FLAGS_INDICATORS = 0x0020;
927 static const mip_gnss_base_station_info_data_valid_flags MIP_GNSS_BASE_STATION_INFO_DATA_VALID_FLAGS_FLAGS = 0x003F;
928 
930 {
931  double time_of_week;
932  uint16_t week_number;
933  double ecef_pos[3];
934  float height;
935  uint16_t station_id;
938 
939 };
944 
947 
950 
957 
959 static const mip_gnss_rtk_corrections_status_data_valid_flags MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_VALID_FLAGS_NONE = 0x0000;
960 static const mip_gnss_rtk_corrections_status_data_valid_flags MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_VALID_FLAGS_TOW = 0x0001;
961 static const mip_gnss_rtk_corrections_status_data_valid_flags MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_VALID_FLAGS_WEEK_NUMBER = 0x0002;
962 static const mip_gnss_rtk_corrections_status_data_valid_flags MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_VALID_FLAGS_EPOCH_STATUS = 0x0004;
963 static const mip_gnss_rtk_corrections_status_data_valid_flags MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_VALID_FLAGS_DONGLE_STATUS = 0x0008;
964 static const mip_gnss_rtk_corrections_status_data_valid_flags MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_VALID_FLAGS_GPS_LATENCY = 0x0010;
965 static const mip_gnss_rtk_corrections_status_data_valid_flags MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_VALID_FLAGS_GLONASS_LATENCY = 0x0020;
966 static const mip_gnss_rtk_corrections_status_data_valid_flags MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_VALID_FLAGS_GALILEO_LATENCY = 0x0040;
967 static const mip_gnss_rtk_corrections_status_data_valid_flags MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_VALID_FLAGS_BEIDOU_LATENCY = 0x0080;
968 static const mip_gnss_rtk_corrections_status_data_valid_flags MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_VALID_FLAGS_FLAGS = 0x00FF;
969 
971 static const mip_gnss_rtk_corrections_status_data_epoch_status MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_EPOCH_STATUS_NONE = 0x0000;
972 static const mip_gnss_rtk_corrections_status_data_epoch_status MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_EPOCH_STATUS_ANTENNA_LOCATION_RECEIVED = 0x0001;
973 static const mip_gnss_rtk_corrections_status_data_epoch_status MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_EPOCH_STATUS_ANTENNA_DESCRIPTION_RECEIVED = 0x0002;
974 static const mip_gnss_rtk_corrections_status_data_epoch_status MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_EPOCH_STATUS_GPS_RECEIVED = 0x0004;
975 static const mip_gnss_rtk_corrections_status_data_epoch_status MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_EPOCH_STATUS_GLONASS_RECEIVED = 0x0008;
976 static const mip_gnss_rtk_corrections_status_data_epoch_status MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_EPOCH_STATUS_GALILEO_RECEIVED = 0x0010;
977 static const mip_gnss_rtk_corrections_status_data_epoch_status MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_EPOCH_STATUS_BEIDOU_RECEIVED = 0x0020;
978 static const mip_gnss_rtk_corrections_status_data_epoch_status MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_EPOCH_STATUS_USING_GPS_MSM_MESSAGES = 0x0040;
979 static const mip_gnss_rtk_corrections_status_data_epoch_status MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_EPOCH_STATUS_USING_GLONASS_MSM_MESSAGES = 0x0080;
980 static const mip_gnss_rtk_corrections_status_data_epoch_status MIP_GNSS_RTK_CORRECTIONS_STATUS_DATA_EPOCH_STATUS_DONGLE_STATUS_READ_FAILED = 0x0100;
981 
983 {
984  double time_of_week;
985  uint16_t week_number;
987  uint32_t dongle_status;
992  uint32_t reserved[4];
994 
995 };
1000 
1003 
1006 
1014 
1016 static const mip_gnss_satellite_status_data_valid_flags MIP_GNSS_SATELLITE_STATUS_DATA_VALID_FLAGS_NONE = 0x0000;
1017 static const mip_gnss_satellite_status_data_valid_flags MIP_GNSS_SATELLITE_STATUS_DATA_VALID_FLAGS_TOW = 0x0001;
1018 static const mip_gnss_satellite_status_data_valid_flags MIP_GNSS_SATELLITE_STATUS_DATA_VALID_FLAGS_WEEK_NUMBER = 0x0002;
1019 static const mip_gnss_satellite_status_data_valid_flags MIP_GNSS_SATELLITE_STATUS_DATA_VALID_FLAGS_GNSS_ID = 0x0004;
1020 static const mip_gnss_satellite_status_data_valid_flags MIP_GNSS_SATELLITE_STATUS_DATA_VALID_FLAGS_SATELLITE_ID = 0x0008;
1021 static const mip_gnss_satellite_status_data_valid_flags MIP_GNSS_SATELLITE_STATUS_DATA_VALID_FLAGS_ELEVATION = 0x0010;
1022 static const mip_gnss_satellite_status_data_valid_flags MIP_GNSS_SATELLITE_STATUS_DATA_VALID_FLAGS_AZIMUTH = 0x0020;
1023 static const mip_gnss_satellite_status_data_valid_flags MIP_GNSS_SATELLITE_STATUS_DATA_VALID_FLAGS_HEALTH = 0x0040;
1024 static const mip_gnss_satellite_status_data_valid_flags MIP_GNSS_SATELLITE_STATUS_DATA_VALID_FLAGS_FLAGS = 0x007F;
1025 
1027 {
1028  uint8_t index;
1029  uint8_t count;
1030  double time_of_week;
1031  uint16_t week_number;
1033  uint8_t satellite_id;
1034  float elevation;
1035  float azimuth;
1036  bool health;
1038 
1039 };
1044 
1047 
1055 
1057 static const mip_gnss_raw_data_gnss_signal_quality MIP_GNSS_RAW_DATA_GNSS_SIGNAL_QUALITY_NONE = 0;
1058 static const mip_gnss_raw_data_gnss_signal_quality MIP_GNSS_RAW_DATA_GNSS_SIGNAL_QUALITY_SEARCHING = 1;
1059 static const mip_gnss_raw_data_gnss_signal_quality MIP_GNSS_RAW_DATA_GNSS_SIGNAL_QUALITY_ACQUIRED = 2;
1060 static const mip_gnss_raw_data_gnss_signal_quality MIP_GNSS_RAW_DATA_GNSS_SIGNAL_QUALITY_UNUSABLE = 3;
1061 static const mip_gnss_raw_data_gnss_signal_quality MIP_GNSS_RAW_DATA_GNSS_SIGNAL_QUALITY_TIME_LOCKED = 4;
1062 static const mip_gnss_raw_data_gnss_signal_quality MIP_GNSS_RAW_DATA_GNSS_SIGNAL_QUALITY_FULLY_LOCKED = 5;
1063 
1065 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_NONE = 0x0000;
1066 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_TOW = 0x0001;
1067 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_WEEK_NUMBER = 0x0002;
1068 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_RECEIVER_ID = 0x0004;
1069 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_TRACKING_CHANNEL = 0x0008;
1070 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_GNSS_ID = 0x0010;
1071 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_SATELLITE_ID = 0x0020;
1072 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_SIGNAL_ID = 0x0040;
1073 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_SIGNAL_STRENGTH = 0x0080;
1074 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_QUALITY = 0x0100;
1075 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_PSEUDORANGE = 0x0200;
1076 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_CARRIER_PHASE = 0x0400;
1077 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_DOPPLER = 0x0800;
1078 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_RANGE_UNCERTAINTY = 0x1000;
1079 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_CARRIER_PHASE_UNCERTAINTY = 0x2000;
1080 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_DOPPLER_UNCERTAINTY = 0x4000;
1081 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_LOCK_TIME = 0x8000;
1082 static const mip_gnss_raw_data_valid_flags MIP_GNSS_RAW_DATA_VALID_FLAGS_FLAGS = 0xFFFF;
1083 
1085 {
1086  uint8_t index;
1087  uint8_t count;
1088  double time_of_week;
1089  uint16_t week_number;
1090  uint16_t receiver_id;
1093  uint8_t satellite_id;
1097  double pseudorange;
1098  double carrier_phase;
1099  float doppler;
1103  float lock_time;
1105 
1106 };
1107 typedef struct mip_gnss_raw_data mip_gnss_raw_data;
1108 void insert_mip_gnss_raw_data(struct mip_serializer* serializer, const mip_gnss_raw_data* self);
1109 void extract_mip_gnss_raw_data(struct mip_serializer* serializer, mip_gnss_raw_data* self);
1110 bool extract_mip_gnss_raw_data_from_field(const struct mip_field* field, void* ptr);
1111 
1114 
1117 
1125 
1127 static const mip_gnss_gps_ephemeris_data_valid_flags MIP_GNSS_GPS_EPHEMERIS_DATA_VALID_FLAGS_NONE = 0x0000;
1128 static const mip_gnss_gps_ephemeris_data_valid_flags MIP_GNSS_GPS_EPHEMERIS_DATA_VALID_FLAGS_EPHEMERIS = 0x0001;
1129 static const mip_gnss_gps_ephemeris_data_valid_flags MIP_GNSS_GPS_EPHEMERIS_DATA_VALID_FLAGS_MODERN_DATA = 0x0002;
1130 static const mip_gnss_gps_ephemeris_data_valid_flags MIP_GNSS_GPS_EPHEMERIS_DATA_VALID_FLAGS_FLAGS = 0x0003;
1131 
1133 {
1134  uint8_t index;
1135  uint8_t count;
1136  double time_of_week;
1137  uint16_t week_number;
1138  uint8_t satellite_id;
1139  uint8_t health;
1140  uint8_t iodc;
1141  uint8_t iode;
1142  double t_oc;
1143  double af0;
1144  double af1;
1145  double af2;
1146  double t_gd;
1147  double ISC_L1CA;
1148  double ISC_L2C;
1149  double t_oe;
1150  double a;
1151  double a_dot;
1152  double mean_anomaly;
1157  double omega;
1158  double omega_dot;
1159  double inclination;
1161  double c_ic;
1162  double c_is;
1163  double c_uc;
1164  double c_us;
1165  double c_rc;
1166  double c_rs;
1168 
1169 };
1173 bool extract_mip_gnss_gps_ephemeris_data_from_field(const struct mip_field* field, void* ptr);
1174 
1177 
1185 
1187 static const mip_gnss_glo_ephemeris_data_valid_flags MIP_GNSS_GLO_EPHEMERIS_DATA_VALID_FLAGS_NONE = 0x0000;
1188 static const mip_gnss_glo_ephemeris_data_valid_flags MIP_GNSS_GLO_EPHEMERIS_DATA_VALID_FLAGS_EPHEMERIS = 0x0001;
1189 static const mip_gnss_glo_ephemeris_data_valid_flags MIP_GNSS_GLO_EPHEMERIS_DATA_VALID_FLAGS_FLAGS = 0x0001;
1190 
1192 {
1193  uint8_t index;
1194  uint8_t count;
1195  double time_of_week;
1196  uint16_t week_number;
1197  uint8_t satellite_id;
1198  int8_t freq_number;
1199  uint32_t tk;
1200  uint32_t tb;
1201  uint8_t sat_type;
1202  double gamma;
1203  double tau_n;
1204  double x[3];
1205  float v[3];
1206  float a[3];
1207  uint8_t health;
1208  uint8_t P;
1209  uint8_t NT;
1210  float delta_tau_n;
1211  uint8_t Ft;
1212  uint8_t En;
1213  uint8_t P1;
1214  uint8_t P2;
1215  uint8_t P3;
1216  uint8_t P4;
1218 
1219 };
1223 bool extract_mip_gnss_glo_ephemeris_data_from_field(const struct mip_field* field, void* ptr);
1224 
1227 
1235 
1237 static const mip_gnss_gps_iono_corr_data_valid_flags MIP_GNSS_GPS_IONO_CORR_DATA_VALID_FLAGS_NONE = 0x0000;
1238 static const mip_gnss_gps_iono_corr_data_valid_flags MIP_GNSS_GPS_IONO_CORR_DATA_VALID_FLAGS_TOW = 0x0001;
1239 static const mip_gnss_gps_iono_corr_data_valid_flags MIP_GNSS_GPS_IONO_CORR_DATA_VALID_FLAGS_WEEK_NUMBER = 0x0002;
1240 static const mip_gnss_gps_iono_corr_data_valid_flags MIP_GNSS_GPS_IONO_CORR_DATA_VALID_FLAGS_ALPHA = 0x0004;
1241 static const mip_gnss_gps_iono_corr_data_valid_flags MIP_GNSS_GPS_IONO_CORR_DATA_VALID_FLAGS_BETA = 0x0008;
1242 static const mip_gnss_gps_iono_corr_data_valid_flags MIP_GNSS_GPS_IONO_CORR_DATA_VALID_FLAGS_FLAGS = 0x000F;
1243 
1245 {
1246  double time_of_week;
1247  uint16_t week_number;
1248  double alpha[4];
1249  double beta[4];
1251 
1252 };
1256 bool extract_mip_gnss_gps_iono_corr_data_from_field(const struct mip_field* field, void* ptr);
1257 
1260 
1268 
1270 static const mip_gnss_galileo_iono_corr_data_valid_flags MIP_GNSS_GALILEO_IONO_CORR_DATA_VALID_FLAGS_NONE = 0x0000;
1271 static const mip_gnss_galileo_iono_corr_data_valid_flags MIP_GNSS_GALILEO_IONO_CORR_DATA_VALID_FLAGS_TOW = 0x0001;
1272 static const mip_gnss_galileo_iono_corr_data_valid_flags MIP_GNSS_GALILEO_IONO_CORR_DATA_VALID_FLAGS_WEEK_NUMBER = 0x0002;
1273 static const mip_gnss_galileo_iono_corr_data_valid_flags MIP_GNSS_GALILEO_IONO_CORR_DATA_VALID_FLAGS_ALPHA = 0x0004;
1274 static const mip_gnss_galileo_iono_corr_data_valid_flags MIP_GNSS_GALILEO_IONO_CORR_DATA_VALID_FLAGS_DISTURBANCE_FLAGS = 0x0008;
1275 static const mip_gnss_galileo_iono_corr_data_valid_flags MIP_GNSS_GALILEO_IONO_CORR_DATA_VALID_FLAGS_FLAGS = 0x000F;
1276 
1278 {
1279  double time_of_week;
1280  uint16_t week_number;
1281  double alpha[3];
1284 
1285 };
1290 
1293 
1296 
1301 #ifdef __cplusplus
1302 } // namespace C
1303 } // namespace mip
1304 } // extern "C"
1305 #endif // __cplusplus
1306 
void insert_mip_gnss_base_station_info_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_base_station_info_data_valid_flags self)
Definition: data_gnss.c:1112
void insert_mip_gnss_base_station_info_data(mip_serializer *serializer, const mip_gnss_base_station_info_data *self)
Definition: data_gnss.c:1055
uint16_t mip_gnss_base_station_info_data_indicator_flags
Definition: data_gnss.h:907
void extract_mip_gnss_base_station_info_data_valid_flags(struct mip_serializer *serializer, mip_gnss_base_station_info_data_valid_flags *self)
Definition: data_gnss.c:1116
void insert_mip_gnss_base_station_info_data_indicator_flags(struct mip_serializer *serializer, const mip_gnss_base_station_info_data_indicator_flags self)
Definition: data_gnss.c:1101
void extract_mip_gnss_base_station_info_data_indicator_flags(struct mip_serializer *serializer, mip_gnss_base_station_info_data_indicator_flags *self)
Definition: data_gnss.c:1105
uint16_t mip_gnss_base_station_info_data_valid_flags
Definition: data_gnss.h:919
void extract_mip_gnss_base_station_info_data(mip_serializer *serializer, mip_gnss_base_station_info_data *self)
Definition: data_gnss.c:1073
void extract_mip_gnss_clock_info_2_data_valid_flags(struct mip_serializer *serializer, mip_gnss_clock_info_2_data_valid_flags *self)
Definition: data_gnss.c:798
void extract_mip_gnss_clock_info_2_data(mip_serializer *serializer, mip_gnss_clock_info_2_data *self)
Definition: data_gnss.c:771
void insert_mip_gnss_clock_info_2_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_clock_info_2_data_valid_flags self)
Definition: data_gnss.c:794
void insert_mip_gnss_clock_info_2_data(mip_serializer *serializer, const mip_gnss_clock_info_2_data *self)
Definition: data_gnss.c:758
uint16_t mip_gnss_clock_info_2_data_valid_flags
Definition: data_gnss.h:681
void extract_mip_gnss_clock_info_data(mip_serializer *serializer, mip_gnss_clock_info_data *self)
Definition: data_gnss.c:425
void insert_mip_gnss_clock_info_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_clock_info_data_valid_flags self)
Definition: data_gnss.c:446
void extract_mip_gnss_clock_info_data_valid_flags(struct mip_serializer *serializer, mip_gnss_clock_info_data_valid_flags *self)
Definition: data_gnss.c:450
void insert_mip_gnss_clock_info_data(mip_serializer *serializer, const mip_gnss_clock_info_data *self)
Definition: data_gnss.c:414
uint16_t mip_gnss_clock_info_data_valid_flags
Definition: data_gnss.h:413
void insert_mip_gnss_dgps_channel_data(mip_serializer *serializer, const mip_gnss_dgps_channel_data *self)
Definition: data_gnss.c:711
void insert_mip_gnss_dgps_channel_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_dgps_channel_data_valid_flags self)
Definition: data_gnss.c:747
uint16_t mip_gnss_dgps_channel_data_valid_flags
Definition: data_gnss.h:646
void extract_mip_gnss_dgps_channel_data(mip_serializer *serializer, mip_gnss_dgps_channel_data *self)
Definition: data_gnss.c:724
void extract_mip_gnss_dgps_channel_data_valid_flags(struct mip_serializer *serializer, mip_gnss_dgps_channel_data_valid_flags *self)
Definition: data_gnss.c:751
void insert_mip_gnss_dgps_info_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_dgps_info_data_valid_flags self)
Definition: data_gnss.c:700
void insert_mip_gnss_dgps_info_data(mip_serializer *serializer, const mip_gnss_dgps_info_data *self)
Definition: data_gnss.c:664
uint16_t mip_gnss_dgps_info_data_valid_flags
Definition: data_gnss.h:611
void extract_mip_gnss_dgps_info_data(mip_serializer *serializer, mip_gnss_dgps_info_data *self)
Definition: data_gnss.c:677
void extract_mip_gnss_dgps_info_data_valid_flags(struct mip_serializer *serializer, mip_gnss_dgps_info_data_valid_flags *self)
Definition: data_gnss.c:704
void insert_mip_gnss_dop_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_dop_data_valid_flags self)
Definition: data_gnss.c:305
void extract_mip_gnss_dop_data(mip_serializer *serializer, mip_gnss_dop_data *self)
Definition: data_gnss.c:276
uint16_t mip_gnss_dop_data_valid_flags
Definition: data_gnss.h:311
void insert_mip_gnss_dop_data(mip_serializer *serializer, const mip_gnss_dop_data *self)
Definition: data_gnss.c:257
void extract_mip_gnss_dop_data_valid_flags(struct mip_serializer *serializer, mip_gnss_dop_data_valid_flags *self)
Definition: data_gnss.c:309
void insert_mip_gnss_fix_info_data_fix_flags(struct mip_serializer *serializer, const mip_gnss_fix_info_data_fix_flags self)
Definition: data_gnss.c:500
void insert_mip_gnss_fix_info_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_fix_info_data_valid_flags self)
Definition: data_gnss.c:511
void extract_mip_gnss_fix_info_data_fix_type(struct mip_serializer *serializer, mip_gnss_fix_info_data_fix_type *self)
Definition: data_gnss.c:493
uint16_t mip_gnss_fix_info_data_valid_flags
Definition: data_gnss.h:458
uint8_t mip_gnss_fix_info_data_fix_type
Definition: data_gnss.h:444
void extract_mip_gnss_fix_info_data_valid_flags(struct mip_serializer *serializer, mip_gnss_fix_info_data_valid_flags *self)
Definition: data_gnss.c:515
void insert_mip_gnss_fix_info_data_fix_type(struct mip_serializer *serializer, const mip_gnss_fix_info_data_fix_type self)
Definition: data_gnss.c:489
uint16_t mip_gnss_fix_info_data_fix_flags
Definition: data_gnss.h:453
void insert_mip_gnss_fix_info_data(mip_serializer *serializer, const mip_gnss_fix_info_data *self)
Definition: data_gnss.c:457
void extract_mip_gnss_fix_info_data(mip_serializer *serializer, mip_gnss_fix_info_data *self)
Definition: data_gnss.c:468
void extract_mip_gnss_fix_info_data_fix_flags(struct mip_serializer *serializer, mip_gnss_fix_info_data_fix_flags *self)
Definition: data_gnss.c:504
void insert_mip_gnss_galileo_iono_corr_data(mip_serializer *serializer, const mip_gnss_galileo_iono_corr_data *self)
Definition: data_gnss.c:1731
void extract_mip_gnss_galileo_iono_corr_data(mip_serializer *serializer, mip_gnss_galileo_iono_corr_data *self)
Definition: data_gnss.c:1745
void extract_mip_gnss_galileo_iono_corr_data_valid_flags(struct mip_serializer *serializer, mip_gnss_galileo_iono_corr_data_valid_flags *self)
Definition: data_gnss.c:1773
void insert_mip_gnss_galileo_iono_corr_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_galileo_iono_corr_data_valid_flags self)
Definition: data_gnss.c:1769
uint16_t mip_gnss_galileo_iono_corr_data_valid_flags
Definition: data_gnss.h:1269
uint16_t mip_gnss_glo_ephemeris_data_valid_flags
Definition: data_gnss.h:1186
void extract_mip_gnss_glo_ephemeris_data(mip_serializer *serializer, mip_gnss_glo_ephemeris_data *self)
Definition: data_gnss.c:1603
void insert_mip_gnss_glo_ephemeris_data(mip_serializer *serializer, const mip_gnss_glo_ephemeris_data *self)
Definition: data_gnss.c:1547
void insert_mip_gnss_glo_ephemeris_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_glo_ephemeris_data_valid_flags self)
Definition: data_gnss.c:1669
void extract_mip_gnss_glo_ephemeris_data_valid_flags(struct mip_serializer *serializer, mip_gnss_glo_ephemeris_data_valid_flags *self)
Definition: data_gnss.c:1673
void extract_mip_gnss_gps_ephemeris_data_valid_flags(struct mip_serializer *serializer, mip_gnss_gps_ephemeris_data_valid_flags *self)
Definition: data_gnss.c:1540
uint16_t mip_gnss_gps_ephemeris_data_valid_flags
Definition: data_gnss.h:1126
void insert_mip_gnss_gps_ephemeris_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_gps_ephemeris_data_valid_flags self)
Definition: data_gnss.c:1536
void extract_mip_gnss_gps_ephemeris_data(mip_serializer *serializer, mip_gnss_gps_ephemeris_data *self)
Definition: data_gnss.c:1455
void insert_mip_gnss_gps_ephemeris_data(mip_serializer *serializer, const mip_gnss_gps_ephemeris_data *self)
Definition: data_gnss.c:1384
void extract_mip_gnss_gps_iono_corr_data(mip_serializer *serializer, mip_gnss_gps_iono_corr_data *self)
Definition: data_gnss.c:1695
void insert_mip_gnss_gps_iono_corr_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_gps_iono_corr_data_valid_flags self)
Definition: data_gnss.c:1720
uint16_t mip_gnss_gps_iono_corr_data_valid_flags
Definition: data_gnss.h:1236
void extract_mip_gnss_gps_iono_corr_data_valid_flags(struct mip_serializer *serializer, mip_gnss_gps_iono_corr_data_valid_flags *self)
Definition: data_gnss.c:1724
void insert_mip_gnss_gps_iono_corr_data(mip_serializer *serializer, const mip_gnss_gps_iono_corr_data *self)
Definition: data_gnss.c:1680
uint16_t mip_gnss_gps_leap_seconds_data_valid_flags
Definition: data_gnss.h:714
void insert_mip_gnss_gps_leap_seconds_data(mip_serializer *serializer, const mip_gnss_gps_leap_seconds_data *self)
Definition: data_gnss.c:805
void insert_mip_gnss_gps_leap_seconds_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_gps_leap_seconds_data_valid_flags self)
Definition: data_gnss.c:829
void extract_mip_gnss_gps_leap_seconds_data_valid_flags(struct mip_serializer *serializer, mip_gnss_gps_leap_seconds_data_valid_flags *self)
Definition: data_gnss.c:833
void extract_mip_gnss_gps_leap_seconds_data(mip_serializer *serializer, mip_gnss_gps_leap_seconds_data *self)
Definition: data_gnss.c:812
void extract_mip_gnss_gps_time_data_valid_flags(struct mip_serializer *serializer, mip_gnss_gps_time_data_valid_flags *self)
Definition: data_gnss.c:407
void insert_mip_gnss_gps_time_data(mip_serializer *serializer, const mip_gnss_gps_time_data *self)
Definition: data_gnss.c:375
uint16_t mip_gnss_gps_time_data_valid_flags
Definition: data_gnss.h:384
void insert_mip_gnss_gps_time_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_gps_time_data_valid_flags self)
Definition: data_gnss.c:403
void extract_mip_gnss_gps_time_data(mip_serializer *serializer, mip_gnss_gps_time_data *self)
Definition: data_gnss.c:384
void extract_mip_gnss_hw_status_data_valid_flags(struct mip_serializer *serializer, mip_gnss_hw_status_data_valid_flags *self)
Definition: data_gnss.c:657
void insert_mip_gnss_hw_status_data(mip_serializer *serializer, const mip_gnss_hw_status_data *self)
Definition: data_gnss.c:588
void extract_mip_gnss_hw_status_data(mip_serializer *serializer, mip_gnss_hw_status_data *self)
Definition: data_gnss.c:599
void insert_mip_gnss_hw_status_data_antenna_state(struct mip_serializer *serializer, const mip_gnss_hw_status_data_antenna_state self)
Definition: data_gnss.c:631
uint8_t mip_gnss_hw_status_data_antenna_power
Definition: data_gnss.h:554
uint8_t mip_gnss_hw_status_data_antenna_state
Definition: data_gnss.h:547
void extract_mip_gnss_hw_status_data_antenna_state(struct mip_serializer *serializer, mip_gnss_hw_status_data_antenna_state *self)
Definition: data_gnss.c:635
void extract_mip_gnss_hw_status_data_antenna_power(struct mip_serializer *serializer, mip_gnss_hw_status_data_antenna_power *self)
Definition: data_gnss.c:646
void insert_mip_gnss_hw_status_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_hw_status_data_valid_flags self)
Definition: data_gnss.c:653
uint16_t mip_gnss_hw_status_data_valid_flags
Definition: data_gnss.h:559
void extract_mip_gnss_hw_status_data_receiver_state(struct mip_serializer *serializer, mip_gnss_hw_status_data_receiver_state *self)
Definition: data_gnss.c:624
void insert_mip_gnss_hw_status_data_antenna_power(struct mip_serializer *serializer, const mip_gnss_hw_status_data_antenna_power self)
Definition: data_gnss.c:642
uint8_t mip_gnss_hw_status_data_receiver_state
Definition: data_gnss.h:542
void insert_mip_gnss_hw_status_data_receiver_state(struct mip_serializer *serializer, const mip_gnss_hw_status_data_receiver_state self)
Definition: data_gnss.c:620
void insert_mip_gnss_pos_ecef_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_pos_ecef_data_valid_flags self)
Definition: data_gnss.c:148
void extract_mip_gnss_pos_ecef_data_valid_flags(struct mip_serializer *serializer, mip_gnss_pos_ecef_data_valid_flags *self)
Definition: data_gnss.c:152
uint16_t mip_gnss_pos_ecef_data_valid_flags
Definition: data_gnss.h:216
void extract_mip_gnss_pos_ecef_data(mip_serializer *serializer, mip_gnss_pos_ecef_data *self)
Definition: data_gnss.c:128
void insert_mip_gnss_pos_ecef_data(mip_serializer *serializer, const mip_gnss_pos_ecef_data *self)
Definition: data_gnss.c:118
uint16_t mip_gnss_pos_llh_data_valid_flags
Definition: data_gnss.h:180
void extract_mip_gnss_pos_llh_data_valid_flags(struct mip_serializer *serializer, mip_gnss_pos_llh_data_valid_flags *self)
Definition: data_gnss.c:111
void insert_mip_gnss_pos_llh_data(mip_serializer *serializer, const mip_gnss_pos_llh_data *self)
Definition: data_gnss.c:63
void extract_mip_gnss_pos_llh_data(mip_serializer *serializer, mip_gnss_pos_llh_data *self)
Definition: data_gnss.c:80
void insert_mip_gnss_pos_llh_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_pos_llh_data_valid_flags self)
Definition: data_gnss.c:107
void extract_mip_gnss_raw_data_valid_flags(struct mip_serializer *serializer, mip_gnss_raw_data_valid_flags *self)
Definition: data_gnss.c:1377
void insert_mip_gnss_raw_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_raw_data_valid_flags self)
Definition: data_gnss.c:1373
void extract_mip_gnss_raw_data(mip_serializer *serializer, mip_gnss_raw_data *self)
Definition: data_gnss.c:1311
uint8_t mip_gnss_raw_data_gnss_signal_quality
Definition: data_gnss.h:1056
void insert_mip_gnss_raw_data(mip_serializer *serializer, const mip_gnss_raw_data *self)
Definition: data_gnss.c:1270
uint16_t mip_gnss_raw_data_valid_flags
Definition: data_gnss.h:1064
void insert_mip_gnss_raw_data_gnss_signal_quality(struct mip_serializer *serializer, const mip_gnss_raw_data_gnss_signal_quality self)
Definition: data_gnss.c:1362
void extract_mip_gnss_raw_data_gnss_signal_quality(struct mip_serializer *serializer, mip_gnss_raw_data_gnss_signal_quality *self)
Definition: data_gnss.c:1366
uint8_t mip_gnss_rf_error_detection_data_spoofing_state
Definition: data_gnss.h:858
void extract_mip_gnss_rf_error_detection_data_valid_flags(struct mip_serializer *serializer, mip_gnss_rf_error_detection_data_valid_flags *self)
Definition: data_gnss.c:1048
uint8_t mip_gnss_rf_error_detection_data_rfband
Definition: data_gnss.h:846
void insert_mip_gnss_rf_error_detection_data_jamming_state(struct mip_serializer *serializer, const mip_gnss_rf_error_detection_data_jamming_state self)
Definition: data_gnss.c:1022
uint8_t mip_gnss_rf_error_detection_data_jamming_state
Definition: data_gnss.h:852
void extract_mip_gnss_rf_error_detection_data_jamming_state(struct mip_serializer *serializer, mip_gnss_rf_error_detection_data_jamming_state *self)
Definition: data_gnss.c:1026
uint16_t mip_gnss_rf_error_detection_data_valid_flags
Definition: data_gnss.h:864
void extract_mip_gnss_rf_error_detection_data(mip_serializer *serializer, mip_gnss_rf_error_detection_data *self)
Definition: data_gnss.c:987
void insert_mip_gnss_rf_error_detection_data(mip_serializer *serializer, const mip_gnss_rf_error_detection_data *self)
Definition: data_gnss.c:973
void insert_mip_gnss_rf_error_detection_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_rf_error_detection_data_valid_flags self)
Definition: data_gnss.c:1044
void extract_mip_gnss_rf_error_detection_data_spoofing_state(struct mip_serializer *serializer, mip_gnss_rf_error_detection_data_spoofing_state *self)
Definition: data_gnss.c:1037
void insert_mip_gnss_rf_error_detection_data_spoofing_state(struct mip_serializer *serializer, const mip_gnss_rf_error_detection_data_spoofing_state self)
Definition: data_gnss.c:1033
void extract_mip_gnss_rf_error_detection_data_rfband(struct mip_serializer *serializer, mip_gnss_rf_error_detection_data_rfband *self)
Definition: data_gnss.c:1015
void insert_mip_gnss_rf_error_detection_data_rfband(struct mip_serializer *serializer, const mip_gnss_rf_error_detection_data_rfband self)
Definition: data_gnss.c:1011
void extract_mip_gnss_rtk_corrections_status_data_valid_flags(struct mip_serializer *serializer, mip_gnss_rtk_corrections_status_data_valid_flags *self)
Definition: data_gnss.c:1185
uint16_t mip_gnss_rtk_corrections_status_data_epoch_status
Definition: data_gnss.h:970
void insert_mip_gnss_rtk_corrections_status_data(mip_serializer *serializer, const mip_gnss_rtk_corrections_status_data *self)
Definition: data_gnss.c:1123
uint16_t mip_gnss_rtk_corrections_status_data_valid_flags
Definition: data_gnss.h:958
void insert_mip_gnss_rtk_corrections_status_data_epoch_status(struct mip_serializer *serializer, const mip_gnss_rtk_corrections_status_data_epoch_status self)
Definition: data_gnss.c:1192
void extract_mip_gnss_rtk_corrections_status_data_epoch_status(struct mip_serializer *serializer, mip_gnss_rtk_corrections_status_data_epoch_status *self)
Definition: data_gnss.c:1196
void insert_mip_gnss_rtk_corrections_status_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_rtk_corrections_status_data_valid_flags self)
Definition: data_gnss.c:1181
void extract_mip_gnss_rtk_corrections_status_data(mip_serializer *serializer, mip_gnss_rtk_corrections_status_data *self)
Definition: data_gnss.c:1147
void insert_mip_gnss_satellite_status_data(mip_serializer *serializer, const mip_gnss_satellite_status_data *self)
Definition: data_gnss.c:1203
void extract_mip_gnss_satellite_status_data(mip_serializer *serializer, mip_gnss_satellite_status_data *self)
Definition: data_gnss.c:1226
uint16_t mip_gnss_satellite_status_data_valid_flags
Definition: data_gnss.h:1015
void insert_mip_gnss_satellite_status_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_satellite_status_data_valid_flags self)
Definition: data_gnss.c:1259
void extract_mip_gnss_satellite_status_data_valid_flags(struct mip_serializer *serializer, mip_gnss_satellite_status_data_valid_flags *self)
Definition: data_gnss.c:1263
uint16_t mip_gnss_sbas_correction_data_valid_flags
Definition: data_gnss.h:809
void insert_mip_gnss_sbas_correction_data(mip_serializer *serializer, const mip_gnss_sbas_correction_data *self)
Definition: data_gnss.c:906
void extract_mip_gnss_sbas_correction_data(mip_serializer *serializer, mip_gnss_sbas_correction_data *self)
Definition: data_gnss.c:929
void insert_mip_gnss_sbas_correction_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_sbas_correction_data_valid_flags self)
Definition: data_gnss.c:962
void extract_mip_gnss_sbas_correction_data_valid_flags(struct mip_serializer *serializer, mip_gnss_sbas_correction_data_valid_flags *self)
Definition: data_gnss.c:966
void extract_mip_gnss_sbas_info_data_valid_flags(struct mip_serializer *serializer, mip_gnss_sbas_info_data_valid_flags *self)
Definition: data_gnss.c:899
void insert_mip_gnss_sbas_info_data_sbas_status(struct mip_serializer *serializer, const mip_gnss_sbas_info_data_sbas_status self)
Definition: data_gnss.c:884
uint8_t mip_gnss_sbas_info_data_sbas_status
Definition: data_gnss.h:740
uint16_t mip_gnss_sbas_info_data_valid_flags
Definition: data_gnss.h:747
void insert_mip_gnss_sbas_info_data(mip_serializer *serializer, const mip_gnss_sbas_info_data *self)
Definition: data_gnss.c:840
void extract_mip_gnss_sbas_info_data_sbas_status(struct mip_serializer *serializer, mip_gnss_sbas_info_data_sbas_status *self)
Definition: data_gnss.c:888
void insert_mip_gnss_sbas_info_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_sbas_info_data_valid_flags self)
Definition: data_gnss.c:895
void extract_mip_gnss_sbas_info_data(mip_serializer *serializer, mip_gnss_sbas_info_data *self)
Definition: data_gnss.c:857
uint16_t mip_gnss_sv_info_data_valid_flags
Definition: data_gnss.h:502
void insert_mip_gnss_sv_info_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_sv_info_data_valid_flags self)
Definition: data_gnss.c:577
void insert_mip_gnss_sv_info_data(mip_serializer *serializer, const mip_gnss_sv_info_data *self)
Definition: data_gnss.c:522
uint16_t mip_gnss_sv_info_data_svflags
Definition: data_gnss.h:497
void extract_mip_gnss_sv_info_data_valid_flags(struct mip_serializer *serializer, mip_gnss_sv_info_data_valid_flags *self)
Definition: data_gnss.c:581
void extract_mip_gnss_sv_info_data(mip_serializer *serializer, mip_gnss_sv_info_data *self)
Definition: data_gnss.c:539
void insert_mip_gnss_sv_info_data_svflags(struct mip_serializer *serializer, const mip_gnss_sv_info_data_svflags self)
Definition: data_gnss.c:566
void extract_mip_gnss_sv_info_data_svflags(struct mip_serializer *serializer, mip_gnss_sv_info_data_svflags *self)
Definition: data_gnss.c:570
void insert_mip_gnss_utc_time_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_utc_time_data_valid_flags self)
Definition: data_gnss.c:364
uint16_t mip_gnss_utc_time_data_valid_flags
Definition: data_gnss.h:350
void extract_mip_gnss_utc_time_data(mip_serializer *serializer, mip_gnss_utc_time_data *self)
Definition: data_gnss.c:335
void insert_mip_gnss_utc_time_data(mip_serializer *serializer, const mip_gnss_utc_time_data *self)
Definition: data_gnss.c:316
void extract_mip_gnss_utc_time_data_valid_flags(struct mip_serializer *serializer, mip_gnss_utc_time_data_valid_flags *self)
Definition: data_gnss.c:368
void extract_mip_gnss_vel_ecef_data_valid_flags(struct mip_serializer *serializer, mip_gnss_vel_ecef_data_valid_flags *self)
Definition: data_gnss.c:250
void extract_mip_gnss_vel_ecef_data(mip_serializer *serializer, mip_gnss_vel_ecef_data *self)
Definition: data_gnss.c:226
void insert_mip_gnss_vel_ecef_data(mip_serializer *serializer, const mip_gnss_vel_ecef_data *self)
Definition: data_gnss.c:216
uint16_t mip_gnss_vel_ecef_data_valid_flags
Definition: data_gnss.h:282
void insert_mip_gnss_vel_ecef_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_vel_ecef_data_valid_flags self)
Definition: data_gnss.c:246
uint16_t mip_gnss_vel_ned_data_valid_flags
Definition: data_gnss.h:245
void extract_mip_gnss_vel_ned_data_valid_flags(struct mip_serializer *serializer, mip_gnss_vel_ned_data_valid_flags *self)
Definition: data_gnss.c:209
void insert_mip_gnss_vel_ned_data(mip_serializer *serializer, const mip_gnss_vel_ned_data *self)
Definition: data_gnss.c:159
void insert_mip_gnss_vel_ned_data_valid_flags(struct mip_serializer *serializer, const mip_gnss_vel_ned_data_valid_flags self)
Definition: data_gnss.c:205
void extract_mip_gnss_vel_ned_data(mip_serializer *serializer, mip_gnss_vel_ned_data *self)
Definition: data_gnss.c:177
void extract_mip_sbas_system(struct mip_serializer *serializer, mip_sbas_system *self)
Definition: data_gnss.c:51
void insert_mip_gnss_constellation_id(struct mip_serializer *serializer, const mip_gnss_constellation_id self)
Definition: data_gnss.c:25
void insert_mip_gnss_signal_id(struct mip_serializer *serializer, const mip_gnss_signal_id self)
Definition: data_gnss.c:36
uint8_t mip_gnss_signal_id
Definition: data_gnss.h:87
uint8_t mip_gnss_constellation_id
Definition: data_gnss.h:76
uint8_t mip_sbas_system
Definition: data_gnss.h:157
void insert_mip_sbas_system(struct mip_serializer *serializer, const mip_sbas_system self)
Definition: data_gnss.c:47
void extract_mip_gnss_signal_id(struct mip_serializer *serializer, mip_gnss_signal_id *self)
Definition: data_gnss.c:40
void extract_mip_gnss_constellation_id(struct mip_serializer *serializer, mip_gnss_constellation_id *self)
Definition: data_gnss.c:29
@ MIP_GNSS_DGPS_INFO_MAX_CHANNEL_NUMBER
Definition: data_gnss.h:167
@ MIP_GNSS4_DATA_DESC_SET
Definition: data_gnss.h:74
@ MIP_DATA_DESC_GNSS_SBAS_INFO
Definition: data_gnss.h:50
@ MIP_DATA_DESC_GNSS_SATELLITE_STATUS
Definition: data_gnss.h:53
@ MIP_DATA_DESC_GNSS_VELOCITY_NED
Definition: data_gnss.h:37
@ MIP_DATA_DESC_GNSS_SV_INFO
Definition: data_gnss.h:44
@ MIP_DATA_DESC_GNSS_GPS_TIME
Definition: data_gnss.h:41
@ MIP_DATA_DESC_GNSS_BASE_STATION_INFO
Definition: data_gnss.h:56
@ MIP_DATA_DESC_GNSS_GPS_LEAP_SECONDS
Definition: data_gnss.h:49
@ MIP_DATA_DESC_GNSS_GLONASS_EPHEMERIS
Definition: data_gnss.h:59
@ MIP_DATA_DESC_GNSS_CLOCK_INFO_2
Definition: data_gnss.h:48
@ MIP_DATA_DESC_GNSS_RTK_CORRECTIONS_STATUS
Definition: data_gnss.h:57
@ MIP_DATA_DESC_GNSS_RF_ERROR_DETECTION
Definition: data_gnss.h:52
@ MIP_DATA_DESC_GNSS_GPS_EPHEMERIS
Definition: data_gnss.h:58
@ MIP_DATA_DESC_GNSS_GALILEO_IONO_CORR
Definition: data_gnss.h:63
@ MIP_DATA_DESC_GNSS_CLOCK_INFO
Definition: data_gnss.h:42
@ MIP_DATA_DESC_GNSS_GALILEO_EPHEMERIS
Definition: data_gnss.h:60
@ MIP_DATA_DESC_GNSS_GPS_IONO_CORR
Definition: data_gnss.h:61
@ MIP_DATA_DESC_GNSS_POSITION_ECEF
Definition: data_gnss.h:36
@ MIP_DATA_DESC_GNSS_HW_STATUS
Definition: data_gnss.h:45
@ MIP_DATA_DESC_GNSS_POSITION_LLH
Definition: data_gnss.h:35
@ MIP_DATA_DESC_GNSS_FIX_INFO
Definition: data_gnss.h:43
@ MIP_DATA_DESC_GNSS_GLONASS_IONO_CORR
Definition: data_gnss.h:62
@ MIP_GNSS_DATA_DESC_SET
Definition: data_gnss.h:33
@ MIP_DATA_DESC_GNSS_SATELLITE_SIGNAL_STATUS
Definition: data_gnss.h:54
@ MIP_DATA_DESC_GNSS_DGPS_CHANNEL_STATUS
Definition: data_gnss.h:47
@ MIP_DATA_DESC_GNSS_SBAS_CORRECTION
Definition: data_gnss.h:51
@ MIP_DATA_DESC_GNSS_DOP
Definition: data_gnss.h:39
@ MIP_DATA_DESC_GNSS_DGPS_INFO
Definition: data_gnss.h:46
@ MIP_DATA_DESC_GNSS_UTC_TIME
Definition: data_gnss.h:40
@ MIP_DATA_DESC_GNSS_VELOCITY_ECEF
Definition: data_gnss.h:38
@ MIP_DATA_DESC_GNSS_RAW
Definition: data_gnss.h:55
@ MIP_GNSS3_DATA_DESC_SET
Definition: data_gnss.h:73
@ MIP_GNSS5_DATA_DESC_SET
Definition: data_gnss.h:75
@ MIP_GNSS2_DATA_DESC_SET
Definition: data_gnss.h:72
@ MIP_GNSS_SV_INFO_MAX_SV_NUMBER
Definition: data_gnss.h:168
@ MIP_GNSS1_DATA_DESC_SET
Definition: data_gnss.h:71
struct mip::C::mip_field mip_field
A structure representing a MIP field.
struct mip::C::mip_interface mip_interface
State of the interface for communicating with a MIP device.
struct mip::C::mip_serializer mip_serializer
Structure used for serialization.
bool extract_mip_gnss_utc_time_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:354
bool extract_mip_gnss_fix_info_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:479
bool extract_mip_gnss_dgps_info_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:690
bool extract_mip_gnss_satellite_status_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:1249
bool extract_mip_gnss_rtk_corrections_status_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:1171
bool extract_mip_gnss_vel_ecef_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:236
bool extract_mip_gnss_dop_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:295
bool extract_mip_gnss_hw_status_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:610
bool extract_mip_gnss_sv_info_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:556
bool extract_mip_gnss_gps_iono_corr_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:1710
bool extract_mip_gnss_dgps_channel_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:737
bool extract_mip_gnss_raw_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:1352
bool extract_mip_gnss_rf_error_detection_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:1001
bool extract_mip_gnss_glo_ephemeris_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:1659
bool extract_mip_gnss_gps_leap_seconds_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:819
bool extract_mip_gnss_gps_ephemeris_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:1526
bool extract_mip_gnss_galileo_iono_corr_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:1759
bool extract_mip_gnss_pos_llh_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:97
bool extract_mip_gnss_sbas_info_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:874
bool extract_mip_gnss_clock_info_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:436
bool extract_mip_gnss_vel_ned_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:195
bool extract_mip_gnss_gps_time_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:393
bool extract_mip_gnss_clock_info_2_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:784
bool extract_mip_gnss_sbas_correction_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:952
bool extract_mip_gnss_pos_ecef_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:138
bool extract_mip_gnss_base_station_info_data_from_field(const mip_field *field, void *ptr)
Definition: data_gnss.c:1091
A collection of C++ classes and functions covering the full mip api.
Definition: commands_3dm.c:11
A structure representing a MIP field.
Definition: mip_field.h:53
Definition: data_gnss.h:930
float height
Antenna Height above the marker used in the survey [m].
Definition: data_gnss.h:934
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.h:932
double time_of_week
GPS Time of week the message was received [seconds].
Definition: data_gnss.h:931
uint16_t station_id
Range: 0-4095.
Definition: data_gnss.h:935
mip_gnss_base_station_info_data_valid_flags valid_flags
Definition: data_gnss.h:937
double ecef_pos[3]
Earth-centered, Earth-fixed [m].
Definition: data_gnss.h:933
mip_gnss_base_station_info_data_indicator_flags indicators
Bitfield.
Definition: data_gnss.h:936
Definition: data_gnss.h:690
double bias_accuracy_estimate
Definition: data_gnss.h:693
double drift_accuracy_estimate
Definition: data_gnss.h:694
mip_gnss_clock_info_2_data_valid_flags valid_flags
Definition: data_gnss.h:695
double bias
Definition: data_gnss.h:691
double drift
Definition: data_gnss.h:692
Definition: data_gnss.h:421
double accuracy_estimate
[seconds]
Definition: data_gnss.h:424
mip_gnss_clock_info_data_valid_flags valid_flags
Definition: data_gnss.h:425
double bias
[seconds]
Definition: data_gnss.h:422
double drift
[seconds/second]
Definition: data_gnss.h:423
Definition: data_gnss.h:655
mip_gnss_dgps_channel_data_valid_flags valid_flags
Definition: data_gnss.h:660
float age
[s]
Definition: data_gnss.h:657
float range_correction
[m]
Definition: data_gnss.h:658
uint8_t sv_id
Definition: data_gnss.h:656
float range_rate_correction
[m/s]
Definition: data_gnss.h:659
Definition: data_gnss.h:620
uint8_t sv_id
Definition: data_gnss.h:621
float range_correction
Definition: data_gnss.h:623
mip_gnss_dgps_info_data_valid_flags valid_flags
Definition: data_gnss.h:625
float range_rate_correction
Definition: data_gnss.h:624
float age
Definition: data_gnss.h:622
Definition: data_gnss.h:323
float tdop
Time DOP.
Definition: data_gnss.h:328
float pdop
Position DOP.
Definition: data_gnss.h:325
float vdop
Vertical DOP.
Definition: data_gnss.h:327
float gdop
Geometric DOP.
Definition: data_gnss.h:324
float edop
Easting DOP.
Definition: data_gnss.h:330
float hdop
Horizontal DOP.
Definition: data_gnss.h:326
float ndop
Northing DOP.
Definition: data_gnss.h:329
mip_gnss_dop_data_valid_flags valid_flags
Definition: data_gnss.h:331
Definition: data_gnss.h:466
mip_gnss_fix_info_data_fix_flags fix_flags
Definition: data_gnss.h:469
mip_gnss_fix_info_data_fix_type fix_type
Definition: data_gnss.h:467
mip_gnss_fix_info_data_valid_flags valid_flags
Definition: data_gnss.h:470
uint8_t num_sv
Definition: data_gnss.h:468
Definition: data_gnss.h:1278
double alpha[3]
Coefficients for the model.
Definition: data_gnss.h:1281
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.h:1280
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.h:1279
uint8_t disturbance_flags
Region disturbance flags (bits 1-5).
Definition: data_gnss.h:1282
mip_gnss_galileo_iono_corr_data_valid_flags valid_flags
Definition: data_gnss.h:1283
Definition: data_gnss.h:1192
uint8_t sat_type
Type of satellite (M) GLONASS = 0, GLONASS-M = 1.
Definition: data_gnss.h:1201
uint32_t tk
Frame start time within current day [seconds].
Definition: data_gnss.h:1199
int8_t freq_number
GLONASS frequency number (-7 to 24)
Definition: data_gnss.h:1198
uint8_t P2
Oddness "1" or evenness "0" of the value of tb.
Definition: data_gnss.h:1214
uint8_t P1
Time interval between adjacent values of tb [minutes].
Definition: data_gnss.h:1213
uint8_t En
Age of current information [days].
Definition: data_gnss.h:1212
double tau_n
Time correction relative to GLONASS Time [seconds].
Definition: data_gnss.h:1203
uint8_t count
Total number of fields in this epoch.
Definition: data_gnss.h:1194
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.h:1195
double x[3]
Satellite PE-90 position [m].
Definition: data_gnss.h:1204
mip_gnss_glo_ephemeris_data_valid_flags valid_flags
Definition: data_gnss.h:1217
uint8_t health
Satellite Health (Bn), Non-zero indicates satellite malfunction.
Definition: data_gnss.h:1207
float v[3]
Satellite PE-90 velocity [m/s].
Definition: data_gnss.h:1205
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.h:1196
float delta_tau_n
Time difference between L1 and L2[m/s].
Definition: data_gnss.h:1210
uint8_t P3
Number of satellites in almanac for this frame.
Definition: data_gnss.h:1215
uint8_t P4
Flag indicating ephemeris parameters are present.
Definition: data_gnss.h:1216
uint8_t P
Satellite operation mode (See GLONASS ICD)
Definition: data_gnss.h:1208
double gamma
Relative deviation of carrier frequency from nominal [dimesnionless].
Definition: data_gnss.h:1202
uint8_t NT
Day number within a 4 year period.
Definition: data_gnss.h:1209
float a[3]
Satellite PE-90 acceleration due to pertubations [m/s^2].
Definition: data_gnss.h:1206
uint8_t index
Index of this field in this epoch.
Definition: data_gnss.h:1193
uint8_t Ft
User Range Accuracy (See GLONASS ICD)
Definition: data_gnss.h:1211
uint8_t satellite_id
GNSS satellite id within the constellation.
Definition: data_gnss.h:1197
uint32_t tb
Ephemeris reference time [seconds].
Definition: data_gnss.h:1200
Definition: data_gnss.h:1133
uint8_t health
Satellite and signal health.
Definition: data_gnss.h:1139
uint8_t iode
Issue of Data Ephemeris.
Definition: data_gnss.h:1141
double c_uc
Harmonic Correction Term.
Definition: data_gnss.h:1163
double omega
Longitude of Ascending Node [rad].
Definition: data_gnss.h:1157
double ISC_L1CA
Definition: data_gnss.h:1147
double a
Semi-major axis [m].
Definition: data_gnss.h:1150
double eccentricity
Definition: data_gnss.h:1155
double delta_mean_motion
[rad].
Definition: data_gnss.h:1153
double inclination_dot
Inclination angle rate of change [rad/s].
Definition: data_gnss.h:1160
double c_rc
Harmonic Correction Term.
Definition: data_gnss.h:1165
double c_us
Harmonic Correction Term.
Definition: data_gnss.h:1164
double ISC_L2C
Definition: data_gnss.h:1148
double c_rs
Harmonic Correction Term.
Definition: data_gnss.h:1166
double a_dot
Semi-matjor axis rate [m/s].
Definition: data_gnss.h:1151
double mean_anomaly
[rad].
Definition: data_gnss.h:1152
double inclination
Inclination angle [rad].
Definition: data_gnss.h:1159
double c_ic
Harmonic Correction Term.
Definition: data_gnss.h:1161
double argument_of_perigee
[rad].
Definition: data_gnss.h:1156
double af2
Clock drift rate in [s/s^2].
Definition: data_gnss.h:1145
uint8_t index
Index of this field in this epoch.
Definition: data_gnss.h:1134
uint8_t iodc
Issue of Data Clock. This increments each time the data changes and rolls over at 4....
Definition: data_gnss.h:1140
double af0
Clock bias in [s].
Definition: data_gnss.h:1143
double t_gd
T Group Delay [s].
Definition: data_gnss.h:1146
double omega_dot
Rate of Right Ascention [rad/s].
Definition: data_gnss.h:1158
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.h:1136
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.h:1137
double t_oc
Reference time for clock data.
Definition: data_gnss.h:1142
double t_oe
Reference time for ephemeris in [s].
Definition: data_gnss.h:1149
uint8_t count
Total number of fields in this epoch.
Definition: data_gnss.h:1135
double delta_mean_motion_dot
[rad/s].
Definition: data_gnss.h:1154
double af1
Clock drift in [s/s].
Definition: data_gnss.h:1144
mip_gnss_gps_ephemeris_data_valid_flags valid_flags
Definition: data_gnss.h:1167
uint8_t satellite_id
GNSS satellite id within the constellation.
Definition: data_gnss.h:1138
double c_is
Harmonic Correction Term.
Definition: data_gnss.h:1162
Definition: data_gnss.h:1245
mip_gnss_gps_iono_corr_data_valid_flags valid_flags
Definition: data_gnss.h:1250
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.h:1246
double beta[4]
Ionospheric Correction Terms.
Definition: data_gnss.h:1249
double alpha[4]
Ionospheric Correction Terms.
Definition: data_gnss.h:1248
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.h:1247
Definition: data_gnss.h:719
mip_gnss_gps_leap_seconds_data_valid_flags valid_flags
Definition: data_gnss.h:721
uint8_t leap_seconds
[s]
Definition: data_gnss.h:720
Definition: data_gnss.h:391
double tow
GPS Time of week [seconds].
Definition: data_gnss.h:392
mip_gnss_gps_time_data_valid_flags valid_flags
Definition: data_gnss.h:394
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.h:393
Definition: data_gnss.h:567
mip_gnss_hw_status_data_receiver_state receiver_state
Definition: data_gnss.h:568
mip_gnss_hw_status_data_antenna_power antenna_power
Definition: data_gnss.h:570
mip_gnss_hw_status_data_antenna_state antenna_state
Definition: data_gnss.h:569
mip_gnss_hw_status_data_valid_flags valid_flags
Definition: data_gnss.h:571
Definition: data_gnss.h:223
double x[3]
[meters]
Definition: data_gnss.h:224
mip_gnss_pos_ecef_data_valid_flags valid_flags
Definition: data_gnss.h:226
float x_accuracy
[meters]
Definition: data_gnss.h:225
Definition: data_gnss.h:190
double latitude
[degrees]
Definition: data_gnss.h:191
float horizontal_accuracy
[meters]
Definition: data_gnss.h:195
float vertical_accuracy
[meters]
Definition: data_gnss.h:196
double longitude
[degrees]
Definition: data_gnss.h:192
mip_gnss_pos_llh_data_valid_flags valid_flags
Definition: data_gnss.h:197
double ellipsoid_height
[meters]
Definition: data_gnss.h:193
double msl_height
[meters]
Definition: data_gnss.h:194
Definition: data_gnss.h:1085
float doppler
Measured doppler shift [Hz].
Definition: data_gnss.h:1099
float lock_time
DOC Minimum carrier phase lock time [s]. Note: the maximum value is dependent on the receiver.
Definition: data_gnss.h:1103
uint8_t satellite_id
GNSS satellite id within the constellation.
Definition: data_gnss.h:1093
uint16_t receiver_id
When the measurement comes from RTCM, this will be the reference station ID; otherwise,...
Definition: data_gnss.h:1090
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.h:1088
double carrier_phase
Carrier phase measurement [Carrier periods].
Definition: data_gnss.h:1098
float range_uncert
Uncertainty of the pseudorange measurement [m].
Definition: data_gnss.h:1100
mip_gnss_raw_data_valid_flags valid_flags
Definition: data_gnss.h:1104
float signal_strength
Carrier to noise ratio [dBHz].
Definition: data_gnss.h:1095
mip_gnss_signal_id signal_id
Signal identifier for the satellite.
Definition: data_gnss.h:1094
double pseudorange
Pseudorange measurement [meters].
Definition: data_gnss.h:1097
mip_gnss_constellation_id gnss_id
Definition: data_gnss.h:1092
uint8_t tracking_channel
Channel the receiver is using to track this satellite.
Definition: data_gnss.h:1091
float doppler_uncert
Uncertainty of the measured doppler shift [Hz].
Definition: data_gnss.h:1102
uint8_t index
Index of this field in this epoch.
Definition: data_gnss.h:1086
float phase_uncert
Uncertainty of the phase measurement [Carrier periods].
Definition: data_gnss.h:1101
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.h:1089
mip_gnss_raw_data_gnss_signal_quality quality
Indicator of signal quality.
Definition: data_gnss.h:1096
uint8_t count
Total number of fields in this epoch.
Definition: data_gnss.h:1087
Definition: data_gnss.h:872
uint8_t reserved[4]
Reserved for future use.
Definition: data_gnss.h:876
mip_gnss_rf_error_detection_data_valid_flags valid_flags
Definition: data_gnss.h:877
mip_gnss_rf_error_detection_data_jamming_state jamming_state
GNSS Jamming State (as reported by the GNSS module)
Definition: data_gnss.h:874
mip_gnss_rf_error_detection_data_rfband rf_band
RF Band of the reported information.
Definition: data_gnss.h:873
mip_gnss_rf_error_detection_data_spoofing_state spoofing_state
GNSS Spoofing State (as reported by the GNSS module)
Definition: data_gnss.h:875
mip_gnss_rtk_corrections_status_data_epoch_status epoch_status
Status of the corrections received during this epoch.
Definition: data_gnss.h:986
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.h:985
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.h:984
float gps_correction_latency
Latency of last GPS correction [seconds].
Definition: data_gnss.h:988
float galileo_correction_latency
Latency of last Galileo correction [seconds].
Definition: data_gnss.h:990
mip_gnss_rtk_corrections_status_data_valid_flags valid_flags
Definition: data_gnss.h:993
uint32_t reserved[4]
Reserved for future use.
Definition: data_gnss.h:992
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.h:987
float beidou_correction_latency
Latency of last Beidou correction [seconds].
Definition: data_gnss.h:991
float glonass_correction_latency
Latency of last GLONASS correction [seconds].
Definition: data_gnss.h:989
Definition: data_gnss.h:1027
uint8_t count
Total number of fields in this epoch.
Definition: data_gnss.h:1029
uint8_t index
Index of this field in this epoch.
Definition: data_gnss.h:1028
float elevation
Elevation of the satellite relative to the rover [degrees].
Definition: data_gnss.h:1034
mip_gnss_satellite_status_data_valid_flags valid_flags
Definition: data_gnss.h:1037
float azimuth
Azimuth of the satellite relative to the rover [degrees].
Definition: data_gnss.h:1035
bool health
True if the satellite is healthy.
Definition: data_gnss.h:1036
uint8_t satellite_id
GNSS satellite id within the constellation.
Definition: data_gnss.h:1033
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.h:1031
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.h:1030
mip_gnss_constellation_id gnss_id
Definition: data_gnss.h:1032
Definition: data_gnss.h:817
float pseudorange_correction
Pseudorange correction [meters].
Definition: data_gnss.h:825
mip_gnss_sbas_correction_data_valid_flags valid_flags
Definition: data_gnss.h:827
uint8_t count
Total number of fields in this epoch.
Definition: data_gnss.h:819
mip_gnss_constellation_id gnss_id
GNSS constellation id.
Definition: data_gnss.h:822
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.h:821
uint8_t udrei
[See above 0-13 usable, 14 not monitored, 15 - do not use]
Definition: data_gnss.h:824
double time_of_week
GPS Time of week the message was received [seconds].
Definition: data_gnss.h:820
uint8_t sv_id
GNSS satellite id within the constellation.
Definition: data_gnss.h:823
float iono_correction
Ionospheric correction [meters].
Definition: data_gnss.h:826
uint8_t index
Index of this field in this epoch.
Definition: data_gnss.h:818
Definition: data_gnss.h:758
uint8_t sbas_id
SBAS satellite id.
Definition: data_gnss.h:762
uint8_t count
Number of SBAS corrections.
Definition: data_gnss.h:763
mip_sbas_system sbas_system
SBAS system id.
Definition: data_gnss.h:761
uint16_t week_number
GPS Week since 1980 [weeks].
Definition: data_gnss.h:760
mip_gnss_sbas_info_data_sbas_status sbas_status
Status of the SBAS service.
Definition: data_gnss.h:764
double time_of_week
GPS Time of week [seconds].
Definition: data_gnss.h:759
mip_gnss_sbas_info_data_valid_flags valid_flags
Definition: data_gnss.h:765
Definition: data_gnss.h:513
uint8_t channel
Receiver channel number.
Definition: data_gnss.h:514
int16_t azimuth
[deg]
Definition: data_gnss.h:517
uint16_t carrier_noise_ratio
[dBHz]
Definition: data_gnss.h:516
mip_gnss_sv_info_data_svflags sv_flags
Definition: data_gnss.h:519
mip_gnss_sv_info_data_valid_flags valid_flags
Definition: data_gnss.h:520
int16_t elevation
[deg]
Definition: data_gnss.h:518
uint8_t sv_id
GNSS Satellite ID.
Definition: data_gnss.h:515
Definition: data_gnss.h:357
uint8_t day
Definition: data_gnss.h:360
mip_gnss_utc_time_data_valid_flags valid_flags
Definition: data_gnss.h:365
uint8_t min
Definition: data_gnss.h:362
uint16_t year
Definition: data_gnss.h:358
uint8_t month
Definition: data_gnss.h:359
uint8_t sec
Definition: data_gnss.h:363
uint32_t msec
[Milliseconds]
Definition: data_gnss.h:364
uint8_t hour
Definition: data_gnss.h:361
Definition: data_gnss.h:289
mip_gnss_vel_ecef_data_valid_flags valid_flags
Definition: data_gnss.h:292
float v_accuracy
[meters/second]
Definition: data_gnss.h:291
float v[3]
[meters/second]
Definition: data_gnss.h:290
Definition: data_gnss.h:256
float heading_accuracy
[degrees]
Definition: data_gnss.h:262
mip_gnss_vel_ned_data_valid_flags valid_flags
Definition: data_gnss.h:263
float v[3]
[meters/second]
Definition: data_gnss.h:257
float heading
[degrees]
Definition: data_gnss.h:260
float speed_accuracy
[meters/second]
Definition: data_gnss.h:261
float ground_speed
[meters/second]
Definition: data_gnss.h:259
float speed
[meters/second]
Definition: data_gnss.h:258
Structure used for serialization.
Definition: serialization.h:44