7 #ifndef INC_subArrayRecord_H 8 #define INC_subArrayRecord_H 57 struct asgMember *
asp;
59 struct processNotifyRecord *
ppnr;
89 subArrayRecordNAME = 0,
90 subArrayRecordDESC = 1,
91 subArrayRecordASG = 2,
92 subArrayRecordSCAN = 3,
93 subArrayRecordPINI = 4,
94 subArrayRecordPHAS = 5,
95 subArrayRecordEVNT = 6,
96 subArrayRecordTSE = 7,
97 subArrayRecordTSEL = 8,
98 subArrayRecordDTYP = 9,
99 subArrayRecordDISV = 10,
100 subArrayRecordDISA = 11,
101 subArrayRecordSDIS = 12,
102 subArrayRecordMLOK = 13,
103 subArrayRecordMLIS = 14,
104 subArrayRecordBKLNK = 15,
105 subArrayRecordDISP = 16,
106 subArrayRecordPROC = 17,
107 subArrayRecordSTAT = 18,
108 subArrayRecordSEVR = 19,
109 subArrayRecordNSTA = 20,
110 subArrayRecordNSEV = 21,
111 subArrayRecordACKS = 22,
112 subArrayRecordACKT = 23,
113 subArrayRecordDISS = 24,
114 subArrayRecordLCNT = 25,
115 subArrayRecordPACT = 26,
116 subArrayRecordPUTF = 27,
117 subArrayRecordRPRO = 28,
118 subArrayRecordASP = 29,
119 subArrayRecordPPN = 30,
120 subArrayRecordPPNR = 31,
121 subArrayRecordSPVT = 32,
122 subArrayRecordRSET = 33,
123 subArrayRecordDSET = 34,
124 subArrayRecordDPVT = 35,
125 subArrayRecordRDES = 36,
126 subArrayRecordLSET = 37,
127 subArrayRecordPRIO = 38,
128 subArrayRecordTPRO = 39,
129 subArrayRecordBKPT = 40,
130 subArrayRecordUDF = 41,
131 subArrayRecordUDFS = 42,
132 subArrayRecordTIME = 43,
133 subArrayRecordFLNK = 44,
134 subArrayRecordVAL = 45,
135 subArrayRecordPREC = 46,
136 subArrayRecordFTVL = 47,
137 subArrayRecordINP = 48,
138 subArrayRecordEGU = 49,
139 subArrayRecordHOPR = 50,
140 subArrayRecordLOPR = 51,
141 subArrayRecordMALM = 52,
142 subArrayRecordNELM = 53,
143 subArrayRecordINDX = 54,
144 subArrayRecordBUSY = 55,
145 subArrayRecordNORD = 56,
146 subArrayRecordBPTR = 57
147 } subArrayFieldIndex;
149 #ifdef GEN_SIZE_OFFSET 160 if (prt->no_fields != 58) {
162 " The subArrayRecord defined in the DBD file has %d fields,\n" 163 " but the record support code was built with 58.\n",
166 prt->papFldDes[subArrayRecordNAME]->size =
sizeof(prec->
name);
167 prt->papFldDes[subArrayRecordNAME]->offset = (
unsigned short)((
char *)&prec->
name - (
char *)prec);
168 prt->papFldDes[subArrayRecordDESC]->size =
sizeof(prec->
desc);
169 prt->papFldDes[subArrayRecordDESC]->offset = (
unsigned short)((
char *)&prec->
desc - (
char *)prec);
170 prt->papFldDes[subArrayRecordASG]->size =
sizeof(prec->
asg);
171 prt->papFldDes[subArrayRecordASG]->offset = (
unsigned short)((
char *)&prec->
asg - (
char *)prec);
172 prt->papFldDes[subArrayRecordSCAN]->size =
sizeof(prec->
scan);
173 prt->papFldDes[subArrayRecordSCAN]->offset = (
unsigned short)((
char *)&prec->
scan - (
char *)prec);
174 prt->papFldDes[subArrayRecordPINI]->size =
sizeof(prec->
pini);
175 prt->papFldDes[subArrayRecordPINI]->offset = (
unsigned short)((
char *)&prec->
pini - (
char *)prec);
176 prt->papFldDes[subArrayRecordPHAS]->size =
sizeof(prec->
phas);
177 prt->papFldDes[subArrayRecordPHAS]->offset = (
unsigned short)((
char *)&prec->
phas - (
char *)prec);
178 prt->papFldDes[subArrayRecordEVNT]->size =
sizeof(prec->
evnt);
179 prt->papFldDes[subArrayRecordEVNT]->offset = (
unsigned short)((
char *)&prec->
evnt - (
char *)prec);
180 prt->papFldDes[subArrayRecordTSE]->size =
sizeof(prec->
tse);
181 prt->papFldDes[subArrayRecordTSE]->offset = (
unsigned short)((
char *)&prec->
tse - (
char *)prec);
182 prt->papFldDes[subArrayRecordTSEL]->size =
sizeof(prec->
tsel);
183 prt->papFldDes[subArrayRecordTSEL]->offset = (
unsigned short)((
char *)&prec->
tsel - (
char *)prec);
184 prt->papFldDes[subArrayRecordDTYP]->size =
sizeof(prec->
dtyp);
185 prt->papFldDes[subArrayRecordDTYP]->offset = (
unsigned short)((
char *)&prec->
dtyp - (
char *)prec);
186 prt->papFldDes[subArrayRecordDISV]->size =
sizeof(prec->
disv);
187 prt->papFldDes[subArrayRecordDISV]->offset = (
unsigned short)((
char *)&prec->
disv - (
char *)prec);
188 prt->papFldDes[subArrayRecordDISA]->size =
sizeof(prec->
disa);
189 prt->papFldDes[subArrayRecordDISA]->offset = (
unsigned short)((
char *)&prec->
disa - (
char *)prec);
190 prt->papFldDes[subArrayRecordSDIS]->size =
sizeof(prec->
sdis);
191 prt->papFldDes[subArrayRecordSDIS]->offset = (
unsigned short)((
char *)&prec->
sdis - (
char *)prec);
192 prt->papFldDes[subArrayRecordMLOK]->size =
sizeof(prec->
mlok);
193 prt->papFldDes[subArrayRecordMLOK]->offset = (
unsigned short)((
char *)&prec->
mlok - (
char *)prec);
194 prt->papFldDes[subArrayRecordMLIS]->size =
sizeof(prec->
mlis);
195 prt->papFldDes[subArrayRecordMLIS]->offset = (
unsigned short)((
char *)&prec->
mlis - (
char *)prec);
196 prt->papFldDes[subArrayRecordBKLNK]->size =
sizeof(prec->
bklnk);
197 prt->papFldDes[subArrayRecordBKLNK]->offset = (
unsigned short)((
char *)&prec->
bklnk - (
char *)prec);
198 prt->papFldDes[subArrayRecordDISP]->size =
sizeof(prec->
disp);
199 prt->papFldDes[subArrayRecordDISP]->offset = (
unsigned short)((
char *)&prec->
disp - (
char *)prec);
200 prt->papFldDes[subArrayRecordPROC]->size =
sizeof(prec->
proc);
201 prt->papFldDes[subArrayRecordPROC]->offset = (
unsigned short)((
char *)&prec->
proc - (
char *)prec);
202 prt->papFldDes[subArrayRecordSTAT]->size =
sizeof(prec->
stat);
203 prt->papFldDes[subArrayRecordSTAT]->offset = (
unsigned short)((
char *)&prec->
stat - (
char *)prec);
204 prt->papFldDes[subArrayRecordSEVR]->size =
sizeof(prec->
sevr);
205 prt->papFldDes[subArrayRecordSEVR]->offset = (
unsigned short)((
char *)&prec->
sevr - (
char *)prec);
206 prt->papFldDes[subArrayRecordNSTA]->size =
sizeof(prec->
nsta);
207 prt->papFldDes[subArrayRecordNSTA]->offset = (
unsigned short)((
char *)&prec->
nsta - (
char *)prec);
208 prt->papFldDes[subArrayRecordNSEV]->size =
sizeof(prec->
nsev);
209 prt->papFldDes[subArrayRecordNSEV]->offset = (
unsigned short)((
char *)&prec->
nsev - (
char *)prec);
210 prt->papFldDes[subArrayRecordACKS]->size =
sizeof(prec->
acks);
211 prt->papFldDes[subArrayRecordACKS]->offset = (
unsigned short)((
char *)&prec->
acks - (
char *)prec);
212 prt->papFldDes[subArrayRecordACKT]->size =
sizeof(prec->
ackt);
213 prt->papFldDes[subArrayRecordACKT]->offset = (
unsigned short)((
char *)&prec->
ackt - (
char *)prec);
214 prt->papFldDes[subArrayRecordDISS]->size =
sizeof(prec->
diss);
215 prt->papFldDes[subArrayRecordDISS]->offset = (
unsigned short)((
char *)&prec->
diss - (
char *)prec);
216 prt->papFldDes[subArrayRecordLCNT]->size =
sizeof(prec->
lcnt);
217 prt->papFldDes[subArrayRecordLCNT]->offset = (
unsigned short)((
char *)&prec->
lcnt - (
char *)prec);
218 prt->papFldDes[subArrayRecordPACT]->size =
sizeof(prec->
pact);
219 prt->papFldDes[subArrayRecordPACT]->offset = (
unsigned short)((
char *)&prec->
pact - (
char *)prec);
220 prt->papFldDes[subArrayRecordPUTF]->size =
sizeof(prec->
putf);
221 prt->papFldDes[subArrayRecordPUTF]->offset = (
unsigned short)((
char *)&prec->
putf - (
char *)prec);
222 prt->papFldDes[subArrayRecordRPRO]->size =
sizeof(prec->
rpro);
223 prt->papFldDes[subArrayRecordRPRO]->offset = (
unsigned short)((
char *)&prec->
rpro - (
char *)prec);
224 prt->papFldDes[subArrayRecordASP]->size =
sizeof(prec->
asp);
225 prt->papFldDes[subArrayRecordASP]->offset = (
unsigned short)((
char *)&prec->
asp - (
char *)prec);
226 prt->papFldDes[subArrayRecordPPN]->size =
sizeof(prec->
ppn);
227 prt->papFldDes[subArrayRecordPPN]->offset = (
unsigned short)((
char *)&prec->
ppn - (
char *)prec);
228 prt->papFldDes[subArrayRecordPPNR]->size =
sizeof(prec->
ppnr);
229 prt->papFldDes[subArrayRecordPPNR]->offset = (
unsigned short)((
char *)&prec->
ppnr - (
char *)prec);
230 prt->papFldDes[subArrayRecordSPVT]->size =
sizeof(prec->
spvt);
231 prt->papFldDes[subArrayRecordSPVT]->offset = (
unsigned short)((
char *)&prec->
spvt - (
char *)prec);
232 prt->papFldDes[subArrayRecordRSET]->size =
sizeof(prec->
rset);
233 prt->papFldDes[subArrayRecordRSET]->offset = (
unsigned short)((
char *)&prec->
rset - (
char *)prec);
234 prt->papFldDes[subArrayRecordDSET]->size =
sizeof(prec->
dset);
235 prt->papFldDes[subArrayRecordDSET]->offset = (
unsigned short)((
char *)&prec->
dset - (
char *)prec);
236 prt->papFldDes[subArrayRecordDPVT]->size =
sizeof(prec->
dpvt);
237 prt->papFldDes[subArrayRecordDPVT]->offset = (
unsigned short)((
char *)&prec->
dpvt - (
char *)prec);
238 prt->papFldDes[subArrayRecordRDES]->size =
sizeof(prec->
rdes);
239 prt->papFldDes[subArrayRecordRDES]->offset = (
unsigned short)((
char *)&prec->
rdes - (
char *)prec);
240 prt->papFldDes[subArrayRecordLSET]->size =
sizeof(prec->
lset);
241 prt->papFldDes[subArrayRecordLSET]->offset = (
unsigned short)((
char *)&prec->
lset - (
char *)prec);
242 prt->papFldDes[subArrayRecordPRIO]->size =
sizeof(prec->
prio);
243 prt->papFldDes[subArrayRecordPRIO]->offset = (
unsigned short)((
char *)&prec->
prio - (
char *)prec);
244 prt->papFldDes[subArrayRecordTPRO]->size =
sizeof(prec->
tpro);
245 prt->papFldDes[subArrayRecordTPRO]->offset = (
unsigned short)((
char *)&prec->
tpro - (
char *)prec);
246 prt->papFldDes[subArrayRecordBKPT]->size =
sizeof(prec->
bkpt);
247 prt->papFldDes[subArrayRecordBKPT]->offset = (
unsigned short)((
char *)&prec->
bkpt - (
char *)prec);
248 prt->papFldDes[subArrayRecordUDF]->size =
sizeof(prec->
udf);
249 prt->papFldDes[subArrayRecordUDF]->offset = (
unsigned short)((
char *)&prec->
udf - (
char *)prec);
250 prt->papFldDes[subArrayRecordUDFS]->size =
sizeof(prec->
udfs);
251 prt->papFldDes[subArrayRecordUDFS]->offset = (
unsigned short)((
char *)&prec->
udfs - (
char *)prec);
252 prt->papFldDes[subArrayRecordTIME]->size =
sizeof(prec->
time);
253 prt->papFldDes[subArrayRecordTIME]->offset = (
unsigned short)((
char *)&prec->
time - (
char *)prec);
254 prt->papFldDes[subArrayRecordFLNK]->size =
sizeof(prec->
flnk);
255 prt->papFldDes[subArrayRecordFLNK]->offset = (
unsigned short)((
char *)&prec->
flnk - (
char *)prec);
256 prt->papFldDes[subArrayRecordVAL]->size =
sizeof(prec->
val);
257 prt->papFldDes[subArrayRecordVAL]->offset = (
unsigned short)((
char *)&prec->
val - (
char *)prec);
258 prt->papFldDes[subArrayRecordPREC]->size =
sizeof(prec->
prec);
259 prt->papFldDes[subArrayRecordPREC]->offset = (
unsigned short)((
char *)&prec->
prec - (
char *)prec);
260 prt->papFldDes[subArrayRecordFTVL]->size =
sizeof(prec->
ftvl);
261 prt->papFldDes[subArrayRecordFTVL]->offset = (
unsigned short)((
char *)&prec->
ftvl - (
char *)prec);
262 prt->papFldDes[subArrayRecordINP]->size =
sizeof(prec->
inp);
263 prt->papFldDes[subArrayRecordINP]->offset = (
unsigned short)((
char *)&prec->
inp - (
char *)prec);
264 prt->papFldDes[subArrayRecordEGU]->size =
sizeof(prec->
egu);
265 prt->papFldDes[subArrayRecordEGU]->offset = (
unsigned short)((
char *)&prec->
egu - (
char *)prec);
266 prt->papFldDes[subArrayRecordHOPR]->size =
sizeof(prec->
hopr);
267 prt->papFldDes[subArrayRecordHOPR]->offset = (
unsigned short)((
char *)&prec->
hopr - (
char *)prec);
268 prt->papFldDes[subArrayRecordLOPR]->size =
sizeof(prec->
lopr);
269 prt->papFldDes[subArrayRecordLOPR]->offset = (
unsigned short)((
char *)&prec->
lopr - (
char *)prec);
270 prt->papFldDes[subArrayRecordMALM]->size =
sizeof(prec->
malm);
271 prt->papFldDes[subArrayRecordMALM]->offset = (
unsigned short)((
char *)&prec->
malm - (
char *)prec);
272 prt->papFldDes[subArrayRecordNELM]->size =
sizeof(prec->
nelm);
273 prt->papFldDes[subArrayRecordNELM]->offset = (
unsigned short)((
char *)&prec->
nelm - (
char *)prec);
274 prt->papFldDes[subArrayRecordINDX]->size =
sizeof(prec->
indx);
275 prt->papFldDes[subArrayRecordINDX]->offset = (
unsigned short)((
char *)&prec->
indx - (
char *)prec);
276 prt->papFldDes[subArrayRecordBUSY]->size =
sizeof(prec->
busy);
277 prt->papFldDes[subArrayRecordBUSY]->offset = (
unsigned short)((
char *)&prec->
busy - (
char *)prec);
278 prt->papFldDes[subArrayRecordNORD]->size =
sizeof(prec->
nord);
279 prt->papFldDes[subArrayRecordNORD]->offset = (
unsigned short)((
char *)&prec->
nord - (
char *)prec);
280 prt->papFldDes[subArrayRecordBPTR]->size =
sizeof(prec->
bptr);
281 prt->papFldDes[subArrayRecordBPTR]->offset = (
unsigned short)((
char *)&prec->
bptr - (
char *)prec);
282 prt->rec_size =
sizeof(*prec);
epicsUInt32 malm
Maximum Elements.
struct scan_element * spvt
Scan Private.
epicsUInt8 putf
dbPutField process
struct typed_rset * rset
Address of RSET.
epicsEnum16 nsta
New Alarm Status.
unambiguous_dset * dset
DSET address.
epicsFloat64 lopr
Low Operating Range.
epicsEnum16 nsev
New Alarm Severity.
LIBCOM_API void cantProceed(const char *errorMessage,...) EPICS_PRINTF_STYLE(1
Suspend this thread, the caller cannot continue or return.
epicsEnum16 sevr
Alarm Severity.
The core data types used by epics.
epicsInt16 phas
Scan Phase.
char egu[16]
Engineering Units.
char asg[29]
Access Security Group.
epicsEnum16 stat
Alarm Status.
epicsUInt8 disp
Disable putField.
epicsInt16 disv
Disable Value.
DBLINK flnk
Forward Process Link.
Routines for code that can't continue or return after an error.
epicsMutexId mlok
Monitor lock.
epicsUInt8 proc
Force Processing.
epicsEnum16 ackt
Alarm Ack Transient.
epicsEnum16 ftvl
Field Type of Value.
EPICS time stamp, for use from C code.
epicsEnum16 scan
Scan Mechanism.
A doubly-linked list library.
epicsInt16 tse
Time Stamp Event.
epicsEnum16 dtyp
Device Type.
epicsUInt32 indx
Substring Index.
epicsEnum16 acks
Alarm Ack Severity.
ELLLIST bklnk
Backwards link tracking.
epicsUInt32 nelm
Number of Elements.
epicsUInt8 pact
Record active.
struct processNotifyRecord * ppnr
pprocessNotifyRecord
APIs for the epicsMutex mutual exclusion semaphore.
epicsFloat64 hopr
High Operating Range.
char name[61]
Record Name.
epicsEnum16 prio
Scheduling Priority.
epicsUInt8 rpro
Reprocess.
DBLINK sdis
Scanning Disable.
#define epicsExportRegistrar(fun)
Declare a registrar function for exporting.
void * dpvt
Device Private.
struct dbRecordType * rdes
Address of dbRecordType.
struct asgMember * asp
Access Security Pvt.
epicsEnum16 udfs
Undefined Alarm Sevrty.
epicsUInt8 lcnt
Lock Count.
epicsInt16 busy
Busy Indicator.
EPICS time-stamps (epicsTimeStamp), epicsTime C++ class and C functions for handling wall-clock times...
struct lockRecord * lset
Lock Set.
struct processNotify * ppn
pprocessNotify
epicsEnum16 pini
Process at iocInit.
epicsInt32 nord
Number elements read.
epicsEnum16 diss
Disable Alarm Sevrty.
DBLINK tsel
Time Stamp Link.
Declaration of subArray record type.
epicsInt16 prec
Display Precision.
epicsUInt8 tpro
Trace Processing.
epicsUInt8 bkpt
Break Point.
struct epicsMutexParm * epicsMutexId
An identifier for an epicsMutex for use with the C API.
ELLLIST mlis
Monitor List.
void * bptr
Buffer Pointer.
DBLINK inp
Input Specification.