cat001.h File Reference

ASTERIX CAT001 - Monoradar Target Reports. More...

#include "dataitem.h"
#include "datarecord.h"
#include "datablock.h"
#include "cat_generic.h"
Include dependency graph for cat001.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_001_020_t
 Data Item I001/020 - Target Report Descriptor. More...
 
struct  ast_dataitem_001_030_t
 Data Item I001/030 - Warning/Error Conditions. More...
 
struct  ast_dataitem_001_040_t
 Data Item I001/040 - Measured Position in Polar Coordinates. More...
 
struct  ast_dataitem_001_042_t
 Data Item I001/042 - Calculated Position in Cartesian Coordinates. More...
 
struct  ast_dataitem_001_060_t
 Data Item I001/060 - Mode-2 Code Confidence Indicator. More...
 
struct  ast_dataitem_001_120_t
 Data Item I001/120 - Calculated Position in Cartesian Coordinates. More...
 
struct  ast_dataitem_001_141_t
 Data Item I001/141 - Truncated Time of Day. More...
 
struct  ast_dataitem_001_170_t
 Data Item I001/170 - Track Status. More...
 
struct  ast_dataitem_001_210_t
 Data Item I001/210 - Track Quality. More...
 
struct  ast_datarecord_001_t
 Data Record I001 - Monoradar Target Reports. More...
 

Macros

#define ast_dataitem_001_010_get_size   ast_dataitem_data_source_identifier_get_size
 Get size function. More...
 
#define ast_dataitem_001_010_decode   ast_dataitem_data_source_identifier_decode
 Decode function. More...
 
#define ast_dataitem_001_010_encode   ast_dataitem_data_source_identifier_encode
 Encode function. More...
 
#define ast_dataitem_001_010_get_summary   ast_dataitem_data_source_identifier_get_summary
 Get summary function. More...
 
#define ast_dataitem_001_010_get_detail_html   ast_dataitem_data_source_identifier_get_detail_html
 Get detail function. More...
 
#define ast_dataitem_001_020_get_size   ast_dataitem_get_size_var_2_byte
 Get size function. More...
 
#define ast_dataitem_001_030_get_size   ast_dataitem_get_size_var_2_byte
 Get size function. More...
 
#define ast_dataitem_001_040_get_size   ast_dataitem_get_size_fixed_4_byte
 Get size function. More...
 
#define ast_dataitem_001_042_get_size   ast_dataitem_get_size_fixed_4_byte
 Get size function. More...
 
#define ast_dataitem_001_050_get_size   ast_dataitem_mode_2_code_get_size
 Get size function. More...
 
#define ast_dataitem_001_060_get_size   ast_dataitem_get_size_fixed_2_byte
 Get size function. More...
 
#define ast_dataitem_001_070_get_size   ast_dataitem_mode_3a_code_get_size
 Get size function. More...
 
#define ast_dataitem_001_070_decode   ast_dataitem_mode_3a_code_decode
 Decode function. More...
 
#define ast_dataitem_001_070_encode   ast_dataitem_mode_3a_code_encode
 Encode function. More...
 
#define ast_dataitem_001_070_get_summary   ast_dataitem_mode_3a_code_get_summary
 Get summary function. More...
 
#define ast_dataitem_001_070_get_detail_html   ast_dataitem_mode_3a_code_get_detail_html
 Get detail function. More...
 
#define ast_dataitem_001_080_get_size   ast_dataitem_mode_3a_confidence_get_size
 Get size function. More...
 
#define ast_dataitem_001_080_decode   ast_dataitem_mode_3a_confidence_decode
 Decode function. More...
 
#define ast_dataitem_001_080_get_summary   ast_dataitem_mode_3a_confidence_get_summary
 Get summary function. More...
 
#define ast_dataitem_001_080_get_detail_html   ast_dataitem_mode_3a_confidence_get_detail_html
 Get detail function. More...
 
#define ast_dataitem_001_090_get_size   ast_dataitem_mode_c_code_get_size
 Get size function. More...
 
#define ast_dataitem_001_090_decode   ast_dataitem_mode_c_code_decode
 Decode function. More...
 
#define ast_dataitem_001_090_encode   ast_dataitem_mode_c_code_encode
 Encode function. More...
 
#define ast_dataitem_001_090_get_summary   ast_dataitem_mode_c_code_get_summary
 Get summary function. More...
 
#define ast_dataitem_001_090_get_detail_html   ast_dataitem_mode_c_code_get_detail_html
 Get detail function. More...
 
#define ast_dataitem_001_100_get_size   ast_dataitem_mode_c_confidence_get_size
 Get size function. More...
 
#define ast_dataitem_001_100_decode   ast_dataitem_mode_c_confidence_decode
 Decode function. More...
 
#define ast_dataitem_001_100_get_summary   ast_dataitem_mode_c_confidence_get_summary
 Get summary function. More...
 
#define ast_dataitem_001_100_get_detail_html   ast_dataitem_mode_c_confidence_get_detail_html
 Get detail function. More...
 
#define ast_dataitem_001_120_get_size   ast_dataitem_get_size_fixed_1_byte
 Get size function. More...
 
#define ast_dataitem_001_130_get_size   ast_dataitem_get_size_var_2_byte
 Get size function. More...
 
#define ast_dataitem_001_130_get_summary   ast_dataitem_binary_data_get_summary
 Get summary function. More...
 
#define ast_dataitem_001_130_get_detail_html   ast_dataitem_get_detail_html_dummy
 Get detail function. More...
 
#define ast_dataitem_001_131_get_size   ast_dataitem_get_size_fixed_1_byte
 Get size function. More...
 
#define ast_dataitem_001_141_get_size   ast_dataitem_get_size_fixed_2_byte
 Get size function. More...
 
#define ast_dataitem_001_161_get_size   ast_dataitem_track_number_get_size
 Get size function. More...
 
#define ast_dataitem_001_161_decode   ast_dataitem_track_number_decode
 Decode function. More...
 
#define ast_dataitem_001_161_encode   ast_dataitem_track_number_encode
 Encode function. More...
 
#define ast_dataitem_001_161_get_summary   ast_dataitem_track_number_get_summary
 Get summary funciton. More...
 
#define ast_dataitem_001_161_get_detail_html   ast_dataitem_track_number_get_detail_html
 Get detail function. More...
 
#define ast_dataitem_001_170_get_size   ast_dataitem_get_size_var_2_byte
 Get size function. More...
 
#define ast_dataitem_001_200_get_size   ast_dataitem_velocity_polar_get_size
 Get size function. More...
 
#define ast_dataitem_001_200_decode   ast_dataitem_velocity_polar_decode
 Decode function. More...
 
#define ast_dataitem_001_200_encode   ast_dataitem_velocity_polar_encode
 Encode function. More...
 
#define ast_dataitem_001_200_get_summary   ast_dataitem_velocity_polar_get_summary
 Get summary function. More...
 
#define ast_dataitem_001_200_get_detail_html   ast_dataitem_velocity_polar_get_detail_html
 Get detail function. More...
 
#define ast_dataitem_001_210_get_size   ast_dataitem_get_size_var_2_byte
 Get size function. More...
 
#define ast_dataitem_001_REF_get_size   ast_dataitem_reserved_expansion_field_get_size
 Get size funciton. More...
 
#define ast_dataitem_001_REF_get_summary   ast_dataitem_reserved_expansion_field_get_summary
 Decode function. More...
 
#define ast_dataitem_001_REF_get_detail_html   ast_dataitem_reserved_expansion_field_get_detail_html
 Get detail function. More...
 
#define ast_datarecord_001_get_timeofday   0
 Get time of day function. More...
 
#define ast_datarecord_001_get_callsign   0
 Get callsign function. More...
 
#define ast_datarecord_001_get_icaoaddr   0
 Get ICAO 24-bit address function. More...
 
#define ast_datarecord_001_get_coordinate   0
 Get coordinate function. More...
 
#define ast_datarecord_001_get_heading   0
 Get heading function. More...
 
#define ast_datarecord_001_get_speed   0
 Get speed function. More...
 

Typedefs

typedef ast_dataitem_data_source_identifier_t ast_dataitem_001_010_t
 Data Item I001/010 - Data Source Identifier. More...
 
typedef ast_dataitem_mode_3a_code_t ast_dataitem_001_070_t
 Data Item I001/070 - Mode-3/A Code in Octal Representation. More...
 
typedef ast_dataitem_mode_3a_confidence_t ast_dataitem_001_080_t
 Data Item I001/080 - Mode-3/A Code Confidence Indicator. More...
 
typedef ast_dataitem_mode_c_code_t ast_dataitem_001_090_t
 Data Item I001/090 - Mode-C in Binary Representation. More...
 
typedef ast_dataitem_mode_c_confidence_t ast_dataitem_001_100_t
 Data Item I001/100 - Mode-C Code and Code Confidence Indicator. More...
 
typedef ast_dataitem_track_number_t ast_dataitem_001_161_t
 Data Item I001/161 - Track Plot Number. More...
 
typedef ast_dataitem_velocity_polar_t ast_dataitem_001_200_t
 Data Item I001/200 - Calculated Track Velocity in Ploar Coordinates. More...
 

Enumerations

enum  ast_conventional_radar_target_type_t { AST_CONVENTIONAL_RADAR_TARGET_PLOT = 0, AST_CONVENTIONAL_RADAR_TARGET_TRACK = 1 }
 
enum  ast_radar_detection_type_t { AST_RADAR_DETECTION_NO = 0, AST_RADAR_DETECTION_PSR = 1, AST_RADAR_DETECTION_SSR = 2, AST_RADAR_DETECTION_PSR_SSR = 3 }
 
enum  ast_radar_emergency_type_t { AST_RADAR_EMG_DEFAULT = 0, AST_RADAR_EMG_7500 = 1, AST_RADAR_EMG_7600 = 2, AST_RADAR_EMG_7700 = 3 }
 
enum  ast_conventional_radar_track_type_t { AST_CONVENTIONAL_RADAR_TRACK_PSR = 0, AST_CONVENTIONAL_RADAR_TRACK_SSR_COMBINED = 1 }
 

Functions

const char * ast_dataitem_001_get_name (const ast_dataitem_type_t type)
 Get name function. More...
 
ast_dataitem_001_020_t ast_dataitem_001_020_decode (const ast_dataitem_t di)
 Decode function. More...
 
ast_dataitem_t ast_dataitem_001_020_encode (unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
 Encode function. More...
 
void ast_dataitem_001_020_get_summary (char *summary, const size_t summary_size, const ast_dataitem_t di)
 Get Summary function. More...
 
void ast_dataitem_001_020_get_detail_html (char *detail, const size_t detail_size, const ast_dataitem_t di)
 Get detail function. More...
 
ast_dataitem_001_040_t ast_dataitem_001_040_decode (const ast_dataitem_t di)
 Decode function. More...
 
ast_dataitem_t ast_dataitem_001_040_encode (unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
 Encode function. More...
 
void ast_dataitem_001_040_get_summary (char *summary, const size_t summary_size, const ast_dataitem_t di)
 Get summary function. More...
 
void ast_dataitem_001_040_get_detail_html (char *detail, const size_t detail_size, const ast_dataitem_t di)
 Get detail function. More...
 
ast_dataitem_001_042_t ast_dataitem_001_042_decode (const ast_dataitem_t di)
 Decode function. More...
 
ast_dataitem_t ast_dataitem_001_042_encode (unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
 Encode function. More...
 
void ast_dataitem_001_042_get_summary (char *summary, const size_t summary_size, const ast_dataitem_t di)
 Get summary function. More...
 
void ast_dataitem_001_042_get_detail_html (char *detail, const size_t detail_size, const ast_dataitem_t di)
 Get detail function. More...
 
ast_dataitem_001_141_t ast_dataitem_001_141_decode (const ast_dataitem_t di)
 Decode function. More...
 
ast_dataitem_t ast_dataitem_001_141_encode (unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
 Encode function. More...
 
void ast_dataitem_001_141_get_summary (char *summary, const size_t summary_size, const ast_dataitem_t di)
 Get summary funciton. More...
 
void ast_dataitem_001_141_get_detail_html (char *detail, const size_t detail_size, const ast_dataitem_t di)
 Get detail function. More...
 
ast_dataitem_001_170_t ast_dataitem_001_170_decode (const ast_dataitem_t di)
 Decode function. More...
 
ast_dataitem_t ast_dataitem_001_170_encode (unsigned char *const buffer, const size_t buf_size, const ast_dataitem_ex_t xdi)
 Encode function. More...
 
void ast_dataitem_001_170_get_summary (char *summary, const size_t summary_size, const ast_dataitem_t di)
 Get summary function. More...
 
void ast_dataitem_001_170_get_detail_html (char *detail, const size_t detail_size, const ast_dataitem_t di)
 Get detail function. More...
 
ast_dataitem_001_210_t ast_dataitem_001_210_decode (const ast_dataitem_t di)
 Decode function. More...
 
void ast_dataitem_001_210_get_summary (char *summary, const size_t summary_size, const ast_dataitem_t di)
 Get summary function. More...
 
void ast_dataitem_001_210_get_detail_html (char *detail, const size_t detail_size, const ast_dataitem_t di)
 Get detail function. More...
 
ast_sacsic_t ast_datarecord_001_get_sacsic (const ast_datarecord_t dr)
 Get SAC/SIC function. More...
 
ast_msgtype_t ast_datarecord_001_get_msgtype (const ast_datarecord_t dr)
 Get message type function. More...
 
ast_tracknum_t ast_datarecord_001_get_tracknum (const ast_datarecord_t dr)
 Get track number function. More...
 
ast_squawk_t ast_datarecord_001_get_squawk (const ast_datarecord_t dr)
 Get Mode-3/A code function. More...
 
ast_altitude_t ast_datarecord_001_get_flightlevel (const ast_datarecord_t dr)
 Get flight level function. More...
 
ast_polar_coordinate_t ast_datarecord_001_get_polarcoord (const ast_datarecord_t dr)
 Get polar coordinate function. More...
 
ast_datarecord_001_t ast_datarecord_001_disassemble (const ast_datarecord_t dr)
 Disassemble function. More...
 
ast_datarecord_t ast_datarecord_001_assemble (unsigned char *const buffer, const size_t bufsize, const ast_datarecord_001_t dr, const ast_uap_t uap)
 Assemble function. More...
 
ast_datablock_t ast_datablock_001_mixuap_decode (const unsigned char *const buffer, const size_t bufsize)
 Decode CAT001 data block with data records using mixed track and plot UAP. More...
 

Detailed Description

ASTERIX CAT001 - Monoradar Target Reports.

Note
This implementation is based on ASTERIX CAT001 version 1.0

Macro Definition Documentation

◆ ast_dataitem_001_050_get_size

#define ast_dataitem_001_050_get_size   ast_dataitem_mode_2_code_get_size

Get size function.

◆ ast_datarecord_001_get_callsign

#define ast_datarecord_001_get_callsign   0

Get callsign function.

◆ ast_datarecord_001_get_coordinate

#define ast_datarecord_001_get_coordinate   0

Get coordinate function.

◆ ast_datarecord_001_get_heading

#define ast_datarecord_001_get_heading   0

Get heading function.

◆ ast_datarecord_001_get_icaoaddr

#define ast_datarecord_001_get_icaoaddr   0

Get ICAO 24-bit address function.

◆ ast_datarecord_001_get_speed

#define ast_datarecord_001_get_speed   0

Get speed function.

◆ ast_datarecord_001_get_timeofday

#define ast_datarecord_001_get_timeofday   0

Get time of day function.

Function Documentation

◆ ast_datablock_001_mixuap_decode()

ast_datablock_t ast_datablock_001_mixuap_decode ( const unsigned char *const  buffer,
const size_t  bufsize 
)

Decode CAT001 data block with data records using mixed track and plot UAP.

Decode CAT001 data block with data records using mixed track and plot UAP

Parameters
bufferBuffer to read datablock data
bufsizeBuffer size
Returns
Data block, whose "valid" field will be set when data decoding is successful or failed.

◆ ast_dataitem_001_get_name()

const char* ast_dataitem_001_get_name ( const ast_dataitem_type_t  type)

Get name function.

◆ ast_datarecord_001_get_flightlevel()

ast_altitude_t ast_datarecord_001_get_flightlevel ( const ast_datarecord_t  dr)

Get flight level function.

◆ ast_datarecord_001_get_msgtype()

ast_msgtype_t ast_datarecord_001_get_msgtype ( const ast_datarecord_t  dr)

Get message type function.

◆ ast_datarecord_001_get_polarcoord()

ast_polar_coordinate_t ast_datarecord_001_get_polarcoord ( const ast_datarecord_t  dr)

Get polar coordinate function.

◆ ast_datarecord_001_get_sacsic()

ast_sacsic_t ast_datarecord_001_get_sacsic ( const ast_datarecord_t  dr)

Get SAC/SIC function.

◆ ast_datarecord_001_get_squawk()

ast_squawk_t ast_datarecord_001_get_squawk ( const ast_datarecord_t  dr)

Get Mode-3/A code function.

◆ ast_datarecord_001_get_tracknum()

ast_tracknum_t ast_datarecord_001_get_tracknum ( const ast_datarecord_t  dr)

Get track number function.