EPICS Base  7.0.5.1
mbboDirectRecord.h
Go to the documentation of this file.
1 
7 #ifndef INC_mbboDirectRecord_H
8 #define INC_mbboDirectRecord_H
9 
10 #include "epicsTypes.h"
11 #include "link.h"
12 #include "epicsMutex.h"
13 #include "ellLib.h"
14 #include "devSup.h"
15 #include "epicsTime.h"
16 /* Declare Device Support Entry Table */
17 struct mbboDirectRecord;
18 typedef struct mbbodirectdset {
19  dset common; /*init_record returns: (0, 2)=>(success, success no convert)*/
20  long (*write_mbbo)(struct mbboDirectRecord *prec); /*returns: (0, 2)=>(success, success no convert)*/
22 #define HAS_mbbodirectdset
23 
24 #include "callback.h"
25 
27 typedef struct mbboDirectRecord {
28  char name[61];
29  char desc[41];
30  char asg[29];
31  epicsEnum16 scan;
32  epicsEnum16 pini;
33  epicsInt16 phas;
34  char evnt[40];
35  epicsInt16 tse;
36  DBLINK tsel;
37  epicsEnum16 dtyp;
38  epicsInt16 disv;
39  epicsInt16 disa;
40  DBLINK sdis;
44  epicsUInt8 disp;
45  epicsUInt8 proc;
46  epicsEnum16 stat;
47  epicsEnum16 sevr;
48  epicsEnum16 nsta;
49  epicsEnum16 nsev;
50  epicsEnum16 acks;
51  epicsEnum16 ackt;
52  epicsEnum16 diss;
53  epicsUInt8 lcnt;
54  epicsUInt8 pact;
55  epicsUInt8 putf;
56  epicsUInt8 rpro;
57  struct asgMember *asp;
58  struct processNotify *ppn;
59  struct processNotifyRecord *ppnr;
60  struct scan_element *spvt;
61  struct typed_rset *rset;
63  void *dpvt;
64  struct dbRecordType *rdes;
65  struct lockRecord *lset;
66  epicsEnum16 prio;
67  epicsUInt8 tpro;
68  epicsUInt8 bkpt;
69  epicsUInt8 udf;
70  epicsEnum16 udfs;
72  DBLINK flnk;
73  epicsInt32 val;
74  epicsEnum16 omsl;
75  epicsInt16 nobt;
76  DBLINK dol;
77  DBLINK out;
78  epicsUInt32 rval;
79  epicsUInt32 oraw;
80  epicsUInt32 rbv;
81  epicsUInt32 orbv;
82  epicsUInt32 mask;
83  epicsInt32 mlst;
84  epicsUInt16 shft;
85  DBLINK siol;
86  DBLINK siml;
87  epicsEnum16 simm;
88  epicsEnum16 sims;
89  epicsEnum16 oldsimm;
90  epicsEnum16 sscn;
91  epicsFloat64 sdly;
93  epicsEnum16 ivoa;
94  epicsInt32 ivov;
95  epicsUInt8 b0;
96  epicsUInt8 b1;
97  epicsUInt8 b2;
98  epicsUInt8 b3;
99  epicsUInt8 b4;
100  epicsUInt8 b5;
101  epicsUInt8 b6;
102  epicsUInt8 b7;
103  epicsUInt8 b8;
104  epicsUInt8 b9;
105  epicsUInt8 ba;
106  epicsUInt8 bb;
107  epicsUInt8 bc;
108  epicsUInt8 bd;
109  epicsUInt8 be;
110  epicsUInt8 bf;
111  epicsUInt8 b10;
112  epicsUInt8 b11;
113  epicsUInt8 b12;
114  epicsUInt8 b13;
115  epicsUInt8 b14;
116  epicsUInt8 b15;
117  epicsUInt8 b16;
118  epicsUInt8 b17;
119  epicsUInt8 b18;
120  epicsUInt8 b19;
121  epicsUInt8 b1a;
122  epicsUInt8 b1b;
123  epicsUInt8 b1c;
124  epicsUInt8 b1d;
125  epicsUInt8 b1e;
126  epicsUInt8 b1f;
128 
129 typedef enum {
130  mbboDirectRecordNAME = 0,
131  mbboDirectRecordDESC = 1,
132  mbboDirectRecordASG = 2,
133  mbboDirectRecordSCAN = 3,
134  mbboDirectRecordPINI = 4,
135  mbboDirectRecordPHAS = 5,
136  mbboDirectRecordEVNT = 6,
137  mbboDirectRecordTSE = 7,
138  mbboDirectRecordTSEL = 8,
139  mbboDirectRecordDTYP = 9,
140  mbboDirectRecordDISV = 10,
141  mbboDirectRecordDISA = 11,
142  mbboDirectRecordSDIS = 12,
143  mbboDirectRecordMLOK = 13,
144  mbboDirectRecordMLIS = 14,
145  mbboDirectRecordBKLNK = 15,
146  mbboDirectRecordDISP = 16,
147  mbboDirectRecordPROC = 17,
148  mbboDirectRecordSTAT = 18,
149  mbboDirectRecordSEVR = 19,
150  mbboDirectRecordNSTA = 20,
151  mbboDirectRecordNSEV = 21,
152  mbboDirectRecordACKS = 22,
153  mbboDirectRecordACKT = 23,
154  mbboDirectRecordDISS = 24,
155  mbboDirectRecordLCNT = 25,
156  mbboDirectRecordPACT = 26,
157  mbboDirectRecordPUTF = 27,
158  mbboDirectRecordRPRO = 28,
159  mbboDirectRecordASP = 29,
160  mbboDirectRecordPPN = 30,
161  mbboDirectRecordPPNR = 31,
162  mbboDirectRecordSPVT = 32,
163  mbboDirectRecordRSET = 33,
164  mbboDirectRecordDSET = 34,
165  mbboDirectRecordDPVT = 35,
166  mbboDirectRecordRDES = 36,
167  mbboDirectRecordLSET = 37,
168  mbboDirectRecordPRIO = 38,
169  mbboDirectRecordTPRO = 39,
170  mbboDirectRecordBKPT = 40,
171  mbboDirectRecordUDF = 41,
172  mbboDirectRecordUDFS = 42,
173  mbboDirectRecordTIME = 43,
174  mbboDirectRecordFLNK = 44,
175  mbboDirectRecordVAL = 45,
176  mbboDirectRecordOMSL = 46,
177  mbboDirectRecordNOBT = 47,
178  mbboDirectRecordDOL = 48,
179  mbboDirectRecordOUT = 49,
180  mbboDirectRecordRVAL = 50,
181  mbboDirectRecordORAW = 51,
182  mbboDirectRecordRBV = 52,
183  mbboDirectRecordORBV = 53,
184  mbboDirectRecordMASK = 54,
185  mbboDirectRecordMLST = 55,
186  mbboDirectRecordSHFT = 56,
187  mbboDirectRecordSIOL = 57,
188  mbboDirectRecordSIML = 58,
189  mbboDirectRecordSIMM = 59,
190  mbboDirectRecordSIMS = 60,
191  mbboDirectRecordOLDSIMM = 61,
192  mbboDirectRecordSSCN = 62,
193  mbboDirectRecordSDLY = 63,
194  mbboDirectRecordSIMPVT = 64,
195  mbboDirectRecordIVOA = 65,
196  mbboDirectRecordIVOV = 66,
197  mbboDirectRecordB0 = 67,
198  mbboDirectRecordB1 = 68,
199  mbboDirectRecordB2 = 69,
200  mbboDirectRecordB3 = 70,
201  mbboDirectRecordB4 = 71,
202  mbboDirectRecordB5 = 72,
203  mbboDirectRecordB6 = 73,
204  mbboDirectRecordB7 = 74,
205  mbboDirectRecordB8 = 75,
206  mbboDirectRecordB9 = 76,
207  mbboDirectRecordBA = 77,
208  mbboDirectRecordBB = 78,
209  mbboDirectRecordBC = 79,
210  mbboDirectRecordBD = 80,
211  mbboDirectRecordBE = 81,
212  mbboDirectRecordBF = 82,
213  mbboDirectRecordB10 = 83,
214  mbboDirectRecordB11 = 84,
215  mbboDirectRecordB12 = 85,
216  mbboDirectRecordB13 = 86,
217  mbboDirectRecordB14 = 87,
218  mbboDirectRecordB15 = 88,
219  mbboDirectRecordB16 = 89,
220  mbboDirectRecordB17 = 90,
221  mbboDirectRecordB18 = 91,
222  mbboDirectRecordB19 = 92,
223  mbboDirectRecordB1A = 93,
224  mbboDirectRecordB1B = 94,
225  mbboDirectRecordB1C = 95,
226  mbboDirectRecordB1D = 96,
227  mbboDirectRecordB1E = 97,
228  mbboDirectRecordB1F = 98
229 } mbboDirectFieldIndex;
230 
231 #ifdef GEN_SIZE_OFFSET
232 
233 #include <epicsExport.h>
234 #include <cantProceed.h>
235 #ifdef __cplusplus
236 extern "C" {
237 #endif
238 static int mbboDirectRecordSizeOffset(dbRecordType *prt)
239 {
240  mbboDirectRecord *prec = 0;
241 
242  if (prt->no_fields != 99) {
243  cantProceed("IOC build or installation error:\n"
244  " The mbboDirectRecord defined in the DBD file has %d fields,\n"
245  " but the record support code was built with 99.\n",
246  prt->no_fields);
247  }
248  prt->papFldDes[mbboDirectRecordNAME]->size = sizeof(prec->name);
249  prt->papFldDes[mbboDirectRecordNAME]->offset = (unsigned short)((char *)&prec->name - (char *)prec);
250  prt->papFldDes[mbboDirectRecordDESC]->size = sizeof(prec->desc);
251  prt->papFldDes[mbboDirectRecordDESC]->offset = (unsigned short)((char *)&prec->desc - (char *)prec);
252  prt->papFldDes[mbboDirectRecordASG]->size = sizeof(prec->asg);
253  prt->papFldDes[mbboDirectRecordASG]->offset = (unsigned short)((char *)&prec->asg - (char *)prec);
254  prt->papFldDes[mbboDirectRecordSCAN]->size = sizeof(prec->scan);
255  prt->papFldDes[mbboDirectRecordSCAN]->offset = (unsigned short)((char *)&prec->scan - (char *)prec);
256  prt->papFldDes[mbboDirectRecordPINI]->size = sizeof(prec->pini);
257  prt->papFldDes[mbboDirectRecordPINI]->offset = (unsigned short)((char *)&prec->pini - (char *)prec);
258  prt->papFldDes[mbboDirectRecordPHAS]->size = sizeof(prec->phas);
259  prt->papFldDes[mbboDirectRecordPHAS]->offset = (unsigned short)((char *)&prec->phas - (char *)prec);
260  prt->papFldDes[mbboDirectRecordEVNT]->size = sizeof(prec->evnt);
261  prt->papFldDes[mbboDirectRecordEVNT]->offset = (unsigned short)((char *)&prec->evnt - (char *)prec);
262  prt->papFldDes[mbboDirectRecordTSE]->size = sizeof(prec->tse);
263  prt->papFldDes[mbboDirectRecordTSE]->offset = (unsigned short)((char *)&prec->tse - (char *)prec);
264  prt->papFldDes[mbboDirectRecordTSEL]->size = sizeof(prec->tsel);
265  prt->papFldDes[mbboDirectRecordTSEL]->offset = (unsigned short)((char *)&prec->tsel - (char *)prec);
266  prt->papFldDes[mbboDirectRecordDTYP]->size = sizeof(prec->dtyp);
267  prt->papFldDes[mbboDirectRecordDTYP]->offset = (unsigned short)((char *)&prec->dtyp - (char *)prec);
268  prt->papFldDes[mbboDirectRecordDISV]->size = sizeof(prec->disv);
269  prt->papFldDes[mbboDirectRecordDISV]->offset = (unsigned short)((char *)&prec->disv - (char *)prec);
270  prt->papFldDes[mbboDirectRecordDISA]->size = sizeof(prec->disa);
271  prt->papFldDes[mbboDirectRecordDISA]->offset = (unsigned short)((char *)&prec->disa - (char *)prec);
272  prt->papFldDes[mbboDirectRecordSDIS]->size = sizeof(prec->sdis);
273  prt->papFldDes[mbboDirectRecordSDIS]->offset = (unsigned short)((char *)&prec->sdis - (char *)prec);
274  prt->papFldDes[mbboDirectRecordMLOK]->size = sizeof(prec->mlok);
275  prt->papFldDes[mbboDirectRecordMLOK]->offset = (unsigned short)((char *)&prec->mlok - (char *)prec);
276  prt->papFldDes[mbboDirectRecordMLIS]->size = sizeof(prec->mlis);
277  prt->papFldDes[mbboDirectRecordMLIS]->offset = (unsigned short)((char *)&prec->mlis - (char *)prec);
278  prt->papFldDes[mbboDirectRecordBKLNK]->size = sizeof(prec->bklnk);
279  prt->papFldDes[mbboDirectRecordBKLNK]->offset = (unsigned short)((char *)&prec->bklnk - (char *)prec);
280  prt->papFldDes[mbboDirectRecordDISP]->size = sizeof(prec->disp);
281  prt->papFldDes[mbboDirectRecordDISP]->offset = (unsigned short)((char *)&prec->disp - (char *)prec);
282  prt->papFldDes[mbboDirectRecordPROC]->size = sizeof(prec->proc);
283  prt->papFldDes[mbboDirectRecordPROC]->offset = (unsigned short)((char *)&prec->proc - (char *)prec);
284  prt->papFldDes[mbboDirectRecordSTAT]->size = sizeof(prec->stat);
285  prt->papFldDes[mbboDirectRecordSTAT]->offset = (unsigned short)((char *)&prec->stat - (char *)prec);
286  prt->papFldDes[mbboDirectRecordSEVR]->size = sizeof(prec->sevr);
287  prt->papFldDes[mbboDirectRecordSEVR]->offset = (unsigned short)((char *)&prec->sevr - (char *)prec);
288  prt->papFldDes[mbboDirectRecordNSTA]->size = sizeof(prec->nsta);
289  prt->papFldDes[mbboDirectRecordNSTA]->offset = (unsigned short)((char *)&prec->nsta - (char *)prec);
290  prt->papFldDes[mbboDirectRecordNSEV]->size = sizeof(prec->nsev);
291  prt->papFldDes[mbboDirectRecordNSEV]->offset = (unsigned short)((char *)&prec->nsev - (char *)prec);
292  prt->papFldDes[mbboDirectRecordACKS]->size = sizeof(prec->acks);
293  prt->papFldDes[mbboDirectRecordACKS]->offset = (unsigned short)((char *)&prec->acks - (char *)prec);
294  prt->papFldDes[mbboDirectRecordACKT]->size = sizeof(prec->ackt);
295  prt->papFldDes[mbboDirectRecordACKT]->offset = (unsigned short)((char *)&prec->ackt - (char *)prec);
296  prt->papFldDes[mbboDirectRecordDISS]->size = sizeof(prec->diss);
297  prt->papFldDes[mbboDirectRecordDISS]->offset = (unsigned short)((char *)&prec->diss - (char *)prec);
298  prt->papFldDes[mbboDirectRecordLCNT]->size = sizeof(prec->lcnt);
299  prt->papFldDes[mbboDirectRecordLCNT]->offset = (unsigned short)((char *)&prec->lcnt - (char *)prec);
300  prt->papFldDes[mbboDirectRecordPACT]->size = sizeof(prec->pact);
301  prt->papFldDes[mbboDirectRecordPACT]->offset = (unsigned short)((char *)&prec->pact - (char *)prec);
302  prt->papFldDes[mbboDirectRecordPUTF]->size = sizeof(prec->putf);
303  prt->papFldDes[mbboDirectRecordPUTF]->offset = (unsigned short)((char *)&prec->putf - (char *)prec);
304  prt->papFldDes[mbboDirectRecordRPRO]->size = sizeof(prec->rpro);
305  prt->papFldDes[mbboDirectRecordRPRO]->offset = (unsigned short)((char *)&prec->rpro - (char *)prec);
306  prt->papFldDes[mbboDirectRecordASP]->size = sizeof(prec->asp);
307  prt->papFldDes[mbboDirectRecordASP]->offset = (unsigned short)((char *)&prec->asp - (char *)prec);
308  prt->papFldDes[mbboDirectRecordPPN]->size = sizeof(prec->ppn);
309  prt->papFldDes[mbboDirectRecordPPN]->offset = (unsigned short)((char *)&prec->ppn - (char *)prec);
310  prt->papFldDes[mbboDirectRecordPPNR]->size = sizeof(prec->ppnr);
311  prt->papFldDes[mbboDirectRecordPPNR]->offset = (unsigned short)((char *)&prec->ppnr - (char *)prec);
312  prt->papFldDes[mbboDirectRecordSPVT]->size = sizeof(prec->spvt);
313  prt->papFldDes[mbboDirectRecordSPVT]->offset = (unsigned short)((char *)&prec->spvt - (char *)prec);
314  prt->papFldDes[mbboDirectRecordRSET]->size = sizeof(prec->rset);
315  prt->papFldDes[mbboDirectRecordRSET]->offset = (unsigned short)((char *)&prec->rset - (char *)prec);
316  prt->papFldDes[mbboDirectRecordDSET]->size = sizeof(prec->dset);
317  prt->papFldDes[mbboDirectRecordDSET]->offset = (unsigned short)((char *)&prec->dset - (char *)prec);
318  prt->papFldDes[mbboDirectRecordDPVT]->size = sizeof(prec->dpvt);
319  prt->papFldDes[mbboDirectRecordDPVT]->offset = (unsigned short)((char *)&prec->dpvt - (char *)prec);
320  prt->papFldDes[mbboDirectRecordRDES]->size = sizeof(prec->rdes);
321  prt->papFldDes[mbboDirectRecordRDES]->offset = (unsigned short)((char *)&prec->rdes - (char *)prec);
322  prt->papFldDes[mbboDirectRecordLSET]->size = sizeof(prec->lset);
323  prt->papFldDes[mbboDirectRecordLSET]->offset = (unsigned short)((char *)&prec->lset - (char *)prec);
324  prt->papFldDes[mbboDirectRecordPRIO]->size = sizeof(prec->prio);
325  prt->papFldDes[mbboDirectRecordPRIO]->offset = (unsigned short)((char *)&prec->prio - (char *)prec);
326  prt->papFldDes[mbboDirectRecordTPRO]->size = sizeof(prec->tpro);
327  prt->papFldDes[mbboDirectRecordTPRO]->offset = (unsigned short)((char *)&prec->tpro - (char *)prec);
328  prt->papFldDes[mbboDirectRecordBKPT]->size = sizeof(prec->bkpt);
329  prt->papFldDes[mbboDirectRecordBKPT]->offset = (unsigned short)((char *)&prec->bkpt - (char *)prec);
330  prt->papFldDes[mbboDirectRecordUDF]->size = sizeof(prec->udf);
331  prt->papFldDes[mbboDirectRecordUDF]->offset = (unsigned short)((char *)&prec->udf - (char *)prec);
332  prt->papFldDes[mbboDirectRecordUDFS]->size = sizeof(prec->udfs);
333  prt->papFldDes[mbboDirectRecordUDFS]->offset = (unsigned short)((char *)&prec->udfs - (char *)prec);
334  prt->papFldDes[mbboDirectRecordTIME]->size = sizeof(prec->time);
335  prt->papFldDes[mbboDirectRecordTIME]->offset = (unsigned short)((char *)&prec->time - (char *)prec);
336  prt->papFldDes[mbboDirectRecordFLNK]->size = sizeof(prec->flnk);
337  prt->papFldDes[mbboDirectRecordFLNK]->offset = (unsigned short)((char *)&prec->flnk - (char *)prec);
338  prt->papFldDes[mbboDirectRecordVAL]->size = sizeof(prec->val);
339  prt->papFldDes[mbboDirectRecordVAL]->offset = (unsigned short)((char *)&prec->val - (char *)prec);
340  prt->papFldDes[mbboDirectRecordOMSL]->size = sizeof(prec->omsl);
341  prt->papFldDes[mbboDirectRecordOMSL]->offset = (unsigned short)((char *)&prec->omsl - (char *)prec);
342  prt->papFldDes[mbboDirectRecordNOBT]->size = sizeof(prec->nobt);
343  prt->papFldDes[mbboDirectRecordNOBT]->offset = (unsigned short)((char *)&prec->nobt - (char *)prec);
344  prt->papFldDes[mbboDirectRecordDOL]->size = sizeof(prec->dol);
345  prt->papFldDes[mbboDirectRecordDOL]->offset = (unsigned short)((char *)&prec->dol - (char *)prec);
346  prt->papFldDes[mbboDirectRecordOUT]->size = sizeof(prec->out);
347  prt->papFldDes[mbboDirectRecordOUT]->offset = (unsigned short)((char *)&prec->out - (char *)prec);
348  prt->papFldDes[mbboDirectRecordRVAL]->size = sizeof(prec->rval);
349  prt->papFldDes[mbboDirectRecordRVAL]->offset = (unsigned short)((char *)&prec->rval - (char *)prec);
350  prt->papFldDes[mbboDirectRecordORAW]->size = sizeof(prec->oraw);
351  prt->papFldDes[mbboDirectRecordORAW]->offset = (unsigned short)((char *)&prec->oraw - (char *)prec);
352  prt->papFldDes[mbboDirectRecordRBV]->size = sizeof(prec->rbv);
353  prt->papFldDes[mbboDirectRecordRBV]->offset = (unsigned short)((char *)&prec->rbv - (char *)prec);
354  prt->papFldDes[mbboDirectRecordORBV]->size = sizeof(prec->orbv);
355  prt->papFldDes[mbboDirectRecordORBV]->offset = (unsigned short)((char *)&prec->orbv - (char *)prec);
356  prt->papFldDes[mbboDirectRecordMASK]->size = sizeof(prec->mask);
357  prt->papFldDes[mbboDirectRecordMASK]->offset = (unsigned short)((char *)&prec->mask - (char *)prec);
358  prt->papFldDes[mbboDirectRecordMLST]->size = sizeof(prec->mlst);
359  prt->papFldDes[mbboDirectRecordMLST]->offset = (unsigned short)((char *)&prec->mlst - (char *)prec);
360  prt->papFldDes[mbboDirectRecordSHFT]->size = sizeof(prec->shft);
361  prt->papFldDes[mbboDirectRecordSHFT]->offset = (unsigned short)((char *)&prec->shft - (char *)prec);
362  prt->papFldDes[mbboDirectRecordSIOL]->size = sizeof(prec->siol);
363  prt->papFldDes[mbboDirectRecordSIOL]->offset = (unsigned short)((char *)&prec->siol - (char *)prec);
364  prt->papFldDes[mbboDirectRecordSIML]->size = sizeof(prec->siml);
365  prt->papFldDes[mbboDirectRecordSIML]->offset = (unsigned short)((char *)&prec->siml - (char *)prec);
366  prt->papFldDes[mbboDirectRecordSIMM]->size = sizeof(prec->simm);
367  prt->papFldDes[mbboDirectRecordSIMM]->offset = (unsigned short)((char *)&prec->simm - (char *)prec);
368  prt->papFldDes[mbboDirectRecordSIMS]->size = sizeof(prec->sims);
369  prt->papFldDes[mbboDirectRecordSIMS]->offset = (unsigned short)((char *)&prec->sims - (char *)prec);
370  prt->papFldDes[mbboDirectRecordOLDSIMM]->size = sizeof(prec->oldsimm);
371  prt->papFldDes[mbboDirectRecordOLDSIMM]->offset = (unsigned short)((char *)&prec->oldsimm - (char *)prec);
372  prt->papFldDes[mbboDirectRecordSSCN]->size = sizeof(prec->sscn);
373  prt->papFldDes[mbboDirectRecordSSCN]->offset = (unsigned short)((char *)&prec->sscn - (char *)prec);
374  prt->papFldDes[mbboDirectRecordSDLY]->size = sizeof(prec->sdly);
375  prt->papFldDes[mbboDirectRecordSDLY]->offset = (unsigned short)((char *)&prec->sdly - (char *)prec);
376  prt->papFldDes[mbboDirectRecordSIMPVT]->size = sizeof(prec->simpvt);
377  prt->papFldDes[mbboDirectRecordSIMPVT]->offset = (unsigned short)((char *)&prec->simpvt - (char *)prec);
378  prt->papFldDes[mbboDirectRecordIVOA]->size = sizeof(prec->ivoa);
379  prt->papFldDes[mbboDirectRecordIVOA]->offset = (unsigned short)((char *)&prec->ivoa - (char *)prec);
380  prt->papFldDes[mbboDirectRecordIVOV]->size = sizeof(prec->ivov);
381  prt->papFldDes[mbboDirectRecordIVOV]->offset = (unsigned short)((char *)&prec->ivov - (char *)prec);
382  prt->papFldDes[mbboDirectRecordB0]->size = sizeof(prec->b0);
383  prt->papFldDes[mbboDirectRecordB0]->offset = (unsigned short)((char *)&prec->b0 - (char *)prec);
384  prt->papFldDes[mbboDirectRecordB1]->size = sizeof(prec->b1);
385  prt->papFldDes[mbboDirectRecordB1]->offset = (unsigned short)((char *)&prec->b1 - (char *)prec);
386  prt->papFldDes[mbboDirectRecordB2]->size = sizeof(prec->b2);
387  prt->papFldDes[mbboDirectRecordB2]->offset = (unsigned short)((char *)&prec->b2 - (char *)prec);
388  prt->papFldDes[mbboDirectRecordB3]->size = sizeof(prec->b3);
389  prt->papFldDes[mbboDirectRecordB3]->offset = (unsigned short)((char *)&prec->b3 - (char *)prec);
390  prt->papFldDes[mbboDirectRecordB4]->size = sizeof(prec->b4);
391  prt->papFldDes[mbboDirectRecordB4]->offset = (unsigned short)((char *)&prec->b4 - (char *)prec);
392  prt->papFldDes[mbboDirectRecordB5]->size = sizeof(prec->b5);
393  prt->papFldDes[mbboDirectRecordB5]->offset = (unsigned short)((char *)&prec->b5 - (char *)prec);
394  prt->papFldDes[mbboDirectRecordB6]->size = sizeof(prec->b6);
395  prt->papFldDes[mbboDirectRecordB6]->offset = (unsigned short)((char *)&prec->b6 - (char *)prec);
396  prt->papFldDes[mbboDirectRecordB7]->size = sizeof(prec->b7);
397  prt->papFldDes[mbboDirectRecordB7]->offset = (unsigned short)((char *)&prec->b7 - (char *)prec);
398  prt->papFldDes[mbboDirectRecordB8]->size = sizeof(prec->b8);
399  prt->papFldDes[mbboDirectRecordB8]->offset = (unsigned short)((char *)&prec->b8 - (char *)prec);
400  prt->papFldDes[mbboDirectRecordB9]->size = sizeof(prec->b9);
401  prt->papFldDes[mbboDirectRecordB9]->offset = (unsigned short)((char *)&prec->b9 - (char *)prec);
402  prt->papFldDes[mbboDirectRecordBA]->size = sizeof(prec->ba);
403  prt->papFldDes[mbboDirectRecordBA]->offset = (unsigned short)((char *)&prec->ba - (char *)prec);
404  prt->papFldDes[mbboDirectRecordBB]->size = sizeof(prec->bb);
405  prt->papFldDes[mbboDirectRecordBB]->offset = (unsigned short)((char *)&prec->bb - (char *)prec);
406  prt->papFldDes[mbboDirectRecordBC]->size = sizeof(prec->bc);
407  prt->papFldDes[mbboDirectRecordBC]->offset = (unsigned short)((char *)&prec->bc - (char *)prec);
408  prt->papFldDes[mbboDirectRecordBD]->size = sizeof(prec->bd);
409  prt->papFldDes[mbboDirectRecordBD]->offset = (unsigned short)((char *)&prec->bd - (char *)prec);
410  prt->papFldDes[mbboDirectRecordBE]->size = sizeof(prec->be);
411  prt->papFldDes[mbboDirectRecordBE]->offset = (unsigned short)((char *)&prec->be - (char *)prec);
412  prt->papFldDes[mbboDirectRecordBF]->size = sizeof(prec->bf);
413  prt->papFldDes[mbboDirectRecordBF]->offset = (unsigned short)((char *)&prec->bf - (char *)prec);
414  prt->papFldDes[mbboDirectRecordB10]->size = sizeof(prec->b10);
415  prt->papFldDes[mbboDirectRecordB10]->offset = (unsigned short)((char *)&prec->b10 - (char *)prec);
416  prt->papFldDes[mbboDirectRecordB11]->size = sizeof(prec->b11);
417  prt->papFldDes[mbboDirectRecordB11]->offset = (unsigned short)((char *)&prec->b11 - (char *)prec);
418  prt->papFldDes[mbboDirectRecordB12]->size = sizeof(prec->b12);
419  prt->papFldDes[mbboDirectRecordB12]->offset = (unsigned short)((char *)&prec->b12 - (char *)prec);
420  prt->papFldDes[mbboDirectRecordB13]->size = sizeof(prec->b13);
421  prt->papFldDes[mbboDirectRecordB13]->offset = (unsigned short)((char *)&prec->b13 - (char *)prec);
422  prt->papFldDes[mbboDirectRecordB14]->size = sizeof(prec->b14);
423  prt->papFldDes[mbboDirectRecordB14]->offset = (unsigned short)((char *)&prec->b14 - (char *)prec);
424  prt->papFldDes[mbboDirectRecordB15]->size = sizeof(prec->b15);
425  prt->papFldDes[mbboDirectRecordB15]->offset = (unsigned short)((char *)&prec->b15 - (char *)prec);
426  prt->papFldDes[mbboDirectRecordB16]->size = sizeof(prec->b16);
427  prt->papFldDes[mbboDirectRecordB16]->offset = (unsigned short)((char *)&prec->b16 - (char *)prec);
428  prt->papFldDes[mbboDirectRecordB17]->size = sizeof(prec->b17);
429  prt->papFldDes[mbboDirectRecordB17]->offset = (unsigned short)((char *)&prec->b17 - (char *)prec);
430  prt->papFldDes[mbboDirectRecordB18]->size = sizeof(prec->b18);
431  prt->papFldDes[mbboDirectRecordB18]->offset = (unsigned short)((char *)&prec->b18 - (char *)prec);
432  prt->papFldDes[mbboDirectRecordB19]->size = sizeof(prec->b19);
433  prt->papFldDes[mbboDirectRecordB19]->offset = (unsigned short)((char *)&prec->b19 - (char *)prec);
434  prt->papFldDes[mbboDirectRecordB1A]->size = sizeof(prec->b1a);
435  prt->papFldDes[mbboDirectRecordB1A]->offset = (unsigned short)((char *)&prec->b1a - (char *)prec);
436  prt->papFldDes[mbboDirectRecordB1B]->size = sizeof(prec->b1b);
437  prt->papFldDes[mbboDirectRecordB1B]->offset = (unsigned short)((char *)&prec->b1b - (char *)prec);
438  prt->papFldDes[mbboDirectRecordB1C]->size = sizeof(prec->b1c);
439  prt->papFldDes[mbboDirectRecordB1C]->offset = (unsigned short)((char *)&prec->b1c - (char *)prec);
440  prt->papFldDes[mbboDirectRecordB1D]->size = sizeof(prec->b1d);
441  prt->papFldDes[mbboDirectRecordB1D]->offset = (unsigned short)((char *)&prec->b1d - (char *)prec);
442  prt->papFldDes[mbboDirectRecordB1E]->size = sizeof(prec->b1e);
443  prt->papFldDes[mbboDirectRecordB1E]->offset = (unsigned short)((char *)&prec->b1e - (char *)prec);
444  prt->papFldDes[mbboDirectRecordB1F]->size = sizeof(prec->b1f);
445  prt->papFldDes[mbboDirectRecordB1F]->offset = (unsigned short)((char *)&prec->b1f - (char *)prec);
446  prt->rec_size = sizeof(*prec);
447  return 0;
448 }
449 epicsExportRegistrar(mbboDirectRecordSizeOffset);
450 
451 #ifdef __cplusplus
452 }
453 #endif
454 #endif /* GEN_SIZE_OFFSET */
455 
456 #endif /* INC_mbboDirectRecord_H */
epicsUInt8 b1b
Bit 27.
epicsUInt8 b18
Bit 24.
epicsEnum16 oldsimm
Prev. Simulation Mode.
epicsUInt8 b7
Bit 7.
epicsUInt8 b1f
Bit 31.
ELLLIST bklnk
Backwards link tracking.
epicsEnum16 nsta
New Alarm Status.
epicsUInt8 bkpt
Break Point.
epicsInt16 tse
Time Stamp Event.
DBLINK siol
Simulation Output Link.
struct processNotify * ppn
pprocessNotify
epicsUInt32 oraw
Prev Raw Value.
struct lockRecord * lset
Lock Set.
epicsUInt8 b12
Bit 18.
epicsEnum16 omsl
Output Mode Select.
epicsUInt8 b11
Bit 17.
epicsUInt8 bb
Bit 11.
epicsUInt8 rpro
Reprocess.
epicsEnum16 sims
Simulation Mode Severity.
epicsEnum16 dtyp
Device Type.
LIBCOM_API void cantProceed(const char *errorMessage,...) EPICS_PRINTF_STYLE(1
Suspend this thread, the caller cannot continue or return.
epicsInt16 disa
Disable.
epicsUInt32 rbv
Readback Value.
The core data types used by epics.
epicsUInt8 b15
Bit 21.
epicsUInt8 lcnt
Lock Count.
epicsFloat64 sdly
Sim. Mode Async Delay.
epicsUInt32 orbv
Prev Readback Value.
epicsUInt8 b1e
Bit 30.
Exporting IOC objects.
epicsUInt8 b1c
Bit 28.
DBLINK dol
Desired Output Loc.
char evnt[40]
Event Name.
epicsUInt8 b1d
Bit 29.
ELLLIST mlis
Monitor List.
DBLINK tsel
Time Stamp Link.
epicsUInt8 udf
Undefined.
epicsCallback * simpvt
Sim. Mode Private.
DBLINK out
Output Specification.
epicsUInt8 bf
Bit 15.
Routines for code that can&#39;t continue or return after an error.
epicsUInt8 b17
Bit 23.
epicsEnum16 sevr
Alarm Severity.
epicsEnum16 scan
Scan Mechanism.
epicsUInt32 rval
Raw Value.
epicsEnum16 sscn
Sim. Mode Scan.
char desc[41]
Descriptor.
epicsMutexId mlok
Monitor lock.
epicsUInt8 b1
Bit 1.
Declaration of mbboDirect record type.
epicsUInt8 b5
Bit 5.
epicsInt32 mlst
Last Value Monitored.
Definition: devSup.h:141
EPICS time stamp, for use from C code.
Definition: epicsTime.h:34
A doubly-linked list library.
epicsEnum16 udfs
Undefined Alarm Sevrty.
epicsUInt8 b16
Bit 22.
epicsInt32 val
Word.
DBLINK siml
Simulation Mode Link.
epicsInt16 phas
Scan Phase.
List header type.
Definition: ellLib.h:57
epicsEnum16 ackt
Alarm Ack Transient.
epicsUInt8 b0
Bit 0.
void * dpvt
Device Private.
epicsEnum16 acks
Alarm Ack Severity.
epicsUInt8 be
Bit 14.
epicsEnum16 ivoa
INVALID outpt action.
epicsUInt8 b13
Bit 19.
epicsUInt8 proc
Force Processing.
epicsUInt32 mask
Hardware Mask.
epicsUInt8 tpro
Trace Processing.
struct processNotifyRecord * ppnr
pprocessNotifyRecord
epicsUInt8 b14
Bit 20.
epicsUInt8 bc
Bit 12.
epicsUInt8 b3
Bit 3.
epicsUInt8 b6
Bit 6.
struct typed_rset * rset
Address of RSET.
epicsUInt8 bd
Bit 13.
epicsUInt8 disp
Disable putField.
APIs for the epicsMutex mutual exclusion semaphore.
epicsEnum16 simm
Simulation Mode.
Device support routines.
char asg[29]
Access Security Group.
epicsUInt8 putf
dbPutField process
epicsUInt8 b9
Bit 9.
epicsInt32 ivov
INVALID output value.
epicsUInt8 b8
Bit 8.
epicsEnum16 nsev
New Alarm Severity.
epicsEnum16 prio
Scheduling Priority.
epicsUInt8 b2
Bit 2.
DBLINK flnk
Forward Process Link.
struct scan_element * spvt
Scan Private.
epicsUInt8 ba
Bit 10.
#define epicsExportRegistrar(fun)
Declare a registrar function for exporting.
Definition: epicsExport.h:94
struct asgMember * asp
Access Security Pvt.
char name[61]
Record Name.
epicsUInt8 b1a
Bit 26.
EPICS time-stamps (epicsTimeStamp), epicsTime C++ class and C functions for handling wall-clock times...
DBLINK sdis
Scanning Disable.
epicsTimeStamp time
Time.
epicsInt16 disv
Disable Value.
epicsUInt16 shft
Shift.
epicsUInt8 b10
Bit 16.
epicsEnum16 diss
Disable Alarm Sevrty.
struct dbRecordType * rdes
Address of dbRecordType.
epicsInt16 nobt
Number of Bits.
epicsUInt8 b4
Bit 4.
struct epicsMutexParm * epicsMutexId
An identifier for an epicsMutex for use with the C API.
Definition: epicsMutex.h:49
epicsEnum16 pini
Process at iocInit.
unambiguous_dset * dset
DSET address.
epicsUInt8 pact
Record active.
epicsEnum16 stat
Alarm Status.
epicsUInt8 b19
Bit 25.