cat020.h File Reference

ASTERIX CAT020 - MLT Messages. More...

#include "datarecord.h"
#include "dataitem.h"
#include "cat_generic.h"
Include dependency graph for cat020.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ast_dataitem_020_020_t
 Data Item I020/020 - Target Report Descriptor. More...
 
struct  ast_dataitem_020_170_t
 Data Item I020/170 - Track Status. More...
 
struct  ast_dataitem_020_230_t
 Data Item I020/230 - Communications/ACAS Capability and Flight Status. More...
 
struct  ast_dataitem_020_400_t
 Data Item I020/400 - Contributing Receivers. More...
 
struct  ast_dataitem_020_500_t
 Data Item I020/500 - Position Accuracy. More...
 
struct  ast_datarecord_020_t
 Data Record I020 - MLT Messages. More...
 

Macros

#define ast_dataitem_020_010_get_size   ast_dataitem_data_source_identifier_get_size
 
#define ast_dataitem_020_010_decode   ast_dataitem_data_source_identifier_decode
 
#define ast_dataitem_020_010_encode   ast_dataitem_data_source_identifier_encode
 
#define ast_dataitem_020_010_get_summary   ast_dataitem_data_source_identifier_get_summary
 
#define ast_dataitem_020_010_get_detail_html   ast_dataitem_data_source_identifier_get_detail_html
 
#define ast_dataitem_020_020_get_size   ast_dataitem_get_size_var_2_byte
 Get size function. More...
 
#define ast_dataitem_020_030_get_size   ast_dataitem_get_size_var_2_byte
 
#define ast_dataitem_020_041_get_size   ast_dataitem_position_wgs84_get_size
 
#define ast_dataitem_020_041_decode   ast_dataitem_position_wgs84_decode
 
#define ast_dataitem_020_041_get_summary   ast_dataitem_position_wgs84_get_summary
 
#define ast_dataitem_020_041_get_detail_html   ast_dataitem_position_wgs84_get_detail_html
 
#define ast_dataitem_020_042_get_size   ast_dataitem_position_cartesian_get_size
 
#define ast_dataitem_020_042_decode   ast_dataitem_position_cartesian_decode
 
#define ast_dataitem_020_042_get_summary   ast_dataitem_position_cartesian_get_summary
 
#define ast_dataitem_020_042_get_detail_html   ast_dataitem_position_cartesian_get_detail_html
 
#define ast_dataitem_020_050_get_size   ast_dataitem_mode_2_code_get_size
 
#define ast_dataitem_020_070_get_size   ast_dataitem_mode_3a_code_get_size
 
#define ast_dataitem_020_070_decode   ast_dataitem_mode_3a_code_decode
 
#define ast_dataitem_020_070_encode   ast_dataitem_mode_3a_code_encode
 
#define ast_dataitem_020_070_get_summary   ast_dataitem_mode_3a_code_get_summary
 
#define ast_dataitem_020_070_get_detail_html   ast_dataitem_mode_3a_code_get_detail_html
 
#define ast_dataitem_020_090_get_size   ast_dataitem_mode_c_code_get_size
 
#define ast_dataitem_020_090_decode   ast_dataitem_mode_c_code_decode
 
#define ast_dataitem_020_090_encode   ast_dataitem_mode_c_code_encode
 
#define ast_dataitem_020_090_get_summary   ast_dataitem_mode_c_code_get_summary
 
#define ast_dataitem_020_090_get_detail_html   ast_dataitem_mode_c_code_get_detail_html
 
#define ast_dataitem_020_105_get_size   ast_dataitem_height_get_size
 
#define ast_dataitem_020_105_decode   ast_dataitem_height_decode
 
#define ast_dataitem_020_105_get_summary   ast_dataitem_height_get_summary
 
#define ast_dataitem_020_105_get_detail_html   ast_dataitem_height_get_detail_html
 
#define ast_dataitem_020_110_get_size   ast_dataitem_height_get_size
 
#define ast_dataitem_020_110_decode   ast_dataitem_height_decode
 
#define ast_dataitem_020_110_get_summary   ast_dataitem_height_get_summary
 
#define ast_dataitem_020_110_get_detail_html   ast_dataitem_height_get_detail_html
 
#define ast_dataitem_020_140_get_size   ast_dataitem_time_of_day_get_size
 
#define ast_dataitem_020_140_decode   ast_dataitem_time_of_day_decode
 
#define ast_dataitem_020_140_encode   ast_dataitem_time_of_day_encode
 
#define ast_dataitem_020_140_get_summary   ast_dataitem_time_of_day_get_summary
 
#define ast_dataitem_020_140_get_detail_html   ast_dataitem_time_of_day_get_detail_html
 
#define ast_dataitem_020_161_get_size   ast_dataitem_track_number_get_size
 
#define ast_dataitem_020_161_decode   ast_dataitem_track_number_decode
 
#define ast_dataitem_020_161_encode   ast_dataitem_track_number_encode
 Encode function. More...
 
#define ast_dataitem_020_161_get_summary   ast_dataitem_track_number_get_summary
 
#define ast_dataitem_020_161_get_detail_html   ast_dataitem_track_number_get_detail_html
 
#define ast_dataitem_020_170_get_size   ast_dataitem_get_size_var_2_byte
 Get size function. More...
 
#define ast_dataitem_020_202_get_size   ast_dataitem_velocity_cartesian_get_size
 
#define ast_dataitem_020_202_decode   ast_dataitem_velocity_cartesian_decode
 
#define ast_dataitem_020_202_get_summary   ast_dataitem_velocity_cartesian_get_summary
 
#define ast_dataitem_020_202_get_detail_html   ast_dataitem_get_detail_html_dummy
 
#define ast_dataitem_020_210_get_size   ast_dataitem_get_size_fixed_2_byte
 Data Item I020/210 - Calculated Aceleration. More...
 
#define ast_dataitem_020_220_get_size   ast_dataitem_target_address_get_size
 
#define ast_dataitem_020_220_decode   ast_dataitem_target_address_decode
 
#define ast_dataitem_020_220_encode   ast_dataitem_target_address_encode
 
#define ast_dataitem_020_220_get_summary   ast_dataitem_target_address_get_summary
 
#define ast_dataitem_020_220_get_detail_html   ast_dataitem_target_address_get_detail_html
 
#define ast_dataitem_020_230_get_size   ast_dataitem_get_size_fixed_2_byte
 Get size function. More...
 
#define ast_dataitem_020_245_get_size   ast_dataitem_target_id_get_size
 
#define ast_dataitem_020_245_decode   ast_dataitem_target_id_decode
 
#define ast_dataitem_020_245_get_summary   ast_dataitem_target_id_get_summary
 
#define ast_dataitem_020_245_get_detail_html   ast_dataitem_target_id_get_detail_html
 
#define ast_dataitem_020_250_get_size   ast_dataitem_modes_mb_get_size
 
#define ast_dataitem_020_250_decode   ast_dataitem_modes_mb_decode
 
#define ast_dataitem_020_250_get_summary   ast_dataitem_modes_mb_get_summary
 
#define ast_dataitem_020_250_get_detail_html   ast_dataitem_modes_mb_get_detail_html
 
#define ast_dataitem_020_260_get_size   ast_dataitem_get_size_fixed_7_byte
 Data Item I020/260 - ACAS Resolution Advisory Report. More...
 
#define ast_dataitem_020_300_get_size   ast_dataitem_get_size_fixed_1_byte
 Data Item I020/300 - Vehicle Fleet Identification. More...
 
#define ast_dataitem_020_310_get_size   ast_dataitem_get_size_fixed_1_byte
 Data Item I020/310 - Pre-programmed Message. More...
 
#define AST_MAX_MLAT_RECEIVERS   256
 
#define ast_dataitem_020_400_get_size   ast_dataitem_get_size_rep_1_byte
 Get size funciton. More...
 
#define ast_dataitem_020_REF_get_size   ast_dataitem_reserved_expansion_field_get_size
 Get size funciton. More...
 
#define ast_dataitem_020_REF_get_summary   ast_dataitem_reserved_expansion_field_get_summary;
 Decode function. More...
 
#define ast_dataitem_020_REF_get_detail_html   ast_dataitem_reserved_expansion_field_get_detail_html;
 Get detail function. More...
 
#define ast_datarecord_020_get_polarcoord   0
 Get polar coordinate function. More...
 
#define ast_datarecord_020_get_heading   0
 Get heading function. More...
 
#define ast_datarecord_020_get_speed   0
 Get speed function. More...
 

Typedefs

typedef ast_dataitem_data_source_identifier_t ast_dataitem_020_010_t
 
typedef ast_dataitem_position_wgs84_t ast_dataitem_020_041_t
 
typedef ast_dataitem_position_cartesian_t ast_dataitem_020_042_t
 
typedef ast_dataitem_mode_3a_code_t ast_dataitem_020_070_t
 
typedef ast_dataitem_mode_c_code_t ast_dataitem_020_090_t
 
typedef ast_dataitem_height_t ast_dataitem_020_105_t
 
typedef ast_dataitem_height_t ast_dataitem_020_110_t
 
typedef ast_dataitem_time_of_day_t ast_dataitem_020_140_t
 
typedef ast_dataitem_track_number_t ast_dataitem_020_161_t
 
typedef ast_dataitem_velocity_cartesian_t ast_dataitem_020_202_t
 
typedef ast_dataitem_target_address_t ast_dataitem_020_220_t
 
typedef ast_dataitem_target_id_t ast_dataitem_020_245_t
 
typedef ast_dataitem_modes_mb_t ast_dataitem_020_250_t
 

Enumerations

enum  ast_mlat_track_vertical_maneuver_t { MLAT_TRACK_CLIMBING, MLAT_TRACK_DESCENDING, MLAT_TRACK_CRUISING, MLAT_TRACK_UNKNOWN }
 MLAT track vertical maneuver status. More...
 
enum  ast_mlat_comm_capbility_t {
  MLAT_COMM_NONE = 0, MLAT_COMM_A_B = 1, MLAT_COMM_A_B_U = 2, MLAT_COMM_A_B_U_D = 3,
  MLAT_COMM_L5 = 4, MLAT_COMM_UNDIFINED = 5
}
 MLAT communication capbility. More...
 
enum  ast_mlat_flight_status_t {
  MLAT_STAT_AIRBORNE = 0, MLAT_STAT_GROUND = 1, MLAT_STAT_AIRBORNE_ALERT = 2, MLAT_STAT_GROUND_ALERT = 3,
  MLAT_STAT_ALERT_SPI = 4, MLAT_STAT_SPI = 5, MLAT_STAT_UNDIFINED = 6, MLAT_STAT_UNKNOWN = 7
}
 MLAT flight status. More...
 

Functions

const char * ast_dataitem_020_get_name (const ast_dataitem_type_t type)
 Get name function. More...
 
ast_dataitem_020_020_t ast_dataitem_020_020_decode (const ast_dataitem_t di)
 Decode function. More...
 
void ast_dataitem_020_020_get_summary (char *summary, const size_t summary_size, const ast_dataitem_t di)
 Get Summary function. More...
 
void ast_dataitem_020_020_get_detail_html (char *detail, const size_t detail_size, const ast_dataitem_t di)
 Get detail function. More...
 
size_t ast_dataitem_020_055_get_size (const unsigned char *buffer, const size_t bufsize)
 
size_t ast_dataitem_020_100_get_size (const unsigned char *buffer, const size_t bufsize)
 
ast_dataitem_020_170_t ast_dataitem_020_170_decode (const ast_dataitem_t di)
 Decode function. More...
 
void ast_dataitem_020_170_get_summary (char *summary, const size_t summary_size, const ast_dataitem_t di)
 Get summary function. More...
 
void ast_dataitem_020_170_get_detail_html (char *detail, const size_t detail_size, const ast_dataitem_t di)
 Get detail function. More...
 
ast_dataitem_020_230_t ast_dataitem_020_230_decode (const ast_dataitem_t di)
 Decode function. More...
 
void ast_dataitem_020_230_get_summary (char *summary, const size_t summary_size, const ast_dataitem_t di)
 Get summary funciton. More...
 
void ast_dataitem_020_230_get_detail_html (char *detail, const size_t detail_size, const ast_dataitem_t di)
 Get detail function. More...
 
ast_dataitem_020_400_t ast_dataitem_020_400_decode (const ast_dataitem_t di)
 Decode function. More...
 
void ast_dataitem_020_400_get_summary (char *summary, const size_t summary_size, const ast_dataitem_t di)
 Get summary function. More...
 
void ast_dataitem_020_400_get_detail_html (char *detail, const size_t detail_size, const ast_dataitem_t di)
 Get detail function. More...
 
size_t ast_dataitem_020_500_get_size (const unsigned char *buffer, const size_t bufsize)
 Get size funciton. More...
 
ast_dataitem_020_500_t ast_dataitem_020_500_decode (const ast_dataitem_t di)
 Decode function. More...
 
void ast_dataitem_020_500_get_summary (char *summary, const size_t summary_size, const ast_dataitem_t di)
 Get summary function. More...
 
void ast_dataitem_020_500_get_detail_html (char *detail, const size_t detail_size, const ast_dataitem_t di)
 Get detail function. More...
 
ast_sacsic_t ast_datarecord_020_get_sacsic (const ast_datarecord_t dr)
 Get SAC/SIC function. More...
 
ast_timeofday_t ast_datarecord_020_get_timeofday (const ast_datarecord_t dr)
 Get time of day function. More...
 
ast_msgtype_t ast_datarecord_020_get_msgtype (const ast_datarecord_t dr)
 Get message type function. More...
 
ast_tracknum_t ast_datarecord_020_get_tracknum (const ast_datarecord_t dr)
 Get track number function. More...
 
ast_squawk_t ast_datarecord_020_get_squawk (const ast_datarecord_t dr)
 Get Mode-3/A code function. More...
 
ast_callsign_t ast_datarecord_020_get_callsign (const ast_datarecord_t dr)
 Get callsign function. More...
 
ast_icaoaddr_t ast_datarecord_020_get_icaoaddr (const ast_datarecord_t dr)
 Get ICAO 24-bit address function. More...
 
ast_coordinate_t ast_datarecord_020_get_coordinate (const ast_datarecord_t dr)
 Get coordinate function. More...
 
ast_altitude_t ast_datarecord_020_get_flightlevel (const ast_datarecord_t dr)
 Get flight level function. More...
 
ast_datarecord_020_t ast_datarecord_020_disassemble (const ast_datarecord_t dr)
 Disassemble function. More...
 

Detailed Description

ASTERIX CAT020 - MLT Messages.

This file includes implementation of ASTERIX CAT020.

Note
This implementation is based on ASTERIX CAT020 version 1.8

This implementation is backward compatible with the following versions:

  • CAT020 version 1.7
  • CAT020 version 1.8

Macro Definition Documentation

◆ ast_dataitem_020_030_get_size

#define ast_dataitem_020_030_get_size   ast_dataitem_get_size_var_2_byte

◆ ast_dataitem_020_210_get_size

#define ast_dataitem_020_210_get_size   ast_dataitem_get_size_fixed_2_byte

Data Item I020/210 - Calculated Aceleration.

◆ ast_dataitem_020_260_get_size

#define ast_dataitem_020_260_get_size   ast_dataitem_get_size_fixed_7_byte

Data Item I020/260 - ACAS Resolution Advisory Report.

◆ ast_dataitem_020_300_get_size

#define ast_dataitem_020_300_get_size   ast_dataitem_get_size_fixed_1_byte

Data Item I020/300 - Vehicle Fleet Identification.

◆ ast_dataitem_020_310_get_size

#define ast_dataitem_020_310_get_size   ast_dataitem_get_size_fixed_1_byte

Data Item I020/310 - Pre-programmed Message.

◆ ast_datarecord_020_get_heading

#define ast_datarecord_020_get_heading   0

Get heading function.

◆ ast_datarecord_020_get_polarcoord

#define ast_datarecord_020_get_polarcoord   0

Get polar coordinate function.

◆ ast_datarecord_020_get_speed

#define ast_datarecord_020_get_speed   0

Get speed function.

Function Documentation

◆ ast_dataitem_020_055_get_size()

size_t ast_dataitem_020_055_get_size ( const unsigned char *  buffer,
const size_t  bufsize 
)

◆ ast_dataitem_020_get_name()

const char* ast_dataitem_020_get_name ( const ast_dataitem_type_t  type)

Get name function.

◆ ast_datarecord_020_get_callsign()

ast_callsign_t ast_datarecord_020_get_callsign ( const ast_datarecord_t  dr)

Get callsign function.

◆ ast_datarecord_020_get_coordinate()

ast_coordinate_t ast_datarecord_020_get_coordinate ( const ast_datarecord_t  dr)

Get coordinate function.

◆ ast_datarecord_020_get_flightlevel()

ast_altitude_t ast_datarecord_020_get_flightlevel ( const ast_datarecord_t  dr)

Get flight level function.

◆ ast_datarecord_020_get_icaoaddr()

ast_icaoaddr_t ast_datarecord_020_get_icaoaddr ( const ast_datarecord_t  dr)

Get ICAO 24-bit address function.

◆ ast_datarecord_020_get_msgtype()

ast_msgtype_t ast_datarecord_020_get_msgtype ( const ast_datarecord_t  dr)

Get message type function.

◆ ast_datarecord_020_get_sacsic()

ast_sacsic_t ast_datarecord_020_get_sacsic ( const ast_datarecord_t  dr)

Get SAC/SIC function.

◆ ast_datarecord_020_get_squawk()

ast_squawk_t ast_datarecord_020_get_squawk ( const ast_datarecord_t  dr)

Get Mode-3/A code function.

◆ ast_datarecord_020_get_timeofday()

ast_timeofday_t ast_datarecord_020_get_timeofday ( const ast_datarecord_t  dr)

Get time of day function.

◆ ast_datarecord_020_get_tracknum()

ast_tracknum_t ast_datarecord_020_get_tracknum ( const ast_datarecord_t  dr)

Get track number function.