ICAROUS
All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros Modules Pages
guidance.h
Go to the documentation of this file.
1
6#ifndef ICAROUS_CFS_GUIDANCE_H
7#define ICAROUS_CFS_GUIDANCE_H
8#define GUIDANCE
9
10#include "cfe.h"
11#include "cfe_error.h"
12#include "cfe_evs.h"
13#include "cfe_sb.h"
14#include "cfe_es.h"
15#include "cfe_platform_cfg.h"
16
17#include <string.h>
18#include <stdlib.h>
19#include <time.h>
20
21#include "Icarous_msg.h"
22#include "Icarous_msgids.h"
23#include "trajectory_msgids.h"
24#include "guidance_msg.h"
25#include "guidance_msgids.h"
26#include "sch_msgids.h"
27#include "UtilFunctions.h"
28
30
31#define GUIDANCE_STARTUP_INF_EID 0
32#define GUIDANCE_COMMAND_ERR_EID 1
33
34#define GUIDANCE_PIPE_DEPTH 30
35#define GUIDANCE_PIPE_NAME "GUIDANCE_PIPE"
36#define GUIDANCE_MAJOR_VERSION 1
37#define GUIDANCE_MINOR_VERSION 0
38
52typedef struct{
53 CFE_SB_PipeId_t guidance_Pipe;
54 CFE_SB_MsgPtr_t guidance_MsgPtr;
56 bool takeoffComplete;
57 position_t pos;
58 void* Guidance;
59 char activePlan[25];
60 status_t statustxt;
61 bool sentPos;
62 int lastReachedWaypoint;
63 flightplan_t plan;
65
69void GUIDANCE_AppMain(void);
70
74void GUIDANCE_AppInit(void);
75
79void GUIDANCE_AppInitData(void);
80
84void GUIDANCE_AppCleanUp(void);
85
89void GUIDANCE_ProcessPacket(void);
90
94void GUIDANCE_Run(void);
95
101int32_t GuidanceTableValidationFunc(void *TblPtr);
102
107
112
113
117EXTERN guidanceAppData_t guidanceAppData;
118
119
120#endif //ICAROUS_CFS_GUIDANCE_H
Icarous common message definitions.
Message ID definition of common icarous messages.
void GUIDANCE_AppInitData(void)
Definition: guidance.c:95
void GUIDANCE_AppInit(void)
Definition: guidance.c:37
void HandleGuidanceCommands(argsCmd_t *cmd)
Definition: guidance.c:187
void GUIDANCE_AppMain(void)
Event ID definitions.
Definition: guidance.c:16
int32_t GuidanceTableValidationFunc(void *TblPtr)
Definition: guidance.c:393
void GUIDANCE_ProcessPacket(void)
Definition: guidance.c:105
void GUIDANCE_AppCleanUp(void)
Definition: guidance.c:101
void GUIDANCE_Run(void)
Definition: guidance.c:293
void ComputeTakeoffGuidanceInput(void)
Definition: guidance.c:379
Core class for performing guidance computations.
Definition: Guidance.hpp:26
Defines message topics used by the guidance application.
Structure to hold parameters required for guidance.
Definition: Guidance.h:34
Command with arguments.
Definition: Icarous_msg.h:244
message encoding flight plan information
Definition: guidance.h:52
CFE_SB_MsgPtr_t guidance_MsgPtr
Msg pointer to SB message.
Definition: guidance.h:54
CFE_SB_PipeId_t guidance_Pipe
Pipe variable.
Definition: guidance.h:53
GuidanceParams_t guidance_params
Guidance table.
Definition: guidance.h:55
position information of aircraft.
Definition: Icarous_msg.h:174
Message to provide status information.
Definition: Icarous_msg.h:269
definition of message ids relevant to the trajectory applicaiton