7 #ifndef INC_stringoutRecord_H 8 #define INC_stringoutRecord_H 23 #define HAS_stringoutdset 27 #ifndef stringoutPOST_NUM_CHOICES 34 #define stringoutPOST_NUM_CHOICES 2 68 struct asgMember *
asp;
70 struct processNotifyRecord *
ppnr;
104 stringoutRecordNAME = 0,
105 stringoutRecordDESC = 1,
106 stringoutRecordASG = 2,
107 stringoutRecordSCAN = 3,
108 stringoutRecordPINI = 4,
109 stringoutRecordPHAS = 5,
110 stringoutRecordEVNT = 6,
111 stringoutRecordTSE = 7,
112 stringoutRecordTSEL = 8,
113 stringoutRecordDTYP = 9,
114 stringoutRecordDISV = 10,
115 stringoutRecordDISA = 11,
116 stringoutRecordSDIS = 12,
117 stringoutRecordMLOK = 13,
118 stringoutRecordMLIS = 14,
119 stringoutRecordBKLNK = 15,
120 stringoutRecordDISP = 16,
121 stringoutRecordPROC = 17,
122 stringoutRecordSTAT = 18,
123 stringoutRecordSEVR = 19,
124 stringoutRecordNSTA = 20,
125 stringoutRecordNSEV = 21,
126 stringoutRecordACKS = 22,
127 stringoutRecordACKT = 23,
128 stringoutRecordDISS = 24,
129 stringoutRecordLCNT = 25,
130 stringoutRecordPACT = 26,
131 stringoutRecordPUTF = 27,
132 stringoutRecordRPRO = 28,
133 stringoutRecordASP = 29,
134 stringoutRecordPPN = 30,
135 stringoutRecordPPNR = 31,
136 stringoutRecordSPVT = 32,
137 stringoutRecordRSET = 33,
138 stringoutRecordDSET = 34,
139 stringoutRecordDPVT = 35,
140 stringoutRecordRDES = 36,
141 stringoutRecordLSET = 37,
142 stringoutRecordPRIO = 38,
143 stringoutRecordTPRO = 39,
144 stringoutRecordBKPT = 40,
145 stringoutRecordUDF = 41,
146 stringoutRecordUDFS = 42,
147 stringoutRecordTIME = 43,
148 stringoutRecordFLNK = 44,
149 stringoutRecordVAL = 45,
150 stringoutRecordOVAL = 46,
151 stringoutRecordDOL = 47,
152 stringoutRecordOMSL = 48,
153 stringoutRecordOUT = 49,
154 stringoutRecordMPST = 50,
155 stringoutRecordAPST = 51,
156 stringoutRecordSIOL = 52,
157 stringoutRecordSIML = 53,
158 stringoutRecordSIMM = 54,
159 stringoutRecordSIMS = 55,
160 stringoutRecordOLDSIMM = 56,
161 stringoutRecordSSCN = 57,
162 stringoutRecordSDLY = 58,
163 stringoutRecordSIMPVT = 59,
164 stringoutRecordIVOA = 60,
165 stringoutRecordIVOV = 61
166 } stringoutFieldIndex;
168 #ifdef GEN_SIZE_OFFSET 179 if (prt->no_fields != 62) {
181 " The stringoutRecord defined in the DBD file has %d fields,\n" 182 " but the record support code was built with 62.\n",
185 prt->papFldDes[stringoutRecordNAME]->size =
sizeof(prec->
name);
186 prt->papFldDes[stringoutRecordNAME]->offset = (
unsigned short)((
char *)&prec->
name - (
char *)prec);
187 prt->papFldDes[stringoutRecordDESC]->size =
sizeof(prec->
desc);
188 prt->papFldDes[stringoutRecordDESC]->offset = (
unsigned short)((
char *)&prec->
desc - (
char *)prec);
189 prt->papFldDes[stringoutRecordASG]->size =
sizeof(prec->
asg);
190 prt->papFldDes[stringoutRecordASG]->offset = (
unsigned short)((
char *)&prec->
asg - (
char *)prec);
191 prt->papFldDes[stringoutRecordSCAN]->size =
sizeof(prec->
scan);
192 prt->papFldDes[stringoutRecordSCAN]->offset = (
unsigned short)((
char *)&prec->
scan - (
char *)prec);
193 prt->papFldDes[stringoutRecordPINI]->size =
sizeof(prec->
pini);
194 prt->papFldDes[stringoutRecordPINI]->offset = (
unsigned short)((
char *)&prec->
pini - (
char *)prec);
195 prt->papFldDes[stringoutRecordPHAS]->size =
sizeof(prec->
phas);
196 prt->papFldDes[stringoutRecordPHAS]->offset = (
unsigned short)((
char *)&prec->
phas - (
char *)prec);
197 prt->papFldDes[stringoutRecordEVNT]->size =
sizeof(prec->
evnt);
198 prt->papFldDes[stringoutRecordEVNT]->offset = (
unsigned short)((
char *)&prec->
evnt - (
char *)prec);
199 prt->papFldDes[stringoutRecordTSE]->size =
sizeof(prec->
tse);
200 prt->papFldDes[stringoutRecordTSE]->offset = (
unsigned short)((
char *)&prec->
tse - (
char *)prec);
201 prt->papFldDes[stringoutRecordTSEL]->size =
sizeof(prec->
tsel);
202 prt->papFldDes[stringoutRecordTSEL]->offset = (
unsigned short)((
char *)&prec->
tsel - (
char *)prec);
203 prt->papFldDes[stringoutRecordDTYP]->size =
sizeof(prec->
dtyp);
204 prt->papFldDes[stringoutRecordDTYP]->offset = (
unsigned short)((
char *)&prec->
dtyp - (
char *)prec);
205 prt->papFldDes[stringoutRecordDISV]->size =
sizeof(prec->
disv);
206 prt->papFldDes[stringoutRecordDISV]->offset = (
unsigned short)((
char *)&prec->
disv - (
char *)prec);
207 prt->papFldDes[stringoutRecordDISA]->size =
sizeof(prec->
disa);
208 prt->papFldDes[stringoutRecordDISA]->offset = (
unsigned short)((
char *)&prec->
disa - (
char *)prec);
209 prt->papFldDes[stringoutRecordSDIS]->size =
sizeof(prec->
sdis);
210 prt->papFldDes[stringoutRecordSDIS]->offset = (
unsigned short)((
char *)&prec->
sdis - (
char *)prec);
211 prt->papFldDes[stringoutRecordMLOK]->size =
sizeof(prec->
mlok);
212 prt->papFldDes[stringoutRecordMLOK]->offset = (
unsigned short)((
char *)&prec->
mlok - (
char *)prec);
213 prt->papFldDes[stringoutRecordMLIS]->size =
sizeof(prec->
mlis);
214 prt->papFldDes[stringoutRecordMLIS]->offset = (
unsigned short)((
char *)&prec->
mlis - (
char *)prec);
215 prt->papFldDes[stringoutRecordBKLNK]->size =
sizeof(prec->
bklnk);
216 prt->papFldDes[stringoutRecordBKLNK]->offset = (
unsigned short)((
char *)&prec->
bklnk - (
char *)prec);
217 prt->papFldDes[stringoutRecordDISP]->size =
sizeof(prec->
disp);
218 prt->papFldDes[stringoutRecordDISP]->offset = (
unsigned short)((
char *)&prec->
disp - (
char *)prec);
219 prt->papFldDes[stringoutRecordPROC]->size =
sizeof(prec->
proc);
220 prt->papFldDes[stringoutRecordPROC]->offset = (
unsigned short)((
char *)&prec->
proc - (
char *)prec);
221 prt->papFldDes[stringoutRecordSTAT]->size =
sizeof(prec->
stat);
222 prt->papFldDes[stringoutRecordSTAT]->offset = (
unsigned short)((
char *)&prec->
stat - (
char *)prec);
223 prt->papFldDes[stringoutRecordSEVR]->size =
sizeof(prec->
sevr);
224 prt->papFldDes[stringoutRecordSEVR]->offset = (
unsigned short)((
char *)&prec->
sevr - (
char *)prec);
225 prt->papFldDes[stringoutRecordNSTA]->size =
sizeof(prec->
nsta);
226 prt->papFldDes[stringoutRecordNSTA]->offset = (
unsigned short)((
char *)&prec->
nsta - (
char *)prec);
227 prt->papFldDes[stringoutRecordNSEV]->size =
sizeof(prec->
nsev);
228 prt->papFldDes[stringoutRecordNSEV]->offset = (
unsigned short)((
char *)&prec->
nsev - (
char *)prec);
229 prt->papFldDes[stringoutRecordACKS]->size =
sizeof(prec->
acks);
230 prt->papFldDes[stringoutRecordACKS]->offset = (
unsigned short)((
char *)&prec->
acks - (
char *)prec);
231 prt->papFldDes[stringoutRecordACKT]->size =
sizeof(prec->
ackt);
232 prt->papFldDes[stringoutRecordACKT]->offset = (
unsigned short)((
char *)&prec->
ackt - (
char *)prec);
233 prt->papFldDes[stringoutRecordDISS]->size =
sizeof(prec->
diss);
234 prt->papFldDes[stringoutRecordDISS]->offset = (
unsigned short)((
char *)&prec->
diss - (
char *)prec);
235 prt->papFldDes[stringoutRecordLCNT]->size =
sizeof(prec->
lcnt);
236 prt->papFldDes[stringoutRecordLCNT]->offset = (
unsigned short)((
char *)&prec->
lcnt - (
char *)prec);
237 prt->papFldDes[stringoutRecordPACT]->size =
sizeof(prec->
pact);
238 prt->papFldDes[stringoutRecordPACT]->offset = (
unsigned short)((
char *)&prec->
pact - (
char *)prec);
239 prt->papFldDes[stringoutRecordPUTF]->size =
sizeof(prec->
putf);
240 prt->papFldDes[stringoutRecordPUTF]->offset = (
unsigned short)((
char *)&prec->
putf - (
char *)prec);
241 prt->papFldDes[stringoutRecordRPRO]->size =
sizeof(prec->
rpro);
242 prt->papFldDes[stringoutRecordRPRO]->offset = (
unsigned short)((
char *)&prec->
rpro - (
char *)prec);
243 prt->papFldDes[stringoutRecordASP]->size =
sizeof(prec->
asp);
244 prt->papFldDes[stringoutRecordASP]->offset = (
unsigned short)((
char *)&prec->
asp - (
char *)prec);
245 prt->papFldDes[stringoutRecordPPN]->size =
sizeof(prec->
ppn);
246 prt->papFldDes[stringoutRecordPPN]->offset = (
unsigned short)((
char *)&prec->
ppn - (
char *)prec);
247 prt->papFldDes[stringoutRecordPPNR]->size =
sizeof(prec->
ppnr);
248 prt->papFldDes[stringoutRecordPPNR]->offset = (
unsigned short)((
char *)&prec->
ppnr - (
char *)prec);
249 prt->papFldDes[stringoutRecordSPVT]->size =
sizeof(prec->
spvt);
250 prt->papFldDes[stringoutRecordSPVT]->offset = (
unsigned short)((
char *)&prec->
spvt - (
char *)prec);
251 prt->papFldDes[stringoutRecordRSET]->size =
sizeof(prec->
rset);
252 prt->papFldDes[stringoutRecordRSET]->offset = (
unsigned short)((
char *)&prec->
rset - (
char *)prec);
253 prt->papFldDes[stringoutRecordDSET]->size =
sizeof(prec->
dset);
254 prt->papFldDes[stringoutRecordDSET]->offset = (
unsigned short)((
char *)&prec->
dset - (
char *)prec);
255 prt->papFldDes[stringoutRecordDPVT]->size =
sizeof(prec->
dpvt);
256 prt->papFldDes[stringoutRecordDPVT]->offset = (
unsigned short)((
char *)&prec->
dpvt - (
char *)prec);
257 prt->papFldDes[stringoutRecordRDES]->size =
sizeof(prec->
rdes);
258 prt->papFldDes[stringoutRecordRDES]->offset = (
unsigned short)((
char *)&prec->
rdes - (
char *)prec);
259 prt->papFldDes[stringoutRecordLSET]->size =
sizeof(prec->
lset);
260 prt->papFldDes[stringoutRecordLSET]->offset = (
unsigned short)((
char *)&prec->
lset - (
char *)prec);
261 prt->papFldDes[stringoutRecordPRIO]->size =
sizeof(prec->
prio);
262 prt->papFldDes[stringoutRecordPRIO]->offset = (
unsigned short)((
char *)&prec->
prio - (
char *)prec);
263 prt->papFldDes[stringoutRecordTPRO]->size =
sizeof(prec->
tpro);
264 prt->papFldDes[stringoutRecordTPRO]->offset = (
unsigned short)((
char *)&prec->
tpro - (
char *)prec);
265 prt->papFldDes[stringoutRecordBKPT]->size =
sizeof(prec->
bkpt);
266 prt->papFldDes[stringoutRecordBKPT]->offset = (
unsigned short)((
char *)&prec->
bkpt - (
char *)prec);
267 prt->papFldDes[stringoutRecordUDF]->size =
sizeof(prec->
udf);
268 prt->papFldDes[stringoutRecordUDF]->offset = (
unsigned short)((
char *)&prec->
udf - (
char *)prec);
269 prt->papFldDes[stringoutRecordUDFS]->size =
sizeof(prec->
udfs);
270 prt->papFldDes[stringoutRecordUDFS]->offset = (
unsigned short)((
char *)&prec->
udfs - (
char *)prec);
271 prt->papFldDes[stringoutRecordTIME]->size =
sizeof(prec->
time);
272 prt->papFldDes[stringoutRecordTIME]->offset = (
unsigned short)((
char *)&prec->
time - (
char *)prec);
273 prt->papFldDes[stringoutRecordFLNK]->size =
sizeof(prec->
flnk);
274 prt->papFldDes[stringoutRecordFLNK]->offset = (
unsigned short)((
char *)&prec->
flnk - (
char *)prec);
275 prt->papFldDes[stringoutRecordVAL]->size =
sizeof(prec->
val);
276 prt->papFldDes[stringoutRecordVAL]->offset = (
unsigned short)((
char *)&prec->
val - (
char *)prec);
277 prt->papFldDes[stringoutRecordOVAL]->size =
sizeof(prec->
oval);
278 prt->papFldDes[stringoutRecordOVAL]->offset = (
unsigned short)((
char *)&prec->
oval - (
char *)prec);
279 prt->papFldDes[stringoutRecordDOL]->size =
sizeof(prec->
dol);
280 prt->papFldDes[stringoutRecordDOL]->offset = (
unsigned short)((
char *)&prec->
dol - (
char *)prec);
281 prt->papFldDes[stringoutRecordOMSL]->size =
sizeof(prec->
omsl);
282 prt->papFldDes[stringoutRecordOMSL]->offset = (
unsigned short)((
char *)&prec->
omsl - (
char *)prec);
283 prt->papFldDes[stringoutRecordOUT]->size =
sizeof(prec->
out);
284 prt->papFldDes[stringoutRecordOUT]->offset = (
unsigned short)((
char *)&prec->
out - (
char *)prec);
285 prt->papFldDes[stringoutRecordMPST]->size =
sizeof(prec->
mpst);
286 prt->papFldDes[stringoutRecordMPST]->offset = (
unsigned short)((
char *)&prec->
mpst - (
char *)prec);
287 prt->papFldDes[stringoutRecordAPST]->size =
sizeof(prec->
apst);
288 prt->papFldDes[stringoutRecordAPST]->offset = (
unsigned short)((
char *)&prec->
apst - (
char *)prec);
289 prt->papFldDes[stringoutRecordSIOL]->size =
sizeof(prec->
siol);
290 prt->papFldDes[stringoutRecordSIOL]->offset = (
unsigned short)((
char *)&prec->
siol - (
char *)prec);
291 prt->papFldDes[stringoutRecordSIML]->size =
sizeof(prec->
siml);
292 prt->papFldDes[stringoutRecordSIML]->offset = (
unsigned short)((
char *)&prec->
siml - (
char *)prec);
293 prt->papFldDes[stringoutRecordSIMM]->size =
sizeof(prec->
simm);
294 prt->papFldDes[stringoutRecordSIMM]->offset = (
unsigned short)((
char *)&prec->
simm - (
char *)prec);
295 prt->papFldDes[stringoutRecordSIMS]->size =
sizeof(prec->
sims);
296 prt->papFldDes[stringoutRecordSIMS]->offset = (
unsigned short)((
char *)&prec->
sims - (
char *)prec);
297 prt->papFldDes[stringoutRecordOLDSIMM]->size =
sizeof(prec->
oldsimm);
298 prt->papFldDes[stringoutRecordOLDSIMM]->offset = (
unsigned short)((
char *)&prec->
oldsimm - (
char *)prec);
299 prt->papFldDes[stringoutRecordSSCN]->size =
sizeof(prec->
sscn);
300 prt->papFldDes[stringoutRecordSSCN]->offset = (
unsigned short)((
char *)&prec->
sscn - (
char *)prec);
301 prt->papFldDes[stringoutRecordSDLY]->size =
sizeof(prec->
sdly);
302 prt->papFldDes[stringoutRecordSDLY]->offset = (
unsigned short)((
char *)&prec->
sdly - (
char *)prec);
303 prt->papFldDes[stringoutRecordSIMPVT]->size =
sizeof(prec->
simpvt);
304 prt->papFldDes[stringoutRecordSIMPVT]->offset = (
unsigned short)((
char *)&prec->
simpvt - (
char *)prec);
305 prt->papFldDes[stringoutRecordIVOA]->size =
sizeof(prec->
ivoa);
306 prt->papFldDes[stringoutRecordIVOA]->offset = (
unsigned short)((
char *)&prec->
ivoa - (
char *)prec);
307 prt->papFldDes[stringoutRecordIVOV]->size =
sizeof(prec->
ivov);
308 prt->papFldDes[stringoutRecordIVOV]->offset = (
unsigned short)((
char *)&prec->
ivov - (
char *)prec);
309 prt->rec_size =
sizeof(*prec);
char name[61]
Record Name.
struct processNotifyRecord * ppnr
pprocessNotifyRecord
epicsUInt8 rpro
Reprocess.
epicsUInt8 putf
dbPutField process
epicsUInt8 bkpt
Break Point.
ELLLIST mlis
Monitor List.
epicsCallback * simpvt
Sim. Mode Private.
DBLINK out
Output Specification.
epicsEnum16 stat
Alarm Status.
epicsEnum16 sevr
Alarm Severity.
epicsEnum16 simm
Simulation Mode.
char oval[40]
Previous Value.
char ivov[40]
INVALID output value.
epicsMutexId mlok
Monitor lock.
epicsEnum16 acks
Alarm Ack Severity.
Declaration of stringout record type.
LIBCOM_API void cantProceed(const char *errorMessage,...) EPICS_PRINTF_STYLE(1
Suspend this thread, the caller cannot continue or return.
DBLINK flnk
Forward Process Link.
The core data types used by epics.
epicsEnum16 oldsimm
Prev. Simulation Mode.
epicsEnum16 pini
Process at iocInit.
epicsUInt8 tpro
Trace Processing.
struct processNotify * ppn
pprocessNotify
ELLLIST bklnk
Backwards link tracking.
epicsEnum16 nsta
New Alarm Status.
epicsInt16 disv
Disable Value.
Routines for code that can't continue or return after an error.
struct lockRecord * lset
Lock Set.
epicsEnum16 nsev
New Alarm Severity.
epicsEnum16 udfs
Undefined Alarm Sevrty.
epicsFloat64 sdly
Sim. Mode Async Delay.
DBLINK siol
Simulation Output Link.
void * dpvt
Device Private.
DBLINK sdis
Scanning Disable.
epicsEnum16 diss
Disable Alarm Sevrty.
epicsUInt8 pact
Record active.
EPICS time stamp, for use from C code.
A doubly-linked list library.
DBLINK dol
Desired Output Loc.
epicsUInt8 proc
Force Processing.
struct asgMember * asp
Access Security Pvt.
epicsEnum16 apst
Post Archive Monitors.
epicsEnum16 sims
Simulation Mode Severity.
char asg[29]
Access Security Group.
DBLINK siml
Simulation Mode Link.
epicsUInt8 disp
Disable putField.
DBLINK tsel
Time Stamp Link.
epicsEnum16 scan
Scan Mechanism.
APIs for the epicsMutex mutual exclusion semaphore.
epicsEnum16 dtyp
Device Type.
struct dbRecordType * rdes
Address of dbRecordType.
char val[40]
Current Value.
#define epicsExportRegistrar(fun)
Declare a registrar function for exporting.
epicsEnum16 ivoa
INVALID output action.
stringoutPOST
Enumerated type from menu stringoutPOST.
epicsUInt8 lcnt
Lock Count.
unambiguous_dset * dset
DSET address.
struct typed_rset * rset
Address of RSET.
epicsEnum16 prio
Scheduling Priority.
EPICS time-stamps (epicsTimeStamp), epicsTime C++ class and C functions for handling wall-clock times...
epicsEnum16 sscn
Sim. Mode Scan.
struct scan_element * spvt
Scan Private.
epicsEnum16 omsl
Output Mode Select.
epicsInt16 phas
Scan Phase.
epicsEnum16 mpst
Post Value Monitors.
epicsInt16 tse
Time Stamp Event.
struct epicsMutexParm * epicsMutexId
An identifier for an epicsMutex for use with the C API.
epicsEnum16 ackt
Alarm Ack Transient.
State string "On Change".