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 
300 typedef struct _ast_dataitem_021_040_t
301 {
302  bool valid;
303 
309  bool ground;
310  bool simulated;
311  bool test;
316  bool nogo;
321 
323 #define ast_dataitem_021_040_get_size ast_dataitem_get_size_var_3_byte
324 
327 
329 ast_dataitem_t ast_dataitem_021_040_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
330 
332 AST_API void ast_dataitem_021_040_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
333 
335 AST_API void ast_dataitem_021_040_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
336 
345 typedef struct _ast_dataitem_021_A03_t
347 {
348  bool valid;
349 
351  bool ground;
352  bool simulated;
353  bool test;
356  bool spi;
360 
362 #define ast_dataitem_021_A03_get_size ast_dataitem_get_size_fixed_2_byte
363 
366 
368 ast_dataitem_t ast_dataitem_021_A03_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
369 
371 AST_API void ast_dataitem_021_A03_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
372 
374 AST_API void ast_dataitem_021_A03_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
375 
386 
388 #define ast_dataitem_021_070_get_size ast_dataitem_mode_3a_code_get_size
389 
391 #define ast_dataitem_021_070_decode ast_dataitem_mode_3a_code_decode
392 
394 #define ast_dataitem_021_070_encode ast_dataitem_mode_3a_code_encode
395 
397 #define ast_dataitem_021_070_get_summary ast_dataitem_mode_3a_code_get_summary
398 
400 #define ast_dataitem_021_070_get_detail_html ast_dataitem_mode_3a_code_get_detail_html
401 
411 
413 #define ast_dataitem_021_071_get_size ast_dataitem_time_of_day_get_size
414 
416 #define ast_dataitem_021_071_decode ast_dataitem_time_of_day_decode
417 
419 #define ast_dataitem_021_071_encode ast_dataitem_time_of_day_encode
420 
422 #define ast_dataitem_021_071_get_summary ast_dataitem_time_of_day_get_summary
423 
425 #define ast_dataitem_021_071_get_detail_html ast_dataitem_time_of_day_get_detail_html
426 
436 
438 #define ast_dataitem_021_072_get_size ast_dataitem_time_of_day_get_size
439 
441 #define ast_dataitem_021_072_decode ast_dataitem_time_of_day_decode
442 
444 #define ast_dataitem_021_072_encode ast_dataitem_time_of_day_encode
445 
447 #define ast_dataitem_021_072_get_summary ast_dataitem_time_of_day_get_summary
448 
450 #define ast_dataitem_021_072_get_detail_html ast_dataitem_time_of_day_get_detail_html
451 
461 
463 #define ast_dataitem_021_073_get_size ast_dataitem_time_of_day_get_size
464 
466 #define ast_dataitem_021_073_decode ast_dataitem_time_of_day_decode
467 
469 #define ast_dataitem_021_073_encode ast_dataitem_time_of_day_encode
470 
472 #define ast_dataitem_021_073_get_summary ast_dataitem_time_of_day_get_summary
473 
475 #define ast_dataitem_021_073_get_detail_html ast_dataitem_time_of_day_get_detail_html
476 
487 
489 #define ast_dataitem_021_074_get_size ast_dataitem_time_of_day_high_get_size
490 
492 #define ast_dataitem_021_074_decode ast_dataitem_time_of_day_high_decode
493 
495 #define ast_dataitem_021_074_get_summary ast_dataitem_time_of_day_high_get_summary
496 
498 #define ast_dataitem_021_074_get_detail_html ast_dataitem_time_of_day_high_get_detail_html
499 
510 
512 #define ast_dataitem_021_075_get_size ast_dataitem_time_of_day_get_size
513 
515 #define ast_dataitem_021_075_decode ast_dataitem_time_of_day_decode
516 
518 #define ast_dataitem_021_075_encode ast_dataitem_time_of_day_encode
519 
521 #define ast_dataitem_021_075_get_summary ast_dataitem_time_of_day_get_summary
522 
524 #define ast_dataitem_021_075_get_detail_html ast_dataitem_time_of_day_get_detail_html
525 
536 
538 #define ast_dataitem_021_076_get_size ast_dataitem_time_of_day_high_get_size
539 
541 #define ast_dataitem_021_076_decode ast_dataitem_time_of_day_high_decode
542 
544 #define ast_dataitem_021_076_get_summary ast_dataitem_time_of_day_high_get_summary
545 
547 #define ast_dataitem_021_076_get_detail_html ast_dataitem_time_of_day_high_get_detail_html
548 
559 
561 #define ast_dataitem_021_077_get_size ast_dataitem_time_of_day_get_size
562 
564 #define ast_dataitem_021_077_decode ast_dataitem_time_of_day_decode
565 
567 #define ast_dataitem_021_077_encode ast_dataitem_time_of_day_encode
568 
570 #define ast_dataitem_021_077_get_summary ast_dataitem_time_of_day_get_summary
571 
573 #define ast_dataitem_021_077_get_detail_html ast_dataitem_time_of_day_get_detail_html
574 
585 
587 #define ast_dataitem_021_080_get_size ast_dataitem_target_address_get_size
588 
590 #define ast_dataitem_021_080_decode ast_dataitem_target_address_decode
591 
593 #define ast_dataitem_021_080_encode ast_dataitem_target_address_encode
594 
596 #define ast_dataitem_021_080_get_summary ast_dataitem_target_address_get_summary
597 
599 #define ast_dataitem_021_080_get_detail_html ast_dataitem_target_address_get_detail_html
600 
609 typedef struct _ast_dataitem_021_090_t
611 {
612  bool valid;
613 
614  unsigned int nuc_r;
615  unsigned int nuc_p;
616  unsigned int nic_baro;
617  unsigned int sil;
618  unsigned int nac_p;
619  unsigned int sil_s;
620  unsigned int sda;
621  unsigned int gva;
622  unsigned int pic;
624 
626 #define ast_dataitem_021_090_get_size ast_dataitem_get_size_var_4_byte
627 
630 
632 AST_API ast_dataitem_t ast_dataitem_021_090_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
633 
635 AST_API void ast_dataitem_021_090_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
636 
638 AST_API void ast_dataitem_021_090_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
639 
648 typedef enum _ast_acas_status_t
649 {
655 
656 typedef enum _ast_multi_navi_aids_status_t
657 {
663 
664 typedef enum _ast_diff_correction_status_t
665 {
671 
673 typedef struct _ast_dataitem_021_A05_t
674 {
675  bool valid;
676 
682 
684 #define ast_dataitem_021_A05_get_size ast_dataitem_get_size_fixed_2_byte
685 
688 
690 AST_API ast_dataitem_t ast_dataitem_021_A05_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
691 
693 AST_API void ast_dataitem_021_A05_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
694 
696 AST_API void ast_dataitem_021_A05_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
697 
706 typedef struct _ast_dataitem_021_095_t
708 {
709  bool valid;
710 
713 
715 #define ast_dataitem_021_095_get_size ast_dataitem_get_size_fixed_1_byte
716 
719 
721 AST_API ast_dataitem_t ast_dataitem_021_095_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
722 
724 AST_API void ast_dataitem_021_095_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
725 
727 #define ast_dataitem_021_095_get_detail_html ast_dataitem_get_detail_html_dummy
728 
737 size_t ast_dataitem_021_110_get_size(const unsigned char* buffer, const size_t bufsize);
739 
740 // Decode function of dataitem
741 //ast_dataitem_021_110_t ast_dataitem_021_110_decode(const ast_dataitem_t di);
742 
744 #define ast_dataitem_021_110_get_summary ast_dataitem_subfields_get_summary
745 
747 #define ast_dataitem_021_110_get_detail_html ast_dataitem_subfields_get_detail_html
748 
750 AST_API size_t ast_subfield_021_110_get_size(const unsigned char* buffer, const size_t bufsize, const ast_subfield_type_t type);
751 
754 
757 
759 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);
760 
762 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);
763 
774 
776 #define ast_dataitem_021_130_get_size ast_dataitem_position_wgs84_low_get_size
777 
779 #define ast_dataitem_021_130_decode ast_dataitem_position_wgs84_low_decode
780 
782 #define ast_dataitem_021_130_encode ast_dataitem_position_wgs84_low_encode
783 
785 #define ast_dataitem_021_130_get_summary ast_dataitem_position_wgs84_low_get_summary
786 
788 #define ast_dataitem_021_130_get_detail_html ast_dataitem_position_wgs84_low_get_detail_html
789 
800 
802 #define ast_dataitem_021_A02_get_size ast_dataitem_position_wgs84_get_size
803 
805 #define ast_dataitem_021_A02_decode ast_dataitem_position_wgs84_decode
806 
808 #define ast_dataitem_021_A02_encode ast_dataitem_position_wgs84_encode
809 
811 #define ast_dataitem_021_A02_get_summary ast_dataitem_position_wgs84_get_summary
812 
814 #define ast_dataitem_021_A02_get_detail_html ast_dataitem_position_wgs84_get_detail_html
815 
826 
828 #define ast_dataitem_021_131_get_size ast_dataitem_position_wgs84_get_size
829 
831 #define ast_dataitem_021_131_decode ast_dataitem_position_wgs84_decode
832 
834 #define ast_dataitem_021_131_encode ast_dataitem_position_wgs84_encode
835 
837 #define ast_dataitem_021_131_get_summary ast_dataitem_position_wgs84_get_summary
838 
840 #define ast_dataitem_021_131_get_detail_html ast_dataitem_position_wgs84_get_detail_html
841 
852 
854 #define ast_dataitem_021_A04_get_size ast_dataitem_signal_amplitude_get_size
855 
857 #define ast_dataitem_021_A04_decode ast_dataitem_signal_amplitude_decode
858 
860 #define ast_dataitem_021_A04_encode ast_dataitem_signal_amplitude_encode
861 
863 #define ast_dataitem_021_A04_get_summary ast_dataitem_signal_amplitude_get_summary
864 
866 #define ast_dataitem_021_A04_get_detail_html ast_dataitem_signal_amplitude_get_detail_html
867 
878 
880 #define ast_dataitem_021_132_get_size ast_dataitem_signal_amplitude_get_size
881 
883 #define ast_dataitem_021_132_decode ast_dataitem_signal_amplitude_decode
884 
886 #define ast_dataitem_021_132_encode ast_dataitem_signal_amplitude_encode
887 
889 #define ast_dataitem_021_132_get_summary ast_dataitem_signal_amplitude_get_summary
890 
892 #define ast_dataitem_021_132_get_detail_html ast_dataitem_signal_amplitude_get_detail_html
893 
902 typedef struct _ast_dataitem_021_140_t
904 {
905  bool valid;
906 
909 
911 #define ast_dataitem_021_140_get_size ast_dataitem_get_size_fixed_2_byte
912 
915 
917 AST_API void ast_dataitem_021_140_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
918 
920 AST_API void ast_dataitem_021_140_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
921 
930 typedef struct _ast_dataitem_021_145_t
932 {
933  bool valid;
934 
935  int raw_level;
937 
939 #define ast_dataitem_021_145_get_size ast_dataitem_get_size_fixed_2_byte
940 
943 
945 AST_API ast_dataitem_t ast_dataitem_021_145_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
946 
948 void ast_dataitem_021_145_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
949 
951 void ast_dataitem_021_145_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
952 
960 typedef enum _ast_adsb_sas_type_t
961 {
967 
969 typedef struct _ast_dataitem_021_146_t
970 {
971  bool valid;
972 
977 
979 #define ast_dataitem_021_146_get_size ast_dataitem_get_size_fixed_2_byte
980 
983 
985 AST_API void ast_dataitem_021_146_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
986 
988 AST_API void ast_dataitem_021_146_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
989 
997 #define ast_dataitem_021_148_get_size ast_dataitem_get_size_fixed_2_byte
999 
1007 typedef struct _ast_dataitem_021_150_t
1009 {
1010  bool valid;
1011 
1013 
1016 
1018  double mach;
1019 
1021 
1023 #define ast_dataitem_021_150_get_size ast_dataitem_get_size_fixed_2_byte
1024 
1027 
1029 AST_API void ast_dataitem_021_150_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1030 
1032 AST_API void ast_dataitem_021_150_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
1033 
1042 typedef struct _ast_dataitem_021_151_t
1044 {
1045  bool valid;
1046 
1049 
1051 #define ast_dataitem_021_151_get_size ast_dataitem_get_size_fixed_2_byte
1052 
1055 
1057 AST_API void ast_dataitem_021_151_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1058 
1060 AST_API void ast_dataitem_021_151_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
1061 
1070 typedef struct _ast_dataitem_021_152_t
1072 {
1073  bool valid;
1074 
1076  double heading;
1078 
1080 #define ast_dataitem_021_152_get_size ast_dataitem_get_size_fixed_2_byte
1081 
1084 
1086 AST_API void ast_dataitem_021_152_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1087 
1089 AST_API void ast_dataitem_021_152_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
1090 
1091 
1102 
1104 #define ast_dataitem_021_155_get_size ast_dataitem_vertical_rate_get_size
1105 
1107 #define ast_dataitem_021_155_decode ast_dataitem_vertical_rate_decode
1108 
1110 #define ast_dataitem_021_155_encode ast_dataitem_vertical_rate_encode
1111 
1113 #define ast_dataitem_021_155_get_summary ast_dataitem_vertical_rate_get_summary
1114 
1116 #define ast_dataitem_021_155_get_detail_html ast_dataitem_vertical_rate_get_detail_html
1117 
1128 
1130 #define ast_dataitem_021_157_get_size ast_dataitem_vertical_rate_get_size
1131 
1133 #define ast_dataitem_021_157_decode ast_dataitem_vertical_rate_decode
1134 
1136 #define ast_dataitem_021_157_encode ast_dataitem_vertical_rate_encode
1137 
1139 #define ast_dataitem_021_157_get_summary ast_dataitem_vertical_rate_get_summary
1140 
1142 #define ast_dataitem_021_157_get_detail_html ast_dataitem_vertical_rate_get_detail_html
1143 
1152 typedef struct _ast_dataitem_021_160_t
1154 {
1155  bool valid;
1156 
1158 
1160  double ground_speed;
1161 
1163  double track_angle;
1165 
1167 #define ast_dataitem_021_160_get_size ast_dataitem_get_size_fixed_4_byte
1168 
1171 
1173 AST_API ast_dataitem_t ast_dataitem_021_160_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
1174 
1176 AST_API void ast_dataitem_021_160_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1177 
1179 AST_API void ast_dataitem_021_160_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
1180 
1191 
1193 #define ast_dataitem_021_161_get_size ast_dataitem_track_number_get_size
1194 
1196 #define ast_dataitem_021_161_decode ast_dataitem_track_number_decode
1197 
1199 #define ast_dataitem_021_161_encode ast_dataitem_track_number_encode
1200 
1202 #define ast_dataitem_021_161_get_summary ast_dataitem_track_number_get_summary
1203 
1205 #define ast_dataitem_021_161_get_detail_html ast_dataitem_track_number_get_detail_html
1206 
1214 #define ast_dataitem_021_165_get_size ast_dataitem_get_size_var_2_byte
1216 
1227 
1229 #define ast_dataitem_021_170_get_size ast_dataitem_aircraft_id_get_size
1230 
1232 #define ast_dataitem_021_170_decode ast_dataitem_aircraft_id_decode
1233 
1235 #define ast_dataitem_021_170_encode ast_dataitem_aircraft_id_encode
1236 
1238 #define ast_dataitem_021_170_get_summary ast_dataitem_aircraft_id_get_summary
1239 
1241 #define ast_dataitem_021_170_get_detail_html ast_dataitem_aircraft_id_get_detail_html
1242 
1251 typedef enum _ast_adsb_emergeny_type_t
1252 {
1261 
1262 typedef enum _ast_adsb_sur_status_t
1263 {
1269 
1271 typedef struct _ast_dataitem_021_200_t
1272 {
1273  bool valid;
1274 
1281 
1283 #define ast_dataitem_021_200_get_size ast_dataitem_get_size_fixed_1_byte
1284 
1287 
1289 AST_API ast_dataitem_t ast_dataitem_021_200_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
1290 
1292 AST_API void ast_dataitem_021_200_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1293 
1295 #define ast_dataitem_021_200_get_detail_html ast_dataitem_get_detail_html_dummy
1296 
1306 typedef struct _ast_dataitem_021_A08_t
1308 {
1309  bool valid;
1310 
1313 
1315 #define ast_dataitem_021_A08_get_size ast_dataitem_get_size_fixed_1_byte
1316 
1319 
1321 AST_API ast_dataitem_t ast_dataitem_021_A08_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
1322 
1324 AST_API void ast_dataitem_021_A08_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1325 
1327 #define ast_dataitem_021_A08_get_detail_html ast_dataitem_get_detail_html_dummy
1328 
1337 typedef enum _ast_adsb_link_type_t
1338 {
1345 
1347 typedef struct _ast_dataitem_021_210_t
1348 {
1349  bool valid;
1350 
1352  unsigned int version;
1355 
1357 #define ast_dataitem_021_210_get_size ast_dataitem_get_size_fixed_1_byte
1358 
1361 
1363 AST_API ast_dataitem_t ast_dataitem_021_210_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
1364 
1366 AST_API void ast_dataitem_021_210_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1367 
1369 AST_API void ast_dataitem_021_210_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
1370 
1371 
1380 typedef struct _ast_dataitem_021_A06_t
1382 {
1383  bool valid;
1384 
1385  bool cdti;
1386  bool mode_s;
1387  bool uat;
1388  bool vdl4;
1389  bool other;
1391 
1393 #define ast_dataitem_021_A06_get_size ast_dataitem_get_size_fixed_1_byte
1394 
1397 
1399 AST_API void ast_dataitem_021_A06_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1400 
1402 AST_API void ast_dataitem_021_A06_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
1403 
1412 AST_API size_t ast_dataitem_021_220_get_size(const unsigned char* buffer, const size_t bufsize);
1414 
1415 // Decode function of dataitem
1416 //ast_dataitem_021_220_t ast_dataitem_021_220_decode(const ast_dataitem_t di);
1417 
1419 #define ast_dataitem_021_220_get_summary ast_dataitem_subfields_get_summary
1420 
1422 #define ast_dataitem_021_220_get_detail_html ast_dataitem_subfields_get_detail_html
1423 
1425 AST_API size_t ast_subfield_021_220_get_size(const unsigned char* buffer, const size_t bufsize, const ast_subfield_type_t type);
1426 
1429 
1432 
1434 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);
1435 
1437 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);
1438 
1448 typedef struct _ast_dataitem_021_230_t
1450 {
1451  bool valid;
1452 
1455 
1457 #define ast_dataitem_021_230_get_size ast_dataitem_get_size_fixed_2_byte
1458 
1461 
1463 AST_API void ast_dataitem_021_230_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1464 
1466 #define ast_dataitem_021_230_get_detail_html ast_dataitem_get_detail_html_dummy
1467 
1478 
1480 #define ast_dataitem_021_250_get_size ast_dataitem_modes_mb_get_size
1481 
1483 #define ast_dataitem_021_250_decode ast_dataitem_modes_mb_decode
1484 
1486 #define ast_dataitem_021_250_get_summary ast_dataitem_modes_mb_get_summary
1487 
1489 #define ast_dataitem_021_250_get_detail_html ast_dataitem_modes_mb_get_detail_html
1490 
1498 typedef struct _ast_dataitem_021_271_t
1500 {
1501  bool valid;
1502 
1504 
1506 #define ast_dataitem_021_271_get_size ast_dataitem_get_size_var_2_byte
1507 
1510 
1511 // Get Summary function
1512 //void ast_dataitem_021_230_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1513 
1514 // Get detail function
1515 //#define ast_dataitem_021_230_get_detail_html ast_dataitem_get_detail_html_dummy
1516 
1525 AST_API size_t ast_dataitem_021_A07_get_size(const unsigned char* buffer, const size_t bufsize);
1527 
1530 
1531 // Get Summary function
1532 //void ast_dataitem_021_230_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1533 
1534 // Get detail function
1535 //#define ast_dataitem_021_230_get_detail_html ast_dataitem_get_detail_html_dummy
1536 
1548 typedef struct _ast_dataitem_021_295_t
1550 {
1551  bool valid;
1552 
1554  size_t n_subfields;
1555 
1556  //subfield #1
1558  double aos_age;
1559 
1560  //subfield #2
1562  double trd_age;
1563 
1564  //subfield #3
1566  double m3a_age;
1567 
1568  //subfield #4
1570  double qi_age;
1571 
1572  //subfield #5
1574  double ti_age;
1575 
1576  //subfield #6
1578  double mam_age;
1579 
1580  //subfield #7
1582  double gh_age;
1583 
1584  //subfield #8
1586  double fl_age;
1587 
1588  //subfield #9
1590  double isa_age;
1591 
1592  //subfield #10
1594  double fsa_age;
1595 
1596  //subfield #11
1598  double as_age;
1599 
1600  //subfield #12
1602  double tas_age;
1603 
1604  //subfield #13
1606  double mh_age;
1607 
1608  //subfield #14
1610  double bvr_age;
1611 
1612  //subfield #15
1614  double gvr_age;
1615 
1616  //subfield #16
1618  double gv_age;
1619 
1620  //subfield #17
1622  double tar_age;
1623 
1624  //subfield #18
1626  double tid_age;
1627 
1628  //subfield #19
1630  double ts_age;
1631 
1632  //subfield #20
1634  double met_age;
1635 
1636  //subfield #21
1638  double roa_age;
1639 
1640  //subfield #22
1642  double ara_age;
1643 
1644  //subfield #23
1646  double scc_age;
1647 
1649 
1651 AST_API size_t ast_dataitem_021_295_get_size(const unsigned char* buffer, const size_t bufsize);
1652 
1653 //Decode function of dataitem
1655 
1657 #define ast_dataitem_021_295_get_summary ast_dataitem_subfields_get_summary
1658 
1660 #define ast_dataitem_021_295_get_detail_html ast_dataitem_subfields_get_detail_html
1661 
1663 size_t ast_subfield_021_295_get_size(const unsigned char* buffer, const size_t bufsize, const ast_subfield_type_t type);
1664 
1667 
1670 
1672 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);
1673 
1675 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);
1676 
1685 typedef struct _ast_dataitem_021_400_t
1687 {
1688  bool valid;
1689 
1690  unsigned int id;
1692 
1694 #define ast_dataitem_021_400_get_size ast_dataitem_get_size_fixed_1_byte
1695 
1698 
1700 AST_API void ast_dataitem_021_400_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1701 
1703 #define ast_dataitem_021_400_get_detail_html ast_dataitem_get_detail_html_dummy
1704 
1713 #define ast_dataitem_021_REF_get_size ast_dataitem_reserved_expansion_field_get_size
1715 
1716 // Decode function
1717 //ast_dataitem_021_REF_t ast_dataitem_021_REF_decode(const ast_dataitem_t di);
1718 
1720 #define ast_dataitem_021_REF_get_summary ast_dataitem_reserved_expansion_field_get_summary;
1721 
1722 // Get detail function
1723 #define ast_dataitem_021_REF_get_detail_html ast_dataitem_reserved_expansion_field_get_detail_html;
1724 
1733 #define ast_dataitem_021_SPF_get_size ast_dataitem_special_purpose_field_get_size
1735 
1736 // Decode function
1737 //ast_dataitem_021_SPF_t ast_dataitem_021_SPF_decode(const ast_dataitem_t di);
1738 
1740 #define ast_dataitem_021_SPF_get_summary ast_dataitem_special_purpose_field_get_summary;
1741 
1742 // Get detail function
1743 #define ast_dataitem_021_SPF_get_detail_html ast_dataitem_special_purpose_field_get_detail_html;
1744 
1747 // Data Record
1748 
1751 
1754 
1757 
1760 
1763 
1766 
1769 
1772 
1775 
1777 #define ast_datarecord_021_get_polarcoord 0
1778 
1781 
1784 
1790 typedef struct _ast_datarecord_021_v026_t
1792 {
1793  bool valid;
1794 
1810 
1813 
1815 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);
1816 
1817 
1826 typedef struct _ast_datarecord_021_v24_t
1828 {
1829  bool valid;
1830 
1861 
1864 
1866 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);
1867 
1868 
1871 #ifdef __cplusplus
1872  }
1873 #endif // extern "C"
1874 
1875 #endif //LIBASTERIX_CAT021_H
1876 
1877 // vim:set ft=c.doxygen sw=2 sts=2 fenc=utf8:
bool lnav_not_engaged
Definition: cat021.h:1276
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:825
ast_adsb_altitude_capability_t
Definition: cat021.h:284
ast_dataitem_021_072_t dataitem_021_072
Definition: cat021.h:1839
Altitude.
Definition: type.h:111
bool intent_change
Definition: cat021.h:1275
bool m3a_existing
Definition: cat021.h:1565
ast_dataitem_021_150_t dataitem_021_150
Definition: cat021.h:1852
Data Item I021/200 - Target Status.
Definition: cat021.h:1271
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:677
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:1854
bool valid
Definition: cat021.h:675
Definition: cat021.h:1253
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:1386
ast_dataitem_021_140_t dataitem_021_140
Definition: cat021.h:1850
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:1803
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:621
ast_multi_navi_aids_status_t
Definition: cat021.h:656
Data Item I021/150 - Air Speed.
Definition: cat021.h:1008
bool isa_existing
Definition: cat021.h:1589
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:673
Data Source Identifier (aka SAC/SIC)
Definition: type.h:35
double roa_age
Definition: cat021.h:1638
Definition: cat021.h:1342
Data Item I021/151 - True Air Speed.
Definition: cat021.h:1043
ast_dataitem_021_A08_t dataitem_021_200
Definition: cat021.h:1808
int true_airspeed
Definition: cat021.h:1047
Definition: uap.h:36
ast_adsb_sur_status_t surveillance_status
Definition: cat021.h:1279
bool other
Definition: cat021.h:1389
ast_dataitem_time_of_day_t ast_dataitem_021_077_t
Data Item I021/077 - Time of ASTERIX Report Transmission.
Definition: cat021.h:558
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:1585
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:1626
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:650
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:726
Data Item I021/400 - Receiver ID.
Definition: cat021.h:1686
Definition: cat021.h:1266
int raw_heading
Definition: cat021.h:1075
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:1804
Definition: cat021.h:962
Data Item I021/040 - Target Report Descriptor (Prior version 0.26)
Definition: cat021.h:346
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:960
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:308
double ground_speed
Ground speed, LSB=Kt.
Definition: cat021.h:1160
Definition: cat021.h:965
Data Item I021/210 - MOPS Version.
Definition: cat021.h:1347
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:1618
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:1831
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:617
double trd_age
Definition: cat021.h:1562
bool valid
Definition: cat021.h:1155
bool scc_existing
Definition: cat021.h:1645
bool mh_existing
Definition: cat021.h:1605
bool gv_existing
Definition: cat021.h:1617
Definition: cat021.h:658
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:1838
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:435
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:1853
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:653
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:385
int raw_diff
Definition: cat021.h:252
bool valid
Definition: cat021.h:709
Definition: cat021.h:964
Data Item - Time of Day.
Definition: cat_generic.h:219
bool cpr_validation_failed
Definition: cat021.h:317
bool valid
Definition: cat021.h:1829
ast_dataitem_aircraft_id_t ast_dataitem_021_170_t
Data Item I021/170 - Target Identification.
Definition: cat021.h:1226
double aos_age
Definition: cat021.h:1558
double qi_age
Definition: cat021.h:1570
bool as_existing
Definition: cat021.h:1597
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:1835
ast_dataitem_021_131_t dataitem_021_131
Definition: cat021.h:1848
bool valid
Definition: cat021.h:1073
bool fixed_transponder
Definition: cat021.h:307
Speed.
Definition: type.h:149
Definition: cat021.h:1341
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:648
ast_dataitem_021_077_t dataitem_021_077
Definition: cat021.h:1844
bool valid
Definition: cat021.h:933
Definition: cat021.h:195
bool valid
Definition: cat021.h:971
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:1798
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:680
double isa_age
Definition: cat021.h:1590
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.
Definition: cat021.h:300
ast_dataitem_021_130_t dataitem_021_130
Definition: cat021.h:1847
bool indicated_airspeed_valid
Raw speed. For IAS, LSB = 2^-14 NM/s, for mach, LSB = 0.001.
Definition: cat021.h:1014
ast_dataitem_021_200_t ast_dataitem_021_200_decode(const ast_dataitem_t di)
Decode function.
bool test
Definition: cat021.h:353
Definition: cat021.h:1256
double mam_age
Definition: cat021.h:1578
bool met_existing
Definition: cat021.h:1633
int vel_accuracy
Definition: cat021.h:711
int raw_angle
Definition: cat021.h:1453
bool version_not_supported
Definition: cat021.h:1351
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:584
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:677
ast_adsb_sur_status_t
Definition: cat021.h:1262
This file includes the common used data items shares by different categories.
bool range_check_failed
Definition: cat021.h:319
Data Item - Mode S MB Data.
Definition: cat_generic.h:964
ast_adsb_confidence_level_t confidence_level
Definition: cat021.h:313
Definition: cat021.h:180
ast_dataitem_021_132_t dataitem_021_132
Definition: cat021.h:1849
Definition: cat021.h:1265
bool valid
Definition: cat021.h:204
int raw_ground_speed
Ground speed, LSB=2^-14 NM/S ~= 0.22 Kt.
Definition: cat021.h:1159
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:1258
Data Item I021/271 - Surface Capabilities and Characteristics.
Definition: cat021.h:1499
ast_dataitem_021_020_t dataitem_021_020
Definition: cat021.h:1796
bool valid
Definition: cat021.h:905
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:1690
bool valid
Definition: cat021.h:1349
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:907
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:615
int raw_speed
Definition: cat021.h:1012
double met_age
Definition: cat021.h:1634
bool valid
Definition: cat021.h:1309
Data Item - Service Identification.
Definition: cat_generic.h:133
Definition: cat021.h:185
Definition: cat021.h:288
bool valid
Definition: cat021.h:1688
int selected_altitude
Altitude in two’s complement form, LSB=25ft, -1300ft <= Altitude <= 100000ft.
Definition: cat021.h:975
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:1340
double bvr_age
Definition: cat021.h:1610
bool gvr_existing
Definition: cat021.h:1613
bool spi
Definition: cat021.h:356
bool valid
Definition: cat021.h:348
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:1385
ast_adsb_addr_type_t addr_type
Definition: cat021.h:304
ast_adsb_addr_type_t
Definition: cat021.h:275
bool mam_existing
Definition: cat021.h:1577
Subfield struct.
Definition: subfield.h:292
bool avr_report_capability
Definition: cat021.h:71
Definition: cat021.h:651
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:1827
size_t n_subfields
Definition: cat021.h:1554
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:486
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:535
ast_dataitem_021_145_t dataitem_021_145
Definition: cat021.h:1805
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:622
ast_ac_trajectory_report_capability_t trajectory_report_capability
Definition: cat021.h:69
Data Record I021 v0.26 - ADS-B Messages.
Definition: cat021.h:1791
ast_dataitem_021_210_t dataitem_021_210
Definition: cat021.h:1859
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:799
Definition: cat021.h:963
bool valid
Definition: cat021.h:1501
bool simulated
Definition: cat021.h:352
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:1153
double tar_age
Definition: cat021.h:1622
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:974
bool test
Definition: cat021.h:311
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:1799
bool valid
Definition: cat021.h:250
bool trd_existing
Definition: cat021.h:1561
bool valid
Definition: cat021.h:1793
Data Item I021/095 - Velocity Accuracy.
Definition: cat021.h:707
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:357
Data Item - Position in WGS84 Coordinates.
Definition: cat_generic.h:342
unsigned int sil_s
Definition: cat021.h:619
Definition: cat021.h:1259
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:1802
bool gh_existing
Definition: cat021.h:1581
Definition: cat021.h:184
bool selected_altitude_capability
Definition: cat021.h:355
double fl_age
Definition: cat021.h:1586
ast_dataitem_021_073_t dataitem_021_073
Definition: cat021.h:1840
double heading
Magnetic heading, LSB = 360/2^16 ~= 0.0055 deg.
Definition: cat021.h:1076
bool valid
Definition: cat021.h:302
ast_dataitem_021_295_t ast_dataitem_021_295_decode(const ast_dataitem_t di)
bool tid_existing
Definition: cat021.h:1625
Definition: cat021.h:659
double gh_age
Definition: cat021.h:1582
bool vdl4
Definition: cat021.h:1388
bool roa_existing
Definition: cat021.h:1637
double mach
Definition: cat021.h:1018
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:1841
double ts_age
Definition: cat021.h:1630
bool diff_correction
Definition: cat021.h:350
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:1387
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:316
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:1127
bool independent_position_check_failed
Definition: cat021.h:315
double fsa_age
Definition: cat021.h:1594
ast_dataitem_021_080_t dataitem_021_080
Definition: cat021.h:1800
Implementation of Dataitem concept defined by ASTERIX.
ast_diff_correction_status_t diff_correction_status
Definition: cat021.h:679
ast_dataitem_021_090_t ast_dataitem_021_090_decode(const ast_dataitem_t di)
Decode function.
double ti_age
Definition: cat021.h:1574
ast_dataitem_021_030_t dataitem_021_030
Definition: cat021.h:1797
Data Item I021/295 - Data Ages.
Definition: cat021.h:1549
double track_angle
Track angle, LSB=DEG.
Definition: cat021.h:1163
ast_altitude_t ast_datarecord_021_get_flightlevel(const ast_datarecord_t dr)
Get flight level function.
bool simulated
Definition: cat021.h:310
Definition: cat021.h:191
Definition: cat021.h:667
ast_dataitem_vertical_rate_t ast_dataitem_021_155_t
Data Item I021/155 - Barometric Vertical Rate.
Definition: cat021.h:1101
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:661
bool fixed_transponder
Definition: cat021.h:354
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:1642
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:1352
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:806
bool source_provided
Definition: cat021.h:973
bool valid
Definition: cat021.h:1010
ast_dataitem_021_160_t dataitem_021_160
Definition: cat021.h:1806
const char * ast_subfield_021_220_get_name(const ast_subfield_type_t type)
Get name of subfield.
bool ti_existing
Definition: cat021.h:1573
Definition: cat021.h:666
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:1557
bool ts_existing
Definition: cat021.h:1629
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:931
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:1807
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:1833
Definition: cat021.h:281
Definition: cat021.h:1257
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:1843
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:309
ast_adsb_altitude_capability_t altitude_capability
Definition: cat021.h:358
Definition: cat021.h:194
bool range_check
Definition: cat021.h:306
int raw_level
Flight level without QNH correction, LSB=1/4FL.
Definition: cat021.h:935
ast_adsb_emergeny_type_t priority_status
Definition: cat021.h:1278
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:1343
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:877
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:1277
ast_dataitem_021_170_t dataitem_021_170
Definition: cat021.h:1857
ast_dataitem_021_010_t dataitem_021_010
Definition: cat021.h:1795
Definition: cat021.h:1264
ast_dataitem_021_230_t ast_dataitem_021_230_decode(const ast_dataitem_t di)
Decode function.
double mh_age
Definition: cat021.h:1606
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:477
bool tas_existing
Definition: cat021.h:1601
bool valid
Definition: cat021.h:612
ast_dataitem_021_200_t dataitem_021_200
Definition: cat021.h:1858
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:1641
Definition: cat021.h:1267
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:1045
ast_dataitem_021_070_t dataitem_021_070
Definition: cat021.h:1837
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:851
ast_dataitem_021_161_t dataitem_021_161
Definition: cat021.h:1856
Definition: cat021.h:287
bool fsa_existing
Definition: cat021.h:1593
Definition: cat021.h:1339
unsigned int sda
Definition: cat021.h:620
bool ground
Definition: cat021.h:351
#define AST_MAX_SUBFIELDS
Definition: subfield.h:362
bool valid
Definition: cat021.h:1451
WGS-84 2D Coordinate.
Definition: type.h:103
Definition: cat021.h:1254
Data Item - Signal Amplitude.
Definition: cat_generic.h:926
ast_dataitem_time_of_day_t ast_dataitem_021_073_t
Data Item I021/073 - Time of Message Reception for Position.
Definition: cat021.h:460
Data Item I021/146 - Selected Altitude.
Definition: cat021.h:969
Definition: cat021.h:669
Time of day.
Definition: type.h:43
ast_dataitem_021_080_t dataitem_021_080
Definition: cat021.h:1845
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:610
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:1842
bool valid
Definition: cat021.h:1383
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:305
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:1381
double as_age
Definition: cat021.h:1598
ast_dataitem_track_number_t ast_dataitem_021_161_t
Data Item I021/161 - Track Number.
Definition: cat021.h:1190
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:1071
Definition: cat021.h:58
bool local_decoding_position_jump_detected
Definition: cat021.h:318
ast_dataitem_021_145_t dataitem_021_145
Definition: cat021.h:1851
ast_dataitem_021_040_t dataitem_021_040
Definition: cat021.h:1836
ast_dataitem_time_of_day_t ast_dataitem_021_071_t
Data Item I021/071 - Time of Applicability for Position.
Definition: cat021.h:410
unsigned int nuc_r
Definition: cat021.h:614
ast_dataitem_021_016_t dataitem_021_016
Definition: cat021.h:1834
ast_multi_navi_aids_status_t multi_navi_aids_status
Definition: cat021.h:678
Data Item - Target Identification.
Definition: cat_generic.h:845
Datarecord.
Definition: datarecord.h:40
ast_dataitem_021_160_t dataitem_021_160
Definition: cat021.h:1855
ast_diff_correction_status_t
Definition: cat021.h:664
bool valid
Definition: cat021.h:1551
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:1614
bool target_state_report_capability
Definition: cat021.h:70
Definition: cat021.h:1255
int raw_track_angle
Track angle, LSB=360/2^16 DEG ~= 0.0055 DEG.
Definition: cat021.h:1162
Definition: cat021.h:668
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:1621
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:1832
bool no_selected_altitude
Definition: cat021.h:312
ast_adsb_link_type_t link_type
Definition: cat021.h:1353
ast_adsb_link_type_t
Definition: cat021.h:1337
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:1801
double m3a_age
Definition: cat021.h:1566
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:1251
ast_dataitem_021_090_t dataitem_021_090
Definition: cat021.h:1846
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:1602
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:1609
Definition: cat021.h:660
ast_dataitem_modes_mb_t ast_dataitem_021_250_t
Data Item I021/250 - Mode S MB Data.
Definition: cat021.h:1477
bool qi_existing
Definition: cat021.h:1569
Definition: cat021.h:297
Data Item I021/140 - Geometric Altitude.
Definition: cat021.h:903
bool valid
Definition: cat021.h:1273
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:1017
Definition: cat021.h:652
bool range_exceeded
Range exceeded indicator.
Definition: cat021.h:1157
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:509
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:1307
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:1311
Implementation of Subfield concept defined by ASTERIX.
bool tcas_ra_active
Definition: cat021.h:68
unsigned int nac_p
Definition: cat021.h:618
Data Item I021/230 - Roll Angle.
Definition: cat021.h:1449
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:773
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:1646
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:314
double indicated_airspeed
Definition: cat021.h:1015
unsigned int nic_baro
Definition: cat021.h:616
ast_squawk_t ast_datarecord_021_get_squawk(const ast_datarecord_t dr)
Get Mode-3/A code function.