1/*
2 * File: SMD_TF.h
3 *
4 * Code generated for Simulink model 'SMD_TF'.
5 *
6 * Model version : 1.7
7 * Simulink Coder version : 8.10 (R2016a) 10-Feb-2016
8 * C/C++ source code generated on : Sun Jun 05 15:55:07 2016
9 *
10 * Target selection: ert.tlc
11 * Embedded hardware selection: ARM Compatible->ARM Cortex
12 * Code generation objectives:
13 * 1. Execution efficiency
14 * 2. RAM efficiency
15 * Validation result: Not run
16 */
17
18#ifndef RTW_HEADER_SMD_TF_h_
19#define RTW_HEADER_SMD_TF_h_
20#include <string.h>
21#ifndef SMD_TF_COMMON_INCLUDES_
22# define SMD_TF_COMMON_INCLUDES_
23#include "rtwtypes.h"
24#include "rtw_continuous.h"
25#include "rtw_solver.h"
26#endif /* SMD_TF_COMMON_INCLUDES_ */
27
28/* Macros for accessing real-time model data structure */
29#ifndef rtmGetErrorStatus
30# define rtmGetErrorStatus(rtm) ((rtm)->errorStatus)
31#endif
32
33#ifndef rtmSetErrorStatus
34# define rtmSetErrorStatus(rtm, val) ((rtm)->errorStatus = (val))
35#endif
36
37#ifndef rtmGetStopRequested
38# define rtmGetStopRequested(rtm) ((rtm)->Timing.stopRequestedFlag)
39#endif
40
41#ifndef rtmSetStopRequested
42# define rtmSetStopRequested(rtm, val) ((rtm)->Timing.stopRequestedFlag = (val))
43#endif
44
45#ifndef rtmGetStopRequestedPtr
46# define rtmGetStopRequestedPtr(rtm) (&((rtm)->Timing.stopRequestedFlag))
47#endif
48
49#ifndef rtmGetT
50# define rtmGetT(rtm) (rtmGetTPtr((rtm))[0])
51#endif
52
53/* Forward declaration for rtModel */
54typedef struct tag_RTM RT_MODEL;
55
56/* Block signals and states (auto storage) for system '<Root>' */
57typedef struct {
58 real_T Step; /* '<Root>/Step' */
59} DW;
60
61/* Continuous states (auto storage) */
62typedef struct {
63 real_T TransferFcn_CSTATE[2]; /* '<Root>/Transfer Fcn' */
64} X;
65
66/* State derivatives (auto storage) */
67typedef struct {
68 real_T TransferFcn_CSTATE[2]; /* '<Root>/Transfer Fcn' */
69} XDot;
70
71/* State disabled */
72typedef struct {
73 boolean_T TransferFcn_CSTATE[2]; /* '<Root>/Transfer Fcn' */
74} XDis;
75
76#ifndef ODE4_INTG
77#define ODE4_INTG
78
79/* ODE4 Integration Data */
80typedef struct {
81 real_T *y; /* output */
82 real_T *f[4]; /* derivatives */
83} ODE4_IntgData;
84
85#endif
86
87/* Real-time Model Data Structure */
88struct tag_RTM {
89 const char_T *errorStatus;
90 RTWSolverInfo solverInfo;
91
92 /*
93 * ModelData:
94 * The following substructure contains information regarding
95 * the data used in the model.
96 */
97 struct {
98 X *contStates;
99 int_T *periodicContStateIndices;
100 real_T *periodicContStateRanges;
101 real_T *derivs;
102 boolean_T *contStateDisabled;
103 boolean_T zCCacheNeedsReset;
104 boolean_T derivCacheNeedsReset;
105 boolean_T blkStateChange;
106 real_T odeY[2];
107 real_T odeF[4][2];
108 ODE4_IntgData intgData;
109 } ModelData;
110
111 /*
112 * Sizes:
113 * The following substructure contains sizes information
114 * for many of the model attributes such as inputs, outputs,
115 * dwork, sample times, etc.
116 */
117 struct {
118 int_T numContStates;
119 int_T numPeriodicContStates;
120 int_T numSampTimes;
121 } Sizes;
122
123 /*
124 * Timing:
125 * The following substructure contains information regarding
126 * the timing information for the model.
127 */
128 struct {
129 uint32_T clockTick0;
130 time_T stepSize0;
131 uint32_T clockTick1;
132 SimTimeStep simTimeStep;
133 boolean_T stopRequestedFlag;
134 time_T *t;
135 time_T tArray[2];
136 } Timing;
137};
138
139/* Continuous states (auto storage) */
140extern X rtX;
141
142/* Block signals and states (auto storage) */
143extern DW rtDW;
144
145/* Model entry point functions */
146extern void SMD_TF_initialize(void);
147extern void SMD_TF_step(void);
148
149/* Real-time Model object */
150extern RT_MODEL *const rtM;
151
152/*-
153 * These blocks were eliminated from the model due to optimizations:
154 *
155 * Block '<Root>/Scope' : Unused code path elimination
156 */
157
158/*-
159 * The generated code includes comments that allow you to trace directly
160 * back to the appropriate location in the model. The basic format
161 * is <system>/block_name, where system is the system number (uniquely
162 * assigned by Simulink) and block_name is the name of the block.
163 *
164 * Use the MATLAB hilite_system command to trace the generated code back
165 * to the model. For example,
166 *
167 * hilite_system('<S3>') - opens system 3
168 * hilite_system('<S3>/Kp') - opens and selects block Kp which resides in S3
169 *
170 * Here is the system hierarchy for this model
171 *
172 * '<Root>' : 'SMD_TF'
173 */
174#endif /* RTW_HEADER_SMD_TF_h_ */
175
176/*
177 * File trailer for generated code.
178 *
179 * [EOF]
180 */
181