4 #include "../utils/serialization.h"
5 #include "../mip_interface.h"
31 insert_u8(serializer, self->source_desc_set);
42 extract_u8(serializer, &self->source_desc_set);
90 insert_u8(serializer, self->num_descriptors);
93 for(
unsigned int i=0; i <
self->num_descriptors; i++)
101 assert(self->num_descriptors);
102 extract_count(serializer, &self->num_descriptors,
sizeof(self->descriptors)/
sizeof(self->descriptors[0]));
104 for(
unsigned int i=0; i <
self->num_descriptors; i++)
119 assert(descriptors || (num_descriptors == 0));
120 for(
unsigned int i=0; i < num_descriptors; i++)
131 insert_u8(serializer, self->num_descriptors);
134 for(
unsigned int i=0; i <
self->num_descriptors; i++)
142 assert(self->num_descriptors);
143 extract_count(serializer, &self->num_descriptors,
sizeof(self->descriptors)/
sizeof(self->descriptors[0]));
145 for(
unsigned int i=0; i <
self->num_descriptors; i++)
160 assert(descriptors || (num_descriptors == 0));
161 for(
unsigned int i=0; i < num_descriptors; i++)
172 insert_u8(serializer, self->num_descriptors);
175 for(
unsigned int i=0; i <
self->num_descriptors; i++)
183 assert(self->num_descriptors);
184 extract_count(serializer, &self->num_descriptors,
sizeof(self->descriptors)/
sizeof(self->descriptors[0]));
186 for(
unsigned int i=0; i <
self->num_descriptors; i++)
201 assert(descriptors || (num_descriptors == 0));
202 for(
unsigned int i=0; i < num_descriptors; i++)
215 insert_u8(serializer, self->num_descriptors);
218 for(
unsigned int i=0; i <
self->num_descriptors; i++)
229 assert(self->num_descriptors);
230 extract_count(serializer, &self->num_descriptors,
sizeof(self->descriptors)/
sizeof(self->descriptors[0]));
232 for(
unsigned int i=0; i <
self->num_descriptors; i++)
240 insert_u8(serializer, self->num_descriptors);
243 for(
unsigned int i=0; i <
self->num_descriptors; i++)
249 assert(self->num_descriptors);
250 extract_count(serializer, &self->num_descriptors,
sizeof(self->descriptors)/
sizeof(self->descriptors[0]));
252 for(
unsigned int i=0; i <
self->num_descriptors; i++)
267 assert(descriptors || (num_descriptors == 0));
268 for(
unsigned int i=0; i < num_descriptors; i++)
285 uint8_t responseLength =
sizeof(buffer);
293 assert(num_descriptors_out);
294 extract_count(&deserializer, num_descriptors_out, num_descriptors_out_max);
296 assert(descriptors_out || (num_descriptors_out == 0));
297 for(
unsigned int i=0; i < *num_descriptors_out; i++)
347 insert_u8(serializer, self->num_descriptors);
350 for(
unsigned int i=0; i <
self->num_descriptors; i++)
361 assert(self->num_descriptors);
362 extract_count(serializer, &self->num_descriptors,
sizeof(self->descriptors)/
sizeof(self->descriptors[0]));
364 for(
unsigned int i=0; i <
self->num_descriptors; i++)
372 insert_u8(serializer, self->num_descriptors);
375 for(
unsigned int i=0; i <
self->num_descriptors; i++)
381 assert(self->num_descriptors);
382 extract_count(serializer, &self->num_descriptors,
sizeof(self->descriptors)/
sizeof(self->descriptors[0]));
384 for(
unsigned int i=0; i <
self->num_descriptors; i++)
399 assert(descriptors || (num_descriptors == 0));
400 for(
unsigned int i=0; i < num_descriptors; i++)
417 uint8_t responseLength =
sizeof(buffer);
425 assert(num_descriptors_out);
426 extract_count(&deserializer, num_descriptors_out, num_descriptors_out_max);
428 assert(descriptors_out || (num_descriptors_out == 0));
429 for(
unsigned int i=0; i < *num_descriptors_out; i++)
479 insert_u8(serializer, self->num_descriptors);
482 for(
unsigned int i=0; i <
self->num_descriptors; i++)
493 assert(self->num_descriptors);
494 extract_count(serializer, &self->num_descriptors,
sizeof(self->descriptors)/
sizeof(self->descriptors[0]));
496 for(
unsigned int i=0; i <
self->num_descriptors; i++)
504 insert_u8(serializer, self->num_descriptors);
507 for(
unsigned int i=0; i <
self->num_descriptors; i++)
513 assert(self->num_descriptors);
514 extract_count(serializer, &self->num_descriptors,
sizeof(self->descriptors)/
sizeof(self->descriptors[0]));
516 for(
unsigned int i=0; i <
self->num_descriptors; i++)
531 assert(descriptors || (num_descriptors == 0));
532 for(
unsigned int i=0; i < num_descriptors; i++)
549 uint8_t responseLength =
sizeof(buffer);
557 assert(num_descriptors_out);
558 extract_count(&deserializer, num_descriptors_out, num_descriptors_out_max);
560 assert(descriptors_out || (num_descriptors_out == 0));
561 for(
unsigned int i=0; i < *num_descriptors_out; i++)
608 uint8_t responseLength =
sizeof(buffer);
628 uint8_t responseLength =
sizeof(buffer);
648 uint8_t responseLength =
sizeof(buffer);
671 insert_u8(serializer, self->num_descriptors);
674 for(
unsigned int i=0; i <
self->num_descriptors; i++)
675 insert_u8(serializer, self->descriptors[i]);
684 assert(self->num_descriptors);
685 extract_count(serializer, &self->num_descriptors,
sizeof(self->descriptors)/
sizeof(self->descriptors[0]));
687 for(
unsigned int i=0; i <
self->num_descriptors; i++)
688 extract_u8(serializer, &self->descriptors[i]);
704 assert(descriptors || (num_descriptors == 0));
705 for(
unsigned int i=0; i < num_descriptors; i++)
748 uint8_t responseLength =
sizeof(buffer);
774 insert_u8(serializer, self->num_descriptors);
777 for(
unsigned int i=0; i <
self->num_descriptors; i++)
790 assert(self->num_descriptors);
791 extract_count(serializer, &self->num_descriptors,
sizeof(self->descriptors)/
sizeof(self->descriptors[0]));
793 for(
unsigned int i=0; i <
self->num_descriptors; i++)
803 insert_u8(serializer, self->num_descriptors);
806 for(
unsigned int i=0; i <
self->num_descriptors; i++)
814 assert(self->num_descriptors);
815 extract_count(serializer, &self->num_descriptors,
sizeof(self->descriptors)/
sizeof(self->descriptors[0]));
817 for(
unsigned int i=0; i <
self->num_descriptors; i++)
834 assert(descriptors || (num_descriptors == 0));
835 for(
unsigned int i=0; i < num_descriptors; i++)
854 uint8_t responseLength =
sizeof(buffer);
864 assert(num_descriptors_out);
865 extract_count(&deserializer, num_descriptors_out, num_descriptors_out_max);
867 assert(descriptors_out || (num_descriptors_out == 0));
868 for(
unsigned int i=0; i < *num_descriptors_out; i++)
925 for(
unsigned int i=0; i <
self->count; i++)
934 extract_count(serializer, &self->count,
sizeof(self->format_entries)/
sizeof(self->format_entries[0]));
936 for(
unsigned int i=0; i <
self->count; i++)
951 assert(format_entries || (count == 0));
952 for(
unsigned int i=0; i < count; i++)
968 for(
unsigned int i=0; i <
self->count; i++)
980 extract_count(serializer, &self->count,
sizeof(self->format_entries)/
sizeof(self->format_entries[0]));
982 for(
unsigned int i=0; i <
self->count; i++)
993 for(
unsigned int i=0; i <
self->count; i++)
1000 extract_count(serializer, &self->count,
sizeof(self->format_entries)/
sizeof(self->format_entries[0]));
1002 for(
unsigned int i=0; i <
self->count; i++)
1017 assert(format_entries || (count == 0));
1018 for(
unsigned int i=0; i < count; i++)
1035 uint8_t responseLength =
sizeof(buffer);
1046 assert(format_entries_out || (count_out == 0));
1047 for(
unsigned int i=0; i < *count_out; i++)
1194 uint8_t responseLength =
sizeof(buffer);
1354 uint8_t responseLength =
sizeof(buffer);
1364 assert(enabled_out);
1422 insert_u8(serializer, self->config_count);
1425 for(
unsigned int i=0; i <
self->config_count; i++)
1438 assert(self->config_count);
1439 extract_count(serializer, &self->config_count,
sizeof(self->settings)/
sizeof(self->settings[0]));
1441 for(
unsigned int i=0; i <
self->config_count; i++)
1449 insert_u16(serializer, self->max_channels_available);
1451 insert_u16(serializer, self->max_channels_use);
1453 insert_u8(serializer, self->config_count);
1456 for(
unsigned int i=0; i <
self->config_count; i++)
1462 extract_u16(serializer, &self->max_channels_available);
1466 assert(self->config_count);
1467 extract_count(serializer, &self->config_count,
sizeof(self->settings)/
sizeof(self->settings[0]));
1469 for(
unsigned int i=0; i <
self->config_count; i++)
1502 insert_u8(serializer, self->reserved_channels);
1504 insert_u8(serializer, self->max_channels);
1515 extract_u8(serializer, &self->reserved_channels);
1535 assert(settings || (config_count == 0));
1536 for(
unsigned int i=0; i < config_count; i++)
1553 uint8_t responseLength =
sizeof(buffer);
1561 assert(max_channels_available_out);
1562 extract_u16(&deserializer, max_channels_available_out);
1564 assert(max_channels_use_out);
1567 assert(config_count_out);
1568 extract_count(&deserializer, config_count_out, config_count_out_max);
1570 assert(settings_out || (config_count_out == 0));
1571 for(
unsigned int i=0; i < *config_count_out; i++)
1621 insert_u8(serializer, self->enable_sbas);
1625 insert_u8(serializer, self->num_included_prns);
1628 for(
unsigned int i=0; i <
self->num_included_prns; i++)
1629 insert_u16(serializer, self->included_prns[i]);
1643 assert(self->num_included_prns);
1644 extract_count(serializer, &self->num_included_prns,
sizeof(self->included_prns)/
sizeof(self->included_prns[0]));
1646 for(
unsigned int i=0; i <
self->num_included_prns; i++)
1654 insert_u8(serializer, self->enable_sbas);
1658 insert_u8(serializer, self->num_included_prns);
1661 for(
unsigned int i=0; i <
self->num_included_prns; i++)
1662 insert_u16(serializer, self->included_prns[i]);
1671 assert(self->num_included_prns);
1672 extract_count(serializer, &self->num_included_prns,
sizeof(self->included_prns)/
sizeof(self->included_prns[0]));
1674 for(
unsigned int i=0; i <
self->num_included_prns; i++)
1702 insert_u8(&serializer, num_included_prns);
1704 assert(included_prns || (num_included_prns == 0));
1705 for(
unsigned int i=0; i < num_included_prns; i++)
1722 uint8_t responseLength =
sizeof(buffer);
1730 assert(enable_sbas_out);
1733 assert(sbas_options_out);
1736 assert(num_included_prns_out);
1737 extract_count(&deserializer, num_included_prns_out, num_included_prns_out_max);
1739 assert(included_prns_out || (num_included_prns_out == 0));
1740 for(
unsigned int i=0; i < *num_included_prns_out; i++)
1741 extract_u16(&deserializer, &included_prns_out[i]);
1861 uint8_t responseLength =
sizeof(buffer);
1992 uint8_t responseLength =
sizeof(buffer);
2003 assert(week_number_out);
2006 assert(accuracy_out);
2018 insert_u8(serializer, self->target_descriptor);
2036 extract_u8(serializer, &self->target_descriptor);
2053 insert_u8(serializer, self->target_descriptor);
2066 extract_u8(serializer, &self->target_descriptor);
2086 insert_u8(&serializer, target_descriptor);
2108 insert_u8(&serializer, target_descriptor);
2112 uint8_t responseLength =
sizeof(buffer);
2120 extract_u8(&deserializer, &target_descriptor);
2128 assert(frequency_out);
2131 assert(reserved_out);
2147 insert_u8(&serializer, target_descriptor);
2161 insert_u8(&serializer, target_descriptor);
2175 insert_u8(&serializer, target_descriptor);
2248 uint8_t responseLength =
sizeof(buffer);
2421 uint8_t responseLength =
sizeof(buffer);
2431 assert(feature_out);
2434 assert(behavior_out);
2437 assert(pin_mode_out);
2561 uint8_t responseLength =
sizeof(buffer);
2666 uint8_t responseLength =
sizeof(buffer);
2677 assert(scaling_out);
2680 assert(uncertainty_out);
2739 insert_u8(serializer, self->max_instances);
2741 insert_u8(serializer, self->num_entries);
2744 for(
unsigned int i=0; i <
self->num_entries; i++)
2752 extract_u8(serializer, &self->max_instances);
2754 assert(self->num_entries);
2755 extract_count(serializer, &self->num_entries,
sizeof(self->entries)/
sizeof(self->entries[0]));
2757 for(
unsigned int i=0; i <
self->num_entries; i++)
2798 uint8_t responseLength =
sizeof(buffer);
2808 assert(max_instances_out);
2809 extract_u8(&deserializer, max_instances_out);
2811 assert(num_entries_out);
2812 extract_count(&deserializer, num_entries_out, num_entries_out_max);
2814 assert(entries_out || (num_entries_out == 0));
2815 for(
unsigned int i=0; i < *num_entries_out; i++)
2902 uint8_t responseLength =
sizeof(buffer);
2964 insert_u8(serializer, self->requested_count);
2967 for(
unsigned int i=0; i <
self->requested_count; i++)
2968 insert_u8(serializer, self->requested_instances[i]);
2973 assert(self->requested_count);
2974 extract_count(serializer, &self->requested_count,
sizeof(self->requested_instances)/
sizeof(self->requested_instances[0]));
2976 for(
unsigned int i=0; i <
self->requested_count; i++)
2977 extract_u8(serializer, &self->requested_instances[i]);
2986 for(
unsigned int i=0; i <
self->count; i++)
2992 assert(self->count);
2993 extract_count(serializer, &self->count,
sizeof(self->triggers)/
sizeof(self->triggers[0]));
2995 for(
unsigned int i=0; i <
self->count; i++)
3032 insert_u8(&serializer, requested_count);
3034 assert(requested_instances || (requested_count == 0));
3035 for(
unsigned int i=0; i < requested_count; i++)
3036 insert_u8(&serializer, requested_instances[i]);
3040 uint8_t responseLength =
sizeof(buffer);
3051 assert(triggers_out || (count_out == 0));
3052 for(
unsigned int i=0; i < *count_out; i++)
3062 insert_u8(serializer, self->requested_count);
3065 for(
unsigned int i=0; i <
self->requested_count; i++)
3066 insert_u8(serializer, self->requested_instances[i]);
3071 assert(self->requested_count);
3072 extract_count(serializer, &self->requested_count,
sizeof(self->requested_instances)/
sizeof(self->requested_instances[0]));
3074 for(
unsigned int i=0; i <
self->requested_count; i++)
3075 extract_u8(serializer, &self->requested_instances[i]);
3084 for(
unsigned int i=0; i <
self->count; i++)
3090 assert(self->count);
3091 extract_count(serializer, &self->count,
sizeof(self->actions)/
sizeof(self->actions[0]));
3093 for(
unsigned int i=0; i <
self->count; i++)
3100 insert_u8(serializer, self->action_type);
3102 insert_u8(serializer, self->trigger_id);
3119 insert_u8(&serializer, requested_count);
3121 assert(requested_instances || (requested_count == 0));
3122 for(
unsigned int i=0; i < requested_count; i++)
3123 insert_u8(&serializer, requested_instances[i]);
3127 uint8_t responseLength =
sizeof(buffer);
3138 assert(actions_out || (count_out == 0));
3139 for(
unsigned int i=0; i < *count_out; i++)
3277 insert_u8(serializer, self->field_desc);
3351 for(
unsigned int i=0; i < 4; i++)
3352 insert_u8(serializer, self->input_triggers[i]);
3359 for(
unsigned int i=0; i < 4; i++)
3360 extract_u8(serializer, &self->input_triggers[i]);
3418 uint8_t responseLength =
sizeof(buffer);
3613 insert_u8(serializer, self->num_fields);
3616 for(
unsigned int i=0; i <
self->num_fields; i++)
3617 insert_u8(serializer, self->descriptors[i]);
3626 assert(self->num_fields);
3627 extract_count(serializer, &self->num_fields,
sizeof(self->descriptors)/
sizeof(self->descriptors[0]));
3629 for(
unsigned int i=0; i <
self->num_fields; i++)
3630 extract_u8(serializer, &self->descriptors[i]);
3685 uint8_t responseLength =
sizeof(buffer);
3695 assert(trigger_out);
3764 for(
unsigned int i=0; i < 3; i++)
3775 for(
unsigned int i=0; i < 3; i++)
3783 for(
unsigned int i=0; i < 3; i++)
3789 for(
unsigned int i=0; i < 3; i++)
3802 assert(bias || (3 == 0));
3803 for(
unsigned int i=0; i < 3; i++)
3820 uint8_t responseLength =
sizeof(buffer);
3828 assert(bias_out || (3 == 0));
3829 for(
unsigned int i=0; i < 3; i++)
3879 for(
unsigned int i=0; i < 3; i++)
3890 for(
unsigned int i=0; i < 3; i++)
3898 for(
unsigned int i=0; i < 3; i++)
3904 for(
unsigned int i=0; i < 3; i++)
3917 assert(bias || (3 == 0));
3918 for(
unsigned int i=0; i < 3; i++)
3935 uint8_t responseLength =
sizeof(buffer);
3943 assert(bias_out || (3 == 0));
3944 for(
unsigned int i=0; i < 3; i++)
3990 insert_u16(serializer, self->averaging_time_ms);
3995 extract_u16(serializer, &self->averaging_time_ms);
4001 for(
unsigned int i=0; i < 3; i++)
4007 for(
unsigned int i=0; i < 3; i++)
4022 uint8_t responseLength =
sizeof(buffer);
4030 assert(bias_out || (3 == 0));
4031 for(
unsigned int i=0; i < 3; i++)
4045 for(
unsigned int i=0; i < 3; i++)
4056 for(
unsigned int i=0; i < 3; i++)
4064 for(
unsigned int i=0; i < 3; i++)
4070 for(
unsigned int i=0; i < 3; i++)
4083 assert(offset || (3 == 0));
4084 for(
unsigned int i=0; i < 3; i++)
4101 uint8_t responseLength =
sizeof(buffer);
4109 assert(offset_out || (3 == 0));
4110 for(
unsigned int i=0; i < 3; i++)
4160 for(
unsigned int i=0; i < 9; i++)
4171 for(
unsigned int i=0; i < 9; i++)
4179 for(
unsigned int i=0; i < 9; i++)
4185 for(
unsigned int i=0; i < 9; i++)
4198 assert(offset || (9 == 0));
4199 for(
unsigned int i=0; i < 9; i++)
4216 uint8_t responseLength =
sizeof(buffer);
4224 assert(offset_out || (9 == 0));
4225 for(
unsigned int i=0; i < 9; i++)
4325 uint8_t responseLength =
sizeof(buffer);
4453 uint8_t responseLength =
sizeof(buffer);
4517 for(
unsigned int i=0; i < 4; i++)
4528 for(
unsigned int i=0; i < 4; i++)
4536 for(
unsigned int i=0; i < 4; i++)
4542 for(
unsigned int i=0; i < 4; i++)
4555 assert(q || (4 == 0));
4556 for(
unsigned int i=0; i < 4; i++)
4573 uint8_t responseLength =
sizeof(buffer);
4581 assert(q_out || (4 == 0));
4582 for(
unsigned int i=0; i < 4; i++)
4632 for(
unsigned int i=0; i < 9; i++)
4643 for(
unsigned int i=0; i < 9; i++)
4651 for(
unsigned int i=0; i < 9; i++)
4657 for(
unsigned int i=0; i < 9; i++)
4670 assert(dcm || (9 == 0));
4671 for(
unsigned int i=0; i < 9; i++)
4688 uint8_t responseLength =
sizeof(buffer);
4696 assert(dcm_out || (9 == 0));
4697 for(
unsigned int i=0; i < 9; i++)
4751 insert_float(serializer, self->pitch_roll_time_constant);
4780 insert_float(serializer, self->pitch_roll_time_constant);
4827 uint8_t responseLength =
sizeof(buffer);
4835 assert(pitch_roll_enable_out);
4838 assert(heading_enable_out);
4841 assert(pitch_roll_time_constant_out);
4844 assert(heading_time_constant_out);
4956 uint8_t responseLength =
sizeof(buffer);
4966 assert(setting_out);
5031 insert_u8(serializer, self->num_ranges);
5034 for(
unsigned int i=0; i <
self->num_ranges; i++)
5042 assert(self->num_ranges);
5043 extract_count(serializer, &self->num_ranges,
sizeof(self->ranges)/
sizeof(self->ranges[0]));
5045 for(
unsigned int i=0; i <
self->num_ranges; i++)
5075 uint8_t responseLength =
sizeof(buffer);
5085 assert(num_ranges_out);
5086 extract_count(&deserializer, num_ranges_out, num_ranges_out_max);
5088 assert(ranges_out || (num_ranges_out == 0));
5089 for(
unsigned int i=0; i < *num_ranges_out; i++)
5103 insert_u8(serializer, self->field_desc);
5138 insert_u8(serializer, self->field_desc);
5197 uint8_t responseLength =
sizeof(buffer);
5215 assert(frequency_out);
5276 #endif // __cplusplus