MIP SDK  0.0.1
MicroStrain Communications Library for embedded systems
data_filter.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 
95 
96 };
97 
99 // Shared Type Definitions
101 
102 typedef uint16_t mip_filter_mode;
103 static const mip_filter_mode MIP_FILTER_MODE_GX5_STARTUP = 0;
104 static const mip_filter_mode MIP_FILTER_MODE_GX5_INIT = 1;
105 static const mip_filter_mode MIP_FILTER_MODE_GX5_RUN_SOLUTION_VALID = 2;
106 static const mip_filter_mode MIP_FILTER_MODE_GX5_RUN_SOLUTION_ERROR = 3;
107 static const mip_filter_mode MIP_FILTER_MODE_INIT = 1;
108 static const mip_filter_mode MIP_FILTER_MODE_VERT_GYRO = 2;
109 static const mip_filter_mode MIP_FILTER_MODE_AHRS = 3;
110 static const mip_filter_mode MIP_FILTER_MODE_FULL_NAV = 4;
111 
112 void insert_mip_filter_mode(struct mip_serializer* serializer, const mip_filter_mode self);
113 void extract_mip_filter_mode(struct mip_serializer* serializer, mip_filter_mode* self);
114 
115 typedef uint16_t mip_filter_dynamics_mode;
116 static const mip_filter_dynamics_mode MIP_FILTER_DYNAMICS_MODE_GX5_PORTABLE = 1;
117 static const mip_filter_dynamics_mode MIP_FILTER_DYNAMICS_MODE_GX5_AUTOMOTIVE = 2;
118 static const mip_filter_dynamics_mode MIP_FILTER_DYNAMICS_MODE_GX5_AIRBORNE = 3;
119 static const mip_filter_dynamics_mode MIP_FILTER_DYNAMICS_MODE_GQ7_DEFAULT = 1;
120 
121 void insert_mip_filter_dynamics_mode(struct mip_serializer* serializer, const mip_filter_dynamics_mode self);
123 
124 typedef uint16_t mip_filter_status_flags;
125 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_NONE = 0x0000;
126 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_INIT_NO_ATTITUDE = 0x1000;
127 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_INIT_NO_POSITION_VELOCITY = 0x2000;
128 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_IMU_UNAVAILABLE = 0x0001;
129 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_GPS_UNAVAILABLE = 0x0002;
130 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_MATRIX_SINGULARITY = 0x0008;
131 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_POSITION_COVARIANCE_WARNING = 0x0010;
132 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_VELOCITY_COVARIANCE_WARNING = 0x0020;
133 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_ATTITUDE_COVARIANCE_WARNING = 0x0040;
134 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_NAN_IN_SOLUTION_WARNING = 0x0080;
135 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_GYRO_BIAS_EST_HIGH_WARNING = 0x0100;
136 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_ACCEL_BIAS_EST_HIGH_WARNING = 0x0200;
137 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_GYRO_SCALE_FACTOR_EST_HIGH_WARNING = 0x0400;
138 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_ACCEL_SCALE_FACTOR_EST_HIGH_WARNING = 0x0800;
139 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_MAG_BIAS_EST_HIGH_WARNING = 0x1000;
140 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_ANT_OFFSET_CORRECTION_EST_HIGH_WARNING = 0x2000;
141 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_MAG_HARD_IRON_EST_HIGH_WARNING = 0x4000;
142 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GX5_RUN_MAG_SOFT_IRON_EST_HIGH_WARNING = 0x8000;
143 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GQ7_FILTER_CONDITION = 0x0003;
144 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GQ7_ROLL_PITCH_WARNING = 0x0004;
145 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GQ7_HEADING_WARNING = 0x0008;
146 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GQ7_POSITION_WARNING = 0x0010;
147 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GQ7_VELOCITY_WARNING = 0x0020;
148 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GQ7_IMU_BIAS_WARNING = 0x0040;
149 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GQ7_GNSS_CLK_WARNING = 0x0080;
150 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GQ7_ANTENNA_LEVER_ARM_WARNING = 0x0100;
151 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GQ7_MOUNTING_TRANSFORM_WARNING = 0x0200;
152 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GQ7_TIME_SYNC_WARNING = 0x0400;
153 static const mip_filter_status_flags MIP_FILTER_STATUS_FLAGS_GQ7_SOLUTION_ERROR = 0xF000;
154 
155 void insert_mip_filter_status_flags(struct mip_serializer* serializer, const mip_filter_status_flags self);
157 
159 static const mip_filter_aiding_measurement_type MIP_FILTER_AIDING_MEASUREMENT_TYPE_GNSS = 1;
160 static const mip_filter_aiding_measurement_type MIP_FILTER_AIDING_MEASUREMENT_TYPE_DUAL_ANTENNA = 2;
161 static const mip_filter_aiding_measurement_type MIP_FILTER_AIDING_MEASUREMENT_TYPE_HEADING = 3;
162 static const mip_filter_aiding_measurement_type MIP_FILTER_AIDING_MEASUREMENT_TYPE_PRESSURE = 4;
163 static const mip_filter_aiding_measurement_type MIP_FILTER_AIDING_MEASUREMENT_TYPE_MAGNETOMETER = 5;
164 static const mip_filter_aiding_measurement_type MIP_FILTER_AIDING_MEASUREMENT_TYPE_SPEED = 6;
165 
168 
170 static const mip_filter_measurement_indicator MIP_FILTER_MEASUREMENT_INDICATOR_NONE = 0x00;
171 static const mip_filter_measurement_indicator MIP_FILTER_MEASUREMENT_INDICATOR_ENABLED = 0x01;
172 static const mip_filter_measurement_indicator MIP_FILTER_MEASUREMENT_INDICATOR_USED = 0x02;
173 static const mip_filter_measurement_indicator MIP_FILTER_MEASUREMENT_INDICATOR_RESIDUAL_HIGH_WARNING = 0x04;
174 static const mip_filter_measurement_indicator MIP_FILTER_MEASUREMENT_INDICATOR_SAMPLE_TIME_WARNING = 0x08;
175 static const mip_filter_measurement_indicator MIP_FILTER_MEASUREMENT_INDICATOR_CONFIGURATION_ERROR = 0x10;
176 static const mip_filter_measurement_indicator MIP_FILTER_MEASUREMENT_INDICATOR_MAX_NUM_MEAS_EXCEEDED = 0x20;
177 
180 
181 typedef uint16_t mip_gnss_aid_status_flags;
182 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_NONE = 0x0000;
183 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_TIGHT_COUPLING = 0x0001;
184 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_DIFFERENTIAL = 0x0002;
185 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_INTEGER_FIX = 0x0004;
186 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_GPS_L1 = 0x0008;
187 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_GPS_L2 = 0x0010;
188 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_GPS_L5 = 0x0020;
189 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_GLO_L1 = 0x0040;
190 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_GLO_L2 = 0x0080;
191 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_GAL_E1 = 0x0100;
192 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_GAL_E5 = 0x0200;
193 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_GAL_E6 = 0x0400;
194 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_BEI_B1 = 0x0800;
195 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_BEI_B2 = 0x1000;
196 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_BEI_B3 = 0x2000;
197 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_NO_FIX = 0x4000;
198 static const mip_gnss_aid_status_flags MIP_GNSS_AID_STATUS_FLAGS_CONFIG_ERROR = 0x8000;
199 
202 
203 
205 // Mip Fields
207 
213 
215 {
216  double latitude;
217  double longitude;
219  uint16_t valid_flags;
220 
221 };
225 bool extract_mip_filter_position_llh_data_from_field(const struct mip_field* field, void* ptr);
226 
234 
236 {
237  float north;
238  float east;
239  float down;
240  uint16_t valid_flags;
241 
242 };
246 bool extract_mip_filter_velocity_ned_data_from_field(const struct mip_field* field, void* ptr);
247 
263 
265 {
266  float q[4];
267  uint16_t valid_flags;
268 
269 };
274 
292 
294 {
295  float dcm[9];
296  uint16_t valid_flags;
297 
298 };
302 bool extract_mip_filter_attitude_dcm_data_from_field(const struct mip_field* field, void* ptr);
303 
312 
314 {
315  float roll;
316  float pitch;
317  float yaw;
318  uint16_t valid_flags;
319 
320 };
324 bool extract_mip_filter_euler_angles_data_from_field(const struct mip_field* field, void* ptr);
325 
333 
335 {
336  float bias[3];
337  uint16_t valid_flags;
338 
339 };
343 bool extract_mip_filter_gyro_bias_data_from_field(const struct mip_field* field, void* ptr);
344 
352 
354 {
355  float bias[3];
356  uint16_t valid_flags;
357 
358 };
362 bool extract_mip_filter_accel_bias_data_from_field(const struct mip_field* field, void* ptr);
363 
371 
373 {
374  float north;
375  float east;
376  float down;
377  uint16_t valid_flags;
378 
379 };
384 
392 
394 {
395  float north;
396  float east;
397  float down;
398  uint16_t valid_flags;
399 
400 };
405 
414 
416 {
417  float roll;
418  float pitch;
419  float yaw;
420  uint16_t valid_flags;
421 
422 };
427 
435 
437 {
438  float bias_uncert[3];
439  uint16_t valid_flags;
440 
441 };
446 
454 
456 {
457  float bias_uncert[3];
458  uint16_t valid_flags;
459 
460 };
465 
479 
481 {
482  double tow;
483  uint16_t week_number;
484  uint16_t valid_flags;
485 
486 };
490 bool extract_mip_filter_timestamp_data_from_field(const struct mip_field* field, void* ptr);
491 
499 
501 {
505 
506 };
508 void insert_mip_filter_status_data(struct mip_serializer* serializer, const mip_filter_status_data* self);
510 bool extract_mip_filter_status_data_from_field(const struct mip_field* field, void* ptr);
511 
520 
522 {
523  float accel[3];
524  uint16_t valid_flags;
525 
526 };
530 bool extract_mip_filter_linear_accel_data_from_field(const struct mip_field* field, void* ptr);
531 
539 
541 {
542  float gravity[3];
543  uint16_t valid_flags;
544 
545 };
550 
558 
560 {
561  float accel[3];
562  uint16_t valid_flags;
563 
564 };
568 bool extract_mip_filter_comp_accel_data_from_field(const struct mip_field* field, void* ptr);
569 
577 
579 {
580  float gyro[3];
581  uint16_t valid_flags;
582 
583 };
588 
596 
598 {
599  float q[4];
600  uint16_t valid_flags;
601 
602 };
607 
615 
617 {
618  float magnitude;
619  uint16_t valid_flags;
620 
621 };
626 
637 
639 static const mip_filter_heading_update_state_data_heading_source MIP_FILTER_HEADING_UPDATE_STATE_DATA_HEADING_SOURCE_NONE = 0;
640 static const mip_filter_heading_update_state_data_heading_source MIP_FILTER_HEADING_UPDATE_STATE_DATA_HEADING_SOURCE_MAGNETOMETER = 1;
641 static const mip_filter_heading_update_state_data_heading_source MIP_FILTER_HEADING_UPDATE_STATE_DATA_HEADING_SOURCE_GNSS_VELOCITY_VECTOR = 2;
642 static const mip_filter_heading_update_state_data_heading_source MIP_FILTER_HEADING_UPDATE_STATE_DATA_HEADING_SOURCE_EXTERNAL = 4;
643 static const mip_filter_heading_update_state_data_heading_source MIP_FILTER_HEADING_UPDATE_STATE_DATA_HEADING_SOURCE_DUAL_ANTENNA = 8;
644 
646 {
647  float heading;
650  uint16_t valid_flags;
651 
652 };
657 
660 
669 
671 {
675  float inclination;
676  float declination;
677  uint16_t valid_flags;
678 
679 };
684 
692 
694 {
695  float scale_factor[3];
696  uint16_t valid_flags;
697 
698 };
703 
711 
713 {
715  uint16_t valid_flags;
716 
717 };
722 
730 
732 {
733  float scale_factor[3];
734  uint16_t valid_flags;
735 
736 };
741 
749 
751 {
753  uint16_t valid_flags;
754 
755 };
760 
768 
770 {
771  float bias[3];
772  uint16_t valid_flags;
773 
774 };
776 void insert_mip_filter_mag_bias_data(struct mip_serializer* serializer, const mip_filter_mag_bias_data* self);
778 bool extract_mip_filter_mag_bias_data_from_field(const struct mip_field* field, void* ptr);
779 
787 
789 {
790  float bias_uncert[3];
791  uint16_t valid_flags;
792 
793 };
798 
808 
810 {
816  uint16_t valid_flags;
817 
818 };
823 
835 
837 {
839  uint16_t valid_flags;
840 
841 };
846 
853 
855 {
857  uint16_t valid_flags;
858 
859 };
864 
874 
876 {
877  float offset[3];
878  uint16_t valid_flags;
879 
880 };
885 
893 
895 {
896  float offset_uncert[3];
897  uint16_t valid_flags;
898 
899 };
904 
914 
916 {
917  uint8_t receiver_id;
918  float offset[3];
919  uint16_t valid_flags;
920 
921 };
926 
934 
936 {
937  uint8_t receiver_id;
938  float offset_uncert[3];
939  uint16_t valid_flags;
940 
941 };
946 
956 
958 {
959  float hard_iron[3];
960  uint16_t valid_flags;
961 
962 };
967 
977 
979 {
980  float soft_iron[9];
981  uint16_t valid_flags;
982 
983 };
988 
996 
998 {
1000  uint16_t valid_flags;
1001 
1002 };
1007 
1015 
1017 {
1019  uint16_t valid_flags;
1020 
1021 };
1026 
1033 
1035 {
1036  float covariance[9];
1037  uint16_t valid_flags;
1038 
1039 };
1044 
1052 
1054 {
1055  float residual[3];
1056  uint16_t valid_flags;
1057 
1058 };
1063 
1071 
1073 {
1074  uint8_t receiver_id;
1075  float bias;
1076  float bias_drift;
1077  uint16_t valid_flags;
1078 
1079 };
1084 
1092 
1094 {
1095  uint8_t receiver_id;
1098  uint16_t valid_flags;
1099 
1100 };
1105 
1113 
1115 {
1116  uint8_t receiver_id;
1119  uint8_t reserved[8];
1120 
1121 };
1126 
1134 
1136 {
1139  uint8_t reserved[8];
1140 
1141 };
1146 
1154 
1156 static const mip_filter_head_aid_status_data_heading_aid_type MIP_FILTER_HEAD_AID_STATUS_DATA_HEADING_AID_TYPE_DUAL_ANTENNA = 1;
1157 static const mip_filter_head_aid_status_data_heading_aid_type MIP_FILTER_HEAD_AID_STATUS_DATA_HEADING_AID_TYPE_EXTERNAL_MESSAGE = 2;
1158 
1160 {
1163  float reserved[2];
1164 
1165 };
1170 
1173 
1181 
1183 {
1184  double relative_position[3];
1185  uint16_t valid_flags;
1186 
1187 };
1191 bool extract_mip_filter_rel_pos_ned_data_from_field(const struct mip_field* field, void* ptr);
1192 
1200 
1202 {
1203  double position_ecef[3];
1204  uint16_t valid_flags;
1205 
1206 };
1208 void insert_mip_filter_ecef_pos_data(struct mip_serializer* serializer, const mip_filter_ecef_pos_data* self);
1210 bool extract_mip_filter_ecef_pos_data_from_field(const struct mip_field* field, void* ptr);
1211 
1219 
1221 {
1222  float velocity_ecef[3];
1223  uint16_t valid_flags;
1224 
1225 };
1227 void insert_mip_filter_ecef_vel_data(struct mip_serializer* serializer, const mip_filter_ecef_vel_data* self);
1229 bool extract_mip_filter_ecef_vel_data_from_field(const struct mip_field* field, void* ptr);
1230 
1238 
1240 {
1241  float pos_uncertainty[3];
1242  uint16_t valid_flags;
1243 
1244 };
1249 
1257 
1259 {
1260  float vel_uncertainty[3];
1261  uint16_t valid_flags;
1262 
1263 };
1268 
1276 
1278 {
1280  uint8_t source;
1283 
1284 };
1289 
1297 
1299 {
1301  uint16_t valid_flags;
1302 
1303 };
1308 
1316 
1318 {
1320  uint16_t valid_flags;
1321 
1322 };
1327 
1335 
1337 static const mip_filter_gnss_dual_antenna_status_data_fix_type MIP_FILTER_GNSS_DUAL_ANTENNA_STATUS_DATA_FIX_TYPE_FIX_NONE = 0;
1338 static const mip_filter_gnss_dual_antenna_status_data_fix_type MIP_FILTER_GNSS_DUAL_ANTENNA_STATUS_DATA_FIX_TYPE_FIX_DA_FLOAT = 1;
1339 static const mip_filter_gnss_dual_antenna_status_data_fix_type MIP_FILTER_GNSS_DUAL_ANTENNA_STATUS_DATA_FIX_TYPE_FIX_DA_FIXED = 2;
1340 
1342 static const mip_filter_gnss_dual_antenna_status_data_dual_antenna_status_flags MIP_FILTER_GNSS_DUAL_ANTENNA_STATUS_DATA_DUAL_ANTENNA_STATUS_FLAGS_NONE = 0x0000;
1343 static const mip_filter_gnss_dual_antenna_status_data_dual_antenna_status_flags MIP_FILTER_GNSS_DUAL_ANTENNA_STATUS_DATA_DUAL_ANTENNA_STATUS_FLAGS_RCV_1_DATA_VALID = 0x0001;
1344 static const mip_filter_gnss_dual_antenna_status_data_dual_antenna_status_flags MIP_FILTER_GNSS_DUAL_ANTENNA_STATUS_DATA_DUAL_ANTENNA_STATUS_FLAGS_RCV_2_DATA_VALID = 0x0002;
1345 static const mip_filter_gnss_dual_antenna_status_data_dual_antenna_status_flags MIP_FILTER_GNSS_DUAL_ANTENNA_STATUS_DATA_DUAL_ANTENNA_STATUS_FLAGS_ANTENNA_OFFSETS_VALID = 0x0004;
1346 
1348 {
1350  float heading;
1351  float heading_unc;
1354  uint16_t valid_flags;
1355 
1356 };
1361 
1364 
1367 
1370 
1375 #ifdef __cplusplus
1376 } // namespace C
1377 } // namespace mip
1378 } // extern "C"
1379 #endif // __cplusplus
1380 
void insert_mip_filter_accel_bias_uncertainty_data(mip_serializer *serializer, const mip_filter_accel_bias_uncertainty_data *self)
Definition: data_filter.c:418
void extract_mip_filter_accel_bias_uncertainty_data(mip_serializer *serializer, mip_filter_accel_bias_uncertainty_data *self)
Definition: data_filter.c:426
void extract_mip_filter_accel_bias_data(mip_serializer *serializer, mip_filter_accel_bias_data *self)
Definition: data_filter.c:278
void insert_mip_filter_accel_bias_data(mip_serializer *serializer, const mip_filter_accel_bias_data *self)
Definition: data_filter.c:270
void extract_mip_filter_accel_scale_factor_uncertainty_data(mip_serializer *serializer, mip_filter_accel_scale_factor_uncertainty_data *self)
Definition: data_filter.c:771
void insert_mip_filter_accel_scale_factor_uncertainty_data(mip_serializer *serializer, const mip_filter_accel_scale_factor_uncertainty_data *self)
Definition: data_filter.c:763
void insert_mip_filter_accel_scale_factor_data(mip_serializer *serializer, const mip_filter_accel_scale_factor_data *self)
Definition: data_filter.c:737
void extract_mip_filter_accel_scale_factor_data(mip_serializer *serializer, mip_filter_accel_scale_factor_data *self)
Definition: data_filter.c:745
void insert_mip_filter_aiding_measurement_summary_data(mip_serializer *serializer, const mip_filter_aiding_measurement_summary_data *self)
Definition: data_filter.c:1548
void extract_mip_filter_aiding_measurement_summary_data(mip_serializer *serializer, mip_filter_aiding_measurement_summary_data *self)
Definition: data_filter.c:1559
void insert_mip_filter_antenna_offset_correction_uncertainty_data(mip_serializer *serializer, const mip_filter_antenna_offset_correction_uncertainty_data *self)
Definition: data_filter.c:1007
void extract_mip_filter_antenna_offset_correction_uncertainty_data(mip_serializer *serializer, mip_filter_antenna_offset_correction_uncertainty_data *self)
Definition: data_filter.c:1015
void extract_mip_filter_antenna_offset_correction_data(mip_serializer *serializer, mip_filter_antenna_offset_correction_data *self)
Definition: data_filter.c:989
void insert_mip_filter_antenna_offset_correction_data(mip_serializer *serializer, const mip_filter_antenna_offset_correction_data *self)
Definition: data_filter.c:981
void insert_mip_filter_attitude_dcm_data(mip_serializer *serializer, const mip_filter_attitude_dcm_data *self)
Definition: data_filter.c:186
void extract_mip_filter_attitude_dcm_data(mip_serializer *serializer, mip_filter_attitude_dcm_data *self)
Definition: data_filter.c:194
void insert_mip_filter_attitude_quaternion_data(mip_serializer *serializer, const mip_filter_attitude_quaternion_data *self)
Definition: data_filter.c:160
void extract_mip_filter_attitude_quaternion_data(mip_serializer *serializer, mip_filter_attitude_quaternion_data *self)
Definition: data_filter.c:168
void extract_mip_filter_clock_correction_uncertainty_data(mip_serializer *serializer, mip_filter_clock_correction_uncertainty_data *self)
Definition: data_filter.c:1292
void insert_mip_filter_clock_correction_uncertainty_data(mip_serializer *serializer, const mip_filter_clock_correction_uncertainty_data *self)
Definition: data_filter.c:1281
void insert_mip_filter_clock_correction_data(mip_serializer *serializer, const mip_filter_clock_correction_data *self)
Definition: data_filter.c:1249
void extract_mip_filter_clock_correction_data(mip_serializer *serializer, mip_filter_clock_correction_data *self)
Definition: data_filter.c:1260
void insert_mip_filter_comp_accel_data(mip_serializer *serializer, const mip_filter_comp_accel_data *self)
Definition: data_filter.c:552
void extract_mip_filter_comp_accel_data(mip_serializer *serializer, mip_filter_comp_accel_data *self)
Definition: data_filter.c:560
void insert_mip_filter_comp_angular_rate_data(mip_serializer *serializer, const mip_filter_comp_angular_rate_data *self)
Definition: data_filter.c:578
void extract_mip_filter_comp_angular_rate_data(mip_serializer *serializer, mip_filter_comp_angular_rate_data *self)
Definition: data_filter.c:586
void extract_mip_filter_density_altitude_data(mip_serializer *serializer, mip_filter_density_altitude_data *self)
Definition: data_filter.c:964
void insert_mip_filter_density_altitude_data(mip_serializer *serializer, const mip_filter_density_altitude_data *self)
Definition: data_filter.c:957
void insert_mip_filter_ecef_pos_uncertainty_data(mip_serializer *serializer, const mip_filter_ecef_pos_uncertainty_data *self)
Definition: data_filter.c:1496
void extract_mip_filter_ecef_pos_uncertainty_data(mip_serializer *serializer, mip_filter_ecef_pos_uncertainty_data *self)
Definition: data_filter.c:1504
void extract_mip_filter_ecef_pos_data(mip_serializer *serializer, mip_filter_ecef_pos_data *self)
Definition: data_filter.c:1452
void insert_mip_filter_ecef_pos_data(mip_serializer *serializer, const mip_filter_ecef_pos_data *self)
Definition: data_filter.c:1444
void insert_mip_filter_ecef_vel_uncertainty_data(mip_serializer *serializer, const mip_filter_ecef_vel_uncertainty_data *self)
Definition: data_filter.c:1522
void extract_mip_filter_ecef_vel_uncertainty_data(mip_serializer *serializer, mip_filter_ecef_vel_uncertainty_data *self)
Definition: data_filter.c:1530
void insert_mip_filter_ecef_vel_data(mip_serializer *serializer, const mip_filter_ecef_vel_data *self)
Definition: data_filter.c:1470
void extract_mip_filter_ecef_vel_data(mip_serializer *serializer, mip_filter_ecef_vel_data *self)
Definition: data_filter.c:1478
void insert_mip_filter_euler_angles_uncertainty_data(mip_serializer *serializer, const mip_filter_euler_angles_uncertainty_data *self)
Definition: data_filter.c:360
void extract_mip_filter_euler_angles_uncertainty_data(mip_serializer *serializer, mip_filter_euler_angles_uncertainty_data *self)
Definition: data_filter.c:371
void insert_mip_filter_euler_angles_data(mip_serializer *serializer, const mip_filter_euler_angles_data *self)
Definition: data_filter.c:212
void extract_mip_filter_euler_angles_data(mip_serializer *serializer, mip_filter_euler_angles_data *self)
Definition: data_filter.c:223
void insert_mip_filter_gnss_att_aid_status_data(mip_serializer *serializer, const mip_filter_gnss_att_aid_status_data *self)
Definition: data_filter.c:1347
void extract_mip_filter_gnss_att_aid_status_data(mip_serializer *serializer, mip_filter_gnss_att_aid_status_data *self)
Definition: data_filter.c:1357
void insert_mip_filter_gnss_dual_antenna_status_data_fix_type(struct mip_serializer *serializer, const mip_filter_gnss_dual_antenna_status_data_fix_type self)
Definition: data_filter.c:1668
void extract_mip_filter_gnss_dual_antenna_status_data_dual_antenna_status_flags(struct mip_serializer *serializer, mip_filter_gnss_dual_antenna_status_data_dual_antenna_status_flags *self)
Definition: data_filter.c:1683
void insert_mip_filter_gnss_dual_antenna_status_data(mip_serializer *serializer, const mip_filter_gnss_dual_antenna_status_data *self)
Definition: data_filter.c:1628
uint8_t mip_filter_gnss_dual_antenna_status_data_fix_type
Definition: data_filter.h:1336
void extract_mip_filter_gnss_dual_antenna_status_data_fix_type(struct mip_serializer *serializer, mip_filter_gnss_dual_antenna_status_data_fix_type *self)
Definition: data_filter.c:1672
uint16_t mip_filter_gnss_dual_antenna_status_data_dual_antenna_status_flags
Definition: data_filter.h:1341
void insert_mip_filter_gnss_dual_antenna_status_data_dual_antenna_status_flags(struct mip_serializer *serializer, const mip_filter_gnss_dual_antenna_status_data_dual_antenna_status_flags self)
Definition: data_filter.c:1679
void extract_mip_filter_gnss_dual_antenna_status_data(mip_serializer *serializer, mip_filter_gnss_dual_antenna_status_data *self)
Definition: data_filter.c:1643
void insert_mip_filter_gnss_pos_aid_status_data(mip_serializer *serializer, const mip_filter_gnss_pos_aid_status_data *self)
Definition: data_filter.c:1313
void extract_mip_filter_gnss_pos_aid_status_data(mip_serializer *serializer, mip_filter_gnss_pos_aid_status_data *self)
Definition: data_filter.c:1325
void extract_mip_filter_gravity_vector_data(mip_serializer *serializer, mip_filter_gravity_vector_data *self)
Definition: data_filter.c:534
void insert_mip_filter_gravity_vector_data(mip_serializer *serializer, const mip_filter_gravity_vector_data *self)
Definition: data_filter.c:526
void insert_mip_filter_gyro_bias_uncertainty_data(mip_serializer *serializer, const mip_filter_gyro_bias_uncertainty_data *self)
Definition: data_filter.c:392
void extract_mip_filter_gyro_bias_uncertainty_data(mip_serializer *serializer, mip_filter_gyro_bias_uncertainty_data *self)
Definition: data_filter.c:400
void insert_mip_filter_gyro_bias_data(mip_serializer *serializer, const mip_filter_gyro_bias_data *self)
Definition: data_filter.c:244
void extract_mip_filter_gyro_bias_data(mip_serializer *serializer, mip_filter_gyro_bias_data *self)
Definition: data_filter.c:252
void insert_mip_filter_gyro_scale_factor_uncertainty_data(mip_serializer *serializer, const mip_filter_gyro_scale_factor_uncertainty_data *self)
Definition: data_filter.c:815
void extract_mip_filter_gyro_scale_factor_uncertainty_data(mip_serializer *serializer, mip_filter_gyro_scale_factor_uncertainty_data *self)
Definition: data_filter.c:823
void extract_mip_filter_gyro_scale_factor_data(mip_serializer *serializer, mip_filter_gyro_scale_factor_data *self)
Definition: data_filter.c:797
void insert_mip_filter_gyro_scale_factor_data(mip_serializer *serializer, const mip_filter_gyro_scale_factor_data *self)
Definition: data_filter.c:789
uint8_t mip_filter_head_aid_status_data_heading_aid_type
Definition: data_filter.h:1155
void insert_mip_filter_head_aid_status_data_heading_aid_type(struct mip_serializer *serializer, const mip_filter_head_aid_status_data_heading_aid_type self)
Definition: data_filter.c:1407
void extract_mip_filter_head_aid_status_data_heading_aid_type(struct mip_serializer *serializer, mip_filter_head_aid_status_data_heading_aid_type *self)
Definition: data_filter.c:1411
void extract_mip_filter_head_aid_status_data(mip_serializer *serializer, mip_filter_head_aid_status_data *self)
Definition: data_filter.c:1387
void insert_mip_filter_head_aid_status_data(mip_serializer *serializer, const mip_filter_head_aid_status_data *self)
Definition: data_filter.c:1377
void insert_mip_filter_heading_update_state_data_heading_source(struct mip_serializer *serializer, const mip_filter_heading_update_state_data_heading_source self)
Definition: data_filter.c:686
void extract_mip_filter_heading_update_state_data_heading_source(struct mip_serializer *serializer, mip_filter_heading_update_state_data_heading_source *self)
Definition: data_filter.c:690
void insert_mip_filter_heading_update_state_data(mip_serializer *serializer, const mip_filter_heading_update_state_data *self)
Definition: data_filter.c:654
void extract_mip_filter_heading_update_state_data(mip_serializer *serializer, mip_filter_heading_update_state_data *self)
Definition: data_filter.c:665
uint16_t mip_filter_heading_update_state_data_heading_source
Definition: data_filter.h:638
void extract_mip_filter_linear_accel_data(mip_serializer *serializer, mip_filter_linear_accel_data *self)
Definition: data_filter.c:508
void insert_mip_filter_linear_accel_data(mip_serializer *serializer, const mip_filter_linear_accel_data *self)
Definition: data_filter.c:500
void insert_mip_filter_mag_bias_uncertainty_data(mip_serializer *serializer, const mip_filter_mag_bias_uncertainty_data *self)
Definition: data_filter.c:867
void extract_mip_filter_mag_bias_uncertainty_data(mip_serializer *serializer, mip_filter_mag_bias_uncertainty_data *self)
Definition: data_filter.c:875
void insert_mip_filter_mag_bias_data(mip_serializer *serializer, const mip_filter_mag_bias_data *self)
Definition: data_filter.c:841
void extract_mip_filter_mag_bias_data(mip_serializer *serializer, mip_filter_mag_bias_data *self)
Definition: data_filter.c:849
void insert_mip_filter_magnetic_model_data(mip_serializer *serializer, const mip_filter_magnetic_model_data *self)
Definition: data_filter.c:697
void extract_mip_filter_magnetic_model_data(mip_serializer *serializer, mip_filter_magnetic_model_data *self)
Definition: data_filter.c:712
void insert_mip_filter_magnetometer_covariance_matrix_data(mip_serializer *serializer, const mip_filter_magnetometer_covariance_matrix_data *self)
Definition: data_filter.c:1197
void extract_mip_filter_magnetometer_covariance_matrix_data(mip_serializer *serializer, mip_filter_magnetometer_covariance_matrix_data *self)
Definition: data_filter.c:1205
void extract_mip_filter_magnetometer_matrix_uncertainty_data(mip_serializer *serializer, mip_filter_magnetometer_matrix_uncertainty_data *self)
Definition: data_filter.c:1179
void insert_mip_filter_magnetometer_matrix_uncertainty_data(mip_serializer *serializer, const mip_filter_magnetometer_matrix_uncertainty_data *self)
Definition: data_filter.c:1171
void insert_mip_filter_magnetometer_matrix_data(mip_serializer *serializer, const mip_filter_magnetometer_matrix_data *self)
Definition: data_filter.c:1119
void extract_mip_filter_magnetometer_matrix_data(mip_serializer *serializer, mip_filter_magnetometer_matrix_data *self)
Definition: data_filter.c:1127
void extract_mip_filter_magnetometer_offset_uncertainty_data(mip_serializer *serializer, mip_filter_magnetometer_offset_uncertainty_data *self)
Definition: data_filter.c:1153
void insert_mip_filter_magnetometer_offset_uncertainty_data(mip_serializer *serializer, const mip_filter_magnetometer_offset_uncertainty_data *self)
Definition: data_filter.c:1145
void extract_mip_filter_magnetometer_offset_data(mip_serializer *serializer, mip_filter_magnetometer_offset_data *self)
Definition: data_filter.c:1101
void insert_mip_filter_magnetometer_offset_data(mip_serializer *serializer, const mip_filter_magnetometer_offset_data *self)
Definition: data_filter.c:1093
void insert_mip_filter_magnetometer_residual_vector_data(mip_serializer *serializer, const mip_filter_magnetometer_residual_vector_data *self)
Definition: data_filter.c:1223
void extract_mip_filter_magnetometer_residual_vector_data(mip_serializer *serializer, mip_filter_magnetometer_residual_vector_data *self)
Definition: data_filter.c:1231
void extract_mip_filter_multi_antenna_offset_correction_uncertainty_data(mip_serializer *serializer, mip_filter_multi_antenna_offset_correction_uncertainty_data *self)
Definition: data_filter.c:1073
void insert_mip_filter_multi_antenna_offset_correction_uncertainty_data(mip_serializer *serializer, const mip_filter_multi_antenna_offset_correction_uncertainty_data *self)
Definition: data_filter.c:1063
void insert_mip_filter_multi_antenna_offset_correction_data(mip_serializer *serializer, const mip_filter_multi_antenna_offset_correction_data *self)
Definition: data_filter.c:1033
void extract_mip_filter_multi_antenna_offset_correction_data(mip_serializer *serializer, mip_filter_multi_antenna_offset_correction_data *self)
Definition: data_filter.c:1043
void insert_mip_filter_odometer_scale_factor_error_uncertainty_data(mip_serializer *serializer, const mip_filter_odometer_scale_factor_error_uncertainty_data *self)
Definition: data_filter.c:1604
void extract_mip_filter_odometer_scale_factor_error_uncertainty_data(mip_serializer *serializer, mip_filter_odometer_scale_factor_error_uncertainty_data *self)
Definition: data_filter.c:1611
void insert_mip_filter_odometer_scale_factor_error_data(mip_serializer *serializer, const mip_filter_odometer_scale_factor_error_data *self)
Definition: data_filter.c:1580
void extract_mip_filter_odometer_scale_factor_error_data(mip_serializer *serializer, mip_filter_odometer_scale_factor_error_data *self)
Definition: data_filter.c:1587
void extract_mip_filter_position_llh_uncertainty_data(mip_serializer *serializer, mip_filter_position_llh_uncertainty_data *self)
Definition: data_filter.c:307
void insert_mip_filter_position_llh_uncertainty_data(mip_serializer *serializer, const mip_filter_position_llh_uncertainty_data *self)
Definition: data_filter.c:296
void insert_mip_filter_position_llh_data(mip_serializer *serializer, const mip_filter_position_llh_data *self)
Definition: data_filter.c:96
void extract_mip_filter_position_llh_data(mip_serializer *serializer, mip_filter_position_llh_data *self)
Definition: data_filter.c:107
void extract_mip_filter_pressure_altitude_data(mip_serializer *serializer, mip_filter_pressure_altitude_data *self)
Definition: data_filter.c:940
void insert_mip_filter_pressure_altitude_data(mip_serializer *serializer, const mip_filter_pressure_altitude_data *self)
Definition: data_filter.c:933
void extract_mip_filter_quaternion_attitude_uncertainty_data(mip_serializer *serializer, mip_filter_quaternion_attitude_uncertainty_data *self)
Definition: data_filter.c:612
void insert_mip_filter_quaternion_attitude_uncertainty_data(mip_serializer *serializer, const mip_filter_quaternion_attitude_uncertainty_data *self)
Definition: data_filter.c:604
void extract_mip_filter_rel_pos_ned_data(mip_serializer *serializer, mip_filter_rel_pos_ned_data *self)
Definition: data_filter.c:1426
void insert_mip_filter_rel_pos_ned_data(mip_serializer *serializer, const mip_filter_rel_pos_ned_data *self)
Definition: data_filter.c:1418
void extract_mip_filter_standard_atmosphere_data(mip_serializer *serializer, mip_filter_standard_atmosphere_data *self)
Definition: data_filter.c:908
void insert_mip_filter_standard_atmosphere_data(mip_serializer *serializer, const mip_filter_standard_atmosphere_data *self)
Definition: data_filter.c:893
void extract_mip_filter_status_data(mip_serializer *serializer, mip_filter_status_data *self)
Definition: data_filter.c:481
void insert_mip_filter_status_data(mip_serializer *serializer, const mip_filter_status_data *self)
Definition: data_filter.c:472
void extract_mip_filter_timestamp_data(mip_serializer *serializer, mip_filter_timestamp_data *self)
Definition: data_filter.c:453
void insert_mip_filter_timestamp_data(mip_serializer *serializer, const mip_filter_timestamp_data *self)
Definition: data_filter.c:444
void insert_mip_filter_velocity_ned_uncertainty_data(mip_serializer *serializer, const mip_filter_velocity_ned_uncertainty_data *self)
Definition: data_filter.c:328
void extract_mip_filter_velocity_ned_uncertainty_data(mip_serializer *serializer, mip_filter_velocity_ned_uncertainty_data *self)
Definition: data_filter.c:339
void extract_mip_filter_velocity_ned_data(mip_serializer *serializer, mip_filter_velocity_ned_data *self)
Definition: data_filter.c:139
void insert_mip_filter_velocity_ned_data(mip_serializer *serializer, const mip_filter_velocity_ned_data *self)
Definition: data_filter.c:128
void insert_mip_filter_wgs84_gravity_mag_data(mip_serializer *serializer, const mip_filter_wgs84_gravity_mag_data *self)
Definition: data_filter.c:630
void extract_mip_filter_wgs84_gravity_mag_data(mip_serializer *serializer, mip_filter_wgs84_gravity_mag_data *self)
Definition: data_filter.c:637
void extract_mip_filter_measurement_indicator(struct mip_serializer *serializer, mip_filter_measurement_indicator *self)
Definition: data_filter.c:73
void extract_mip_filter_mode(struct mip_serializer *serializer, mip_filter_mode *self)
Definition: data_filter.c:29
uint16_t mip_filter_mode
Definition: data_filter.h:102
void insert_mip_filter_mode(struct mip_serializer *serializer, const mip_filter_mode self)
Definition: data_filter.c:25
void insert_mip_filter_aiding_measurement_type(struct mip_serializer *serializer, const mip_filter_aiding_measurement_type self)
Definition: data_filter.c:58
void extract_mip_gnss_aid_status_flags(struct mip_serializer *serializer, mip_gnss_aid_status_flags *self)
Definition: data_filter.c:84
uint16_t mip_filter_dynamics_mode
Definition: data_filter.h:115
uint16_t mip_filter_status_flags
Definition: data_filter.h:124
void extract_mip_filter_dynamics_mode(struct mip_serializer *serializer, mip_filter_dynamics_mode *self)
Definition: data_filter.c:40
uint8_t mip_filter_measurement_indicator
Definition: data_filter.h:169
void extract_mip_filter_aiding_measurement_type(struct mip_serializer *serializer, mip_filter_aiding_measurement_type *self)
Definition: data_filter.c:62
void insert_mip_filter_status_flags(struct mip_serializer *serializer, const mip_filter_status_flags self)
Definition: data_filter.c:47
void insert_mip_filter_measurement_indicator(struct mip_serializer *serializer, const mip_filter_measurement_indicator self)
Definition: data_filter.c:69
uint16_t mip_gnss_aid_status_flags
Definition: data_filter.h:181
void insert_mip_filter_dynamics_mode(struct mip_serializer *serializer, const mip_filter_dynamics_mode self)
Definition: data_filter.c:36
void extract_mip_filter_status_flags(struct mip_serializer *serializer, mip_filter_status_flags *self)
Definition: data_filter.c:51
uint8_t mip_filter_aiding_measurement_type
Definition: data_filter.h:158
void insert_mip_gnss_aid_status_flags(struct mip_serializer *serializer, const mip_gnss_aid_status_flags self)
Definition: data_filter.c:80
@ MIP_DATA_DESC_FILTER_ATT_MATRIX
Definition: data_filter.h:38
@ MIP_DATA_DESC_FILTER_GYRO_SCALE_FACTOR_UNCERTAINTY
Definition: data_filter.h:58
@ MIP_DATA_DESC_FILTER_LINEAR_ACCELERATION
Definition: data_filter.h:47
@ MIP_DATA_DESC_FILTER_ECEF_POS
Definition: data_filter.h:85
@ MIP_DATA_DESC_FILTER_HEADING_UPDATE_STATE
Definition: data_filter.h:54
@ MIP_DATA_DESC_FILTER_STANDARD_ATMOSPHERE_DATA
Definition: data_filter.h:63
@ MIP_DATA_DESC_FILTER_MAG_COMPENSATION_MATRIX
Definition: data_filter.h:69
@ MIP_DATA_DESC_FILTER_GNSS_DUAL_ANTENNA_STATUS
Definition: data_filter.h:94
@ MIP_DATA_DESC_FILTER_ACCEL_SCALE_FACTOR
Definition: data_filter.h:57
@ MIP_DATA_DESC_FILTER_GRAVITY_VECTOR
Definition: data_filter.h:53
@ MIP_DATA_DESC_FILTER_MULTI_ANTENNA_OFFSET_CORRECTION_UNCERTAINTY
Definition: data_filter.h:82
@ MIP_DATA_DESC_FILTER_MAGNETIC_MODEL
Definition: data_filter.h:55
@ MIP_DATA_DESC_FILTER_MAG_FILTERED_RESIDUAL
Definition: data_filter.h:76
@ MIP_DATA_DESC_FILTER_ATT_UNCERTAINTY_EULER
Definition: data_filter.h:44
@ MIP_DATA_DESC_FILTER_MAG_COMPENSATION_OFFSET_UNCERTAINTY
Definition: data_filter.h:71
@ MIP_DATA_DESC_FILTER_COMPENSATED_MAGNETOMETER
Definition: data_filter.h:70
@ MIP_DATA_DESC_FILTER_GRAVITY_COVARIANCE
Definition: data_filter.h:74
@ MIP_DATA_DESC_FILTER_CLOCK_CORRECTION_UNCERTAINTY
Definition: data_filter.h:80
@ MIP_DATA_DESC_FILTER_COMPENSATED_ACCELERATION
Definition: data_filter.h:62
@ MIP_DATA_DESC_FILTER_GYRO_BIAS_UNCERTAINTY
Definition: data_filter.h:45
@ MIP_DATA_DESC_FILTER_PRESSURE_ALTITUDE_DATA
Definition: data_filter.h:64
@ MIP_DATA_DESC_FILTER_ECEF_VEL_UNCERTAINTY
Definition: data_filter.h:84
@ MIP_DATA_DESC_FILTER_FILTER_STATUS
Definition: data_filter.h:50
@ MIP_DATA_DESC_FILTER_ECEF_VEL
Definition: data_filter.h:86
@ MIP_DATA_DESC_FILTER_GYRO_SCALE_FACTOR
Definition: data_filter.h:56
@ MIP_DATA_DESC_FILTER_GNSS_POS_AID_STATUS
Definition: data_filter.h:88
@ MIP_DATA_DESC_FILTER_ODOMETER_SCALE_FACTOR_ERROR
Definition: data_filter.h:92
@ MIP_DATA_DESC_FILTER_GYRO_BIAS
Definition: data_filter.h:40
@ MIP_DATA_DESC_FILTER_ATT_QUATERNION
Definition: data_filter.h:37
@ MIP_DATA_DESC_FILTER_POS_UNCERTAINTY
Definition: data_filter.h:42
@ MIP_DATA_DESC_FILTER_DENSITY_ALTITUDE_DATA
Definition: data_filter.h:65
@ MIP_DATA_DESC_FILTER_MAG_COVARIANCE
Definition: data_filter.h:73
@ MIP_DATA_DESC_FILTER_VEL_NED
Definition: data_filter.h:36
@ MIP_DATA_DESC_FILTER_MAG_SCALE_FACTOR
Definition: data_filter.h:66
@ MIP_DATA_DESC_FILTER_ATT_UNCERTAINTY_QUATERNION
Definition: data_filter.h:52
@ MIP_DATA_DESC_FILTER_GNSS_ATT_AID_STATUS
Definition: data_filter.h:89
@ MIP_DATA_DESC_FILTER_MULTI_ANTENNA_OFFSET_CORRECTION
Definition: data_filter.h:81
@ MIP_DATA_DESC_FILTER_MAG_COMPENSATION_MATRIX_UNCERTAINTY
Definition: data_filter.h:72
@ MIP_DATA_DESC_FILTER_ACCEL_BIAS_UNCERTAINTY
Definition: data_filter.h:46
@ MIP_DATA_DESC_FILTER_AID_MEAS_SUMMARY
Definition: data_filter.h:91
@ MIP_DATA_DESC_FILTER_HEAD_AID_STATUS
Definition: data_filter.h:90
@ MIP_DATA_DESC_FILTER_WGS84_GRAVITY
Definition: data_filter.h:49
@ MIP_DATA_DESC_FILTER_ACCEL_SCALE_FACTOR_UNCERTAINTY
Definition: data_filter.h:59
@ MIP_DATA_DESC_FILTER_REL_POS_NED
Definition: data_filter.h:87
@ MIP_DATA_DESC_FILTER_MAG_RESIDUAL
Definition: data_filter.h:75
@ MIP_DATA_DESC_FILTER_MAG_BIAS
Definition: data_filter.h:60
@ MIP_DATA_DESC_FILTER_ANTENNA_OFFSET_CORRECTION_UNCERTAINTY
Definition: data_filter.h:78
@ MIP_DATA_DESC_FILTER_ECEF_POS_UNCERTAINTY
Definition: data_filter.h:83
@ MIP_DATA_DESC_FILTER_ODOMETER_SCALE_FACTOR_ERROR_UNCERTAINTY
Definition: data_filter.h:93
@ MIP_DATA_DESC_FILTER_FILTER_TIMESTAMP
Definition: data_filter.h:51
@ MIP_DATA_DESC_FILTER_COMPENSATED_ANGULAR_RATE
Definition: data_filter.h:48
@ MIP_DATA_DESC_FILTER_MAG_COMPENSATION_OFFSET
Definition: data_filter.h:68
@ MIP_DATA_DESC_FILTER_CLOCK_CORRECTION
Definition: data_filter.h:79
@ MIP_DATA_DESC_FILTER_ACCEL_BIAS
Definition: data_filter.h:41
@ MIP_DATA_DESC_FILTER_ATT_EULER_ANGLES
Definition: data_filter.h:39
@ MIP_DATA_DESC_FILTER_MAG_SCALE_FACTOR_UNCERTAINTY
Definition: data_filter.h:67
@ MIP_DATA_DESC_FILTER_POS_LLH
Definition: data_filter.h:35
@ MIP_FILTER_DATA_DESC_SET
Definition: data_filter.h:33
@ MIP_DATA_DESC_FILTER_ANTENNA_OFFSET_CORRECTION
Definition: data_filter.h:77
@ MIP_DATA_DESC_FILTER_VEL_UNCERTAINTY
Definition: data_filter.h:43
@ MIP_DATA_DESC_FILTER_MAG_BIAS_UNCERTAINTY
Definition: data_filter.h:61
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_filter_magnetometer_offset_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1161
bool extract_mip_filter_heading_update_state_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:676
bool extract_mip_filter_position_llh_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:318
bool extract_mip_filter_odometer_scale_factor_error_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1618
bool extract_mip_filter_accel_bias_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:434
bool extract_mip_filter_gyro_bias_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:260
bool extract_mip_filter_rel_pos_ned_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1434
bool extract_mip_filter_magnetometer_residual_vector_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1239
bool extract_mip_filter_accel_scale_factor_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:779
bool extract_mip_filter_ecef_pos_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1512
bool extract_mip_filter_comp_accel_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:568
bool extract_mip_filter_magnetometer_covariance_matrix_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1213
bool extract_mip_filter_head_aid_status_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1397
bool extract_mip_filter_antenna_offset_correction_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1023
bool extract_mip_filter_wgs84_gravity_mag_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:644
bool extract_mip_filter_status_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:490
bool extract_mip_filter_mag_bias_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:883
bool extract_mip_filter_accel_scale_factor_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:753
bool extract_mip_filter_euler_angles_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:234
bool extract_mip_filter_gnss_att_aid_status_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1367
bool extract_mip_filter_velocity_ned_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:150
bool extract_mip_filter_pressure_altitude_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:947
bool extract_mip_filter_attitude_dcm_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:202
bool extract_mip_filter_gyro_bias_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:408
bool extract_mip_filter_aiding_measurement_summary_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1570
bool extract_mip_filter_timestamp_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:462
bool extract_mip_filter_mag_bias_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:857
bool extract_mip_filter_density_altitude_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:971
bool extract_mip_filter_antenna_offset_correction_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:997
bool extract_mip_filter_clock_correction_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1303
bool extract_mip_filter_magnetometer_offset_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1109
bool extract_mip_filter_standard_atmosphere_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:923
bool extract_mip_filter_ecef_vel_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1538
bool extract_mip_filter_multi_antenna_offset_correction_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1083
bool extract_mip_filter_position_llh_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:118
bool extract_mip_filter_clock_correction_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1271
bool extract_mip_filter_attitude_quaternion_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:176
bool extract_mip_filter_magnetometer_matrix_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1187
bool extract_mip_filter_accel_bias_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:286
bool extract_mip_filter_gnss_dual_antenna_status_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1658
bool extract_mip_filter_linear_accel_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:516
bool extract_mip_filter_ecef_vel_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1486
bool extract_mip_filter_multi_antenna_offset_correction_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1053
bool extract_mip_filter_magnetic_model_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:727
bool extract_mip_filter_gyro_scale_factor_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:805
bool extract_mip_filter_velocity_ned_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:350
bool extract_mip_filter_euler_angles_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:382
bool extract_mip_filter_ecef_pos_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1460
bool extract_mip_filter_magnetometer_matrix_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1135
bool extract_mip_filter_quaternion_attitude_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:620
bool extract_mip_filter_odometer_scale_factor_error_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1594
bool extract_mip_filter_comp_angular_rate_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:594
bool extract_mip_filter_gnss_pos_aid_status_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:1337
bool extract_mip_filter_gyro_scale_factor_uncertainty_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:831
bool extract_mip_filter_gravity_vector_data_from_field(const mip_field *field, void *ptr)
Definition: data_filter.c:542
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_filter.h:354
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:356
float bias[3]
(x, y, z) [meters/second^2]
Definition: data_filter.h:355
float bias_uncert[3]
(x,y,z) [meters/second^2]
Definition: data_filter.h:457
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:458
Definition: data_filter.h:694
float scale_factor[3]
(x,y,z) [dimensionless]
Definition: data_filter.h:695
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:696
float scale_factor_uncert[3]
(x,y,z) [dimensionless]
Definition: data_filter.h:714
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:715
uint8_t source
Definition: data_filter.h:1280
mip_filter_aiding_measurement_type type
(see product manual for supported types)
Definition: data_filter.h:1281
float time_of_week
[seconds]
Definition: data_filter.h:1279
mip_filter_measurement_indicator indicator
Definition: data_filter.h:1282
float offset[3]
(x,y,z) [meters]
Definition: data_filter.h:877
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:878
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:897
float offset_uncert[3]
(x,y,z) [meters]
Definition: data_filter.h:896
Definition: data_filter.h:294
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:296
float dcm[9]
Matrix elements in row-major order.
Definition: data_filter.h:295
Definition: data_filter.h:265
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:267
float q[4]
Quaternion elements EQSTART q = (q_w, q_x, q_y, q_z) EQEND.
Definition: data_filter.h:266
Definition: data_filter.h:1073
float bias
[seconds]
Definition: data_filter.h:1075
float bias_drift
[seconds/second]
Definition: data_filter.h:1076
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:1077
uint8_t receiver_id
1, 2, etc.
Definition: data_filter.h:1074
float bias_drift_uncertainty
[seconds/second]
Definition: data_filter.h:1097
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:1098
float bias_uncertainty
[seconds]
Definition: data_filter.h:1096
uint8_t receiver_id
1, 2, etc.
Definition: data_filter.h:1095
Definition: data_filter.h:560
float accel[3]
(x,y,z) [meters/second^2]
Definition: data_filter.h:561
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:562
Definition: data_filter.h:579
float gyro[3]
(x, y, z) [radians/second]
Definition: data_filter.h:580
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:581
Definition: data_filter.h:855
float density_altitude
m
Definition: data_filter.h:856
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:857
Definition: data_filter.h:1202
double position_ecef[3]
[meters, ECEF]
Definition: data_filter.h:1203
uint16_t valid_flags
0 - invalid, 1 valid
Definition: data_filter.h:1204
Definition: data_filter.h:1240
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:1242
float pos_uncertainty[3]
[meters]
Definition: data_filter.h:1241
Definition: data_filter.h:1221
uint16_t valid_flags
0 - invalid, 1 valid
Definition: data_filter.h:1223
float velocity_ecef[3]
[meters/second, ECEF]
Definition: data_filter.h:1222
Definition: data_filter.h:1259
float vel_uncertainty[3]
[meters/second]
Definition: data_filter.h:1260
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:1261
Definition: data_filter.h:314
float yaw
[radians]
Definition: data_filter.h:317
float pitch
[radians]
Definition: data_filter.h:316
float roll
[radians]
Definition: data_filter.h:315
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:318
float pitch
[radians]
Definition: data_filter.h:418
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:420
float roll
[radians]
Definition: data_filter.h:417
float yaw
[radians]
Definition: data_filter.h:419
Definition: data_filter.h:1136
float time_of_week
Last valid aiding measurement time of week [seconds] [processed instead of measured?...
Definition: data_filter.h:1137
mip_gnss_aid_status_flags status
Last valid aiding measurement status bitfield.
Definition: data_filter.h:1138
uint8_t reserved[8]
Definition: data_filter.h:1139
float heading
[radians]
Definition: data_filter.h:1350
mip_filter_gnss_dual_antenna_status_data_dual_antenna_status_flags status_flags
Definition: data_filter.h:1353
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:1354
mip_filter_gnss_dual_antenna_status_data_fix_type fix_type
Fix type indicator.
Definition: data_filter.h:1352
float heading_unc
[radians]
Definition: data_filter.h:1351
float time_of_week
Last dual-antenna GNSS aiding measurement time of week [seconds].
Definition: data_filter.h:1349
Definition: data_filter.h:1115
mip_gnss_aid_status_flags status
Aiding measurement status bitfield.
Definition: data_filter.h:1118
uint8_t reserved[8]
Definition: data_filter.h:1119
uint8_t receiver_id
Definition: data_filter.h:1116
float time_of_week
Last GNSS aiding measurement time of week [seconds].
Definition: data_filter.h:1117
Definition: data_filter.h:541
float gravity[3]
(x, y, z) [meters/second^2]
Definition: data_filter.h:542
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:543
Definition: data_filter.h:335
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:337
float bias[3]
(x, y, z) [radians/second]
Definition: data_filter.h:336
float bias_uncert[3]
(x,y,z) [radians/sec]
Definition: data_filter.h:438
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:439
Definition: data_filter.h:732
float scale_factor[3]
(x,y,z) [dimensionless]
Definition: data_filter.h:733
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:734
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:753
float scale_factor_uncert[3]
(x,y,z) [dimensionless]
Definition: data_filter.h:752
Definition: data_filter.h:1160
float reserved[2]
Definition: data_filter.h:1163
mip_filter_head_aid_status_data_heading_aid_type type
1 - Dual antenna, 2 - External heading message (user supplied)
Definition: data_filter.h:1162
float time_of_week
Last valid aiding measurement time of week [seconds] [processed instead of measured?...
Definition: data_filter.h:1161
mip_filter_heading_update_state_data_heading_source source
Definition: data_filter.h:649
float heading_1sigma
[radians]
Definition: data_filter.h:648
float heading
[radians]
Definition: data_filter.h:647
uint16_t valid_flags
1 if a valid heading update was received in 2 seconds, 0 otherwise.
Definition: data_filter.h:650
Definition: data_filter.h:522
float accel[3]
(x,y,z) [meters/second^2]
Definition: data_filter.h:523
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:524
Definition: data_filter.h:770
float bias[3]
(x,y,z) [Gauss]
Definition: data_filter.h:771
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:772
float bias_uncert[3]
(x,y,z) [Gauss]
Definition: data_filter.h:790
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:791
Definition: data_filter.h:671
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:677
float inclination
[radians]
Definition: data_filter.h:675
float intensity_north
[Gauss]
Definition: data_filter.h:672
float intensity_down
[Gauss]
Definition: data_filter.h:674
float declination
[radians]
Definition: data_filter.h:676
float intensity_east
[Gauss]
Definition: data_filter.h:673
float covariance[9]
Definition: data_filter.h:1036
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:1037
Definition: data_filter.h:979
float soft_iron[9]
Row-major [dimensionless].
Definition: data_filter.h:980
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:981
float soft_iron_uncertainty[9]
Row-major [dimensionless].
Definition: data_filter.h:1018
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:1019
Definition: data_filter.h:958
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:960
float hard_iron[3]
(x,y,z) [Gauss]
Definition: data_filter.h:959
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:1000
float hard_iron_uncertainty[3]
(x,y,z) [Gauss]
Definition: data_filter.h:999
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:1056
float residual[3]
(x,y,z) [Gauss]
Definition: data_filter.h:1055
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:919
uint8_t receiver_id
Receiver ID for the receiver to which the antenna is attached.
Definition: data_filter.h:917
float offset[3]
(x,y,z) [meters]
Definition: data_filter.h:918
float offset_uncert[3]
(x,y,z) [meters]
Definition: data_filter.h:938
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:939
uint8_t receiver_id
Receiver ID for the receiver to which the antenna is attached.
Definition: data_filter.h:937
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:1301
float scale_factor_error
[dimensionless]
Definition: data_filter.h:1300
float scale_factor_error_uncertainty
[dimensionless]
Definition: data_filter.h:1319
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:1320
Definition: data_filter.h:215
double latitude
[degrees]
Definition: data_filter.h:216
double ellipsoid_height
[meters]
Definition: data_filter.h:218
uint16_t valid_flags
0 - Invalid, 1 - valid
Definition: data_filter.h:219
double longitude
[degrees]
Definition: data_filter.h:217
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:377
float east
[meters]
Definition: data_filter.h:375
float down
[meters]
Definition: data_filter.h:376
float north
[meters]
Definition: data_filter.h:374
Definition: data_filter.h:837
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:839
float pressure_altitude
[meters]
Definition: data_filter.h:838
float q[4]
[dimensionless]
Definition: data_filter.h:599
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:600
Definition: data_filter.h:1183
double relative_position[3]
[meters, NED]
Definition: data_filter.h:1184
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:1185
Definition: data_filter.h:810
float standard_pressure
[milliBar]
Definition: data_filter.h:814
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:816
float geopotential_altitude
[meters]
Definition: data_filter.h:812
float standard_temperature
[degC]
Definition: data_filter.h:813
float geometric_altitude
Input into calculation [meters].
Definition: data_filter.h:811
float standard_density
[kilogram/meter^3]
Definition: data_filter.h:815
Definition: data_filter.h:501
mip_filter_mode filter_state
Device-specific filter state. Please consult the user manual for definition.
Definition: data_filter.h:502
mip_filter_dynamics_mode dynamics_mode
Device-specific dynamics mode. Please consult the user manual for definition.
Definition: data_filter.h:503
mip_filter_status_flags status_flags
Device-specific status flags. Please consult the user manual for definition.
Definition: data_filter.h:504
Definition: data_filter.h:481
uint16_t week_number
GPS Week Number since 1980 [weeks].
Definition: data_filter.h:483
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:484
double tow
GPS Time of Week [seconds].
Definition: data_filter.h:482
Definition: data_filter.h:236
uint16_t valid_flags
0 - Invalid, 1 - valid
Definition: data_filter.h:240
float down
[meters/second]
Definition: data_filter.h:239
float north
[meters/second]
Definition: data_filter.h:237
float east
[meters/second]
Definition: data_filter.h:238
float north
[meters/second]
Definition: data_filter.h:395
float east
[meters/second]
Definition: data_filter.h:396
float down
[meters/second]
Definition: data_filter.h:397
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:398
Definition: data_filter.h:617
float magnitude
[meters/second^2]
Definition: data_filter.h:618
uint16_t valid_flags
0 - invalid, 1 - valid
Definition: data_filter.h:619
Structure used for serialization.
Definition: serialization.h:44