1 | /* |
2 | * File: GlobalPosition_sil_sil_ec.h |
3 | * |
4 | * Code generated for Simulink model 'GlobalPosition_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:27:41 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_GlobalPosition_sil_sil_ec_h_ |
19 | #define RTW_HEADER_GlobalPosition_sil_sil_ec_h_ |
20 | #include "rtwtypes.h" |
21 | #include <math.h> |
22 | #ifndef GlobalPosition_sil_sil_ec_COMMON_INCLUDES_ |
23 | # define GlobalPosition_sil_sil_ec_COMMON_INCLUDES_ |
24 | #include "rtwtypes.h" |
25 | #endif /* GlobalPosition_sil_sil_ec_COMMON_INCLUDES_ */ |
26 | |
27 | /* Macros for accessing real-time model data structure */ |
28 | #ifndef rtmGetErrorStatus |
29 | # define rtmGetErrorStatus(rtm) ((rtm)->errorStatus) |
30 | #endif |
31 | |
32 | #ifndef rtmSetErrorStatus |
33 | # define rtmSetErrorStatus(rtm, val) ((rtm)->errorStatus = (val)) |
34 | #endif |
35 | |
36 | /* Forward declaration for rtModel */ |
37 | typedef struct tag_RTM_GlobalPosition_sil_si_T RT_MODEL_GlobalPosition_sil_s_T; |
38 | |
39 | /* Block signals and states (default storage) for system '<Root>' */ |
40 | typedef struct { |
41 | real_T UnitDelay_DSTATE; /* '<S1>/Unit Delay' */ |
42 | real_T UnitDelay1_DSTATE; /* '<S1>/Unit Delay1' */ |
43 | } DW_GlobalPosition_sil_sil_ec_T; |
44 | |
45 | /* External inputs (root inport signals with default storage) */ |
46 | typedef struct { |
47 | real_T gyroAngleRad; /* '<Root>/gyroAngleRad' */ |
48 | int32_T driveEncoder; /* '<Root>/driveEncoder' */ |
49 | } ExtU_GlobalPosition_sil_sil_e_T; |
50 | |
51 | /* External outputs (root outports fed by signals with default storage) */ |
52 | typedef struct { |
53 | real_T posGlobal[2]; /* '<Root>/posGlobal' */ |
54 | } ExtY_GlobalPosition_sil_sil_e_T; |
55 | |
56 | /* Parameters (default storage) */ |
57 | struct P_GlobalPosition_sil_sil_ec_T_ { |
58 | real_T MOTOR_DRIVE_TRANSMISSION_RATIO;/* Variable: MOTOR_DRIVE_TRANSMISSION_RATIO |
59 | * Referenced by: '<S1>/WHEEL_SIZE_DEG1' |
60 | */ |
61 | real_T WHEEL_SIZE_DEG; /* Variable: WHEEL_SIZE_DEG |
62 | * Referenced by: '<S1>/WHEEL_SIZE_DEG' |
63 | */ |
64 | real_T UnitDelay_InitialCondition; /* Expression: 0 |
65 | * Referenced by: '<S1>/Unit Delay' |
66 | */ |
67 | real_T UnitDelay1_InitialCondition; /* Expression: 0 |
68 | * Referenced by: '<S1>/Unit Delay1' |
69 | */ |
70 | }; |
71 | |
72 | /* Parameters (default storage) */ |
73 | typedef struct P_GlobalPosition_sil_sil_ec_T_ P_GlobalPosition_sil_sil_ec_T; |
74 | |
75 | /* Real-time Model Data Structure */ |
76 | struct tag_RTM_GlobalPosition_sil_si_T { |
77 | const char_T * volatile errorStatus; |
78 | }; |
79 | |
80 | /* Block parameters (default storage) */ |
81 | extern P_GlobalPosition_sil_sil_ec_T GlobalPosition_sil_sil_ec_P; |
82 | |
83 | /* Block signals and states (default storage) */ |
84 | extern DW_GlobalPosition_sil_sil_ec_T GlobalPosition_sil_sil_ec_DW; |
85 | |
86 | /* External inputs (root inport signals with default storage) */ |
87 | extern ExtU_GlobalPosition_sil_sil_e_T GlobalPosition_sil_sil_ec_U; |
88 | |
89 | /* External outputs (root outports fed by signals with default storage) */ |
90 | extern ExtY_GlobalPosition_sil_sil_e_T GlobalPosition_sil_sil_ec_Y; |
91 | |
92 | /* Model entry point functions */ |
93 | extern void GlobalPosition_sil_sil_ec_initialize(void); |
94 | extern void GlobalPosition_sil_sil_ec_step(void); |
95 | extern void GlobalPosition_sil_sil_ec_terminate(void); |
96 | |
97 | /* Real-time Model object */ |
98 | extern RT_MODEL_GlobalPosition_sil_s_T *const GlobalPosition_sil_sil_ec_M; |
99 | |
100 | /*- |
101 | * The generated code includes comments that allow you to trace directly |
102 | * back to the appropriate location in the model. The basic format |
103 | * is <system>/block_name, where system is the system number (uniquely |
104 | * assigned by Simulink) and block_name is the name of the block. |
105 | * |
106 | * Note that this particular code originates from a subsystem build, |
107 | * and has its own system numbers different from the parent model. |
108 | * Refer to the system hierarchy for this subsystem below, and use the |
109 | * MATLAB hilite_system command to trace the generated code back |
110 | * to the parent model. For example, |
111 | * |
112 | * hilite_system('Frame_Glob_ec/GlobalPosition_sil_sil_ec') - opens subsystem Frame_Glob_ec/GlobalPosition_sil_sil_ec |
113 | * hilite_system('Frame_Glob_ec/GlobalPosition_sil_sil_ec/Kp') - opens and selects block Kp |
114 | * |
115 | * Here is the system hierarchy for this model |
116 | * |
117 | * '<Root>' : 'Frame_Glob_ec' |
118 | * '<S1>' : 'Frame_Glob_ec/GlobalPosition_sil_sil_ec' |
119 | * '<S2>' : 'Frame_Glob_ec/GlobalPosition_sil_sil_ec/Model_Info' |
120 | */ |
121 | #endif /* RTW_HEADER_GlobalPosition_sil_sil_ec_h_ */ |
122 | |
123 | /* |
124 | * File trailer for generated code. |
125 | * |
126 | * [EOF] |
127 | */ |
128 |