cat019.h
Go to the documentation of this file.
1 /*
2  * libasterix
3  * Copyright [2013-2021] SinoATC <http://www.sinoatc.com>.
4  * All Rights Reserved.
5  *
6  * NOTICE: All information contained herein is, and remains
7  * the property of SinoATC and its suppliers, if any.
8  * The intellectual and technical concepts contained herein
9  * are proprietary to Aerosys Corporation and its suppliers and may be
10  * covered by U.S. and Foreign Patents, patents in process,
11  * and are protected by trade secret or copyright law.
12  * Dissemination of this information or reproduction of this material
13  * is strictly forbidden unless prior written permission is obtained
14  * from SinoATC.
15  */
16 
25 #ifndef LIBASTERIX_CAT019_H
26 #define LIBASTERIX_CAT019_H
27 
28 #include "dataitem.h"
29 #include "cat_generic.h"
30 
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34 
36 const char* ast_dataitem_019_get_name(const ast_dataitem_type_t type);
37 
43 typedef enum _ast_mlat_status_message_type_t
45 {
50 
53 
55 #define ast_dataitem_019_000_get_size ast_dataitem_message_type_get_size
56 
58 #define ast_dataitem_019_000_decode ast_dataitem_message_type_decode
59 
61 #define ast_dataitem_019_000_encode ast_dataitem_message_type_encode
62 
64 AST_API void ast_dataitem_019_000_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
65 
67 #define ast_dataitem_019_000_get_detail_html ast_dataitem_get_detail_html_dummy
68 
79 
81 #define ast_dataitem_019_010_get_size ast_dataitem_data_source_identifier_get_size
82 
84 #define ast_dataitem_019_010_decode ast_dataitem_data_source_identifier_decode
85 
87 #define ast_dataitem_019_010_encode ast_dataitem_data_source_identifier_encode
88 
90 #define ast_dataitem_019_010_get_summary ast_dataitem_data_source_identifier_get_summary
91 
93 #define ast_dataitem_019_010_get_detail_html ast_dataitem_data_source_identifier_get_detail_html
94 
104 
106 #define ast_dataitem_019_140_get_size ast_dataitem_time_of_day_get_size
107 
109 #define ast_dataitem_019_140_decode ast_dataitem_time_of_day_decode
110 
112 #define ast_dataitem_019_140_encode ast_dataitem_time_of_day_encode
113 
115 #define ast_dataitem_019_140_get_summary ast_dataitem_time_of_day_get_summary
116 
118 #define ast_dataitem_019_140_get_detail_html ast_dataitem_time_of_day_get_detail_html
119 
128 typedef enum _ast_mlat_system_status_t
130 {
136 
138 typedef struct _ast_dataitem_019_550_t
139 {
140  bool valid;
141 
143  bool overload;
147 
149 #define ast_dataitem_019_550_get_size ast_dataitem_get_size_fixed_1_byte
150 
153 
155 AST_API void ast_dataitem_019_550_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
156 
158 AST_API void ast_dataitem_019_550_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
159 
168 typedef struct _ast_mlat_tp_status_t
170 {
171  bool executive;
172  bool good;
174 
176 #define AST_MLAT_MAX_TP 4
177 
179 typedef struct _ast_dataitem_019_551_t
180 {
181  bool valid;
182 
185 
187 #define ast_dataitem_019_551_get_size ast_dataitem_get_size_fixed_1_byte
188 
191 
193 AST_API void ast_dataitem_019_551_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
194 
196 AST_API void ast_dataitem_019_551_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
197 
206 typedef struct _ast_mlat_rs_status_t
208 {
209  int id;
210  bool rx_1090;
211  bool tx_1030;
212  bool tx_1090;
213  bool good;
214  bool online;
216 
218 #define AST_MLAT_MAX_RS 255
219 
221 typedef struct _ast_dataitem_019_552_t
222 {
223  bool valid;
224 
228 
230 #define ast_dataitem_019_552_get_size ast_dataitem_get_size_rep_2_byte
231 
234 
236 AST_API void ast_dataitem_019_552_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
237 
239 AST_API void ast_dataitem_019_552_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
240 
249 typedef enum _ast_mlat_ref_transponder_status_t
251 {
257 
259 #define AST_MLAT_MAX_RT 16
260 
262 typedef struct _ast_dataitem_019_553_t
263 {
264  bool valid;
265 
269 
271 #define ast_dataitem_019_553_get_size ast_dataitem_get_size_var_unlimited
272 
275 
277 AST_API void ast_dataitem_019_553_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
278 
280 AST_API void ast_dataitem_019_553_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
281 
292 
294 #define ast_dataitem_019_600_get_size ast_dataitem_position_wgs84_get_size
295 
297 #define ast_dataitem_019_600_decode ast_dataitem_position_wgs84_decode
298 
300 #define ast_dataitem_019_600_get_summary ast_dataitem_position_wgs84_get_summary
301 
303 #define ast_dataitem_019_600_get_detail_html ast_dataitem_position_wgs84_get_detail_html
304 
313 typedef struct _ast_dataitem_019_610_t
315 {
316  bool valid;
317 
319  double height;
321 
323 #define ast_dataitem_019_610_get_size ast_dataitem_get_size_fixed_2_byte
324 
327 
329 AST_API void ast_dataitem_019_610_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
330 
332 AST_API void ast_dataitem_019_610_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
333 
342 typedef struct _ast_dataitem_019_620_t
344 {
345  bool valid;
346 
349 
351 #define ast_dataitem_019_620_get_size ast_dataitem_get_size_fixed_1_byte
352 
355 
357 AST_API void ast_dataitem_019_620_get_summary(char* summary, const size_t summary_size, const ast_dataitem_t di);
358 
360 AST_API void ast_dataitem_019_620_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di);
361 
364 #ifdef __cplusplus
365  }
366 #endif // extern "C"
367 
368 #endif //LIBASTERIX_CAT019_H
369 
370 // vim:set ft=c sw=2 sts=2 fenc=utf8:
Data Item I019/551 - Tracking Processor Detailed Status.
Definition: cat019.h:179
Definition: cat019.h:132
Definition: cat019.h:252
Data Item - Message Type.
Definition: cat_generic.h:51
bool rx_1090
Definition: cat019.h:210
void ast_dataitem_019_550_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
void ast_dataitem_019_610_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
ast_dataitem_019_553_t ast_dataitem_019_553_decode(const ast_dataitem_t di)
Decode function.
bool online
true - good; false - faulted
Definition: cat019.h:214
ast_dataitem_message_type_t ast_dataitem_019_000_t
Data Item I019/000 - Message Type.
Definition: cat019.h:52
MLAT tracking processor status.
Definition: cat019.h:169
#define AST_API
Definition: platform.h:63
Data Item - Data Source Identifier.
Definition: cat_generic.h:93
bool overload
Definition: cat019.h:143
MLAT remote sensor status.
Definition: cat019.h:207
Definition: cat019.h:131
ast_mlat_system_status_t sys_status
Definition: cat019.h:142
Data Item - Time of Day.
Definition: cat_generic.h:219
int undulation
Definition: cat019.h:347
#define AST_MLAT_MAX_RS
Max MLAT remote sensors.
Definition: cat019.h:218
Data Item I019/551 - Tracking Processor Detailed Status.
Definition: cat019.h:221
void ast_dataitem_019_553_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
ast_dataitem_019_551_t ast_dataitem_019_551_decode(const ast_dataitem_t di)
Decode function.
Definition: cat019.h:46
void ast_dataitem_019_551_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
bool valid
Definition: cat019.h:316
This file includes the common used data items shares by different categories.
Data Item I019/550 - System Status.
Definition: cat019.h:138
void ast_dataitem_019_620_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
int raw_height
Definition: cat019.h:318
int id
Definition: cat019.h:209
ast_dataitem_019_610_t ast_dataitem_019_610_decode(const ast_dataitem_t di)
Decode function.
void ast_dataitem_019_552_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
bool test_target_failure
Definition: cat019.h:145
Definition: cat019.h:48
Data Item I019/610 - Height of MLT System Reference Point.
Definition: cat019.h:314
Definition: cat019.h:133
ast_dataitem_019_552_t ast_dataitem_019_552_decode(const ast_dataitem_t di)
Decode function.
bool time_source_invalid
Definition: cat019.h:144
ast_dataitem_position_wgs84_t ast_dataitem_020_041_t
Data Item I019/600 - Position of MLT System Reference Point.
Definition: cat019.h:291
double height
Raw height, LSB=0.25m.
Definition: cat019.h:319
Data Item - Position in WGS84 Coordinates.
Definition: cat_generic.h:343
bool valid
Definition: cat019.h:264
Definition: cat019.h:134
Definition: cat019.h:253
#define AST_MLAT_MAX_TP
Max MLAT tracking processors.
Definition: cat019.h:176
ast_mlat_system_status_t
MLAT system status type.
Definition: cat019.h:129
Implementation of Dataitem concept defined by ASTERIX.
void ast_dataitem_019_610_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
Definition: cat019.h:255
void ast_dataitem_019_551_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
size_t n_ref_transponders
Definition: cat019.h:267
ast_dataitem_019_550_t ast_dataitem_019_550_decode(const ast_dataitem_t di)
Decode function.
Definition: cat019.h:47
Dataitem.
Definition: dataitem.h:422
bool good
Definition: cat019.h:213
bool tx_1090
Definition: cat019.h:212
bool valid
Definition: cat019.h:140
void ast_dataitem_019_550_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
const char * ast_dataitem_019_get_name(const ast_dataitem_type_t type)
Get name function.
void ast_dataitem_019_620_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
bool valid
Definition: cat019.h:345
bool executive
Definition: cat019.h:171
ast_dataitem_type_t
Definition of data item id in each category.
Definition: dataitem.h:67
size_t n_remote_sensors
Definition: cat019.h:226
ast_dataitem_time_of_day_t ast_dataitem_019_140_t
Data Item I019/140 - Time of Day.
Definition: cat019.h:103
#define AST_MLAT_MAX_RT
Max MLAT reference transponders.
Definition: cat019.h:259
void ast_dataitem_019_000_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get summary function.
bool good
true - executive; false - standby
Definition: cat019.h:172
bool valid
Definition: cat019.h:223
void ast_dataitem_019_553_get_detail_html(char *detail, const size_t detail_size, const ast_dataitem_t di)
Get detail function.
ast_dataitem_019_620_t ast_dataitem_019_620_decode(const ast_dataitem_t di)
Decode function.
Data Item I019/620 - WGS-84 Undulation.
Definition: cat019.h:343
bool tx_1030
Definition: cat019.h:211
ast_mlat_ref_transponder_status_t
MLAT reference transponder status.
Definition: cat019.h:250
ast_mlat_status_message_type_t
MLAT status message type.
Definition: cat019.h:44
ast_dataitem_data_source_identifier_t ast_dataitem_019_010_t
Data Item I019/010 - Data Source Identifier.
Definition: cat019.h:78
bool valid
Definition: cat019.h:181
void ast_dataitem_019_552_get_summary(char *summary, const size_t summary_size, const ast_dataitem_t di)
Get Summary function.
Data Item I019/553 - Reference Transponder Detailed Status.
Definition: cat019.h:262
Definition: cat019.h:254