cat021.h
Go to the documentation of this file.
1 /*
2  * libasterix
3  * Copyright [2020] SinoATC (http://www.sinoatc.com/).
4  * Copyright [2013-2020] Aerosys Corporation (http://www.aerosys.cn/).
5  * All Rights Reserved.
6  *
7  * NOTICE: All information contained herein is, and remains
8  * the property of SinoATC and its suppliers, if any.
9  * The intellectual and technical concepts contained herein
10  * are proprietary to Aerosys Corporation and its suppliers and may be
11  * covered by U.S. and Foreign Patents, patents in process,
12  * and are protected by trade secret or copyright law.
13  * Dissemination of this information or reproduction of this material
14  * is strictly forbidden unless prior written permission is obtained
15  * from SinoATC.
16  */
17 
32 #ifndef LIBASTERIX_CAT021_H
33 #define LIBASTERIX_CAT021_H
34 
35 #include "dataitem.h"
36 #include "datarecord.h"
37 #include "cat_generic.h"
38 #include "subfield.h"
39 
40 #ifdef __cplusplus
41 extern "C" {
42 #endif
43 
44 // Data Item
45 
48 
49 
55 typedef enum _ast_ac_trajectory_report_capability_t
56 {
61 
63 typedef struct _ast_dataitem_021_008_t
64 {
65  bool valid;
66 
75 
77 #define ast_dataitem_021_008_get_size ast_dataitem_get_size_fixed_1_byte
78 
81 
83 AST_API void ast_dataitem_021_008_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
84 
86 AST_API void ast_dataitem_021_008_get_detail_html(char* detail, const size_t detail_size, const ast_dataitem_t di);
87 
88 
97 #define ast_dataitem_021_010_get_size ast_dataitem_data_source_identifier_get_size
98 #define ast_dataitem_021_010_decode ast_dataitem_data_source_identifier_decode
99 #define ast_dataitem_021_010_encode ast_dataitem_data_source_identifier_encode
100 #define ast_dataitem_021_010_get_summary ast_dataitem_data_source_identifier_get_summary
101 #define ast_dataitem_021_010_get_detail_html ast_dataitem_data_source_identifier_get_detail_html
102 
112 #define ast_dataitem_021_015_get_size ast_dataitem_service_id_get_size
113 #define ast_dataitem_021_015_decode ast_dataitem_service_id_decode
114 #define ast_dataitem_021_015_get_summary ast_dataitem_service_id_get_summary
115 #define ast_dataitem_021_015_get_detail_html ast_dataitem_service_id_get_detail_html
116 
125 typedef struct _ast_dataitem_021_016_t
127 {
128  bool valid;
129 
130  double report_period;
131  unsigned int raw_report_period;
133 
135 #define ast_dataitem_021_016_get_size ast_dataitem_get_size_fixed_1_byte
136 
139 
141 AST_API void ast_dataitem_021_016_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
142 
144 #define ast_dataitem_021_016_get_detail_html ast_dataitem_get_detail_html_dummy;
145 
154 typedef enum _ast_emitter_category_t
155 {
175 
176 
178 typedef struct _ast_dataitem_021_020_t
179 {
180  bool valid;
181 
184 
186 #define ast_dataitem_021_020_get_size ast_dataitem_get_size_fixed_1_byte
187 
190 
192 ast_dataitem_t ast_dataitem_021_020_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
193 
195 AST_API void ast_dataitem_021_020_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
196 
198 AST_API void ast_dataitem_021_020_get_detail_html(char* detail, const size_t detail_size, const ast_dataitem_t di);
199 
209 #define ast_dataitem_021_030_get_size ast_dataitem_time_of_day_get_size
210 #define ast_dataitem_021_030_decode ast_dataitem_time_of_day_decode
211 #define ast_dataitem_021_030_encode ast_dataitem_time_of_day_encode
212 #define ast_dataitem_021_030_get_summary ast_dataitem_time_of_day_get_summary
213 #define ast_dataitem_021_030_get_detail_html ast_dataitem_time_of_day_get_detail_html
214 
223 typedef struct _ast_dataitem_021_032_t
225 {
226  bool valid;
227 
228  int raw_diff;
230 
232 #define ast_dataitem_021_032_get_size ast_dataitem_get_size_fixed_1_byte
233 
236 
238 AST_API void ast_dataitem_021_032_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
239 
241 AST_API void ast_dataitem_021_032_get_detail_html(char* detail, const size_t detail_size, const ast_dataitem_t di);
242 
250 typedef enum _ast_adsb_addr_type_t
251 {
258 
259 typedef enum _ast_adsb_altitude_capability_t
260 {
266 
267 typedef enum _ast_adsb_confidence_level_t
268 {
274 
275 typedef struct _ast_dataitem_021_040_t
276 {
277  bool valid;
278 
284  bool ground;
285  bool simulated;
286  bool test;
290  bool nogo;
295 
297 #define ast_dataitem_021_040_get_size ast_dataitem_get_size_var_3_byte
298 
301 
303 AST_API void ast_dataitem_021_040_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
304 
306 AST_API void ast_dataitem_021_040_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
307 
308 
318 typedef struct _ast_dataitem_021_A03_t
319 {
320  bool valid;
321 
323  bool ground;
324  bool simulated;
325  bool test;
328  bool spi;
332 
334 #define ast_dataitem_021_A03_get_size ast_dataitem_get_size_fixed_2_byte
335 
338 
340 ast_dataitem_t ast_dataitem_021_A03_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
341 
343 AST_API void ast_dataitem_021_A03_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
344 
346 AST_API void ast_dataitem_021_A03_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
347 
357 #define ast_dataitem_021_070_get_size ast_dataitem_mode_3a_code_get_size
358 #define ast_dataitem_021_070_decode ast_dataitem_mode_3a_code_decode
359 #define ast_dataitem_021_070_encode ast_dataitem_mode_3a_code_encode
360 #define ast_dataitem_021_070_get_summary ast_dataitem_mode_3a_code_get_summary
361 #define ast_dataitem_021_070_get_detail_html ast_dataitem_mode_3a_code_get_detail_html
362 
371 #define ast_dataitem_021_071_get_size ast_dataitem_time_of_day_get_size
372 #define ast_dataitem_021_071_decode ast_dataitem_time_of_day_decode
373 #define ast_dataitem_021_071_get_summary ast_dataitem_time_of_day_get_summary
374 #define ast_dataitem_021_071_get_detail_html ast_dataitem_time_of_day_get_detail_html
375 
384 #define ast_dataitem_021_072_get_size ast_dataitem_time_of_day_get_size
385 #define ast_dataitem_021_072_decode ast_dataitem_time_of_day_decode
386 #define ast_dataitem_021_072_get_summary ast_dataitem_time_of_day_get_summary
387 #define ast_dataitem_021_072_get_detail_html ast_dataitem_time_of_day_get_detail_html
388 
397 #define ast_dataitem_021_073_get_size ast_dataitem_time_of_day_get_size
398 #define ast_dataitem_021_073_decode ast_dataitem_time_of_day_decode
399 #define ast_dataitem_021_073_get_summary ast_dataitem_time_of_day_get_summary
400 #define ast_dataitem_021_073_get_detail_html ast_dataitem_time_of_day_get_detail_html
401 
411 #define ast_dataitem_021_074_get_size ast_dataitem_time_of_day_high_get_size
412 #define ast_dataitem_021_074_decode ast_dataitem_time_of_day_high_decode
413 #define ast_dataitem_021_074_get_summary ast_dataitem_time_of_day_high_get_summary
414 #define ast_dataitem_021_074_get_detail_html ast_dataitem_time_of_day_high_get_detail_html
415 
425 #define ast_dataitem_021_075_get_size ast_dataitem_time_of_day_get_size
426 #define ast_dataitem_021_075_decode ast_dataitem_time_of_day_decode
427 #define ast_dataitem_021_075_get_summary ast_dataitem_time_of_day_get_summary
428 #define ast_dataitem_021_075_get_detail_html ast_dataitem_time_of_day_get_detail_html
429 
438 #define ast_dataitem_021_076_get_size ast_dataitem_time_of_day_high_get_size
439 #define ast_dataitem_021_076_decode ast_dataitem_time_of_day_high_decode
440 #define ast_dataitem_021_076_get_summary ast_dataitem_time_of_day_high_get_summary
441 #define ast_dataitem_021_076_get_detail_html ast_dataitem_time_of_day_high_get_detail_html
442 
452 #define ast_dataitem_021_077_get_size ast_dataitem_time_of_day_get_size
453 #define ast_dataitem_021_077_decode ast_dataitem_time_of_day_decode
454 #define ast_dataitem_021_077_get_summary ast_dataitem_time_of_day_get_summary
455 #define ast_dataitem_021_077_get_detail_html ast_dataitem_time_of_day_get_detail_html
456 
466 #define ast_dataitem_021_080_get_size ast_dataitem_target_address_get_size
467 #define ast_dataitem_021_080_decode ast_dataitem_target_address_decode
468 #define ast_dataitem_021_080_encode ast_dataitem_target_address_encode
469 #define ast_dataitem_021_080_get_summary ast_dataitem_target_address_get_summary
470 #define ast_dataitem_021_080_get_detail_html ast_dataitem_target_address_get_detail_html
471 
480 typedef struct _ast_dataitem_021_090_t
482 {
483  bool valid;
484 
485  unsigned int nuc_r;
486  unsigned int nuc_p;
487  unsigned int nic_baro;
488  unsigned int sil;
489  unsigned int nac_p;
490  unsigned int sil_s;
491  unsigned int sda;
492  unsigned int gva;
493  unsigned int pic;
495 
497 #define ast_dataitem_021_090_get_size ast_dataitem_get_size_var_4_byte
498 
501 
503 //AST_API ast_dataitem_t ast_dataitem_021_090_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
504 
506 AST_API void ast_dataitem_021_090_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
507 
509 AST_API void ast_dataitem_021_090_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
510 
519 typedef enum _ast_acas_status_t
520 {
526 
527 typedef enum _ast_multi_navi_aids_status_t
528 {
534 
535 typedef enum _ast_diff_correction_status_t
536 {
542 
543 typedef struct _ast_dataitem_021_A05_t
544 {
545  bool valid;
546 
552 
554 #define ast_dataitem_021_A05_get_size ast_dataitem_get_size_fixed_2_byte
555 
558 
560 AST_API ast_dataitem_t ast_dataitem_021_A05_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
561 
563 AST_API void ast_dataitem_021_A05_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
564 
566 AST_API void ast_dataitem_021_A05_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
567 
576 typedef struct _ast_dataitem_021_095_t
578 {
579  bool valid;
580 
583 
585 #define ast_dataitem_021_095_get_size ast_dataitem_get_size_fixed_1_byte
586 
589 
591 AST_API ast_dataitem_t ast_dataitem_021_095_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
592 
594 AST_API void ast_dataitem_021_095_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
595 
597 #define ast_dataitem_021_095_get_detail_html ast_dataitem_get_detail_html_dummy
598 
607 size_t ast_dataitem_021_110_get_size(const unsigned char* buffer, const size_t bufsize);
609 
610 // Decode function of dataitem
611 //ast_dataitem_021_110_t ast_dataitem_021_110_decode(const ast_dataitem_t di);
612 
614 #define ast_dataitem_021_110_get_summary ast_dataitem_subfields_get_summary
615 
617 #define ast_dataitem_021_110_get_detail_html ast_dataitem_subfields_get_detail_html
618 
620 AST_API size_t ast_subfield_021_110_get_size(const unsigned char* buffer, const size_t bufsize, const ast_subfield_type_t type);
621 
624 
627 
629 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);
630 
632 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);
633 
643 #define ast_dataitem_021_130_get_size ast_dataitem_position_wgs84_low_get_size
644 #define ast_dataitem_021_130_decode ast_dataitem_position_wgs84_low_decode
645 #define ast_dataitem_021_130_encode ast_dataitem_position_wgs84_low_encode
646 #define ast_dataitem_021_130_get_summary ast_dataitem_position_wgs84_low_get_summary
647 #define ast_dataitem_021_130_get_detail_html ast_dataitem_position_wgs84_low_get_detail_html
648 
658 #define ast_dataitem_021_A02_get_size ast_dataitem_position_wgs84_get_size
659 #define ast_dataitem_021_A02_decode ast_dataitem_position_wgs84_decode
660 #define ast_dataitem_021_A02_encode ast_dataitem_position_wgs84_encode
661 #define ast_dataitem_021_A02_get_summary ast_dataitem_position_wgs84_get_summary
662 #define ast_dataitem_021_A02_get_detail_html ast_dataitem_position_wgs84_get_detail_html
663 
673 #define ast_dataitem_021_131_get_size ast_dataitem_position_wgs84_get_size
674 #define ast_dataitem_021_131_decode ast_dataitem_position_wgs84_decode
675 #define ast_dataitem_021_131_encode ast_dataitem_position_wgs84_encode
676 #define ast_dataitem_021_131_get_summary ast_dataitem_position_wgs84_get_summary
677 #define ast_dataitem_021_131_get_detail_html ast_dataitem_position_wgs84_get_detail_html
678 
689 
691 #define ast_dataitem_021_A04_get_size ast_dataitem_signal_amplitude_get_size
692 
694 #define ast_dataitem_021_A04_decode ast_dataitem_signal_amplitude_decode
695 
697 #define ast_dataitem_021_A04_encode ast_dataitem_signal_amplitude_encode
698 
700 #define ast_dataitem_021_A04_get_summary ast_dataitem_signal_amplitude_get_summary
701 
703 #define ast_dataitem_021_A04_get_detail_html ast_dataitem_signal_amplitude_get_detail_html
704 
715 
717 #define ast_dataitem_021_132_get_size ast_dataitem_signal_amplitude_get_size
718 
720 #define ast_dataitem_021_132_decode ast_dataitem_signal_amplitude_decode
721 
723 #define ast_dataitem_021_132_encode ast_dataitem_signal_amplitude_encode
724 
726 #define ast_dataitem_021_132_get_summary ast_dataitem_signal_amplitude_get_summary
727 
729 #define ast_dataitem_021_132_get_detail_html ast_dataitem_signal_amplitude_get_detail_html
730 
739 typedef struct _ast_dataitem_021_140_t
741 {
742  bool valid;
743 
746 
748 #define ast_dataitem_021_140_get_size ast_dataitem_get_size_fixed_2_byte
749 
752 
754 AST_API void ast_dataitem_021_140_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
755 
757 AST_API void ast_dataitem_021_140_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
758 
767 typedef struct _ast_dataitem_021_145_t
769 {
770  bool valid;
771 
772  int raw_level;
774 
776 #define ast_dataitem_021_145_get_size ast_dataitem_get_size_fixed_2_byte
777 
780 
782 AST_API ast_dataitem_t ast_dataitem_021_145_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
783 
785 void ast_dataitem_021_145_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
786 
788 void ast_dataitem_021_145_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
789 
797 typedef enum _ast_adsb_sas_type_t
798 {
804 
806 typedef struct _ast_dataitem_021_146_t
807 {
808  bool valid;
809 
814 
816 #define ast_dataitem_021_146_get_size ast_dataitem_get_size_fixed_2_byte
817 
820 
822 AST_API void ast_dataitem_021_146_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
823 
825 AST_API void ast_dataitem_021_146_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
826 
834 #define ast_dataitem_021_148_get_size ast_dataitem_get_size_fixed_2_byte
836 
844 typedef struct _ast_dataitem_021_150_t
846 {
847  bool valid;
848 
849  int raw_speed;
850 
853 
855  double mach;
856 
858 
860 #define ast_dataitem_021_150_get_size ast_dataitem_get_size_fixed_2_byte
861 
864 
866 AST_API void ast_dataitem_021_150_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
867 
869 AST_API void ast_dataitem_021_150_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
870 
879 typedef struct _ast_dataitem_021_151_t
881 {
882  bool valid;
883 
886 
888 #define ast_dataitem_021_151_get_size ast_dataitem_get_size_fixed_2_byte
889 
892 
894 AST_API void ast_dataitem_021_151_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
895 
897 AST_API void ast_dataitem_021_151_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
898 
907 typedef struct _ast_dataitem_021_152_t
909 {
910  bool valid;
911 
913  double heading;
915 
917 #define ast_dataitem_021_152_get_size ast_dataitem_get_size_fixed_2_byte
918 
921 
923 AST_API void ast_dataitem_021_152_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
924 
926 AST_API void ast_dataitem_021_152_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
927 
928 
938 #define ast_dataitem_021_155_get_size ast_dataitem_vertical_rate_get_size
939 #define ast_dataitem_021_155_decode ast_dataitem_vertical_rate_decode
940 #define ast_dataitem_021_155_get_summary ast_dataitem_vertical_rate_get_summary
941 #define ast_dataitem_021_155_get_detail_html ast_dataitem_vertical_rate_get_detail_html
942 
952 #define ast_dataitem_021_157_get_size ast_dataitem_vertical_rate_get_size
953 #define ast_dataitem_021_157_decode ast_dataitem_vertical_rate_decode
954 #define ast_dataitem_021_157_get_summary ast_dataitem_vertical_rate_get_summary
955 #define ast_dataitem_021_157_get_detail_html ast_dataitem_vertical_rate_get_detail_html
956 
965 typedef struct _ast_dataitem_021_160_t
967 {
968  bool valid;
969 
971  double ground_speed;
972 
974  double track_angle;
976 
978 #define ast_dataitem_021_160_get_size ast_dataitem_get_size_fixed_4_byte
979 
982 
984 AST_API ast_dataitem_t ast_dataitem_021_160_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
985 
987 AST_API void ast_dataitem_021_160_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
988 
990 AST_API void ast_dataitem_021_160_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
991 
1002 
1004 #define ast_dataitem_021_161_get_size ast_dataitem_track_number_get_size
1005 
1007 #define ast_dataitem_021_161_decode ast_dataitem_track_number_decode
1008 
1010 #define ast_dataitem_021_161_encode ast_dataitem_track_number_encode
1011 
1013 #define ast_dataitem_021_161_get_summary ast_dataitem_track_number_get_summary
1014 
1016 #define ast_dataitem_021_161_get_detail_html ast_dataitem_track_number_get_detail_html
1017 
1025 #define ast_dataitem_021_165_get_size ast_dataitem_get_size_var_2_byte
1027 
1037 #define ast_dataitem_021_170_get_size ast_dataitem_aircraft_id_get_size
1038 #define ast_dataitem_021_170_decode ast_dataitem_aircraft_id_decode
1039 #define ast_dataitem_021_170_encode ast_dataitem_aircraft_id_encode
1040 #define ast_dataitem_021_170_get_summary ast_dataitem_aircraft_id_get_summary
1041 #define ast_dataitem_021_170_get_detail_html ast_dataitem_aircraft_id_get_detail_html
1042 
1051 typedef enum _ast_adsb_emergeny_type_t
1052 {
1060 
1062 typedef struct _ast_dataitem_021_200_t
1063 {
1064  bool valid;
1065 
1068 
1070 #define ast_dataitem_021_200_get_size ast_dataitem_get_size_fixed_1_byte
1071 
1074 
1076 AST_API ast_dataitem_t ast_dataitem_021_200_encode(unsigned char* buffer, const size_t buf_size, const ast_dataitem_ex_t xdi);
1077 
1079 AST_API void ast_dataitem_021_200_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1080 
1082 #define ast_dataitem_021_200_get_detail_html ast_dataitem_get_detail_html_dummy
1083 
1092 typedef enum _ast_adsb_link_type_t
1093 {
1100 
1102 typedef struct _ast_dataitem_021_210_t
1103 {
1104  bool valid;
1105 
1107  unsigned int version;
1110 
1112 #define ast_dataitem_021_210_get_size ast_dataitem_get_size_fixed_1_byte
1113 
1116 
1118 AST_API void ast_dataitem_021_210_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1119 
1121 AST_API void ast_dataitem_021_210_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
1122 
1123 
1132 typedef struct _ast_dataitem_021_A06_t
1134 {
1135  bool valid;
1136 
1137  bool cdti;
1138  bool mode_s;
1139  bool uat;
1140  bool vdl4;
1141  bool other;
1143 
1145 #define ast_dataitem_021_A06_get_size ast_dataitem_get_size_fixed_1_byte
1146 
1149 
1151 AST_API void ast_dataitem_021_A06_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1152 
1154 AST_API void ast_dataitem_021_A06_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
1155 
1164 AST_API size_t ast_dataitem_021_220_get_size(const unsigned char* buffer, const size_t bufsize);
1166 
1167 // Decode function of dataitem
1168 //ast_dataitem_021_220_t ast_dataitem_021_220_decode(const ast_dataitem_t di);
1169 
1171 #define ast_dataitem_021_220_get_summary ast_dataitem_subfields_get_summary
1172 
1174 #define ast_dataitem_021_220_get_detail_html ast_dataitem_subfields_get_detail_html
1175 
1177 AST_API size_t ast_subfield_021_220_get_size(const unsigned char* buffer, const size_t bufsize, const ast_subfield_type_t type);
1178 
1181 
1184 
1186 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);
1187 
1189 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);
1190 
1200 typedef struct _ast_dataitem_021_230_t
1202 {
1203  bool valid;
1204 
1207 
1209 #define ast_dataitem_021_230_get_size ast_dataitem_get_size_fixed_2_byte
1210 
1213 
1215 AST_API void ast_dataitem_021_230_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1216 
1218 #define ast_dataitem_021_230_get_detail_html ast_dataitem_get_detail_html_dummy
1219 
1229 #define ast_dataitem_021_250_get_size ast_dataitem_modes_mb_get_size
1230 #define ast_dataitem_021_250_decode ast_dataitem_modes_mb_decode
1231 #define ast_dataitem_021_250_get_summary ast_dataitem_modes_mb_get_summary
1232 #define ast_dataitem_021_250_get_detail_html ast_dataitem_modes_mb_get_detail_html
1233 
1241 typedef struct _ast_dataitem_021_271_t
1243 {
1244  bool valid;
1245 
1247 
1249 #define ast_dataitem_021_271_get_size ast_dataitem_get_size_var_2_byte
1250 
1253 
1254 // Get Summary function
1255 //void ast_dataitem_021_230_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1256 
1257 // Get detail function
1258 //#define ast_dataitem_021_230_get_detail_html ast_dataitem_get_detail_html_dummy
1259 
1268 AST_API size_t ast_dataitem_021_A07_get_size(const unsigned char* buffer, const size_t bufsize);
1270 
1273 
1274 // Get Summary function
1275 //void ast_dataitem_021_230_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1276 
1277 // Get detail function
1278 //#define ast_dataitem_021_230_get_detail_html ast_dataitem_get_detail_html_dummy
1279 
1291 typedef struct _ast_dataitem_021_295_t
1293 {
1294  bool valid;
1295 
1297  size_t n_subfields;
1298 
1299  //subfield #1
1301  double aos_age;
1302 
1303  //subfield #2
1305  double trd_age;
1306 
1307  //subfield #3
1309  double m3a_age;
1310 
1311  //subfield #4
1313  double qi_age;
1314 
1315  //subfield #5
1317  double ti_age;
1318 
1319  //subfield #6
1321  double mam_age;
1322 
1323  //subfield #7
1325  double gh_age;
1326 
1327  //subfield #8
1329  double fl_age;
1330 
1331  //subfield #9
1333  double isa_age;
1334 
1335  //subfield #10
1337  double fsa_age;
1338 
1339  //subfield #11
1341  double as_age;
1342 
1343  //subfield #12
1345  double tas_age;
1346 
1347  //subfield #13
1349  double mh_age;
1350 
1351  //subfield #14
1353  double bvr_age;
1354 
1355  //subfield #15
1357  double gvr_age;
1358 
1359  //subfield #16
1361  double gv_age;
1362 
1363  //subfield #17
1365  double tar_age;
1366 
1367  //subfield #18
1369  double tid_age;
1370 
1371  //subfield #19
1373  double ts_age;
1374 
1375  //subfield #20
1377  double met_age;
1378 
1379  //subfield #21
1381  double roa_age;
1382 
1383  //subfield #22
1385  double ara_age;
1386 
1387  //subfield #23
1389  double scc_age;
1390 
1392 
1394 AST_API size_t ast_dataitem_021_295_get_size(const unsigned char* buffer, const size_t bufsize);
1395 
1396 //Decode function of dataitem
1398 
1400 #define ast_dataitem_021_295_get_summary ast_dataitem_subfields_get_summary
1401 
1403 #define ast_dataitem_021_295_get_detail_html ast_dataitem_subfields_get_detail_html
1404 
1406 size_t ast_subfield_021_295_get_size(const unsigned char* buffer, const size_t bufsize, const ast_subfield_type_t type);
1407 
1410 
1413 
1415 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);
1416 
1418 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);
1419 
1428 typedef struct _ast_dataitem_021_400_t
1430 {
1431  bool valid;
1432 
1433  unsigned int id;
1435 
1437 #define ast_dataitem_021_400_get_size ast_dataitem_get_size_fixed_1_byte
1438 
1441 
1443 AST_API void ast_dataitem_021_400_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
1444 
1446 #define ast_dataitem_021_400_get_detail_html ast_dataitem_get_detail_html_dummy
1447 
1456 #define ast_dataitem_021_REF_get_size ast_dataitem_reserved_expansion_field_get_size
1458 
1459 // Decode function
1460 //ast_dataitem_021_REF_t ast_dataitem_021_REF_decode(const ast_dataitem_t di);
1461 
1463 #define ast_dataitem_021_REF_get_summary ast_dataitem_reserved_expansion_field_get_summary;
1464 
1465 // Get detail function
1466 #define ast_dataitem_021_REF_get_detail_html ast_dataitem_reserved_expansion_field_get_detail_html;
1467 
1476 #define ast_dataitem_021_SPF_get_size ast_dataitem_special_purpose_field_get_size
1478 
1479 // Decode function
1480 //ast_dataitem_021_SPF_t ast_dataitem_021_SPF_decode(const ast_dataitem_t di);
1481 
1483 #define ast_dataitem_021_SPF_get_summary ast_dataitem_special_purpose_field_get_summary;
1484 
1485 // Get detail function
1486 #define ast_dataitem_021_SPF_get_detail_html ast_dataitem_special_purpose_field_get_detail_html;
1487 
1490 // Data Record
1491 
1494 
1497 
1500 
1503 
1506 
1509 
1512 
1515 
1518 
1520 #define ast_datarecord_021_get_polarcoord 0
1521 
1524 
1527 
1533 typedef struct _ast_datarecord_021_v026_t
1535 {
1536  bool valid;
1537 
1553 
1556 
1558 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);
1559 
1560 
1569 typedef struct _ast_datarecord_021_v24_t
1571 {
1572  bool valid;
1573 
1595 
1598 
1600 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);
1601 
1602 
1605 #ifdef __cplusplus
1606  }
1607 #endif // extern "C"
1608 
1609 #endif //LIBASTERIX_CAT021_H
1610 
1611 // vim:set ft=c.doxygen sw=2 sts=2 fenc=utf8:
ast_sacsic_t ast_datarecord_021_get_sacsic(const ast_datarecord_t dr)
Get SAC/SIC function.
Definition: cat021.h:270
Definition: cat021.h:159
ast_dataitem_position_wgs84_t ast_dataitem_021_131_t
Definition: cat021.h:672
ast_adsb_altitude_capability_t
Definition: cat021.h:259
ast_dataitem_021_072_t dataitem_021_072
Definition: cat021.h:1581
Altitude.
Definition: type.h:111
bool m3a_existing
Definition: cat021.h:1308
ast_dataitem_021_150_t dataitem_021_150
Definition: cat021.h:1591
Data Item I021/200 - Target Status.
Definition: cat021.h:1062
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:675
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:182
bool valid
Definition: cat021.h:545
Definition: cat021.h:1053
double report_period
Report period in seconds.
Definition: cat021.h:130
Data Item - Time of Day High Precision.
Definition: cat_generic.h:259
bool mode_s
Definition: cat021.h:1138
ast_dataitem_021_140_t dataitem_021_140
Definition: cat021.h:1589
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:432
Heading.
Definition: type.h:137
ast_dataitem_021_A02_t dataitem_021_130
Definition: cat021.h:1546
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:492
ast_multi_navi_aids_status_t
Definition: cat021.h:527
Data Item I021/150 - Air Speed.
Definition: cat021.h:845
bool isa_existing
Definition: cat021.h:1332
ast_subfield_type_t
Definition of subfield id in each dataitem.
Definition: subfield.h:53
Implementation of Datarecord concept defined by ASTERIX.
Definition: cat021.h:543
Data Source Identifier (aka SAC/SIC)
Definition: type.h:35
double roa_age
Definition: cat021.h:1381
Definition: cat021.h:1097
Data Item I021/151 - True Air Speed.
Definition: cat021.h:880
int true_airspeed
Definition: cat021.h:884
Definition: uap.h:37
bool other
Definition: cat021.h:1141
ast_dataitem_time_of_day_t ast_dataitem_021_077_t
Definition: cat021.h:451
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:1328
Definition: cat021.h:157
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:166
double tid_age
Definition: cat021.h:1369
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:521
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:719
Data Item I021/400 - Receiver ID.
Definition: cat021.h:1429
int raw_heading
Definition: cat021.h:912
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:1547
Definition: cat021.h:799
Definition: cat021.h:318
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:797
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:283
double ground_speed
Ground speed, LSB=Kt.
Definition: cat021.h:971
Definition: cat021.h:802
Data Item I021/210 - MOPS Version.
Definition: cat021.h:1102
Definition: cat021.h:254
ast_coordinate_t ast_datarecord_021_get_coordinate(const ast_datarecord_t dr)
Get coordinate function.
double gv_age
Definition: cat021.h:1361
Definition: cat021.h:165
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:94
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:1574
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:488
double trd_age
Definition: cat021.h:1305
bool valid
Definition: cat021.h:968
bool scc_existing
Definition: cat021.h:1388
bool mh_existing
Definition: cat021.h:1348
bool gv_existing
Definition: cat021.h:1360
Definition: cat021.h:529
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:1580
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:72
ast_dataitem_time_of_day_t ast_dataitem_021_072_t
Definition: cat021.h:383
void ast_dataitem_021_151_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
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:154
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:524
Definition: cat021.h:253
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
Definition: cat021.h:356
int raw_diff
Definition: cat021.h:228
bool valid
Definition: cat021.h:579
Definition: cat021.h:801
Data Item - Time of Day.
Definition: cat_generic.h:217
bool valid
Definition: cat021.h:1572
ast_dataitem_aircraft_id_t ast_dataitem_021_170_t
Definition: cat021.h:1036
double aos_age
Definition: cat021.h:1301
double qi_age
Definition: cat021.h:1313
bool as_existing
Definition: cat021.h:1340
Definition: cat021.h:271
bool cdti_operational
Definition: cat021.h:71
Definition: cat021.h:269
ast_dataitem_021_020_t dataitem_021_020
Definition: cat021.h:1577
bool valid
Definition: cat021.h:910
bool fixed_transponder
Definition: cat021.h:282
Speed.
Definition: type.h:149
Definition: cat021.h:1096
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:519
ast_dataitem_021_077_t dataitem_021_077
Definition: cat021.h:1585
bool valid
Definition: cat021.h:770
Definition: cat021.h:171
bool valid
Definition: cat021.h:808
Definition: cat021.h:164
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:1541
int pos_accuracy
Definition: cat021.h:550
double isa_age
Definition: cat021.h:1333
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:275
ast_dataitem_021_130_t dataitem_021_130
Definition: cat021.h:1587
bool indicated_airspeed_valid
Raw speed. For IAS, LSB = 2^-14 NM/s, for mach, LSB = 0.001.
Definition: cat021.h:851
ast_dataitem_021_200_t ast_dataitem_021_200_decode(const ast_dataitem_t di)
Decode function.
bool test
Definition: cat021.h:325
Definition: cat021.h:1056
double mam_age
Definition: cat021.h:1321
bool compact_position_report_validation_failed
Definition: cat021.h:291
bool met_existing
Definition: cat021.h:1376
int vel_accuracy
Definition: cat021.h:581
int raw_angle
Definition: cat021.h:1205
bool version_not_supported
Definition: cat021.h:1106
unsigned int raw_report_period
Raw format as defined in doc, resolution 0.5s.
Definition: cat021.h:131
bool valid
Definition: cat021.h:128
Definition: cat021.h:173
ast_dataitem_target_address_t ast_dataitem_021_080_t
Definition: cat021.h:465
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:65
ast_acas_status_t acas_status
Definition: cat021.h:547
This file includes the common used data items shares by different categories.
bool range_check_failed
Definition: cat021.h:293
Data Item - Mode S MB Data.
Definition: cat_generic.h:957
ast_adsb_confidence_level_t confidence_level
Definition: cat021.h:288
Definition: cat021.h:156
ast_dataitem_021_132_t dataitem_021_132
Definition: cat021.h:1588
bool valid
Definition: cat021.h:180
int raw_ground_speed
Ground speed, LSB=2^-14 NM/S ~= 0.22 Kt.
Definition: cat021.h:970
Definition: type.h:66
ast_dataitem_021_152_t ast_dataitem_021_152_decode(const ast_dataitem_t di)
Decode function.
Definition: cat021.h:1058
Data Item I021/271 - Surface Capabilities and Characteristics.
Definition: cat021.h:1242
ast_dataitem_021_020_t dataitem_021_020
Definition: cat021.h:1539
bool valid
Definition: cat021.h:742
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:1433
bool valid
Definition: cat021.h:1104
ast_dataitem_service_id_t ast_dataitem_021_015_t
Definition: cat021.h:111
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:744
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:486
int raw_speed
Definition: cat021.h:849
double met_age
Definition: cat021.h:1377
Data Item - Service Identification.
Definition: cat_generic.h:134
Definition: cat021.h:161
Definition: cat021.h:263
bool valid
Definition: cat021.h:1431
int selected_altitude
Altitude in two’s complement form, LSB=25ft, -1300ft <= Altitude <= 100000ft.
Definition: cat021.h:812
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:1095
double bvr_age
Definition: cat021.h:1353
bool gvr_existing
Definition: cat021.h:1356
bool spi
Definition: cat021.h:328
bool valid
Definition: cat021.h:320
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:1137
ast_adsb_addr_type_t addr_type
Definition: cat021.h:279
ast_adsb_addr_type_t
Definition: cat021.h:250
bool mam_existing
Definition: cat021.h:1320
Subfield struct.
Definition: subfield.h:293
bool avr_report_capability
Definition: cat021.h:70
Definition: cat021.h:522
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:1570
size_t n_subfields
Definition: cat021.h:1297
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
Definition: cat021.h:410
ast_adsb_emergeny_type_t emergency
Definition: cat021.h:1066
ast_dataitem_time_of_day_high_t ast_dataitem_021_076_t
Definition: cat021.h:437
ast_dataitem_021_145_t dataitem_021_145
Definition: cat021.h:1548
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:493
ast_ac_trajectory_report_capability_t trajectory_report_capability
Definition: cat021.h:68
Data Record I021 v0.26 - ADS-B Messages.
Definition: cat021.h:1534
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:178
ast_dataitem_position_wgs84_t ast_dataitem_021_A02_t
Definition: cat021.h:657
Definition: cat021.h:800
bool valid
Definition: cat021.h:1244
bool simulated
Definition: cat021.h:324
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:966
double tar_age
Definition: cat021.h:1365
ast_adsb_sas_type_t source_type
Definition: cat021.h:811
bool test
Definition: cat021.h:286
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:1542
bool valid
Definition: cat021.h:226
bool trd_existing
Definition: cat021.h:1304
bool valid
Definition: cat021.h:1536
Data Item I021/095 - Velocity Accuracy.
Definition: cat021.h:577
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:329
Data Item - Position in WGS84 Coordinates.
Definition: cat_generic.h:340
unsigned int sil_s
Definition: cat021.h:490
Definition: cat021.h:261
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:1545
bool gh_existing
Definition: cat021.h:1324
Definition: cat021.h:160
bool selected_altitude_capability
Definition: cat021.h:327
double fl_age
Definition: cat021.h:1329
ast_dataitem_021_073_t dataitem_021_073
Definition: cat021.h:1582
double heading
Magnetic heading, LSB = 360/2^16 ~= 0.0055 deg.
Definition: cat021.h:913
bool valid
Definition: cat021.h:277
ast_dataitem_021_295_t ast_dataitem_021_295_decode(const ast_dataitem_t di)
bool tid_existing
Definition: cat021.h:1368
Definition: cat021.h:530
double gh_age
Definition: cat021.h:1325
bool vdl4
Definition: cat021.h:1140
bool roa_existing
Definition: cat021.h:1380
double mach
Definition: cat021.h:855
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:1583
double ts_age
Definition: cat021.h:1373
bool diff_correction
Definition: cat021.h:322
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:1139
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:290
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
Definition: cat021.h:951
bool independent_position_check_failed
Definition: cat021.h:289
double fsa_age
Definition: cat021.h:1337
ast_dataitem_021_080_t dataitem_021_080
Definition: cat021.h:1543
Implementation of Dataitem concept defined by ASTERIX.
ast_diff_correction_status_t diff_correction_status
Definition: cat021.h:549
ast_dataitem_021_090_t ast_dataitem_021_090_decode(const ast_dataitem_t di)
Decode function.
double ti_age
Definition: cat021.h:1317
ast_dataitem_021_030_t dataitem_021_030
Definition: cat021.h:1540
Data Item I021/295 - Data Ages.
Definition: cat021.h:1292
double track_angle
Track angle, LSB=DEG.
Definition: cat021.h:974
ast_altitude_t ast_datarecord_021_get_flightlevel(const ast_datarecord_t dr)
Get flight level function.
bool simulated
Definition: cat021.h:285
Definition: cat021.h:167
Definition: cat021.h:538
ast_dataitem_vertical_rate_t ast_dataitem_021_155_t
Definition: cat021.h:937
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:532
bool fixed_transponder
Definition: cat021.h:326
ast_dataitem_data_source_identifier_t ast_dataitem_021_010_t
Definition: cat021.h:96
double ara_age
Definition: cat021.h:1385
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:224
Definition: cat021.h:163
unsigned int version
Definition: cat021.h:1107
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:799
bool source_provided
Definition: cat021.h:810
bool valid
Definition: cat021.h:847
ast_dataitem_021_160_t dataitem_021_160
Definition: cat021.h:1549
const char * ast_subfield_021_220_get_name(const ast_subfield_type_t type)
Get name of subfield.
bool ti_existing
Definition: cat021.h:1316
Definition: cat021.h:537
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:1300
bool ts_existing
Definition: cat021.h:1372
Definition: cat021.h:172
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:768
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:1550
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:1576
Definition: cat021.h:256
Definition: cat021.h:1057
ast_datarecord_021_v24_t ast_datarecord_021_v24_disassemble(const ast_datarecord_t dr)
Disassemble function.
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:284
ast_adsb_altitude_capability_t altitude_capability
Definition: cat021.h:330
Definition: cat021.h:170
bool range_check
Definition: cat021.h:281
int raw_level
Flight level without QNH correction, LSB=1/4FL.
Definition: cat021.h:772
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:421
Definition: cat021.h:1098
Definition: cat021.h:168
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:714
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.
ast_dataitem_021_170_t dataitem_021_170
Definition: cat021.h:1593
ast_dataitem_021_010_t dataitem_021_010
Definition: cat021.h:1538
ast_dataitem_021_230_t ast_dataitem_021_230_decode(const ast_dataitem_t di)
Decode function.
double mh_age
Definition: cat021.h:1349
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:475
bool tas_existing
Definition: cat021.h:1344
bool valid
Definition: cat021.h:483
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:63
bool ara_existing
Definition: cat021.h:1384
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:882
ast_dataitem_021_070_t dataitem_021_070
Definition: cat021.h:1579
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:688
ast_dataitem_021_161_t dataitem_021_161
Definition: cat021.h:1592
Definition: cat021.h:262
bool fsa_existing
Definition: cat021.h:1336
ast_dataitem_021_200_t dataitem_021_200
Definition: cat021.h:1551
Definition: cat021.h:1094
unsigned int sda
Definition: cat021.h:491
bool ground
Definition: cat021.h:323
#define AST_MAX_SUBFIELDS
Definition: subfield.h:363
bool valid
Definition: cat021.h:1203
WGS-84 2D Coordinate.
Definition: type.h:103
Definition: cat021.h:1054
Data Item - Signal Amplitude.
Definition: cat_generic.h:919
ast_dataitem_time_of_day_t ast_dataitem_021_073_t
Definition: cat021.h:396
Data Item I021/146 - Selected Altitude.
Definition: cat021.h:806
Definition: cat021.h:540
Time of day.
Definition: type.h:43
ast_dataitem_021_080_t dataitem_021_080
Definition: cat021.h:1586
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:481
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:162
ast_dataitem_021_075_t dataitem_021_075
Definition: cat021.h:1584
bool valid
Definition: cat021.h:1135
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:280
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:73
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:1133
double as_age
Definition: cat021.h:1341
ast_dataitem_track_number_t ast_dataitem_021_161_t
Data Item I021/161 - Track Number.
Definition: cat021.h:1001
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:908
Definition: cat021.h:57
bool local_decoding_position_jump_detected
Definition: cat021.h:292
ast_dataitem_021_145_t dataitem_021_145
Definition: cat021.h:1590
ast_dataitem_021_040_t dataitem_021_040
Definition: cat021.h:1578
ast_dataitem_time_of_day_t ast_dataitem_021_071_t
Definition: cat021.h:370
unsigned int nuc_r
Definition: cat021.h:485
ast_multi_navi_aids_status_t multi_navi_aids_status
Definition: cat021.h:548
Data Item - Target Identification.
Definition: cat_generic.h:838
Datarecord.
Definition: datarecord.h:41
ast_diff_correction_status_t
Definition: cat021.h:535
bool valid
Definition: cat021.h:1294
ast_dataitem_021_151_t ast_dataitem_021_151_decode(const ast_dataitem_t di)
Decode function.
Definition: cat021.h:255
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:1357
bool target_state_report_capability
Definition: cat021.h:69
Definition: cat021.h:1055
int raw_track_angle
Track angle, LSB=360/2^16 DEG ~= 0.0055 DEG.
Definition: cat021.h:973
Definition: cat021.h:539
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:1364
ast_ac_trajectory_report_capability_t
Definition: cat021.h:55
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:297
ast_dataitem_021_010_t dataitem_021_010
Definition: cat021.h:1575
bool no_selected_altitude
Definition: cat021.h:287
ast_adsb_link_type_t link_type
Definition: cat021.h:1108
ast_adsb_link_type_t
Definition: cat021.h:1092
void ast_dataitem_021_090_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Encode function.
Definition: cat021.h:252
ast_dataitem_021_A05_t dataitem_021_090
Definition: cat021.h:1544
double m3a_age
Definition: cat021.h:1309
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:1051
Definition: cat021.h:264
ast_tracknum_t ast_datarecord_021_get_tracknum(const ast_datarecord_t dr)
Get track number function.
double tas_age
Definition: cat021.h:1345
Data Item I021/016 - Service Management.
Definition: cat021.h:126
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:158
bool bvr_existing
Definition: cat021.h:1352
Definition: cat021.h:531
ast_dataitem_modes_mb_t ast_dataitem_021_250_t
Definition: cat021.h:1228
bool qi_existing
Definition: cat021.h:1312
Definition: cat021.h:272
Data Item I021/140 - Geometric Altitude.
Definition: cat021.h:740
bool valid
Definition: cat021.h:1064
bool mach_valid
IAS, LSB = Knot.
Definition: cat021.h:854
Definition: cat021.h:523
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:267
ast_dataitem_time_of_day_t ast_dataitem_021_075_t
Definition: cat021.h:424
ast_timeofday_t ast_datarecord_021_get_timeofday(const ast_datarecord_t dr)
Get time of day function.
ast_dataitem_t ast_dataitem_021_200_encode(unsigned char *buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
Implementation of Subfield concept defined by ASTERIX.
bool tcas_ra_active
Definition: cat021.h:67
unsigned int nac_p
Definition: cat021.h:489
Data Item I021/230 - Roll Angle.
Definition: cat021.h:1201
ast_dataitem_position_wgs84_low_t ast_dataitem_021_130_t
Definition: cat021.h:642
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:1389
ast_dataitem_time_of_day_t ast_dataitem_021_030_t
Definition: cat021.h:208
Track Number.
Definition: type.h:73
double indicated_airspeed
Definition: cat021.h:852
unsigned int nic_baro
Definition: cat021.h:487
ast_squawk_t ast_datarecord_021_get_squawk(const ast_datarecord_t dr)
Get Mode-3/A code function.