1/*
2 * testFoil.h
3 *
4 * Classroom License -- for classroom instructional use only. Not for
5 * government, commercial, academic research, or other organizational use.
6 *
7 * Code generation for model "testFoil".
8 *
9 * Model version : 1.3
10 * Simulink Coder version : 8.11 (R2016b) 25-Aug-2016
11 * C source code generated on : Wed Nov 23 16:13:03 2016
12 *
13 * Target selection: ert.tlc
14 * Note: GRT includes extra infrastructure and instrumentation for prototyping
15 * Embedded hardware selection: ARM Compatible->ARM Cortex
16 * Code generation objectives: Unspecified
17 * Validation result: Not run
18 */
19
20#ifndef RTW_HEADER_testFoil_h_
21#define RTW_HEADER_testFoil_h_
22#include <float.h>
23#include <string.h>
24#include <stddef.h>
25#ifndef testFoil_COMMON_INCLUDES_
26# define testFoil_COMMON_INCLUDES_
27#include "rtwtypes.h"
28#include "rtw_extmode.h"
29#include "sysran_types.h"
30#include "rtw_continuous.h"
31#include "rtw_solver.h"
32#include "dt_info.h"
33#include "ext_work.h"
34#endif /* testFoil_COMMON_INCLUDES_ */
35
36#include "testFoil_types.h"
37
38/* Shared type includes */
39#include "multiword_types.h"
40
41/* Macros for accessing real-time model data structure */
42#ifndef rtmGetFinalTime
43# define rtmGetFinalTime(rtm) ((rtm)->Timing.tFinal)
44#endif
45
46#ifndef rtmGetRTWExtModeInfo
47# define rtmGetRTWExtModeInfo(rtm) ((rtm)->extModeInfo)
48#endif
49
50#ifndef rtmGetErrorStatus
51# define rtmGetErrorStatus(rtm) ((rtm)->errorStatus)
52#endif
53
54#ifndef rtmSetErrorStatus
55# define rtmSetErrorStatus(rtm, val) ((rtm)->errorStatus = (val))
56#endif
57
58#ifndef rtmGetStopRequested
59# define rtmGetStopRequested(rtm) ((rtm)->Timing.stopRequestedFlag)
60#endif
61
62#ifndef rtmSetStopRequested
63# define rtmSetStopRequested(rtm, val) ((rtm)->Timing.stopRequestedFlag = (val))
64#endif
65
66#ifndef rtmGetStopRequestedPtr
67# define rtmGetStopRequestedPtr(rtm) (&((rtm)->Timing.stopRequestedFlag))
68#endif
69
70#ifndef rtmGetT
71# define rtmGetT(rtm) ((rtm)->Timing.taskTime0)
72#endif
73
74#ifndef rtmGetTFinal
75# define rtmGetTFinal(rtm) ((rtm)->Timing.tFinal)
76#endif
77
78/* Block signals (auto storage) */
79typedef struct {
80 real_T MagManFoil_o1; /* '<Root>/MagMan Foil' */
81 real_T MagManFoil_o2; /* '<Root>/MagMan Foil' */
82 real_T MagManFoil_o3; /* '<Root>/MagMan Foil' */
83} B_testFoil_T;
84
85/* Block states (auto storage) for system '<Root>' */
86typedef struct {
87 real_T MagManFoil_DSTATE; /* '<Root>/MagMan Foil' */
88 struct {
89 void *LoggedData;
90 } Scope_PWORK; /* '<Root>/Scope' */
91} DW_testFoil_T;
92
93/* Real-time Model Data Structure */
94struct tag_RTM_testFoil_T {
95 const char_T *errorStatus;
96 RTWExtModeInfo *extModeInfo;
97
98 /*
99 * Sizes:
100 * The following substructure contains sizes information
101 * for many of the model attributes such as inputs, outputs,
102 * dwork, sample times, etc.
103 */
104 struct {
105 uint32_T checksums[4];
106 } Sizes;
107
108 /*
109 * SpecialInfo:
110 * The following substructure contains special information
111 * related to other components that are dependent on RTW.
112 */
113 struct {
114 const void *mappingInfo;
115 } SpecialInfo;
116
117 /*
118 * Timing:
119 * The following substructure contains information regarding
120 * the timing information for the model.
121 */
122 struct {
123 time_T taskTime0;
124 uint32_T clockTick0;
125 uint32_T clockTickH0;
126 time_T stepSize0;
127 time_T tFinal;
128 boolean_T stopRequestedFlag;
129 } Timing;
130};
131
132/* Block signals (auto storage) */
133extern B_testFoil_T testFoil_B;
134
135/* Block states (auto storage) */
136extern DW_testFoil_T testFoil_DW;
137
138/* Model entry point functions */
139extern void testFoil_initialize(void);
140extern void testFoil_step(void);
141extern void testFoil_terminate(void);
142
143/* Real-time Model object */
144extern RT_MODEL_testFoil_T *const testFoil_M;
145
146/*-
147 * The generated code includes comments that allow you to trace directly
148 * back to the appropriate location in the model. The basic format
149 * is <system>/block_name, where system is the system number (uniquely
150 * assigned by Simulink) and block_name is the name of the block.
151 *
152 * Use the MATLAB hilite_system command to trace the generated code back
153 * to the model. For example,
154 *
155 * hilite_system('<S3>') - opens system 3
156 * hilite_system('<S3>/Kp') - opens and selects block Kp which resides in S3
157 *
158 * Here is the system hierarchy for this model
159 *
160 * '<Root>' : 'testFoil'
161 */
162#endif /* RTW_HEADER_testFoil_h_ */
163