24 #ifndef LIBASTERIX_CAT_GENERIC_H 25 #define LIBASTERIX_CAT_GENERIC_H 50 typedef struct AST_API _ast_dataitem_message_type_t
59 #define ast_dataitem_message_type_get_size ast_dataitem_get_size_fixed_1_byte 92 typedef struct _ast_dataitem_data_source_identifier_t
102 #define ast_dataitem_data_source_identifier_get_size ast_dataitem_get_size_fixed_2_byte 132 typedef struct AST_API _ast_dataitem_service_id_t
141 #define ast_dataitem_service_id_get_size ast_dataitem_get_size_fixed_1_byte 153 #define ast_dataitem_service_id_get_detail_html ast_dataitem_get_detail_html_dummy; 170 typedef struct _ast_dataitem_sector_number_t
180 #define ast_dataitem_sector_number_get_size ast_dataitem_get_size_fixed_1_byte 218 typedef struct _ast_dataitem_time_of_day_t
232 #define ast_dataitem_time_of_day_get_size ast_dataitem_get_size_fixed_3_byte 260 typedef struct _ast_dataitem_time_of_day_high_t
271 #define ast_dataitem_time_of_day_high_get_size ast_dataitem_get_size_fixed_4_byte 298 typedef struct _ast_dataitem_position_wgs84_low_t
311 #define ast_dataitem_position_wgs84_low_get_size ast_dataitem_get_size_fixed_6_byte 341 typedef struct _ast_dataitem_position_wgs84_t
354 #define ast_dataitem_position_wgs84_get_size ast_dataitem_get_size_fixed_8_byte 382 typedef struct _ast_dataitem_position_cartesian_t
395 #define ast_dataitem_position_cartesian_get_size ast_dataitem_get_size_fixed_6_byte 404 #define ast_dataitem_position_cartesian_get_detail_html ast_dataitem_get_detail_html_dummy 421 typedef struct _ast_dataitem_velocity_cartesian_t
434 #define ast_dataitem_velocity_cartesian_get_size ast_dataitem_get_size_fixed_4_byte; 443 #define ast_dataitem_velocity_cartesian_get_detail_html ast_dataitem_get_detail_html_dummy 456 #define ast_dataitem_mode_2_code_get_size ast_dataitem_get_size_fixed_2_byte 476 typedef struct _ast_dataitem_mode_3a_code_t
492 #define ast_dataitem_mode_3a_code_get_size ast_dataitem_get_size_fixed_2_byte 522 typedef struct _ast_dataitem_mode_3a_confidence_t
527 bool pulse_quality_low[4][3];
531 #define ast_dataitem_mode_3a_confidence_get_size ast_dataitem_get_size_fixed_2_byte 560 typedef struct _ast_dataitem_mode_c_code_t
573 #define ast_dataitem_mode_c_code_get_size ast_dataitem_get_size_fixed_2_byte 603 typedef struct _ast_dataitem_mode_c_confidence_t
613 bool pulse_quality_low[4][3];
617 #define ast_dataitem_mode_c_confidence_get_size ast_dataitem_get_size_fixed_4_byte 642 typedef struct _ast_dataitem_height_t
651 #define ast_dataitem_height_get_size ast_dataitem_get_size_fixed_2_byte 676 typedef struct _ast_dataitem_vertical_rate_t
687 #define ast_dataitem_vertical_rate_get_size ast_dataitem_get_size_fixed_2_byte 725 typedef struct _ast_dataitem_track_number_t
734 #define ast_dataitem_track_number_get_size ast_dataitem_get_size_fixed_2_byte 746 #define ast_dataitem_track_number_get_detail_html ast_dataitem_get_detail_html_dummy; 763 typedef struct _ast_dataitem_velocity_polar_t
776 #define ast_dataitem_velocity_polar_get_size ast_dataitem_get_size_fixed_4_byte 805 typedef struct _ast_dataitem_target_address_t
810 unsigned char raw_address[3];
815 #define ast_dataitem_target_address_get_size ast_dataitem_get_size_fixed_3_byte 844 typedef struct _ast_dataitem_aircraft_id_t
853 #define ast_dataitem_aircraft_id_get_size ast_dataitem_get_size_fixed_6_byte 882 typedef enum _ast_target_id_type_t
892 typedef struct _ast_dataitem_target_id_t
901 #define ast_dataitem_target_id_get_size ast_dataitem_get_size_fixed_7_byte 925 typedef struct _ast_dataitem_signal_amplitude_t
934 #define ast_dataitem_signal_amplitude_get_size ast_dataitem_get_size_fixed_1_byte 946 #define ast_dataitem_signal_amplitude_get_detail_html ast_dataitem_get_detail_html_dummy 963 typedef struct _ast_dataitem_modes_mb_t
974 #define ast_dataitem_modes_mb_get_size ast_dataitem_get_size_rep_8_byte 999 typedef struct _ast_dataitem_video_header_t
1017 #define ast_dataitem_video_header_get_size ast_dataitem_get_size_fixed_12_byte 1058 #define ast_dataitem_reserved_expansion_field_get_detail_html ast_dataitem_get_detail_html_dummy 1084 #define ast_dataitem_special_purpose_field_get_detail_html ast_dataitem_get_detail_html_dummy 1091 #endif // extern "C" 1093 #endif //LIBASTERIX_CAT_GENERIC_H bool valid
Definition: cat_generic.h:563
int raw_y
Raw format as defined in doc, resolution 0.5m.
Definition: cat_generic.h:388
unsigned int hour
Raw format as defined in doc, reset zero at mid night, resolution 1/128s.
Definition: cat_generic.h:225
bool changed
Mode 3/A has changed, valid only in I062/060.
Definition: cat_generic.h:485
ast_dataitem_t ast_dataitem_track_number_encode(unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
void ast_dataitem_mode_c_confidence_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
unsigned int icao_address
Definition: cat_generic.h:811
Data Item - Vertical Rate.
Definition: cat_generic.h:677
ast_dataitem_t ast_dataitem_position_wgs84_low_encode(unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
Data Item - Message Type.
Definition: cat_generic.h:51
double azimuth
Definition: cat_generic.h:176
bool valid
Definition: cat_generic.h:53
ast_dataitem_time_of_day_high_t ast_dataitem_time_of_day_high_decode(const ast_dataitem_t di)
Decode function.
Data Item - Time of Day High Precision.
Definition: cat_generic.h:261
Extracted dataitem.
Definition: dataitem.h:433
void ast_dataitem_height_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
bool valid
Definition: cat_generic.h:479
ast_dataitem_velocity_cartesian_t ast_dataitem_velocity_cartesian_decode(const ast_dataitem_t di)
Decode function.
int raw_latitude
Raw format as defined in doc, resolution 180/2^23 degree.
Definition: cat_generic.h:303
void ast_dataitem_target_address_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
void ast_dataitem_special_purpose_field_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
unsigned int raw_time
Full Second Indication.
Definition: cat_generic.h:266
size_t n_bds
Definition: cat_generic.h:968
int amplitude
Definition: cat_generic.h:930
bool valid
Definition: cat_generic.h:263
bool valid
Definition: cat_generic.h:301
void ast_dataitem_sector_number_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail funciton.
Data Item Itrack_number - Track Number.
Definition: cat_generic.h:726
bool garbled
Definition: cat_generic.h:566
double latitude
Latitude in degree.
Definition: cat_generic.h:349
int raw_vy
Raw format as defined in doc, resolution 0.25 m/s.
Definition: cat_generic.h:427
double longitude
Longitude in degree.
Definition: cat_generic.h:307
void ast_dataitem_position_cartesian_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
ast_dataitem_position_wgs84_low_t ast_dataitem_position_wgs84_low_decode(const ast_dataitem_t di)
Decode function.
size_t ast_dataitem_special_purpose_field_get_size(const unsigned char *buffer, const size_t bufsize)
Get size function.
ast_dataitem_time_of_day_t ast_dataitem_time_of_day_decode(const ast_dataitem_t di)
Decode function.
Data Item - Position in Cartesian Coordinates.
Definition: cat_generic.h:383
#define AST_MAX_BDS
Max number of BDS in one data item.
Definition: bds.h:83
ast_dataitem_t ast_dataitem_position_wgs84_encode(unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
unsigned int msg_type
Definition: cat_generic.h:55
Data Item - Data Source Identifier.
Definition: cat_generic.h:93
void ast_dataitem_mode_3a_code_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
ast_dataitem_mode_c_code_t ast_dataitem_mode_c_code_decode(const ast_dataitem_t di)
Decode function.
unsigned int code
Definition: cat_generic.h:611
bool valid
Definition: cat_generic.h:808
void ast_dataitem_mode_c_confidence_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
ast_dataitem_t ast_dataitem_aircraft_id_encode(unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
Definition: cat_generic.h:887
ast_dataitem_mode_c_confidence_t ast_dataitem_mode_c_confidence_decode(const ast_dataitem_t di)
Decode function.
bool valid
Definition: cat_generic.h:221
ast_target_id_type_t
Target identification type.
Definition: cat_generic.h:883
void ast_dataitem_sector_number_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary funciton.
ast_dataitem_t ast_dataitem_signal_amplitude_encode(unsigned char *buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
ast_dataitem_t ast_dataitem_sector_number_encode(unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
Data Item - Time of Day.
Definition: cat_generic.h:219
void ast_dataitem_reserved_expansion_field_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
Binary Data Source (BDS)
Definition: bds.h:86
ast_dataitem_track_number_t ast_dataitem_track_number_decode(const ast_dataitem_t di)
Decode function.
ast_dataitem_t ast_dataitem_time_of_day_encode(unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
bool valid
Definition: cat_generic.h:679
int fsi
Definition: cat_generic.h:265
Definition: cat_generic.h:886
Data Item - Mode-3/A Code Confidence Indicator.
Definition: cat_generic.h:523
ast_dataitem_message_type_t ast_dataitem_message_type_decode(const ast_dataitem_t di)
Decode function.
bool valid
Definition: cat_generic.h:728
bool valid
Definition: cat_generic.h:966
ast_dataitem_service_id_t ast_dataitem_service_id_decode(const ast_dataitem_t di)
Decode function.
ast_dataitem_height_t ast_dataitem_height_decode(const ast_dataitem_t di)
Decode function.
ast_dataitem_target_address_t ast_dataitem_target_address_decode(const ast_dataitem_t di)
Decode function.
int raw_ground_speed
Raw format as defined in doc, resolution 2^-14 nm/s.
Definition: cat_generic.h:768
double y
Y in meter.
Definition: cat_generic.h:391
int raw_height
Raw height, LSB=6.25ft.
Definition: cat_generic.h:647
ast_dataitem_target_id_t ast_dataitem_target_id_decode(const ast_dataitem_t di)
Decode function.
void ast_dataitem_mode_c_code_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
Data Item - Mode S MB Data.
Definition: cat_generic.h:964
ast_dataitem_t ast_dataitem_mode_3a_code_encode(unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
int code
Definition: cat_generic.h:568
ast_dataitem_sector_number_t ast_dataitem_sector_number_decode(const ast_dataitem_t di)
Decode function.
double vx
Vx in m/s.
Definition: cat_generic.h:429
ast_dataitem_t ast_dataitem_data_source_identifier_encode(unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
void ast_dataitem_signal_amplitude_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
void ast_dataitem_mode_3a_code_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
unsigned int track_num
Definition: cat_generic.h:730
double heading
Heading, LSB = degree.
Definition: cat_generic.h:772
Data Item - Service Identification.
Definition: cat_generic.h:133
bool valid
Definition: cat_generic.h:344
Data Item - Target Identification.
Definition: cat_generic.h:892
ast_dataitem_t ast_dataitem_message_type_encode(unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
Data Item - Mode-C Code.
Definition: cat_generic.h:561
unsigned int sec
Definition: cat_generic.h:227
void ast_dataitem_position_wgs84_low_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
void ast_dataitem_mode_3a_confidence_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
void ast_dataitem_track_number_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
bool validated
Definition: cat_generic.h:608
void ast_dataitem_binary_data_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
void ast_dataitem_mode_c_code_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
void ast_dataitem_mode_3a_confidence_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
Data Item - Position in WGS84 Coordinates.
Definition: cat_generic.h:342
int raw_longitude
Raw format as defined in doc, resolution 180/2^23 degree.
Definition: cat_generic.h:304
size_t ast_dataitem_reserved_expansion_field_get_size(const unsigned char *buffer, const size_t bufsize)
Get size function.
bool valid
Definition: cat_generic.h:173
unsigned int sic
Definition: cat_generic.h:98
void ast_dataitem_time_of_day_high_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Encode function.
bool valid
Definition: cat_generic.h:385
ast_dataitem_modes_mb_t ast_dataitem_modes_mb_decode(const ast_dataitem_t di)
Decode function.
void ast_dataitem_target_id_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
bool valid
Definition: cat_generic.h:847
Data Item - Sector Number.
Definition: cat_generic.h:171
bool valid
Definition: cat_generic.h:928
int raw_x
Raw format as defined in doc, resolution 0.5m.
Definition: cat_generic.h:387
int raw_latitude
Raw format as defined in doc, resolution 180/2^n degree (n varies in different data item)
Definition: cat_generic.h:346
bool valid
Definition: cat_generic.h:525
void ast_dataitem_velocity_cartesian_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary funciton.
bool valid
Definition: cat_generic.h:645
Data Item - Calculated Track Velocity in Cartesian Coordinates.
Definition: cat_generic.h:422
void ast_dataitem_time_of_day_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary funciton.
bool smoothed
Definition: cat_generic.h:483
Implementation of Dataitem concept defined by ASTERIX.
bool garbled
Definition: cat_generic.h:609
ast_dataitem_signal_amplitude_t ast_dataitem_signal_amplitude_decode(const ast_dataitem_t di)
Decode function.
void ast_dataitem_modes_mb_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
void ast_dataitem_vertical_rate_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
int raw_vr
Vertical rate, LSB=6.25 feet/minute.
Definition: cat_generic.h:682
ast_dataitem_t ast_dataitem_velocity_polar_encode(unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
int raw_longitude
Raw format as defined in doc, resolution 180/2^n degree (n varies in different data item)
Definition: cat_generic.h:347
bool validated
Definition: cat_generic.h:565
void ast_dataitem_time_of_day_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
ast_dataitem_aircraft_id_t ast_dataitem_aircraft_id_decode(const ast_dataitem_t di)
Decode function.
unsigned int raw_time
Definition: cat_generic.h:223
ast_dataitem_mode_3a_code_t ast_dataitem_mode_3a_code_decode(const ast_dataitem_t di)
Decode function.
void ast_dataitem_position_wgs84_low_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
double vr
Vertical rate, LSB=1 feet/minute.
Definition: cat_generic.h:683
void ast_dataitem_position_wgs84_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
Data Item - Calculated Track Track Velocity in Polar Co-ordinates.
Definition: cat_generic.h:764
void ast_dataitem_service_id_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
unsigned int raw_azimuth
Raw format as defined in doc, resolution 360/2^8 ~= 1.14 degree.
Definition: cat_generic.h:175
Not sure downlinked is callsign or registration.
Definition: cat_generic.h:885
Dataitem.
Definition: dataitem.h:422
void ast_dataitem_time_of_day_high_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
Data Item - Mode-3/A Code in Octal Representation.
Definition: cat_generic.h:477
bool valid
Definition: cat_generic.h:135
double longitude
Longitude in degree.
Definition: cat_generic.h:350
Data Item - Mode-C Code and Code Confidence Indicator.
Definition: cat_generic.h:604
unsigned int service_id
Definition: cat_generic.h:137
ast_dataitem_t ast_dataitem_service_id_encode(unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
double second_fraction
Raw format as defined in doc, expressed as fraction of the second of the UTC Time,...
Definition: cat_generic.h:267
void ast_dataitem_modes_mb_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
ast_target_id_type_t type
Definition: cat_generic.h:896
unsigned int sac
Definition: cat_generic.h:97
bool valid
Definition: cat_generic.h:606
bool range_exceeded
Range exceeded indicator.
Definition: cat_generic.h:681
Definition: cat_generic.h:888
ast_dataitem_position_cartesian_t ast_dataitem_position_cartesian_decode(const ast_dataitem_t di)
Decode function.
Data Item - Signal Amplitude.
Definition: cat_generic.h:926
double vy
Vy in m/s.
Definition: cat_generic.h:430
void ast_dataitem_aircraft_id_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
bool validated
Definition: cat_generic.h:481
bool valid
Definition: cat_generic.h:894
void ast_dataitem_target_id_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
int raw_vx
Raw format as defined in doc, resolution 0.25 m/s.
Definition: cat_generic.h:426
ast_dataitem_data_source_identifier_t ast_dataitem_data_source_identifier_decode(const ast_dataitem_t di)
Decode function.
ast_dataitem_vertical_rate_t ast_dataitem_vertical_rate_decode(const ast_dataitem_t di)
Decode function.
double x
X in meter.
Definition: cat_generic.h:390
void ast_dataitem_velocity_polar_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
double ground_speed
Ground speed, LSB = knot.
Definition: cat_generic.h:771
bool valid
Definition: cat_generic.h:424
Data Item - Target Identification.
Definition: cat_generic.h:845
unsigned int msec
Definition: cat_generic.h:228
ast_dataitem_t ast_dataitem_mode_c_code_encode(unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
ast_dataitem_velocity_polar_t ast_dataitem_velocity_polar_decode(const ast_dataitem_t di)
Decode function.
Data Item - Position in WGS84 Coordinates (Low Reslution)
Definition: cat_generic.h:299
void ast_dataitem_height_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
ast_dataitem_t ast_dataitem_vertical_rate_encode(unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
ast_dataitem_mode_3a_confidence_t ast_dataitem_mode_3a_confidence_decode(const ast_dataitem_t di)
Decode function.
bool valid
Definition: cat_generic.h:766
void ast_dataitem_position_wgs84_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
void ast_dataitem_data_source_identifier_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
bool valid
Definition: cat_generic.h:95
void ast_dataitem_vertical_rate_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
bool garbled
Definition: cat_generic.h:482
void ast_dataitem_aircraft_id_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
Data Item - Height.
Definition: cat_generic.h:643
unsigned int min
Definition: cat_generic.h:226
void ast_dataitem_target_address_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
Implementation of Mode-S transponder Binary Data Source (BDS) register.
int raw_heading
Raw format as defined in doc, resolution 360/2^16 degree.
Definition: cat_generic.h:769
void ast_dataitem_data_source_identifier_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
ast_dataitem_t ast_dataitem_target_address_encode(unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
Encode function.
double latitude
Latitude in degree.
Definition: cat_generic.h:306
int code
Original code in octal.
Definition: cat_generic.h:487
ast_dataitem_position_wgs84_t ast_dataitem_position_wgs84_decode(const ast_dataitem_t di)
Decode function.
void ast_dataitem_velocity_polar_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.