cat021.h
Go to the documentation of this file.
1 /*
2  * libasterix
3  * Copyright [2013-2021] SinoATC <http://www.sinoatc.com>.
4  * All Rights Reserved.
5  *
6  * NOTICE: All information contained herein is, and remains
7  * the property of SinoATC and its suppliers, if any.
8  * The intellectual and technical concepts contained herein
9  * are proprietary to Aerosys Corporation and its suppliers and may be
10  * covered by U.S. and Foreign Patents, patents in process,
11  * and are protected by trade secret or copyright law.
12  * Dissemination of this information or reproduction of this material
13  * is strictly forbidden unless prior written permission is obtained
14  * from SinoATC.
15  */
16 
33 #ifndef LIBASTERIX_CAT021_H
34 #define LIBASTERIX_CAT021_H
35 
36 #include "dataitem.h"
37 #include "datarecord.h"
38 #include "cat_generic.h"
39 #include "subfield.h"
40 
41 #ifdef __cplusplus
42 extern "C" {
43 #endif
44 
45 // Data Item
46 
49 
50 
56 typedef enum _ast_ac_trajectory_report_capability_t
57 {
62 
64 typedef struct _ast_dataitem_021_008_t
65 {
66  bool valid;
67 
76 
78 #define ast_dataitem_021_008_get_size ast_dataitem_get_size_fixed_1_byte
79 
82 
84 AST_API void ast_dataitem_021_008_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
85 
87 AST_API void ast_dataitem_021_008_get_detail_html(char* detail, const size_t detail_size, const ast_dataitem_t di);
88 
89 
99 
101 #define ast_dataitem_021_010_get_size ast_dataitem_data_source_identifier_get_size
102 
104 #define ast_dataitem_021_010_decode ast_dataitem_data_source_identifier_decode
105 
107 #define ast_dataitem_021_010_encode ast_dataitem_data_source_identifier_encode
108 
110 #define ast_dataitem_021_010_get_summary ast_dataitem_data_source_identifier_get_summary
111 
113 #define ast_dataitem_021_010_get_detail_html ast_dataitem_data_source_identifier_get_detail_html
114 
125 
127 #define ast_dataitem_021_015_get_size ast_dataitem_service_id_get_size
128 
130 #define ast_dataitem_021_015_decode ast_dataitem_service_id_decode
131 
133 #define ast_dataitem_021_015_encode ast_dataitem_service_id_encode
134 
136 #define ast_dataitem_021_015_get_summary ast_dataitem_service_id_get_summary
137 
139 #define ast_dataitem_021_015_get_detail_html ast_dataitem_service_id_get_detail_html
140 
149 typedef struct _ast_dataitem_021_016_t
151 {
152  bool valid;
153 
154  double report_period;
155  unsigned int raw_report_period;
157 
159 #define ast_dataitem_021_016_get_size ast_dataitem_get_size_fixed_1_byte
160 
163 
165 AST_API void ast_dataitem_021_016_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
166 
168 #define ast_dataitem_021_016_get_detail_html ast_dataitem_get_detail_html_dummy;
169 
178 typedef enum _ast_emitter_category_t
179 {
199 
200 
202 typedef struct _ast_dataitem_021_020_t
203 {
204  bool valid;
205 
208 
210 #define ast_dataitem_021_020_get_size ast_dataitem_get_size_fixed_1_byte
211 
214 
216 ast_dataitem_t ast_dataitem_021_020_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
217 
219 AST_API void ast_dataitem_021_020_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
220 
222 AST_API void ast_dataitem_021_020_get_detail_html(char* detail, const size_t detail_size, const ast_dataitem_t di);
223 
233 #define ast_dataitem_021_030_get_size ast_dataitem_time_of_day_get_size
234 #define ast_dataitem_021_030_decode ast_dataitem_time_of_day_decode
235 #define ast_dataitem_021_030_encode ast_dataitem_time_of_day_encode
236 #define ast_dataitem_021_030_get_summary ast_dataitem_time_of_day_get_summary
237 #define ast_dataitem_021_030_get_detail_html ast_dataitem_time_of_day_get_detail_html
238 
247 typedef struct _ast_dataitem_021_032_t
249 {
250  bool valid;
251 
252  int raw_diff;
254 
256 #define ast_dataitem_021_032_get_size ast_dataitem_get_size_fixed_1_byte
257 
260 
262 AST_API void ast_dataitem_021_032_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
263 
265 AST_API void ast_dataitem_021_032_get_detail_html(char* detail, const size_t detail_size, const ast_dataitem_t di);
266 
275 typedef enum _ast_adsb_addr_type_t
276 {
283 
284 typedef enum _ast_adsb_altitude_capability_t
285 {
291 
292 typedef enum _ast_adsb_confidence_level_t
293 {
299 
301 typedef struct _ast_dataitem_021_040_t
302 {
303  bool valid;
304 
310  bool ground;
311  bool simulated;
312  bool test;
317  bool nogo;
322 
324 #define ast_dataitem_021_040_get_size ast_dataitem_get_size_var_3_byte
325 
328 
330 ast_dataitem_t ast_dataitem_021_040_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
331 
333 AST_API void ast_dataitem_021_040_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
334 
336 AST_API void ast_dataitem_021_040_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
337 
346 typedef struct _ast_dataitem_021_A03_t
348 {
349  bool valid;
350 
352  bool ground;
353  bool simulated;
354  bool test;
357  bool spi;
361 
363 #define ast_dataitem_021_A03_get_size ast_dataitem_get_size_fixed_2_byte
364 
367 
369 ast_dataitem_t ast_dataitem_021_A03_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
370 
372 AST_API void ast_dataitem_021_A03_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
373 
375 AST_API void ast_dataitem_021_A03_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
376 
387 
389 #define ast_dataitem_021_070_get_size ast_dataitem_mode_3a_code_get_size
390 
392 #define ast_dataitem_021_070_decode ast_dataitem_mode_3a_code_decode
393 
395 #define ast_dataitem_021_070_encode ast_dataitem_mode_3a_code_encode
396 
398 #define ast_dataitem_021_070_get_summary ast_dataitem_mode_3a_code_get_summary
399 
401 #define ast_dataitem_021_070_get_detail_html ast_dataitem_mode_3a_code_get_detail_html
402 
412 
414 #define ast_dataitem_021_071_get_size ast_dataitem_time_of_day_get_size
415 
417 #define ast_dataitem_021_071_decode ast_dataitem_time_of_day_decode
418 
420 #define ast_dataitem_021_071_encode ast_dataitem_time_of_day_encode
421 
423 #define ast_dataitem_021_071_get_summary ast_dataitem_time_of_day_get_summary
424 
426 #define ast_dataitem_021_071_get_detail_html ast_dataitem_time_of_day_get_detail_html
427 
437 
439 #define ast_dataitem_021_072_get_size ast_dataitem_time_of_day_get_size
440 
442 #define ast_dataitem_021_072_decode ast_dataitem_time_of_day_decode
443 
445 #define ast_dataitem_021_072_encode ast_dataitem_time_of_day_encode
446 
448 #define ast_dataitem_021_072_get_summary ast_dataitem_time_of_day_get_summary
449 
451 #define ast_dataitem_021_072_get_detail_html ast_dataitem_time_of_day_get_detail_html
452 
462 
464 #define ast_dataitem_021_073_get_size ast_dataitem_time_of_day_get_size
465 
467 #define ast_dataitem_021_073_decode ast_dataitem_time_of_day_decode
468 
470 #define ast_dataitem_021_073_encode ast_dataitem_time_of_day_encode
471 
473 #define ast_dataitem_021_073_get_summary ast_dataitem_time_of_day_get_summary
474 
476 #define ast_dataitem_021_073_get_detail_html ast_dataitem_time_of_day_get_detail_html
477 
488 
490 #define ast_dataitem_021_074_get_size ast_dataitem_time_of_day_high_get_size
491 
493 #define ast_dataitem_021_074_decode ast_dataitem_time_of_day_high_decode
494 
496 #define ast_dataitem_021_074_get_summary ast_dataitem_time_of_day_high_get_summary
497 
499 #define ast_dataitem_021_074_get_detail_html ast_dataitem_time_of_day_high_get_detail_html
500 
511 
513 #define ast_dataitem_021_075_get_size ast_dataitem_time_of_day_get_size
514 
516 #define ast_dataitem_021_075_decode ast_dataitem_time_of_day_decode
517 
519 #define ast_dataitem_021_075_encode ast_dataitem_time_of_day_encode
520 
522 #define ast_dataitem_021_075_get_summary ast_dataitem_time_of_day_get_summary
523 
525 #define ast_dataitem_021_075_get_detail_html ast_dataitem_time_of_day_get_detail_html
526 
537 
539 #define ast_dataitem_021_076_get_size ast_dataitem_time_of_day_high_get_size
540 
542 #define ast_dataitem_021_076_decode ast_dataitem_time_of_day_high_decode
543 
545 #define ast_dataitem_021_076_get_summary ast_dataitem_time_of_day_high_get_summary
546 
548 #define ast_dataitem_021_076_get_detail_html ast_dataitem_time_of_day_high_get_detail_html
549 
560 
562 #define ast_dataitem_021_077_get_size ast_dataitem_time_of_day_get_size
563 
565 #define ast_dataitem_021_077_decode ast_dataitem_time_of_day_decode
566 
568 #define ast_dataitem_021_077_encode ast_dataitem_time_of_day_encode
569 
571 #define ast_dataitem_021_077_get_summary ast_dataitem_time_of_day_get_summary
572 
574 #define ast_dataitem_021_077_get_detail_html ast_dataitem_time_of_day_get_detail_html
575 
586 
588 #define ast_dataitem_021_080_get_size ast_dataitem_target_address_get_size
589 
591 #define ast_dataitem_021_080_decode ast_dataitem_target_address_decode
592 
594 #define ast_dataitem_021_080_encode ast_dataitem_target_address_encode
595 
597 #define ast_dataitem_021_080_get_summary ast_dataitem_target_address_get_summary
598 
600 #define ast_dataitem_021_080_get_detail_html ast_dataitem_target_address_get_detail_html
601 
610 typedef struct _ast_dataitem_021_090_t
612 {
613  bool valid;
614 
615  unsigned int nuc_r;
616  unsigned int nuc_p;
617  unsigned int nic_baro;
618  unsigned int sil;
619  unsigned int nac_p;
620  unsigned int sil_s;
621  unsigned int sda;
622  unsigned int gva;
623  unsigned int pic;
625 
627 #define ast_dataitem_021_090_get_size ast_dataitem_get_size_var_4_byte
628 
631 
633 AST_API ast_dataitem_t ast_dataitem_021_090_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
634 
636 AST_API void ast_dataitem_021_090_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
637 
639 AST_API void ast_dataitem_021_090_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
640 
649 typedef enum _ast_acas_status_t
650 {
656 
657 typedef enum _ast_multi_navi_aids_status_t
658 {
664 
665 typedef enum _ast_diff_correction_status_t
666 {
672 
674 typedef struct _ast_dataitem_021_A05_t
675 {
676  bool valid;
677 
683 
685 #define ast_dataitem_021_A05_get_size ast_dataitem_get_size_fixed_2_byte
686 
689 
691 AST_API ast_dataitem_t ast_dataitem_021_A05_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
692 
694 AST_API void ast_dataitem_021_A05_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
695 
697 AST_API void ast_dataitem_021_A05_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
698 
707 typedef struct _ast_dataitem_021_095_t
709 {
710  bool valid;
711 
714 
716 #define ast_dataitem_021_095_get_size ast_dataitem_get_size_fixed_1_byte
717 
720 
722 AST_API ast_dataitem_t ast_dataitem_021_095_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
723 
725 AST_API void ast_dataitem_021_095_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
726 
728 #define ast_dataitem_021_095_get_detail_html ast_dataitem_get_detail_html_dummy
729 
738 size_t ast_dataitem_021_110_get_size(const unsigned char* buffer, const size_t bufsize);
740 
741 // Decode function of dataitem
742 //ast_dataitem_021_110_t ast_dataitem_021_110_decode(const ast_dataitem_t di);
743 
745 #define ast_dataitem_021_110_get_summary ast_dataitem_subfields_get_summary
746 
748 #define ast_dataitem_021_110_get_detail_html ast_dataitem_subfields_get_detail_html
749 
751 AST_API size_t ast_subfield_021_110_get_size(const unsigned char* buffer, const size_t bufsize, const ast_subfield_type_t type);
752 
755 
758 
760 AST_API void ast_subfield_021_110_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di, const ast_subfield_type_t type);
761 
763 AST_API void ast_subfield_021_110_get_detail_html(char* detail, const size_t detail_size, const ast_dataitem_t di, const ast_subfield_type_t type);
764 
775 
777 #define ast_dataitem_021_130_get_size ast_dataitem_position_wgs84_low_get_size
778 
780 #define ast_dataitem_021_130_decode ast_dataitem_position_wgs84_low_decode
781 
783 #define ast_dataitem_021_130_encode ast_dataitem_position_wgs84_low_encode
784 
786 #define ast_dataitem_021_130_get_summary ast_dataitem_position_wgs84_low_get_summary
787 
789 #define ast_dataitem_021_130_get_detail_html ast_dataitem_position_wgs84_low_get_detail_html
790 
801 
803 #define ast_dataitem_021_A02_get_size ast_dataitem_position_wgs84_get_size
804 
806 #define ast_dataitem_021_A02_decode ast_dataitem_position_wgs84_decode
807 
809 #define ast_dataitem_021_A02_encode ast_dataitem_position_wgs84_encode
810 
812 #define ast_dataitem_021_A02_get_summary ast_dataitem_position_wgs84_get_summary
813 
815 #define ast_dataitem_021_A02_get_detail_html ast_dataitem_position_wgs84_get_detail_html
816 
827 
829 #define ast_dataitem_021_131_get_size ast_dataitem_position_wgs84_get_size
830 
832 #define ast_dataitem_021_131_decode ast_dataitem_position_wgs84_decode
833 
835 #define ast_dataitem_021_131_encode ast_dataitem_position_wgs84_encode
836 
838 #define ast_dataitem_021_131_get_summary ast_dataitem_position_wgs84_get_summary
839 
841 #define ast_dataitem_021_131_get_detail_html ast_dataitem_position_wgs84_get_detail_html
842 
853 
855 #define ast_dataitem_021_A04_get_size ast_dataitem_signal_amplitude_get_size
856 
858 #define ast_dataitem_021_A04_decode ast_dataitem_signal_amplitude_decode
859 
861 #define ast_dataitem_021_A04_encode ast_dataitem_signal_amplitude_encode
862 
864 #define ast_dataitem_021_A04_get_summary ast_dataitem_signal_amplitude_get_summary
865 
867 #define ast_dataitem_021_A04_get_detail_html ast_dataitem_signal_amplitude_get_detail_html
868 
879 
881 #define ast_dataitem_021_132_get_size ast_dataitem_signal_amplitude_get_size
882 
884 #define ast_dataitem_021_132_decode ast_dataitem_signal_amplitude_decode
885 
887 #define ast_dataitem_021_132_encode ast_dataitem_signal_amplitude_encode
888 
890 #define ast_dataitem_021_132_get_summary ast_dataitem_signal_amplitude_get_summary
891 
893 #define ast_dataitem_021_132_get_detail_html ast_dataitem_signal_amplitude_get_detail_html
894 
903 typedef struct _ast_dataitem_021_140_t
905 {
906  bool valid;
907 
910 
912 #define ast_dataitem_021_140_get_size ast_dataitem_get_size_fixed_2_byte
913 
916 
918 AST_API void ast_dataitem_021_140_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
919 
921 AST_API void ast_dataitem_021_140_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
922 
931 typedef struct _ast_dataitem_021_145_t
933 {
934  bool valid;
935 
936  int raw_level;
938 
940 #define ast_dataitem_021_145_get_size ast_dataitem_get_size_fixed_2_byte
941 
944 
946 AST_API ast_dataitem_t ast_dataitem_021_145_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
947 
949 void ast_dataitem_021_145_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
950 
952 void ast_dataitem_021_145_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
953 
961 typedef enum _ast_adsb_sas_type_t
962 {
968 
970 typedef struct _ast_dataitem_021_146_t
971 {
972  bool valid;
973 
978 
980 #define ast_dataitem_021_146_get_size ast_dataitem_get_size_fixed_2_byte
981 
984 
986 AST_API void ast_dataitem_021_146_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
987 
989 AST_API void ast_dataitem_021_146_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
990 
998 #define ast_dataitem_021_148_get_size ast_dataitem_get_size_fixed_2_byte
1000 
1008 typedef struct _ast_dataitem_021_150_t
1010 {
1011  bool valid;
1012 
1014 
1017 
1019  double mach;
1020 
1022 
1024 #define ast_dataitem_021_150_get_size ast_dataitem_get_size_fixed_2_byte
1025 
1028 
1030 AST_API void ast_dataitem_021_150_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1031 
1033 AST_API void ast_dataitem_021_150_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
1034 
1043 typedef struct _ast_dataitem_021_151_t
1045 {
1046  bool valid;
1047 
1050 
1052 #define ast_dataitem_021_151_get_size ast_dataitem_get_size_fixed_2_byte
1053 
1056 
1058 AST_API void ast_dataitem_021_151_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1059 
1061 AST_API void ast_dataitem_021_151_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
1062 
1071 typedef struct _ast_dataitem_021_152_t
1073 {
1074  bool valid;
1075 
1077  double heading;
1079 
1081 #define ast_dataitem_021_152_get_size ast_dataitem_get_size_fixed_2_byte
1082 
1085 
1087 AST_API void ast_dataitem_021_152_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1088 
1090 AST_API void ast_dataitem_021_152_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
1091 
1092 
1103 
1105 #define ast_dataitem_021_155_get_size ast_dataitem_vertical_rate_get_size
1106 
1108 #define ast_dataitem_021_155_decode ast_dataitem_vertical_rate_decode
1109 
1111 #define ast_dataitem_021_155_encode ast_dataitem_vertical_rate_encode
1112 
1114 #define ast_dataitem_021_155_get_summary ast_dataitem_vertical_rate_get_summary
1115 
1117 #define ast_dataitem_021_155_get_detail_html ast_dataitem_vertical_rate_get_detail_html
1118 
1129 
1131 #define ast_dataitem_021_157_get_size ast_dataitem_vertical_rate_get_size
1132 
1134 #define ast_dataitem_021_157_decode ast_dataitem_vertical_rate_decode
1135 
1137 #define ast_dataitem_021_157_encode ast_dataitem_vertical_rate_encode
1138 
1140 #define ast_dataitem_021_157_get_summary ast_dataitem_vertical_rate_get_summary
1141 
1143 #define ast_dataitem_021_157_get_detail_html ast_dataitem_vertical_rate_get_detail_html
1144 
1153 typedef struct _ast_dataitem_021_160_t
1155 {
1156  bool valid;
1157 
1159 
1161  double ground_speed;
1162 
1164  double track_angle;
1166 
1168 #define ast_dataitem_021_160_get_size ast_dataitem_get_size_fixed_4_byte
1169 
1172 
1174 AST_API ast_dataitem_t ast_dataitem_021_160_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
1175 
1177 AST_API void ast_dataitem_021_160_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1178 
1180 AST_API void ast_dataitem_021_160_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
1181 
1192 
1194 #define ast_dataitem_021_161_get_size ast_dataitem_track_number_get_size
1195 
1197 #define ast_dataitem_021_161_decode ast_dataitem_track_number_decode
1198 
1200 #define ast_dataitem_021_161_encode ast_dataitem_track_number_encode
1201 
1203 #define ast_dataitem_021_161_get_summary ast_dataitem_track_number_get_summary
1204 
1206 #define ast_dataitem_021_161_get_detail_html ast_dataitem_track_number_get_detail_html
1207 
1215 #define ast_dataitem_021_165_get_size ast_dataitem_get_size_var_2_byte
1217 
1228 
1230 #define ast_dataitem_021_170_get_size ast_dataitem_aircraft_id_get_size
1231 
1233 #define ast_dataitem_021_170_decode ast_dataitem_aircraft_id_decode
1234 
1236 #define ast_dataitem_021_170_encode ast_dataitem_aircraft_id_encode
1237 
1239 #define ast_dataitem_021_170_get_summary ast_dataitem_aircraft_id_get_summary
1240 
1242 #define ast_dataitem_021_170_get_detail_html ast_dataitem_aircraft_id_get_detail_html
1243 
1252 typedef enum _ast_adsb_emergeny_type_t
1253 {
1262 
1263 typedef enum _ast_adsb_sur_status_t
1264 {
1270 
1272 typedef struct _ast_dataitem_021_200_t
1273 {
1274  bool valid;
1275 
1282 
1284 #define ast_dataitem_021_200_get_size ast_dataitem_get_size_fixed_1_byte
1285 
1288 
1290 AST_API ast_dataitem_t ast_dataitem_021_200_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
1291 
1293 AST_API void ast_dataitem_021_200_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1294 
1296 #define ast_dataitem_021_200_get_detail_html ast_dataitem_get_detail_html_dummy
1297 
1307 typedef struct _ast_dataitem_021_A08_t
1309 {
1310  bool valid;
1311 
1314 
1316 #define ast_dataitem_021_A08_get_size ast_dataitem_get_size_fixed_1_byte
1317 
1320 
1322 AST_API ast_dataitem_t ast_dataitem_021_A08_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
1323 
1325 AST_API void ast_dataitem_021_A08_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1326 
1328 #define ast_dataitem_021_A08_get_detail_html ast_dataitem_get_detail_html_dummy
1329 
1338 typedef enum _ast_adsb_link_type_t
1339 {
1346 
1348 typedef struct _ast_dataitem_021_210_t
1349 {
1350  bool valid;
1351 
1353  unsigned int version;
1356 
1358 #define ast_dataitem_021_210_get_size ast_dataitem_get_size_fixed_1_byte
1359 
1362 
1364 AST_API ast_dataitem_t ast_dataitem_021_210_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
1365 
1367 AST_API void ast_dataitem_021_210_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1368 
1370 AST_API void ast_dataitem_021_210_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
1371 
1372 
1381 typedef struct _ast_dataitem_021_A06_t
1383 {
1384  bool valid;
1385 
1386  bool cdti;
1387  bool mode_s;
1388  bool uat;
1389  bool vdl4;
1390  bool other;
1392 
1394 #define ast_dataitem_021_A06_get_size ast_dataitem_get_size_fixed_1_byte
1395 
1398 
1400 AST_API ast_dataitem_t ast_dataitem_021_A06_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
1401 
1403 AST_API void ast_dataitem_021_A06_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1404 
1406 AST_API void ast_dataitem_021_A06_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
1407 
1416 AST_API size_t ast_dataitem_021_220_get_size(const unsigned char* buffer, const size_t bufsize);
1418 
1419 // Decode function of dataitem
1420 //ast_dataitem_021_220_t ast_dataitem_021_220_decode(const ast_dataitem_t di);
1421 
1423 #define ast_dataitem_021_220_get_summary ast_dataitem_subfields_get_summary
1424 
1426 #define ast_dataitem_021_220_get_detail_html ast_dataitem_subfields_get_detail_html
1427 
1429 AST_API size_t ast_subfield_021_220_get_size(const unsigned char* buffer, const size_t bufsize, const ast_subfield_type_t type);
1430 
1433 
1436 
1438 AST_API void ast_subfield_021_220_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di, const ast_subfield_type_t type);
1439 
1441 AST_API void ast_subfield_021_220_get_detail_html(char* detail, const size_t detail_size, const ast_dataitem_t di, const ast_subfield_type_t type);
1442 
1452 typedef struct _ast_dataitem_021_230_t
1454 {
1455  bool valid;
1456 
1459 
1461 #define ast_dataitem_021_230_get_size ast_dataitem_get_size_fixed_2_byte
1462 
1465 
1467 AST_API void ast_dataitem_021_230_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1468 
1470 #define ast_dataitem_021_230_get_detail_html ast_dataitem_get_detail_html_dummy
1471 
1482 
1484 #define ast_dataitem_021_250_get_size ast_dataitem_modes_mb_get_size
1485 
1487 #define ast_dataitem_021_250_decode ast_dataitem_modes_mb_decode
1488 
1490 #define ast_dataitem_021_250_get_summary ast_dataitem_modes_mb_get_summary
1491 
1493 #define ast_dataitem_021_250_get_detail_html ast_dataitem_modes_mb_get_detail_html
1494 
1502 typedef struct _ast_dataitem_021_271_t
1504 {
1505  bool valid;
1506 
1508 
1510 #define ast_dataitem_021_271_get_size ast_dataitem_get_size_var_2_byte
1511 
1514 
1515 // Get Summary function
1516 //void ast_dataitem_021_230_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1517 
1518 // Get detail function
1519 //#define ast_dataitem_021_230_get_detail_html ast_dataitem_get_detail_html_dummy
1520 
1529 AST_API size_t ast_dataitem_021_A07_get_size(const unsigned char* buffer, const size_t bufsize);
1531 
1534 
1535 // Get Summary function
1536 //void ast_dataitem_021_230_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1537 
1538 // Get detail function
1539 //#define ast_dataitem_021_230_get_detail_html ast_dataitem_get_detail_html_dummy
1540 
1552 typedef struct _ast_dataitem_021_295_t
1554 {
1555  bool valid;
1556 
1558  size_t n_subfields;
1559 
1560  //subfield #1
1562  double aos_age;
1563 
1564  //subfield #2
1566  double trd_age;
1567 
1568  //subfield #3
1570  double m3a_age;
1571 
1572  //subfield #4
1574  double qi_age;
1575 
1576  //subfield #5
1578  double ti_age;
1579 
1580  //subfield #6
1582  double mam_age;
1583 
1584  //subfield #7
1586  double gh_age;
1587 
1588  //subfield #8
1590  double fl_age;
1591 
1592  //subfield #9
1594  double isa_age;
1595 
1596  //subfield #10
1598  double fsa_age;
1599 
1600  //subfield #11
1602  double as_age;
1603 
1604  //subfield #12
1606  double tas_age;
1607 
1608  //subfield #13
1610  double mh_age;
1611 
1612  //subfield #14
1614  double bvr_age;
1615 
1616  //subfield #15
1618  double gvr_age;
1619 
1620  //subfield #16
1622  double gv_age;
1623 
1624  //subfield #17
1626  double tar_age;
1627 
1628  //subfield #18
1630  double tid_age;
1631 
1632  //subfield #19
1634  double ts_age;
1635 
1636  //subfield #20
1638  double met_age;
1639 
1640  //subfield #21
1642  double roa_age;
1643 
1644  //subfield #22
1646  double ara_age;
1647 
1648  //subfield #23
1650  double scc_age;
1651 
1653 
1655 AST_API size_t ast_dataitem_021_295_get_size(const unsigned char* buffer, const size_t bufsize);
1656 
1657 //Decode function of dataitem
1659 
1661 #define ast_dataitem_021_295_get_summary ast_dataitem_subfields_get_summary
1662 
1664 #define ast_dataitem_021_295_get_detail_html ast_dataitem_subfields_get_detail_html
1665 
1667 size_t ast_subfield_021_295_get_size(const unsigned char* buffer, const size_t bufsize, const ast_subfield_type_t type);
1668 
1671 
1674 
1676 AST_API void ast_subfield_021_295_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di, const ast_subfield_type_t type);
1677 
1679 AST_API void ast_subfield_021_295_get_detail_html(char* detail, const size_t detail_size, const ast_dataitem_t di, const ast_subfield_type_t type);
1680 
1689 typedef struct _ast_dataitem_021_400_t
1691 {
1692  bool valid;
1693 
1694  unsigned int id;
1696 
1698 #define ast_dataitem_021_400_get_size ast_dataitem_get_size_fixed_1_byte
1699 
1702 
1704 AST_API void ast_dataitem_021_400_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1705 
1707 #define ast_dataitem_021_400_get_detail_html ast_dataitem_get_detail_html_dummy
1708 
1717 #define ast_dataitem_021_REF_get_size ast_dataitem_reserved_expansion_field_get_size
1719 
1720 // Decode function
1721 //ast_dataitem_021_REF_t ast_dataitem_021_REF_decode(const ast_dataitem_t di);
1722 
1724 #define ast_dataitem_021_REF_get_summary ast_dataitem_reserved_expansion_field_get_summary;
1725 
1726 // Get detail function
1727 #define ast_dataitem_021_REF_get_detail_html ast_dataitem_reserved_expansion_field_get_detail_html;
1728 
1737 #define ast_dataitem_021_SPF_get_size ast_dataitem_special_purpose_field_get_size
1739 
1740 // Decode function
1741 //ast_dataitem_021_SPF_t ast_dataitem_021_SPF_decode(const ast_dataitem_t di);
1742 
1744 #define ast_dataitem_021_SPF_get_summary ast_dataitem_special_purpose_field_get_summary;
1745 
1746 // Get detail function
1747 #define ast_dataitem_021_SPF_get_detail_html ast_dataitem_special_purpose_field_get_detail_html;
1748 
1751 // Data Record
1752 
1755 
1758 
1761 
1764 
1767 
1770 
1773 
1776 
1779 
1781 #define ast_datarecord_021_get_polarcoord 0
1782 
1785 
1788 
1794 typedef struct _ast_datarecord_021_v026_t
1796 {
1797  bool valid;
1798 
1815 
1818 
1820 AST_API ast_datarecord_t ast_datarecord_021_v026_assemble(unsigned char* const buffer, const size_t bufsize, const ast_datarecord_021_v026_t dr, const ast_uap_t uap);
1821 
1822 
1831 typedef struct _ast_datarecord_021_v24_t
1833 {
1834  bool valid;
1835 
1866 
1869 
1871 AST_API ast_datarecord_t ast_datarecord_021_v24_assemble(unsigned char* const buffer, const size_t bufsize, const ast_datarecord_021_v24_t dr, const ast_uap_t uap);
1872 
1873 
1876 #ifdef __cplusplus
1877  }
1878 #endif // extern "C"
1879 
1880 #endif //LIBASTERIX_CAT021_H
1881 
1882 // vim:set ft=c.doxygen sw=2 sts=2 fenc=utf8:
bool lnav_not_engaged
Definition: cat021.h:1277
ast_dataitem_t ast_dataitem_021_040_encode(unsigned char *buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
ast_sacsic_t ast_datarecord_021_get_sacsic(const ast_datarecord_t dr)
Get SAC/SIC function.
Definition: cat021.h:295
Definition: cat021.h:183
ast_dataitem_position_wgs84_t ast_dataitem_021_131_t
Data Item I021/131 - High-Resolution Position in WGS-84 Co-ordinates.
Definition: cat021.h:826
ast_adsb_altitude_capability_t
Definition: cat021.h:284
ast_dataitem_021_072_t dataitem_021_072
Definition: cat021.h:1844
Altitude.
Definition: type.h:111
bool intent_change
Definition: cat021.h:1276
bool m3a_existing
Definition: cat021.h:1569
ast_dataitem_021_150_t dataitem_021_150
Definition: cat021.h:1857
Data Item I021/200 - Target Status.
Definition: cat021.h:1272
ast_dataitem_021_150_t ast_dataitem_021_150_decode(const ast_dataitem_t di)
Decode function.
ast_dataitem_t ast_dataitem_021_095_encode(unsigned char *buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
Data Item - Vertical Rate.
Definition: cat_generic.h:678
void ast_dataitem_021_150_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
ast_emitter_category_t emitter
Definition: cat021.h:206
ast_dataitem_021_157_t dataitem_021_157
Definition: cat021.h:1859
bool valid
Definition: cat021.h:676
Definition: cat021.h:1254
double report_period
Report period in seconds.
Definition: cat021.h:154
Data Item - Time of Day High Precision.
Definition: cat_generic.h:261
bool mode_s
Definition: cat021.h:1387
ast_dataitem_021_140_t dataitem_021_140
Definition: cat021.h:1855
ast_dataitem_t ast_dataitem_021_A05_encode(unsigned char *buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
ast_dataitem_021_008_t ast_dataitem_021_008_decode(const ast_dataitem_t di)
Decode function.
Extracted dataitem.
Definition: dataitem.h:433
Heading.
Definition: type.h:137
ast_dataitem_021_A02_t dataitem_021_130
Definition: cat021.h:1807
ast_dataitem_021_032_t ast_dataitem_021_032_decode(const ast_dataitem_t di)
Decode function.
void ast_dataitem_021_008_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
void ast_subfield_021_295_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di, const ast_subfield_type_t type)
Get detail HTML snippet of subfield.
unsigned int gva
Definition: cat021.h:622
ast_multi_navi_aids_status_t
Definition: cat021.h:657
Data Item I021/150 - Air Speed.
Definition: cat021.h:1009
bool isa_existing
Definition: cat021.h:1593
ast_subfield_type_t
Definition of subfield id in each dataitem.
Definition: subfield.h:52
Implementation of Datarecord concept defined by ASTERIX.
Data Item I021/090 - Figure of Merit (Version 0.26)
Definition: cat021.h:674
Data Source Identifier (aka SAC/SIC)
Definition: type.h:35
double roa_age
Definition: cat021.h:1642
Definition: cat021.h:1343
Data Item I021/151 - True Air Speed.
Definition: cat021.h:1044
ast_dataitem_021_A08_t dataitem_021_200
Definition: cat021.h:1812
int true_airspeed
Definition: cat021.h:1048
Definition: uap.h:36
ast_adsb_sur_status_t surveillance_status
Definition: cat021.h:1280
bool other
Definition: cat021.h:1390
ast_dataitem_time_of_day_t ast_dataitem_021_077_t
Data Item I021/077 - Time of ASTERIX Report Transmission.
Definition: cat021.h:559
void ast_dataitem_021_A06_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
bool fl_existing
Definition: cat021.h:1589
Definition: cat021.h:181
void ast_subfield_021_110_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di, const ast_subfield_type_t type)
Get summary of subfield.
Definition: cat021.h:190
double tid_age
Definition: cat021.h:1630
ast_dataitem_t ast_dataitem_021_160_encode(unsigned char *buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
Definition: cat021.h:651
void ast_dataitem_021_150_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
Data Item Itrack_number - Track Number.
Definition: cat_generic.h:727
Data Item I021/400 - Receiver ID.
Definition: cat021.h:1690
Definition: cat021.h:1267
int raw_heading
Definition: cat021.h:1076
void ast_dataitem_021_160_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
ast_dataitem_021_A04_t dataitem_021_131
Definition: cat021.h:1808
Definition: cat021.h:963
Data Item I021/040 - Target Report Descriptor (Prior version 0.26)
Definition: cat021.h:347
size_t ast_dataitem_021_220_get_size(const unsigned char *buffer, const size_t bufsize)
Get size of dataitem.
ast_adsb_sas_type_t
Definition: cat021.h:961
void ast_subfield_021_220_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di, const ast_subfield_type_t type)
Get summary of subfield.
bool diff_correction
Definition: cat021.h:309
double ground_speed
Ground speed, LSB=Kt.
Definition: cat021.h:1161
Definition: cat021.h:966
Data Item I021/210 - MOPS Version.
Definition: cat021.h:1348
Definition: cat021.h:279
ast_coordinate_t ast_datarecord_021_get_coordinate(const ast_datarecord_t dr)
Get coordinate function.
double gv_age
Definition: cat021.h:1622
Definition: cat021.h:189
const char * ast_subfield_021_220_get_id(const ast_subfield_type_t type)
Get id string of subfield.
#define AST_API
Definition: platform.h:63
void ast_dataitem_021_140_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
Data Item - Data Source Identifier.
Definition: cat_generic.h:93
ast_datarecord_t ast_datarecord_021_v026_assemble(unsigned char *const buffer, const size_t bufsize, const ast_datarecord_021_v026_t dr, const ast_uap_t uap)
Assemble function.
ast_dataitem_021_008_t dataitem_021_008
Definition: cat021.h:1836
void ast_dataitem_021_230_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
unsigned int sil
Definition: cat021.h:618
double trd_age
Definition: cat021.h:1566
bool valid
Definition: cat021.h:1156
bool scc_existing
Definition: cat021.h:1649
bool mh_existing
Definition: cat021.h:1609
bool gv_existing
Definition: cat021.h:1621
Definition: cat021.h:659
ast_dataitem_021_140_t ast_dataitem_021_140_decode(const ast_dataitem_t di)
Decode function.
ast_dataitem_021_071_t dataitem_021_071
Definition: cat021.h:1843
void ast_dataitem_021_A05_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
bool tcas_no_operational
Definition: cat021.h:73
ast_dataitem_time_of_day_t ast_dataitem_021_072_t
Data Item I021/072 - Time of Applicability for Velocity.
Definition: cat021.h:436
ast_dataitem_t ast_dataitem_021_A06_encode(unsigned char *buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
void ast_dataitem_021_151_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
ast_dataitem_021_155_t dataitem_021_155
Definition: cat021.h:1858
void ast_dataitem_021_032_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
ast_emitter_category_t
Definition: cat021.h:178
void ast_dataitem_021_152_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
Definition: cat021.h:654
Definition: cat021.h:278
ast_speed_t ast_datarecord_021_get_speed(const ast_datarecord_t dr)
Get speed function.
ast_dataitem_mode_3a_code_t ast_dataitem_021_070_t
Data Item I021/070 - Mode-3/A Code in Octal Representation.
Definition: cat021.h:386
int raw_diff
Definition: cat021.h:252
bool valid
Definition: cat021.h:710
Definition: cat021.h:965
Data Item - Time of Day.
Definition: cat_generic.h:219
bool cpr_validation_failed
Definition: cat021.h:318
bool valid
Definition: cat021.h:1834
ast_dataitem_aircraft_id_t ast_dataitem_021_170_t
Data Item I021/170 - Target Identification.
Definition: cat021.h:1227
double aos_age
Definition: cat021.h:1562
double qi_age
Definition: cat021.h:1574
bool as_existing
Definition: cat021.h:1601
Definition: cat021.h:296
bool cdti_operational
Definition: cat021.h:72
Definition: cat021.h:294
ast_dataitem_021_020_t dataitem_021_020
Definition: cat021.h:1840
ast_dataitem_021_131_t dataitem_021_131
Definition: cat021.h:1853
bool valid
Definition: cat021.h:1074
bool fixed_transponder
Definition: cat021.h:308
Speed.
Definition: type.h:149
Definition: cat021.h:1342
ast_dataitem_021_160_t ast_dataitem_021_160_decode(const ast_dataitem_t di)
Decode function.
const char * ast_subfield_021_295_get_name(const ast_subfield_type_t type)
Get name of subfield.
ast_acas_status_t
Definition: cat021.h:649
ast_dataitem_021_077_t dataitem_021_077
Definition: cat021.h:1849
bool valid
Definition: cat021.h:934
Definition: cat021.h:195
bool valid
Definition: cat021.h:972
Definition: cat021.h:188
ast_dataitem_021_016_t ast_dataitem_021_016_decode(const ast_dataitem_t di)
Decode function.
size_t ast_dataitem_021_110_get_size(const unsigned char *buffer, const size_t bufsize)
Get size of dataitem.
ast_dataitem_021_A03_t dataitem_021_040
Definition: cat021.h:1802
ast_dataitem_t ast_dataitem_021_090_encode(unsigned char *buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
int pos_accuracy
Definition: cat021.h:681
double isa_age
Definition: cat021.h:1594
void ast_dataitem_021_140_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
void ast_subfield_021_295_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di, const ast_subfield_type_t type)
Get summary of subfield.
Data Item I021/040 - Target Report Descriptor.
Definition: cat021.h:301
ast_dataitem_021_130_t dataitem_021_130
Definition: cat021.h:1852
bool indicated_airspeed_valid
Raw speed. For IAS, LSB = 2^-14 NM/s, for mach, LSB = 0.001.
Definition: cat021.h:1015
ast_dataitem_021_200_t ast_dataitem_021_200_decode(const ast_dataitem_t di)
Decode function.
bool test
Definition: cat021.h:354
Definition: cat021.h:1257
double mam_age
Definition: cat021.h:1582
bool met_existing
Definition: cat021.h:1637
int vel_accuracy
Definition: cat021.h:712
int raw_angle
Definition: cat021.h:1457
bool version_not_supported
Definition: cat021.h:1352
unsigned int raw_report_period
Raw format as defined in doc, resolution 0.5s.
Definition: cat021.h:155
bool valid
Definition: cat021.h:152
Definition: cat021.h:197
ast_dataitem_target_address_t ast_dataitem_021_080_t
Data Item I021/080 - Target Address.
Definition: cat021.h:585
void ast_dataitem_021_146_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
bool valid
Definition: cat021.h:66
ast_acas_status_t acas_status
Definition: cat021.h:678
ast_adsb_sur_status_t
Definition: cat021.h:1263
This file includes the common used data items shares by different categories.
bool range_check_failed
Definition: cat021.h:320
Data Item - Mode S MB Data.
Definition: cat_generic.h:965
ast_adsb_confidence_level_t confidence_level
Definition: cat021.h:314
Definition: cat021.h:180
ast_dataitem_021_132_t dataitem_021_132
Definition: cat021.h:1854
Definition: cat021.h:1266
bool valid
Definition: cat021.h:204
int raw_ground_speed
Ground speed, LSB=2^-14 NM/S ~= 0.22 Kt.
Definition: cat021.h:1160
ast_dataitem_t ast_dataitem_021_210_encode(unsigned char *buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
Definition: type.h:66
ast_dataitem_021_152_t ast_dataitem_021_152_decode(const ast_dataitem_t di)
Decode function.
Definition: cat021.h:1259
Data Item I021/271 - Surface Capabilities and Characteristics.
Definition: cat021.h:1503
ast_dataitem_021_020_t dataitem_021_020
Definition: cat021.h:1800
bool valid
Definition: cat021.h:906
const char * ast_subfield_021_295_get_id(const ast_subfield_type_t type)
Get id string of subfield.
unsigned int id
Definition: cat021.h:1694
bool valid
Definition: cat021.h:1350
ast_dataitem_service_id_t ast_dataitem_021_015_t
Data Item I021/015 - Service Identification.
Definition: cat021.h:124
void ast_subfield_021_110_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di, const ast_subfield_type_t type)
Get detail HTML snippet of subfield.
int raw_altitude
! Altitude LSB=6.25ft Range=-1,500ft~150,000ft
Definition: cat021.h:908
void ast_dataitem_021_A03_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
unsigned int nuc_p
Definition: cat021.h:616
int raw_speed
Definition: cat021.h:1013
double met_age
Definition: cat021.h:1638
bool valid
Definition: cat021.h:1310
Data Item - Service Identification.
Definition: cat_generic.h:133
Definition: cat021.h:185
Definition: cat021.h:288
bool valid
Definition: cat021.h:1692
int selected_altitude
Altitude in two’s complement form, LSB=25ft, -1300ft <= Altitude <= 100000ft.
Definition: cat021.h:976
void ast_dataitem_021_400_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
ast_icaoaddr_t ast_datarecord_021_get_icaoaddr(const ast_datarecord_t dr)
Get ICAO 24-bit address function.
Definition: cat021.h:1341
double bvr_age
Definition: cat021.h:1614
bool gvr_existing
Definition: cat021.h:1617
bool spi
Definition: cat021.h:357
ast_dataitem_021_A06_t dataitem_021_210
Definition: cat021.h:1813
bool valid
Definition: cat021.h:349
void ast_dataitem_021_160_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
bool cdti
Definition: cat021.h:1386
ast_adsb_addr_type_t addr_type
Definition: cat021.h:305
ast_adsb_addr_type_t
Definition: cat021.h:275
bool mam_existing
Definition: cat021.h:1581
Subfield struct.
Definition: subfield.h:292
bool avr_report_capability
Definition: cat021.h:71
Definition: cat021.h:652
ast_datarecord_t ast_datarecord_021_v24_assemble(unsigned char *const buffer, const size_t bufsize, const ast_datarecord_021_v24_t dr, const ast_uap_t uap)
Assemble function.
Data Record I021 v2.4 - ADS-B Target Reports.
Definition: cat021.h:1832
size_t n_subfields
Definition: cat021.h:1558
ast_heading_t ast_datarecord_021_get_heading(const ast_datarecord_t dr)
Get heading function.
ast_dataitem_time_of_day_high_t ast_dataitem_021_074_t
Data Item I021/074 - Time of Message Reception of Position - High Precision.
Definition: cat021.h:487
ast_dataitem_time_of_day_high_t ast_dataitem_021_076_t
Data Item I021/076 - Time of Message Reception of Velocity - High Precision.
Definition: cat021.h:536
ast_dataitem_021_145_t dataitem_021_145
Definition: cat021.h:1809
void ast_dataitem_021_200_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
void ast_dataitem_021_040_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
unsigned int pic
Definition: cat021.h:623
ast_ac_trajectory_report_capability_t trajectory_report_capability
Definition: cat021.h:69
Data Record I021 v0.26 - ADS-B Messages.
Definition: cat021.h:1795
ast_dataitem_021_210_t dataitem_021_210
Definition: cat021.h:1864
void ast_dataitem_021_016_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
Data Item I021/020 - Emitter Category.
Definition: cat021.h:202
ast_dataitem_position_wgs84_t ast_dataitem_021_A02_t
Data Item I021/130 - Position in WGS84 Coordinates (Version 0.24 ~ 0.26)
Definition: cat021.h:800
Definition: cat021.h:964
bool valid
Definition: cat021.h:1505
bool simulated
Definition: cat021.h:353
ast_dataitem_021_A03_t ast_dataitem_021_A03_decode(const ast_dataitem_t di)
Decode function.
ast_msgtype_t ast_datarecord_021_get_msgtype(const ast_datarecord_t dr)
Get message type function.
Data Item I021/160 - Airborne Ground Vector.
Definition: cat021.h:1154
double tar_age
Definition: cat021.h:1626
void ast_dataitem_021_A08_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
ast_adsb_sas_type_t source_type
Definition: cat021.h:975
bool test
Definition: cat021.h:312
ast_dataitem_021_095_t ast_dataitem_021_095_decode(const ast_dataitem_t di)
Decode function.
ast_dataitem_021_070_t dataitem_021_070
Definition: cat021.h:1803
bool valid
Definition: cat021.h:250
bool trd_existing
Definition: cat021.h:1565
bool valid
Definition: cat021.h:1797
Data Item I021/095 - Velocity Accuracy.
Definition: cat021.h:708
ast_dataitem_021_210_t ast_dataitem_021_210_decode(const ast_dataitem_t di)
Decode function.
size_t ast_subfield_021_110_get_size(const unsigned char *buffer, const size_t bufsize, const ast_subfield_type_t type)
Get size of subfield.
ast_adsb_addr_type_t addr_type
Definition: cat021.h:358
Data Item - Position in WGS84 Coordinates.
Definition: cat_generic.h:343
unsigned int sil_s
Definition: cat021.h:620
Definition: cat021.h:1260
Definition: cat021.h:286
ast_datarecord_021_v026_t ast_datarecord_021_v026_disassemble(const ast_datarecord_t dr)
Disassemble function.
ast_dataitem_021_095_t dataitem_021_095
Definition: cat021.h:1806
bool gh_existing
Definition: cat021.h:1585
Definition: cat021.h:184
bool selected_altitude_capability
Definition: cat021.h:356
double fl_age
Definition: cat021.h:1590
ast_dataitem_021_073_t dataitem_021_073
Definition: cat021.h:1845
double heading
Magnetic heading, LSB = 360/2^16 ~= 0.0055 deg.
Definition: cat021.h:1077
bool valid
Definition: cat021.h:303
ast_dataitem_021_295_t ast_dataitem_021_295_decode(const ast_dataitem_t di)
bool tid_existing
Definition: cat021.h:1629
Definition: cat021.h:660
double gh_age
Definition: cat021.h:1586
bool vdl4
Definition: cat021.h:1389
bool roa_existing
Definition: cat021.h:1641
double mach
Definition: cat021.h:1019
const char * ast_dataitem_021_get_name(const ast_dataitem_type_t type)
Get name function.
ast_dataitem_021_074_t dataitem_021_074
Definition: cat021.h:1846
double ts_age
Definition: cat021.h:1634
bool diff_correction
Definition: cat021.h:351
void ast_dataitem_021_145_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
bool uat
Definition: cat021.h:1388
ast_dataitem_021_271_t ast_dataitem_021_271_decode(const ast_dataitem_t di)
Decode function.
ast_dataitem_021_020_t ast_dataitem_021_020_decode(const ast_dataitem_t di)
Decode function.
Squawk (aka Mode-3/A Code)
Definition: type.h:80
bool nogo
Definition: cat021.h:317
const char * ast_subfield_021_110_get_id(const ast_subfield_type_t type)
Get id string of subfield.
ast_dataitem_vertical_rate_t ast_dataitem_021_157_t
Data Item I021/157 - Geometric Vertical Rate.
Definition: cat021.h:1128
bool independent_position_check_failed
Definition: cat021.h:316
double fsa_age
Definition: cat021.h:1598
ast_dataitem_021_080_t dataitem_021_080
Definition: cat021.h:1804
Implementation of Dataitem concept defined by ASTERIX.
ast_diff_correction_status_t diff_correction_status
Definition: cat021.h:680
ast_dataitem_021_090_t ast_dataitem_021_090_decode(const ast_dataitem_t di)
Decode function.
double ti_age
Definition: cat021.h:1578
ast_dataitem_021_030_t dataitem_021_030
Definition: cat021.h:1801
Data Item I021/295 - Data Ages.
Definition: cat021.h:1553
double track_angle
Track angle, LSB=DEG.
Definition: cat021.h:1164
ast_altitude_t ast_datarecord_021_get_flightlevel(const ast_datarecord_t dr)
Get flight level function.
bool simulated
Definition: cat021.h:311
Definition: cat021.h:191
Definition: cat021.h:668
ast_dataitem_vertical_rate_t ast_dataitem_021_155_t
Data Item I021/155 - Barometric Vertical Rate.
Definition: cat021.h:1102
void ast_dataitem_021_A06_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
Definition: cat021.h:662
bool fixed_transponder
Definition: cat021.h:355
ast_dataitem_data_source_identifier_t ast_dataitem_021_010_t
Data Item I021/010 - Data Source Identifier.
Definition: cat021.h:98
double ara_age
Definition: cat021.h:1646
ast_dataitem_t ast_dataitem_021_020_encode(unsigned char *buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
Data Item I021/032 - Time of Day Accuracy.
Definition: cat021.h:248
ast_dataitem_021_A08_t ast_dataitem_021_A08_decode(const ast_dataitem_t di)
Decode function.
Definition: cat021.h:187
unsigned int version
Definition: cat021.h:1353
void ast_dataitem_021_210_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
Data Item - Target Address.
Definition: cat_generic.h:807
bool source_provided
Definition: cat021.h:974
bool valid
Definition: cat021.h:1011
ast_dataitem_021_160_t dataitem_021_160
Definition: cat021.h:1810
const char * ast_subfield_021_220_get_name(const ast_subfield_type_t type)
Get name of subfield.
bool ti_existing
Definition: cat021.h:1577
Definition: cat021.h:667
void ast_dataitem_021_146_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
bool aos_existing
Definition: cat021.h:1561
bool ts_existing
Definition: cat021.h:1633
Definition: cat021.h:196
void ast_dataitem_021_A05_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
Data Item I021/145 - Flight Level.
Definition: cat021.h:932
ast_dataitem_021_146_t ast_dataitem_021_146_decode(const ast_dataitem_t di)
Decode function.
ast_dataitem_021_170_t dataitem_021_170
Definition: cat021.h:1811
void ast_dataitem_021_145_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
ast_dataitem_021_015_t dataitem_021_015
Definition: cat021.h:1838
Definition: cat021.h:281
Definition: cat021.h:1258
ast_datarecord_021_v24_t ast_datarecord_021_v24_disassemble(const ast_datarecord_t dr)
Disassemble function.
ast_dataitem_021_076_t dataitem_021_076
Definition: cat021.h:1848
void ast_dataitem_021_032_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
bool ground
Definition: cat021.h:310
ast_adsb_altitude_capability_t altitude_capability
Definition: cat021.h:359
Definition: cat021.h:194
bool range_check
Definition: cat021.h:307
int raw_level
Flight level without QNH correction, LSB=1/4FL.
Definition: cat021.h:936
ast_adsb_emergeny_type_t priority_status
Definition: cat021.h:1279
void ast_subfield_021_220_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di, const ast_subfield_type_t type)
Get detail HTML snippet of subfield.
Dataitem.
Definition: dataitem.h:422
Definition: cat021.h:1344
Definition: cat021.h:192
ast_dataitem_t ast_dataitem_021_145_encode(unsigned char *buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
ast_dataitem_signal_amplitude_t ast_dataitem_021_132_t
Data Item I021/132 - Message Amplitude.
Definition: cat021.h:878
ast_dataitem_021_A06_t ast_dataitem_021_A06_decode(const ast_dataitem_t di)
Decode function.
void ast_dataitem_021_A03_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
bool military_emergency
Definition: cat021.h:1278
ast_dataitem_021_170_t dataitem_021_170
Definition: cat021.h:1862
ast_dataitem_021_010_t dataitem_021_010
Definition: cat021.h:1799
Definition: cat021.h:1265
ast_dataitem_021_230_t ast_dataitem_021_230_decode(const ast_dataitem_t di)
Decode function.
double mh_age
Definition: cat021.h:1610
ast_dataitem_021_271_t ast_dataitem_021_A07_decode(const ast_dataitem_t di)
Decode function.
ast_callsign_t ast_datarecord_021_get_callsign(const ast_datarecord_t dr)
Get callsign function.
Data Item - Mode-3/A Code in Octal Representation.
Definition: cat_generic.h:478
bool tas_existing
Definition: cat021.h:1605
bool valid
Definition: cat021.h:613
ast_dataitem_021_200_t dataitem_021_200
Definition: cat021.h:1863
void ast_dataitem_021_095_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
Data Item I021/008 - Aircraft Operational Status.
Definition: cat021.h:64
bool ara_existing
Definition: cat021.h:1645
Definition: cat021.h:1268
size_t ast_subfield_021_295_get_size(const unsigned char *buffer, const size_t bufsize, const ast_subfield_type_t type)
Get size of subfield.
bool valid
Definition: cat021.h:1046
ast_dataitem_021_070_t dataitem_021_070
Definition: cat021.h:1842
ast_dataitem_021_145_t ast_dataitem_021_145_decode(const ast_dataitem_t di)
Decode function.
Callsign.
Definition: type.h:89
ast_dataitem_type_t
Definition of data item id in each category.
Definition: dataitem.h:67
ast_dataitem_signal_amplitude_t ast_dataitem_021_A04_t
Data Item I021/131 - Signal Amplitude.
Definition: cat021.h:852
ast_dataitem_021_161_t dataitem_021_161
Definition: cat021.h:1861
Definition: cat021.h:287
bool fsa_existing
Definition: cat021.h:1597
Definition: cat021.h:1340
unsigned int sda
Definition: cat021.h:621
bool ground
Definition: cat021.h:352
#define AST_MAX_SUBFIELDS
Definition: subfield.h:362
bool valid
Definition: cat021.h:1455
WGS-84 2D Coordinate.
Definition: type.h:103
Definition: cat021.h:1255
Data Item - Signal Amplitude.
Definition: cat_generic.h:927
ast_dataitem_time_of_day_t ast_dataitem_021_073_t
Data Item I021/073 - Time of Message Reception for Position.
Definition: cat021.h:461
Data Item I021/146 - Selected Altitude.
Definition: cat021.h:970
Definition: cat021.h:670
Time of day.
Definition: type.h:43
ast_dataitem_021_080_t dataitem_021_080
Definition: cat021.h:1850
ast_dataitem_021_A05_t ast_dataitem_021_A05_decode(const ast_dataitem_t di)
Decode function.
Data Item I021/090 - Quality Indicators.
Definition: cat021.h:611
void ast_dataitem_021_152_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
Definition: cat021.h:186
ast_dataitem_021_075_t dataitem_021_075
Definition: cat021.h:1847
bool valid
Definition: cat021.h:1384
void ast_dataitem_021_210_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
ast_adsb_altitude_capability_t altitude_capability
Definition: cat021.h:306
size_t ast_dataitem_021_295_get_size(const unsigned char *buffer, const size_t bufsize)
Get size of dataitem.
bool single_antenna
Definition: cat021.h:74
const char * ast_subfield_021_110_get_name(const ast_subfield_type_t type)
Get name of subfield.
void ast_dataitem_021_151_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
Data Item I021/A06 - Link Technology Indicator.
Definition: cat021.h:1382
double as_age
Definition: cat021.h:1602
ast_dataitem_track_number_t ast_dataitem_021_161_t
Data Item I021/161 - Track Number.
Definition: cat021.h:1191
ast_dataitem_021_040_t ast_dataitem_021_040_decode(const ast_dataitem_t di)
Decode function.
Data Item I021/152 - Magnetic Heading.
Definition: cat021.h:1072
Definition: cat021.h:58
bool local_decoding_position_jump_detected
Definition: cat021.h:319
ast_dataitem_021_145_t dataitem_021_145
Definition: cat021.h:1856
ast_dataitem_021_040_t dataitem_021_040
Definition: cat021.h:1841
ast_dataitem_time_of_day_t ast_dataitem_021_071_t
Data Item I021/071 - Time of Applicability for Position.
Definition: cat021.h:411
unsigned int nuc_r
Definition: cat021.h:615
ast_dataitem_021_016_t dataitem_021_016
Definition: cat021.h:1839
ast_multi_navi_aids_status_t multi_navi_aids_status
Definition: cat021.h:679
Data Item - Target Identification.
Definition: cat_generic.h:846
Datarecord.
Definition: datarecord.h:40
ast_dataitem_021_160_t dataitem_021_160
Definition: cat021.h:1860
ast_diff_correction_status_t
Definition: cat021.h:665
bool valid
Definition: cat021.h:1555
ast_dataitem_021_151_t ast_dataitem_021_151_decode(const ast_dataitem_t di)
Decode function.
Definition: cat021.h:280
size_t ast_dataitem_021_A07_get_size(const unsigned char *buffer, const size_t bufsize)
Get size function.
double gvr_age
Definition: cat021.h:1618
bool target_state_report_capability
Definition: cat021.h:70
Definition: cat021.h:1256
int raw_track_angle
Track angle, LSB=360/2^16 DEG ~= 0.0055 DEG.
Definition: cat021.h:1163
Definition: cat021.h:669
void ast_dataitem_021_040_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
bool tar_existing
Definition: cat021.h:1625
ast_ac_trajectory_report_capability_t
Definition: cat021.h:56
ast_dataitem_021_400_t ast_dataitem_021_400_decode(const ast_dataitem_t di)
Decode function.
void ast_dataitem_021_020_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
Data Item - Position in WGS84 Coordinates (Low Reslution)
Definition: cat_generic.h:299
ast_dataitem_021_010_t dataitem_021_010
Definition: cat021.h:1837
bool no_selected_altitude
Definition: cat021.h:313
ast_adsb_link_type_t link_type
Definition: cat021.h:1354
ast_adsb_link_type_t
Definition: cat021.h:1338
void ast_dataitem_021_090_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
Definition: cat021.h:277
ast_dataitem_021_A05_t dataitem_021_090
Definition: cat021.h:1805
double m3a_age
Definition: cat021.h:1570
void ast_dataitem_021_008_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
ast_adsb_emergeny_type_t
Definition: cat021.h:1252
ast_dataitem_021_090_t dataitem_021_090
Definition: cat021.h:1851
Definition: cat021.h:289
ast_tracknum_t ast_datarecord_021_get_tracknum(const ast_datarecord_t dr)
Get track number function.
double tas_age
Definition: cat021.h:1606
Data Item I021/016 - Service Management.
Definition: cat021.h:150
size_t ast_subfield_021_220_get_size(const unsigned char *buffer, const size_t bufsize, const ast_subfield_type_t type)
Get size of subfield.
ast_dataitem_t ast_dataitem_021_A03_encode(unsigned char *buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
Definition: cat021.h:182
bool bvr_existing
Definition: cat021.h:1613
Definition: cat021.h:661
ast_dataitem_modes_mb_t ast_dataitem_021_250_t
Data Item I021/250 - Mode S MB Data.
Definition: cat021.h:1481
bool qi_existing
Definition: cat021.h:1573
Definition: cat021.h:297
Data Item I021/140 - Geometric Altitude.
Definition: cat021.h:904
bool valid
Definition: cat021.h:1274
ast_dataitem_t ast_dataitem_021_A08_encode(unsigned char *buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
bool mach_valid
IAS, LSB = Knot.
Definition: cat021.h:1018
Definition: cat021.h:653
bool range_exceeded
Range exceeded indicator.
Definition: cat021.h:1158
void ast_dataitem_021_020_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
ast_adsb_confidence_level_t
Definition: cat021.h:292
ast_dataitem_time_of_day_t ast_dataitem_021_075_t
Data Item I021/075 - Time of Message Reception for Velocity.
Definition: cat021.h:510
ast_timeofday_t ast_datarecord_021_get_timeofday(const ast_datarecord_t dr)
Get time of day function.
Data Item I021/200 - Target Status (Prior version 0.26)
Definition: cat021.h:1308
ast_dataitem_t ast_dataitem_021_200_encode(unsigned char *buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
ast_adsb_emergeny_type_t emergency
Definition: cat021.h:1312
Implementation of Subfield concept defined by ASTERIX.
bool tcas_ra_active
Definition: cat021.h:68
unsigned int nac_p
Definition: cat021.h:619
Data Item I021/230 - Roll Angle.
Definition: cat021.h:1453
ast_dataitem_position_wgs84_low_t ast_dataitem_021_130_t
Data Item I021/130 - Position in WGS84 Coordinates (Ver <= 0.23 and >= 0.27)
Definition: cat021.h:774
void ast_dataitem_021_090_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
ICAO 24-bit Address.
Definition: type.h:96
double scc_age
Definition: cat021.h:1650
ast_dataitem_time_of_day_t ast_dataitem_021_030_t
Definition: cat021.h:232
Track Number.
Definition: type.h:73
bool lookup_check_failed
Definition: cat021.h:315
double indicated_airspeed
Definition: cat021.h:1016
unsigned int nic_baro
Definition: cat021.h:617
ast_squawk_t ast_datarecord_021_get_squawk(const ast_datarecord_t dr)
Get Mode-3/A code function.