ICAROUS
All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros Modules Pages
traffic.h
Go to the documentation of this file.
1
6#ifndef ICAROUS_CFS_TRAFFIC_H
7#define ICAROUS_CFS_TRAFFIC_H
8
9#include "cfe.h"
10#include "cfe_error.h"
11#include "cfe_evs.h"
12#include "cfe_sb.h"
13#include "cfe_es.h"
14#include "cfe_platform_cfg.h"
15
16#include <string.h>
17#include <math.h>
18
19#include "TrafficMonitor.h"
20
21#include "Icarous.h"
22#include "traffic_msgids.h"
23#include "sch_msgids.h"
24
25#include "traffic_msg.h"
26#include "traffic_tbl.h"
27
28#define TRAFFIC_STARTUP_INF_EID 0
29#define TRAFFIC_COMMAND_ERR_EID 1
30#define TRAFFIC_RECEIVED_INTRUDER_EID 2
31
32#define TRAFFIC_PIPE_DEPTH 100
33#define TRAFFIC_PIPE_NAME "TRAFFIC_PIPE"
34#define TRAFFIC_MAJOR_VERSION 1
35#define TRAFFIC_MINOR_VERSION 0
36
57typedef struct{
58 CFE_SB_PipeId_t Traffic_Pipe;
59 CFE_SB_MsgPtr_t Traffic_MsgPtr;
60 void* tfMonitor;
61 CFE_TBL_Handle_t Traffic_tblHandle;
62 bands_t trackBands;
63 bands_t speedBands;
64 bands_t vsBands;
65 bands_t altBands;
70 double position[3];
71 double velocity[3];
72 double time;
73 bool log;
77 uint32_t trafficSrc;
81
85void TRAFFIC_AppMain(void);
86
90void TRAFFIC_AppInit(void);
91
95void TRAFFIC_AppCleanUp(void);
96
100void TRAFFIC_ProcessPacket(void);
101
107int32_t TrafficTableValidationFunc(void *TblPtr);
108
112TrafficAppData_t trafficAppData;
113
114#endif //ICAROUS_CFS_TRAFFIC_H
EXTERN position_t position
position message
Definition: arducopter.h:225
Definition: traffic.h:57
traffic_parameters_t params
DAIDALUS parameters.
Definition: traffic.h:79
CFE_SB_MsgPtr_t Traffic_MsgPtr
Msg pointer to SB message.
Definition: traffic.h:59
int numTraffic
Number of traffic vehicles added.
Definition: traffic.h:74
bands_t speedBands
Ground speed kinematic band data.
Definition: traffic.h:63
bool return2fp1leg
Return to flight plan 1 leg.
Definition: traffic.h:75
bands_t altBands
Altitude kinematic band data.
Definition: traffic.h:65
flightplan_t flightplan2
Secondary flight plan.
Definition: traffic.h:69
CFE_SB_PipeId_t Traffic_Pipe
Pipe variable.
Definition: traffic.h:58
traffic_alerts_t tfAlerts
Traffic Alerts.
Definition: traffic.h:67
bool updateDaaParams
Update DAA params via SB messages.
Definition: traffic.h:78
flightplan_t flightplan1
Mission flight plan information.
Definition: traffic.h:68
double time
Time from autopilot.
Definition: traffic.h:72
band_report_t bandReport
Band Report.
Definition: traffic.h:66
bands_t vsBands
Vertical speed kinematic band data.
Definition: traffic.h:64
bool return2fp2leg
Return to flight plan 2 leg.
Definition: traffic.h:76
CFE_TBL_Handle_t Traffic_tblHandle
Traffic table handle.
Definition: traffic.h:61
bands_t trackBands
Track kinematic band data.
Definition: traffic.h:62
bool log
log DAA output
Definition: traffic.h:73
uint32_t trafficSrc
Traffic source selector.
Definition: traffic.h:77
void * tfMonitor
Opaque pointer to TrafficMonitor.
Definition: traffic.h:60
kinematics bands report
Definition: traffic_msg.h:21
message encoding flight plan information
Definition: traffic_msg.h:29
parameters used by the traffic application
Definition: traffic_msg.h:56
int32_t TrafficTableValidationFunc(void *TblPtr)
Definition: traffic.c:259
void TRAFFIC_AppMain(void)
Event ID definitions.
Definition: traffic.c:18
void TRAFFIC_AppInit(void)
Definition: traffic.c:39
void TRAFFIC_ProcessPacket(void)
Definition: traffic.c:104
void TRAFFIC_AppCleanUp(void)
Definition: traffic.c:99
Traffic message definition.
Traffic message id definitions.
traffic table definition