EPICS Base  7.0.6.1
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
mbbiDirectRecord.h
Go to the documentation of this file.
1 
7 #ifndef INC_mbbiDirectRecord_H
8 #define INC_mbbiDirectRecord_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 mbbiDirectRecord;
18 typedef struct mbbidirectdset {
19  dset common; /* init_record returns: (-1,0) => (failure, success)*/
20  long (*read_mbbi)(struct mbbiDirectRecord *prec); /* (0, 2) => (success, success no convert)*/
22 #define HAS_mbbidirectdset
23 
24 #include "callback.h"
25 
27 typedef struct mbbiDirectRecord {
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  char amsg[40];
49  epicsEnum16 nsta;
50  epicsEnum16 nsev;
51  char namsg[40];
52  epicsEnum16 acks;
53  epicsEnum16 ackt;
54  epicsEnum16 diss;
55  epicsUInt8 lcnt;
56  epicsUInt8 pact;
57  epicsUInt8 putf;
58  epicsUInt8 rpro;
59  struct asgMember *asp;
60  struct processNotify *ppn;
61  struct processNotifyRecord *ppnr;
62  struct scan_element *spvt;
63  struct typed_rset *rset;
65  void *dpvt;
66  struct dbRecordType *rdes;
67  struct lockRecord *lset;
68  epicsEnum16 prio;
69  epicsUInt8 tpro;
70  epicsUInt8 bkpt;
71  epicsUInt8 udf;
72  epicsEnum16 udfs;
74  epicsUInt64 utag;
75  DBLINK flnk;
76  epicsInt32 val;
77  epicsInt16 nobt;
78  DBLINK inp;
79  epicsUInt32 rval;
80  epicsUInt32 oraw;
81  epicsUInt32 mask;
82  epicsInt32 mlst;
83  epicsUInt16 shft;
84  DBLINK siol;
85  epicsInt32 sval;
86  DBLINK siml;
87  epicsEnum16 simm;
88  epicsEnum16 sims;
89  epicsEnum16 oldsimm;
90  epicsEnum16 sscn;
91  epicsFloat64 sdly;
93  epicsUInt8 b0;
94  epicsUInt8 b1;
95  epicsUInt8 b2;
96  epicsUInt8 b3;
97  epicsUInt8 b4;
98  epicsUInt8 b5;
99  epicsUInt8 b6;
100  epicsUInt8 b7;
101  epicsUInt8 b8;
102  epicsUInt8 b9;
103  epicsUInt8 ba;
104  epicsUInt8 bb;
105  epicsUInt8 bc;
106  epicsUInt8 bd;
107  epicsUInt8 be;
108  epicsUInt8 bf;
109  epicsUInt8 b10;
110  epicsUInt8 b11;
111  epicsUInt8 b12;
112  epicsUInt8 b13;
113  epicsUInt8 b14;
114  epicsUInt8 b15;
115  epicsUInt8 b16;
116  epicsUInt8 b17;
117  epicsUInt8 b18;
118  epicsUInt8 b19;
119  epicsUInt8 b1a;
120  epicsUInt8 b1b;
121  epicsUInt8 b1c;
122  epicsUInt8 b1d;
123  epicsUInt8 b1e;
124  epicsUInt8 b1f;
126 
127 typedef enum {
128  mbbiDirectRecordNAME = 0,
129  mbbiDirectRecordDESC = 1,
130  mbbiDirectRecordASG = 2,
131  mbbiDirectRecordSCAN = 3,
132  mbbiDirectRecordPINI = 4,
133  mbbiDirectRecordPHAS = 5,
134  mbbiDirectRecordEVNT = 6,
135  mbbiDirectRecordTSE = 7,
136  mbbiDirectRecordTSEL = 8,
137  mbbiDirectRecordDTYP = 9,
138  mbbiDirectRecordDISV = 10,
139  mbbiDirectRecordDISA = 11,
140  mbbiDirectRecordSDIS = 12,
141  mbbiDirectRecordMLOK = 13,
142  mbbiDirectRecordMLIS = 14,
143  mbbiDirectRecordBKLNK = 15,
144  mbbiDirectRecordDISP = 16,
145  mbbiDirectRecordPROC = 17,
146  mbbiDirectRecordSTAT = 18,
147  mbbiDirectRecordSEVR = 19,
148  mbbiDirectRecordAMSG = 20,
149  mbbiDirectRecordNSTA = 21,
150  mbbiDirectRecordNSEV = 22,
151  mbbiDirectRecordNAMSG = 23,
152  mbbiDirectRecordACKS = 24,
153  mbbiDirectRecordACKT = 25,
154  mbbiDirectRecordDISS = 26,
155  mbbiDirectRecordLCNT = 27,
156  mbbiDirectRecordPACT = 28,
157  mbbiDirectRecordPUTF = 29,
158  mbbiDirectRecordRPRO = 30,
159  mbbiDirectRecordASP = 31,
160  mbbiDirectRecordPPN = 32,
161  mbbiDirectRecordPPNR = 33,
162  mbbiDirectRecordSPVT = 34,
163  mbbiDirectRecordRSET = 35,
164  mbbiDirectRecordDSET = 36,
165  mbbiDirectRecordDPVT = 37,
166  mbbiDirectRecordRDES = 38,
167  mbbiDirectRecordLSET = 39,
168  mbbiDirectRecordPRIO = 40,
169  mbbiDirectRecordTPRO = 41,
170  mbbiDirectRecordBKPT = 42,
171  mbbiDirectRecordUDF = 43,
172  mbbiDirectRecordUDFS = 44,
173  mbbiDirectRecordTIME = 45,
174  mbbiDirectRecordUTAG = 46,
175  mbbiDirectRecordFLNK = 47,
176  mbbiDirectRecordVAL = 48,
177  mbbiDirectRecordNOBT = 49,
178  mbbiDirectRecordINP = 50,
179  mbbiDirectRecordRVAL = 51,
180  mbbiDirectRecordORAW = 52,
181  mbbiDirectRecordMASK = 53,
182  mbbiDirectRecordMLST = 54,
183  mbbiDirectRecordSHFT = 55,
184  mbbiDirectRecordSIOL = 56,
185  mbbiDirectRecordSVAL = 57,
186  mbbiDirectRecordSIML = 58,
187  mbbiDirectRecordSIMM = 59,
188  mbbiDirectRecordSIMS = 60,
189  mbbiDirectRecordOLDSIMM = 61,
190  mbbiDirectRecordSSCN = 62,
191  mbbiDirectRecordSDLY = 63,
192  mbbiDirectRecordSIMPVT = 64,
193  mbbiDirectRecordB0 = 65,
194  mbbiDirectRecordB1 = 66,
195  mbbiDirectRecordB2 = 67,
196  mbbiDirectRecordB3 = 68,
197  mbbiDirectRecordB4 = 69,
198  mbbiDirectRecordB5 = 70,
199  mbbiDirectRecordB6 = 71,
200  mbbiDirectRecordB7 = 72,
201  mbbiDirectRecordB8 = 73,
202  mbbiDirectRecordB9 = 74,
203  mbbiDirectRecordBA = 75,
204  mbbiDirectRecordBB = 76,
205  mbbiDirectRecordBC = 77,
206  mbbiDirectRecordBD = 78,
207  mbbiDirectRecordBE = 79,
208  mbbiDirectRecordBF = 80,
209  mbbiDirectRecordB10 = 81,
210  mbbiDirectRecordB11 = 82,
211  mbbiDirectRecordB12 = 83,
212  mbbiDirectRecordB13 = 84,
213  mbbiDirectRecordB14 = 85,
214  mbbiDirectRecordB15 = 86,
215  mbbiDirectRecordB16 = 87,
216  mbbiDirectRecordB17 = 88,
217  mbbiDirectRecordB18 = 89,
218  mbbiDirectRecordB19 = 90,
219  mbbiDirectRecordB1A = 91,
220  mbbiDirectRecordB1B = 92,
221  mbbiDirectRecordB1C = 93,
222  mbbiDirectRecordB1D = 94,
223  mbbiDirectRecordB1E = 95,
224  mbbiDirectRecordB1F = 96
225 } mbbiDirectFieldIndex;
226 
227 #ifdef GEN_SIZE_OFFSET
228 
229 #include <epicsExport.h>
230 #include <cantProceed.h>
231 #ifdef __cplusplus
232 extern "C" {
233 #endif
234 static int mbbiDirectRecordSizeOffset(dbRecordType *prt)
235 {
236  mbbiDirectRecord *prec = 0;
237 
238  if (prt->no_fields != 97) {
239  cantProceed("IOC build or installation error:\n"
240  " The mbbiDirectRecord defined in the DBD file has %d fields,\n"
241  " but the record support code was built with 97.\n",
242  prt->no_fields);
243  }
244  prt->papFldDes[mbbiDirectRecordNAME]->size = sizeof(prec->name);
245  prt->papFldDes[mbbiDirectRecordNAME]->offset = (unsigned short)((char *)&prec->name - (char *)prec);
246  prt->papFldDes[mbbiDirectRecordDESC]->size = sizeof(prec->desc);
247  prt->papFldDes[mbbiDirectRecordDESC]->offset = (unsigned short)((char *)&prec->desc - (char *)prec);
248  prt->papFldDes[mbbiDirectRecordASG]->size = sizeof(prec->asg);
249  prt->papFldDes[mbbiDirectRecordASG]->offset = (unsigned short)((char *)&prec->asg - (char *)prec);
250  prt->papFldDes[mbbiDirectRecordSCAN]->size = sizeof(prec->scan);
251  prt->papFldDes[mbbiDirectRecordSCAN]->offset = (unsigned short)((char *)&prec->scan - (char *)prec);
252  prt->papFldDes[mbbiDirectRecordPINI]->size = sizeof(prec->pini);
253  prt->papFldDes[mbbiDirectRecordPINI]->offset = (unsigned short)((char *)&prec->pini - (char *)prec);
254  prt->papFldDes[mbbiDirectRecordPHAS]->size = sizeof(prec->phas);
255  prt->papFldDes[mbbiDirectRecordPHAS]->offset = (unsigned short)((char *)&prec->phas - (char *)prec);
256  prt->papFldDes[mbbiDirectRecordEVNT]->size = sizeof(prec->evnt);
257  prt->papFldDes[mbbiDirectRecordEVNT]->offset = (unsigned short)((char *)&prec->evnt - (char *)prec);
258  prt->papFldDes[mbbiDirectRecordTSE]->size = sizeof(prec->tse);
259  prt->papFldDes[mbbiDirectRecordTSE]->offset = (unsigned short)((char *)&prec->tse - (char *)prec);
260  prt->papFldDes[mbbiDirectRecordTSEL]->size = sizeof(prec->tsel);
261  prt->papFldDes[mbbiDirectRecordTSEL]->offset = (unsigned short)((char *)&prec->tsel - (char *)prec);
262  prt->papFldDes[mbbiDirectRecordDTYP]->size = sizeof(prec->dtyp);
263  prt->papFldDes[mbbiDirectRecordDTYP]->offset = (unsigned short)((char *)&prec->dtyp - (char *)prec);
264  prt->papFldDes[mbbiDirectRecordDISV]->size = sizeof(prec->disv);
265  prt->papFldDes[mbbiDirectRecordDISV]->offset = (unsigned short)((char *)&prec->disv - (char *)prec);
266  prt->papFldDes[mbbiDirectRecordDISA]->size = sizeof(prec->disa);
267  prt->papFldDes[mbbiDirectRecordDISA]->offset = (unsigned short)((char *)&prec->disa - (char *)prec);
268  prt->papFldDes[mbbiDirectRecordSDIS]->size = sizeof(prec->sdis);
269  prt->papFldDes[mbbiDirectRecordSDIS]->offset = (unsigned short)((char *)&prec->sdis - (char *)prec);
270  prt->papFldDes[mbbiDirectRecordMLOK]->size = sizeof(prec->mlok);
271  prt->papFldDes[mbbiDirectRecordMLOK]->offset = (unsigned short)((char *)&prec->mlok - (char *)prec);
272  prt->papFldDes[mbbiDirectRecordMLIS]->size = sizeof(prec->mlis);
273  prt->papFldDes[mbbiDirectRecordMLIS]->offset = (unsigned short)((char *)&prec->mlis - (char *)prec);
274  prt->papFldDes[mbbiDirectRecordBKLNK]->size = sizeof(prec->bklnk);
275  prt->papFldDes[mbbiDirectRecordBKLNK]->offset = (unsigned short)((char *)&prec->bklnk - (char *)prec);
276  prt->papFldDes[mbbiDirectRecordDISP]->size = sizeof(prec->disp);
277  prt->papFldDes[mbbiDirectRecordDISP]->offset = (unsigned short)((char *)&prec->disp - (char *)prec);
278  prt->papFldDes[mbbiDirectRecordPROC]->size = sizeof(prec->proc);
279  prt->papFldDes[mbbiDirectRecordPROC]->offset = (unsigned short)((char *)&prec->proc - (char *)prec);
280  prt->papFldDes[mbbiDirectRecordSTAT]->size = sizeof(prec->stat);
281  prt->papFldDes[mbbiDirectRecordSTAT]->offset = (unsigned short)((char *)&prec->stat - (char *)prec);
282  prt->papFldDes[mbbiDirectRecordSEVR]->size = sizeof(prec->sevr);
283  prt->papFldDes[mbbiDirectRecordSEVR]->offset = (unsigned short)((char *)&prec->sevr - (char *)prec);
284  prt->papFldDes[mbbiDirectRecordAMSG]->size = sizeof(prec->amsg);
285  prt->papFldDes[mbbiDirectRecordAMSG]->offset = (unsigned short)((char *)&prec->amsg - (char *)prec);
286  prt->papFldDes[mbbiDirectRecordNSTA]->size = sizeof(prec->nsta);
287  prt->papFldDes[mbbiDirectRecordNSTA]->offset = (unsigned short)((char *)&prec->nsta - (char *)prec);
288  prt->papFldDes[mbbiDirectRecordNSEV]->size = sizeof(prec->nsev);
289  prt->papFldDes[mbbiDirectRecordNSEV]->offset = (unsigned short)((char *)&prec->nsev - (char *)prec);
290  prt->papFldDes[mbbiDirectRecordNAMSG]->size = sizeof(prec->namsg);
291  prt->papFldDes[mbbiDirectRecordNAMSG]->offset = (unsigned short)((char *)&prec->namsg - (char *)prec);
292  prt->papFldDes[mbbiDirectRecordACKS]->size = sizeof(prec->acks);
293  prt->papFldDes[mbbiDirectRecordACKS]->offset = (unsigned short)((char *)&prec->acks - (char *)prec);
294  prt->papFldDes[mbbiDirectRecordACKT]->size = sizeof(prec->ackt);
295  prt->papFldDes[mbbiDirectRecordACKT]->offset = (unsigned short)((char *)&prec->ackt - (char *)prec);
296  prt->papFldDes[mbbiDirectRecordDISS]->size = sizeof(prec->diss);
297  prt->papFldDes[mbbiDirectRecordDISS]->offset = (unsigned short)((char *)&prec->diss - (char *)prec);
298  prt->papFldDes[mbbiDirectRecordLCNT]->size = sizeof(prec->lcnt);
299  prt->papFldDes[mbbiDirectRecordLCNT]->offset = (unsigned short)((char *)&prec->lcnt - (char *)prec);
300  prt->papFldDes[mbbiDirectRecordPACT]->size = sizeof(prec->pact);
301  prt->papFldDes[mbbiDirectRecordPACT]->offset = (unsigned short)((char *)&prec->pact - (char *)prec);
302  prt->papFldDes[mbbiDirectRecordPUTF]->size = sizeof(prec->putf);
303  prt->papFldDes[mbbiDirectRecordPUTF]->offset = (unsigned short)((char *)&prec->putf - (char *)prec);
304  prt->papFldDes[mbbiDirectRecordRPRO]->size = sizeof(prec->rpro);
305  prt->papFldDes[mbbiDirectRecordRPRO]->offset = (unsigned short)((char *)&prec->rpro - (char *)prec);
306  prt->papFldDes[mbbiDirectRecordASP]->size = sizeof(prec->asp);
307  prt->papFldDes[mbbiDirectRecordASP]->offset = (unsigned short)((char *)&prec->asp - (char *)prec);
308  prt->papFldDes[mbbiDirectRecordPPN]->size = sizeof(prec->ppn);
309  prt->papFldDes[mbbiDirectRecordPPN]->offset = (unsigned short)((char *)&prec->ppn - (char *)prec);
310  prt->papFldDes[mbbiDirectRecordPPNR]->size = sizeof(prec->ppnr);
311  prt->papFldDes[mbbiDirectRecordPPNR]->offset = (unsigned short)((char *)&prec->ppnr - (char *)prec);
312  prt->papFldDes[mbbiDirectRecordSPVT]->size = sizeof(prec->spvt);
313  prt->papFldDes[mbbiDirectRecordSPVT]->offset = (unsigned short)((char *)&prec->spvt - (char *)prec);
314  prt->papFldDes[mbbiDirectRecordRSET]->size = sizeof(prec->rset);
315  prt->papFldDes[mbbiDirectRecordRSET]->offset = (unsigned short)((char *)&prec->rset - (char *)prec);
316  prt->papFldDes[mbbiDirectRecordDSET]->size = sizeof(prec->dset);
317  prt->papFldDes[mbbiDirectRecordDSET]->offset = (unsigned short)((char *)&prec->dset - (char *)prec);
318  prt->papFldDes[mbbiDirectRecordDPVT]->size = sizeof(prec->dpvt);
319  prt->papFldDes[mbbiDirectRecordDPVT]->offset = (unsigned short)((char *)&prec->dpvt - (char *)prec);
320  prt->papFldDes[mbbiDirectRecordRDES]->size = sizeof(prec->rdes);
321  prt->papFldDes[mbbiDirectRecordRDES]->offset = (unsigned short)((char *)&prec->rdes - (char *)prec);
322  prt->papFldDes[mbbiDirectRecordLSET]->size = sizeof(prec->lset);
323  prt->papFldDes[mbbiDirectRecordLSET]->offset = (unsigned short)((char *)&prec->lset - (char *)prec);
324  prt->papFldDes[mbbiDirectRecordPRIO]->size = sizeof(prec->prio);
325  prt->papFldDes[mbbiDirectRecordPRIO]->offset = (unsigned short)((char *)&prec->prio - (char *)prec);
326  prt->papFldDes[mbbiDirectRecordTPRO]->size = sizeof(prec->tpro);
327  prt->papFldDes[mbbiDirectRecordTPRO]->offset = (unsigned short)((char *)&prec->tpro - (char *)prec);
328  prt->papFldDes[mbbiDirectRecordBKPT]->size = sizeof(prec->bkpt);
329  prt->papFldDes[mbbiDirectRecordBKPT]->offset = (unsigned short)((char *)&prec->bkpt - (char *)prec);
330  prt->papFldDes[mbbiDirectRecordUDF]->size = sizeof(prec->udf);
331  prt->papFldDes[mbbiDirectRecordUDF]->offset = (unsigned short)((char *)&prec->udf - (char *)prec);
332  prt->papFldDes[mbbiDirectRecordUDFS]->size = sizeof(prec->udfs);
333  prt->papFldDes[mbbiDirectRecordUDFS]->offset = (unsigned short)((char *)&prec->udfs - (char *)prec);
334  prt->papFldDes[mbbiDirectRecordTIME]->size = sizeof(prec->time);
335  prt->papFldDes[mbbiDirectRecordTIME]->offset = (unsigned short)((char *)&prec->time - (char *)prec);
336  prt->papFldDes[mbbiDirectRecordUTAG]->size = sizeof(prec->utag);
337  prt->papFldDes[mbbiDirectRecordUTAG]->offset = (unsigned short)((char *)&prec->utag - (char *)prec);
338  prt->papFldDes[mbbiDirectRecordFLNK]->size = sizeof(prec->flnk);
339  prt->papFldDes[mbbiDirectRecordFLNK]->offset = (unsigned short)((char *)&prec->flnk - (char *)prec);
340  prt->papFldDes[mbbiDirectRecordVAL]->size = sizeof(prec->val);
341  prt->papFldDes[mbbiDirectRecordVAL]->offset = (unsigned short)((char *)&prec->val - (char *)prec);
342  prt->papFldDes[mbbiDirectRecordNOBT]->size = sizeof(prec->nobt);
343  prt->papFldDes[mbbiDirectRecordNOBT]->offset = (unsigned short)((char *)&prec->nobt - (char *)prec);
344  prt->papFldDes[mbbiDirectRecordINP]->size = sizeof(prec->inp);
345  prt->papFldDes[mbbiDirectRecordINP]->offset = (unsigned short)((char *)&prec->inp - (char *)prec);
346  prt->papFldDes[mbbiDirectRecordRVAL]->size = sizeof(prec->rval);
347  prt->papFldDes[mbbiDirectRecordRVAL]->offset = (unsigned short)((char *)&prec->rval - (char *)prec);
348  prt->papFldDes[mbbiDirectRecordORAW]->size = sizeof(prec->oraw);
349  prt->papFldDes[mbbiDirectRecordORAW]->offset = (unsigned short)((char *)&prec->oraw - (char *)prec);
350  prt->papFldDes[mbbiDirectRecordMASK]->size = sizeof(prec->mask);
351  prt->papFldDes[mbbiDirectRecordMASK]->offset = (unsigned short)((char *)&prec->mask - (char *)prec);
352  prt->papFldDes[mbbiDirectRecordMLST]->size = sizeof(prec->mlst);
353  prt->papFldDes[mbbiDirectRecordMLST]->offset = (unsigned short)((char *)&prec->mlst - (char *)prec);
354  prt->papFldDes[mbbiDirectRecordSHFT]->size = sizeof(prec->shft);
355  prt->papFldDes[mbbiDirectRecordSHFT]->offset = (unsigned short)((char *)&prec->shft - (char *)prec);
356  prt->papFldDes[mbbiDirectRecordSIOL]->size = sizeof(prec->siol);
357  prt->papFldDes[mbbiDirectRecordSIOL]->offset = (unsigned short)((char *)&prec->siol - (char *)prec);
358  prt->papFldDes[mbbiDirectRecordSVAL]->size = sizeof(prec->sval);
359  prt->papFldDes[mbbiDirectRecordSVAL]->offset = (unsigned short)((char *)&prec->sval - (char *)prec);
360  prt->papFldDes[mbbiDirectRecordSIML]->size = sizeof(prec->siml);
361  prt->papFldDes[mbbiDirectRecordSIML]->offset = (unsigned short)((char *)&prec->siml - (char *)prec);
362  prt->papFldDes[mbbiDirectRecordSIMM]->size = sizeof(prec->simm);
363  prt->papFldDes[mbbiDirectRecordSIMM]->offset = (unsigned short)((char *)&prec->simm - (char *)prec);
364  prt->papFldDes[mbbiDirectRecordSIMS]->size = sizeof(prec->sims);
365  prt->papFldDes[mbbiDirectRecordSIMS]->offset = (unsigned short)((char *)&prec->sims - (char *)prec);
366  prt->papFldDes[mbbiDirectRecordOLDSIMM]->size = sizeof(prec->oldsimm);
367  prt->papFldDes[mbbiDirectRecordOLDSIMM]->offset = (unsigned short)((char *)&prec->oldsimm - (char *)prec);
368  prt->papFldDes[mbbiDirectRecordSSCN]->size = sizeof(prec->sscn);
369  prt->papFldDes[mbbiDirectRecordSSCN]->offset = (unsigned short)((char *)&prec->sscn - (char *)prec);
370  prt->papFldDes[mbbiDirectRecordSDLY]->size = sizeof(prec->sdly);
371  prt->papFldDes[mbbiDirectRecordSDLY]->offset = (unsigned short)((char *)&prec->sdly - (char *)prec);
372  prt->papFldDes[mbbiDirectRecordSIMPVT]->size = sizeof(prec->simpvt);
373  prt->papFldDes[mbbiDirectRecordSIMPVT]->offset = (unsigned short)((char *)&prec->simpvt - (char *)prec);
374  prt->papFldDes[mbbiDirectRecordB0]->size = sizeof(prec->b0);
375  prt->papFldDes[mbbiDirectRecordB0]->offset = (unsigned short)((char *)&prec->b0 - (char *)prec);
376  prt->papFldDes[mbbiDirectRecordB1]->size = sizeof(prec->b1);
377  prt->papFldDes[mbbiDirectRecordB1]->offset = (unsigned short)((char *)&prec->b1 - (char *)prec);
378  prt->papFldDes[mbbiDirectRecordB2]->size = sizeof(prec->b2);
379  prt->papFldDes[mbbiDirectRecordB2]->offset = (unsigned short)((char *)&prec->b2 - (char *)prec);
380  prt->papFldDes[mbbiDirectRecordB3]->size = sizeof(prec->b3);
381  prt->papFldDes[mbbiDirectRecordB3]->offset = (unsigned short)((char *)&prec->b3 - (char *)prec);
382  prt->papFldDes[mbbiDirectRecordB4]->size = sizeof(prec->b4);
383  prt->papFldDes[mbbiDirectRecordB4]->offset = (unsigned short)((char *)&prec->b4 - (char *)prec);
384  prt->papFldDes[mbbiDirectRecordB5]->size = sizeof(prec->b5);
385  prt->papFldDes[mbbiDirectRecordB5]->offset = (unsigned short)((char *)&prec->b5 - (char *)prec);
386  prt->papFldDes[mbbiDirectRecordB6]->size = sizeof(prec->b6);
387  prt->papFldDes[mbbiDirectRecordB6]->offset = (unsigned short)((char *)&prec->b6 - (char *)prec);
388  prt->papFldDes[mbbiDirectRecordB7]->size = sizeof(prec->b7);
389  prt->papFldDes[mbbiDirectRecordB7]->offset = (unsigned short)((char *)&prec->b7 - (char *)prec);
390  prt->papFldDes[mbbiDirectRecordB8]->size = sizeof(prec->b8);
391  prt->papFldDes[mbbiDirectRecordB8]->offset = (unsigned short)((char *)&prec->b8 - (char *)prec);
392  prt->papFldDes[mbbiDirectRecordB9]->size = sizeof(prec->b9);
393  prt->papFldDes[mbbiDirectRecordB9]->offset = (unsigned short)((char *)&prec->b9 - (char *)prec);
394  prt->papFldDes[mbbiDirectRecordBA]->size = sizeof(prec->ba);
395  prt->papFldDes[mbbiDirectRecordBA]->offset = (unsigned short)((char *)&prec->ba - (char *)prec);
396  prt->papFldDes[mbbiDirectRecordBB]->size = sizeof(prec->bb);
397  prt->papFldDes[mbbiDirectRecordBB]->offset = (unsigned short)((char *)&prec->bb - (char *)prec);
398  prt->papFldDes[mbbiDirectRecordBC]->size = sizeof(prec->bc);
399  prt->papFldDes[mbbiDirectRecordBC]->offset = (unsigned short)((char *)&prec->bc - (char *)prec);
400  prt->papFldDes[mbbiDirectRecordBD]->size = sizeof(prec->bd);
401  prt->papFldDes[mbbiDirectRecordBD]->offset = (unsigned short)((char *)&prec->bd - (char *)prec);
402  prt->papFldDes[mbbiDirectRecordBE]->size = sizeof(prec->be);
403  prt->papFldDes[mbbiDirectRecordBE]->offset = (unsigned short)((char *)&prec->be - (char *)prec);
404  prt->papFldDes[mbbiDirectRecordBF]->size = sizeof(prec->bf);
405  prt->papFldDes[mbbiDirectRecordBF]->offset = (unsigned short)((char *)&prec->bf - (char *)prec);
406  prt->papFldDes[mbbiDirectRecordB10]->size = sizeof(prec->b10);
407  prt->papFldDes[mbbiDirectRecordB10]->offset = (unsigned short)((char *)&prec->b10 - (char *)prec);
408  prt->papFldDes[mbbiDirectRecordB11]->size = sizeof(prec->b11);
409  prt->papFldDes[mbbiDirectRecordB11]->offset = (unsigned short)((char *)&prec->b11 - (char *)prec);
410  prt->papFldDes[mbbiDirectRecordB12]->size = sizeof(prec->b12);
411  prt->papFldDes[mbbiDirectRecordB12]->offset = (unsigned short)((char *)&prec->b12 - (char *)prec);
412  prt->papFldDes[mbbiDirectRecordB13]->size = sizeof(prec->b13);
413  prt->papFldDes[mbbiDirectRecordB13]->offset = (unsigned short)((char *)&prec->b13 - (char *)prec);
414  prt->papFldDes[mbbiDirectRecordB14]->size = sizeof(prec->b14);
415  prt->papFldDes[mbbiDirectRecordB14]->offset = (unsigned short)((char *)&prec->b14 - (char *)prec);
416  prt->papFldDes[mbbiDirectRecordB15]->size = sizeof(prec->b15);
417  prt->papFldDes[mbbiDirectRecordB15]->offset = (unsigned short)((char *)&prec->b15 - (char *)prec);
418  prt->papFldDes[mbbiDirectRecordB16]->size = sizeof(prec->b16);
419  prt->papFldDes[mbbiDirectRecordB16]->offset = (unsigned short)((char *)&prec->b16 - (char *)prec);
420  prt->papFldDes[mbbiDirectRecordB17]->size = sizeof(prec->b17);
421  prt->papFldDes[mbbiDirectRecordB17]->offset = (unsigned short)((char *)&prec->b17 - (char *)prec);
422  prt->papFldDes[mbbiDirectRecordB18]->size = sizeof(prec->b18);
423  prt->papFldDes[mbbiDirectRecordB18]->offset = (unsigned short)((char *)&prec->b18 - (char *)prec);
424  prt->papFldDes[mbbiDirectRecordB19]->size = sizeof(prec->b19);
425  prt->papFldDes[mbbiDirectRecordB19]->offset = (unsigned short)((char *)&prec->b19 - (char *)prec);
426  prt->papFldDes[mbbiDirectRecordB1A]->size = sizeof(prec->b1a);
427  prt->papFldDes[mbbiDirectRecordB1A]->offset = (unsigned short)((char *)&prec->b1a - (char *)prec);
428  prt->papFldDes[mbbiDirectRecordB1B]->size = sizeof(prec->b1b);
429  prt->papFldDes[mbbiDirectRecordB1B]->offset = (unsigned short)((char *)&prec->b1b - (char *)prec);
430  prt->papFldDes[mbbiDirectRecordB1C]->size = sizeof(prec->b1c);
431  prt->papFldDes[mbbiDirectRecordB1C]->offset = (unsigned short)((char *)&prec->b1c - (char *)prec);
432  prt->papFldDes[mbbiDirectRecordB1D]->size = sizeof(prec->b1d);
433  prt->papFldDes[mbbiDirectRecordB1D]->offset = (unsigned short)((char *)&prec->b1d - (char *)prec);
434  prt->papFldDes[mbbiDirectRecordB1E]->size = sizeof(prec->b1e);
435  prt->papFldDes[mbbiDirectRecordB1E]->offset = (unsigned short)((char *)&prec->b1e - (char *)prec);
436  prt->papFldDes[mbbiDirectRecordB1F]->size = sizeof(prec->b1f);
437  prt->papFldDes[mbbiDirectRecordB1F]->offset = (unsigned short)((char *)&prec->b1f - (char *)prec);
438  prt->rec_size = sizeof(*prec);
439  return 0;
440 }
441 epicsExportRegistrar(mbbiDirectRecordSizeOffset);
442 
443 #ifdef __cplusplus
444 }
445 #endif
446 #endif /* GEN_SIZE_OFFSET */
447 
448 #endif /* INC_mbbiDirectRecord_H */
epicsUInt8 b1c
Bit 28.
struct processNotify * ppn
pprocessNotify
struct typed_rset * rset
Address of RSET.
epicsUInt32 mask
Hardware Mask.
epicsUInt8 b7
Bit 7.
epicsUInt8 b13
Bit 19.
epicsUInt32 oraw
Prev Raw Value.
DBLINK siol
Simulation Input Link.
ELLLIST bklnk
Backwards link tracking.
epicsInt16 disv
Disable Value.
epicsUInt8 be
Bit 14.
epicsUInt16 shft
Shift.
epicsUInt8 b9
Bit 9.
LIBCOM_API void cantProceed(const char *errorMessage,...) EPICS_PRINTF_STYLE(1
Suspend this thread, the caller cannot continue or return.
struct processNotifyRecord * ppnr
pprocessNotifyRecord
The core data types used by epics.
epicsUInt8 b12
Bit 18.
epicsUInt8 b16
Bit 22.
epicsUInt8 bd
Bit 13.
epicsCallback * simpvt
Sim. Mode Private.
Exporting IOC objects.
epicsUInt8 pact
Record active.
epicsEnum16 pini
Process at iocInit.
epicsUInt8 b1a
Bit 26.
epicsUInt8 b18
Bit 24.
epicsEnum16 sims
Simulation Mode Severity.
epicsUInt8 b1b
Bit 27.
epicsEnum16 stat
Alarm Status.
epicsUInt8 disp
Disable putField.
epicsUInt8 b4
Bit 4.
void * dpvt
Device Private.
epicsUInt8 b10
Bit 16.
Routines for code that can&#39;t continue or return after an error.
struct dbRecordType * rdes
Address of dbRecordType.
epicsUInt8 b5
Bit 5.
epicsEnum16 nsta
New Alarm Status.
epicsUInt8 udf
Undefined.
ELLLIST mlis
Monitor List.
epicsUInt8 lcnt
Lock Count.
epicsEnum16 acks
Alarm Ack Severity.
epicsInt32 mlst
Last Value Monitored.
char desc[41]
Descriptor.
struct scan_element * spvt
Scan Private.
struct asgMember * asp
Access Security Pvt.
epicsUInt8 b3
Bit 3.
epicsEnum16 scan
Scan Mechanism.
Definition: devSup.h:141
epicsUInt8 b0
Bit 0.
EPICS time stamp, for use from C code.
Definition: epicsTime.h:42
char evnt[40]
Event Name.
epicsInt32 val
Current Value.
A doubly-linked list library.
epicsEnum16 ackt
Alarm Ack Transient.
epicsUInt8 b1f
Bit 31.
epicsUInt8 rpro
Reprocess.
List header type.
Definition: ellLib.h:57
char name[61]
Record Name.
DBLINK tsel
Time Stamp Link.
epicsInt16 tse
Time Stamp Event.
epicsEnum16 prio
Scheduling Priority.
epicsEnum16 nsev
New Alarm Severity.
epicsEnum16 oldsimm
Prev. Simulation Mode.
epicsUInt8 b1
Bit 1.
Declaration of mbbiDirect record type.
epicsUInt8 b15
Bit 21.
epicsUInt8 b8
Bit 8.
epicsInt16 disa
Disable.
DBLINK inp
Input Specification.
epicsUInt8 b1e
Bit 30.
epicsUInt8 b19
Bit 25.
epicsEnum16 sevr
Alarm Severity.
APIs for the epicsMutex mutual exclusion semaphore.
epicsUInt8 bkpt
Break Point.
DBLINK flnk
Forward Process Link.
char namsg[40]
New Alarm Message.
Device support routines.
epicsEnum16 diss
Disable Alarm Sevrty.
epicsUInt32 rval
Raw Value.
epicsUInt8 tpro
Trace Processing.
epicsUInt8 bb
Bit 11.
epicsInt16 phas
Scan Phase.
epicsInt16 nobt
Number of Bits.
epicsUInt8 b14
Bit 20.
#define epicsExportRegistrar(fun)
Declare a registrar function for exporting.
Definition: epicsExport.h:94
epicsEnum16 udfs
Undefined Alarm Sevrty.
DBLINK sdis
Scanning Disable.
epicsUInt8 bc
Bit 12.
epicsUInt8 b17
Bit 23.
unambiguous_dset * dset
DSET address.
epicsInt32 sval
Simulation Value.
char amsg[40]
Alarm Message.
DBLINK siml
Simulation Mode Link.
epicsTimeStamp time
Time.
epicsEnum16 sscn
Sim. Mode Scan.
epicsEnum16 simm
Simulation Mode.
epicsUInt64 utag
Time Tag.
epicsUInt8 putf
dbPutField process
epicsEnum16 dtyp
Device Type.
EPICS time-stamps (epicsTimeStamp), epicsTime C++ class and C functions for handling wall-clock times...
struct lockRecord * lset
Lock Set.
epicsUInt8 b6
Bit 6.
epicsUInt8 b2
Bit 2.
epicsUInt8 proc
Force Processing.
epicsFloat64 sdly
Sim. Mode Async Delay.
epicsMutexId mlok
Monitor lock.
char asg[29]
Access Security Group.
epicsUInt8 ba
Bit 10.
struct epicsMutexParm * epicsMutexId
An identifier for an epicsMutex for use with the C API.
Definition: epicsMutex.h:49
epicsUInt8 b11
Bit 17.
epicsUInt8 b1d
Bit 29.
epicsUInt8 bf
Bit 15.