1/*
2 * File: ManageVehicleStates_sil_sil_ec.h
3 *
4 * Code generated for Simulink model 'ManageVehicleStates_sil_sil_ec'.
5 *
6 * Model version : 1.2
7 * Simulink Coder version : 9.0 (R2018b) 24-May-2018
8 * C/C++ source code generated on : Tue Oct 29 09:38:21 2019
9 *
10 * Target selection: ert.tlc
11 * Embedded hardware selection: Intel->x86-64 (Windows64)
12 * Code generation objectives:
13 * 1. Execution efficiency
14 * 2. RAM efficiency
15 * Validation result: Not run
16 */
17
18#ifndef RTW_HEADER_ManageVehicleStates_sil_sil_ec_h_
19#define RTW_HEADER_ManageVehicleStates_sil_sil_ec_h_
20#include "rtwtypes.h"
21#ifndef ManageVehicleStates_sil_sil_ec_COMMON_INCLUDES_
22# define ManageVehicleStates_sil_sil_ec_COMMON_INCLUDES_
23#include "rtwtypes.h"
24#endif /* ManageVehicleStates_sil_sil_ec_COMMON_INCLUDES_ */
25
26/* Macros for accessing real-time model data structure */
27#ifndef rtmGetErrorStatus
28# define rtmGetErrorStatus(rtm) ((rtm)->errorStatus)
29#endif
30
31#ifndef rtmSetErrorStatus
32# define rtmSetErrorStatus(rtm, val) ((rtm)->errorStatus = (val))
33#endif
34
35/* Forward declaration for rtModel */
36typedef struct tag_RTM RT_MODEL;
37
38#ifndef DEFINED_TYPEDEF_FOR_VehicleStates_
39#define DEFINED_TYPEDEF_FOR_VehicleStates_
40
41typedef struct {
42 boolean_T VehicleControlOn;
43 boolean_T VehicleControlOff;
44 boolean_T EmergencyStop;
45 boolean_T VehicleIdle;
46} VehicleStates;
47
48#endif
49
50/* Block signals and states (default storage) for system '<Root>' */
51typedef struct {
52 int8_T UnitDelay_DSTATE; /* '<S3>/Unit Delay' */
53 uint8_T tp_FWD; /* '<S1>/Chart' */
54 uint8_T tp_REV; /* '<S1>/Chart' */
55 uint8_T tp_ControlledDrive; /* '<S1>/Chart' */
56 uint8_T is_active_c6_ManageVehicleState;/* '<S1>/Chart' */
57 uint8_T is_c6_ManageVehicleStates_sil_s;/* '<S1>/Chart' */
58 uint8_T is_VehicleControlOn; /* '<S1>/Chart' */
59 uint8_T is_ManualDrive; /* '<S1>/Chart' */
60 boolean_T VehicleControlOn; /* '<S1>/Chart' */
61 boolean_T VehicleControlOff; /* '<S1>/Chart' */
62 boolean_T EmergencyStop; /* '<S1>/Chart' */
63 boolean_T VehicleIdle; /* '<S1>/Chart' */
64} DW;
65
66/* External inputs (root inport signals with default storage) */
67typedef struct {
68 boolean_T gyroReady; /* '<Root>/gyroReady' */
69 int8_T remoteCtrlCmd; /* '<Root>/remoteCtrlCmd' */
70 boolean_T emergencyStopObstacle; /* '<Root>/emergencyStopObstacle' */
71} ExtU;
72
73/* External outputs (root outports fed by signals with default storage) */
74typedef struct {
75 VehicleStates VehicleStates_h; /* '<Root>/VehicleStates' */
76 real_T gear; /* '<Root>/gear' */
77 boolean_T autopilot; /* '<Root>/autopilot' */
78} ExtY;
79
80/* Parameters (default storage) */
81struct P_ {
82 int8_T REMOTE_DRIVE_AUTO_OFF; /* Variable: REMOTE_DRIVE_AUTO_OFF
83 * Referenced by: '<S1>/Chart'
84 */
85 int8_T REMOTE_DRIVE_AUTO_ON; /* Variable: REMOTE_DRIVE_AUTO_ON
86 * Referenced by: '<S1>/Chart'
87 */
88 int8_T REMOTE_DRIVE_FWD; /* Variable: REMOTE_DRIVE_FWD
89 * Referenced by: '<S1>/Chart'
90 */
91 int8_T REMOTE_DRIVE_REV; /* Variable: REMOTE_DRIVE_REV
92 * Referenced by: '<S1>/Chart'
93 */
94 int8_T REMOTE_START; /* Variable: REMOTE_START
95 * Referenced by: '<S1>/Chart'
96 */
97 int8_T REMOTE_STOP; /* Variable: REMOTE_STOP
98 * Referenced by: '<S1>/Chart'
99 */
100 int8_T UnitDelay_InitialCondition; /* Computed Parameter: UnitDelay_InitialCondition
101 * Referenced by: '<S3>/Unit Delay'
102 */
103};
104
105/* Parameters (default storage) */
106typedef struct P_ P;
107
108/* Real-time Model Data Structure */
109struct tag_RTM {
110 const char_T * volatile errorStatus;
111};
112
113/* Block parameters (default storage) */
114extern P rtP;
115
116/* Block signals and states (default storage) */
117extern DW rtDW;
118
119/* External inputs (root inport signals with default storage) */
120extern ExtU rtU;
121
122/* External outputs (root outports fed by signals with default storage) */
123extern ExtY rtY;
124
125/* Model entry point functions */
126extern void ManageVehicleStates_sil_sil_ec_initialize(void);
127extern void ManageVehicleStates_sil_sil_ec_step(void);
128extern void ManageVehicleStates_sil_sil_ec_terminate(void);
129
130/* Real-time Model object */
131extern RT_MODEL *const rtM;
132
133/*-
134 * The generated code includes comments that allow you to trace directly
135 * back to the appropriate location in the model. The basic format
136 * is <system>/block_name, where system is the system number (uniquely
137 * assigned by Simulink) and block_name is the name of the block.
138 *
139 * Note that this particular code originates from a subsystem build,
140 * and has its own system numbers different from the parent model.
141 * Refer to the system hierarchy for this subsystem below, and use the
142 * MATLAB hilite_system command to trace the generated code back
143 * to the parent model. For example,
144 *
145 * hilite_system('Frame_Mana_ec/ManageVehicleStates_sil_sil_ec') - opens subsystem Frame_Mana_ec/ManageVehicleStates_sil_sil_ec
146 * hilite_system('Frame_Mana_ec/ManageVehicleStates_sil_sil_ec/Kp') - opens and selects block Kp
147 *
148 * Here is the system hierarchy for this model
149 *
150 * '<Root>' : 'Frame_Mana_ec'
151 * '<S1>' : 'Frame_Mana_ec/ManageVehicleStates_sil_sil_ec'
152 * '<S2>' : 'Frame_Mana_ec/ManageVehicleStates_sil_sil_ec/Chart'
153 * '<S3>' : 'Frame_Mana_ec/ManageVehicleStates_sil_sil_ec/HoldAfterTouch'
154 * '<S4>' : 'Frame_Mana_ec/ManageVehicleStates_sil_sil_ec/Model_Info'
155 * '<S5>' : 'Frame_Mana_ec/ManageVehicleStates_sil_sil_ec/HoldAfterTouch/Model_Info'
156 */
157#endif /* RTW_HEADER_ManageVehicleStates_sil_sil_ec_h_ */
158
159/*
160 * File trailer for generated code.
161 *
162 * [EOF]
163 */
164