This is Unofficial EPICS BASE Doxygen Site
drvSup.h
Go to the documentation of this file.
1 /*************************************************************************\
2 * Copyright (c) 2009 UChicago Argonne LLC, as Operator of Argonne
3 * National Laboratory.
4 * Copyright (c) 2002 The Regents of the University of California, as
5 * Operator of Los Alamos National Laboratory.
6 * EPICS BASE is distributed subject to a Software License Agreement found
7 * in file LICENSE that is included with this distribution.
8 \*************************************************************************/
14 /*
15  * Author: Marty Kraimer
16  * Date: 6-1-90
17  */
18 
19 #ifndef INCdrvSuph
20 #define INCdrvSuph 1
21 
22 #include "errMdef.h"
23 
25 typedef struct typed_drvet {
27  long number;
29  long (*report)(int lvl);
31  long (*init)(void);
32  /* Any further functions are driver-specific */
33 } typed_drvet;
34 
35 #ifdef USE_TYPED_DRVET
36 
37 typedef typed_drvet drvet;
38 
39 #else
40 
41 /* These interfaces may eventually get deprecated */
42 
43 typedef long (*DRVSUPFUN) (); /* ptr to driver support function */
44 
45 typedef struct drvet { /* driver entry table */
46  long number; /* number of support routines */
47  DRVSUPFUN report; /* print report */
48  DRVSUPFUN init; /* init support */
49  /* Any further functions are driver-specific */
50 } drvet;
51 
52 #define DRVETNUMBER ( (sizeof(struct drvet) -sizeof(long))/sizeof(DRVSUPFUN) )
53 
54 #endif /* USE_TYPED_DRVET */
55 
56 #define S_drv_noDrvSup (M_drvSup| 1) /*SDR_DRVSUP: Driver support missing*/
57 #define S_drv_noDrvet (M_drvSup| 3) /*Missing driver support entry table*/
58 
59 #endif
DRVSUPFUN report
Definition: drvSup.h:47
Definition: drvSup.h:45
struct drvet drvet
struct typed_drvet typed_drvet
long number
Definition: drvSup.h:46
DRVSUPFUN init
Definition: drvSup.h:48
long(* report)(int lvl)
Definition: drvSup.h:29
long(* init)(void)
Definition: drvSup.h:31
long(* DRVSUPFUN)()
Definition: drvSup.h:43
long number
Definition: drvSup.h:27