Files
pcas/src/libCom/misc/epicsExport.h
Marty Kraimer 21375a0747 new file
2003-04-01 20:48:07 +00:00

38 lines
1.1 KiB
C

/*epicsExport.h */
/*************************************************************************\
* Copyright (c) 2002 The University of Chicago, as Operator of Argonne
* National Laboratory.
* Copyright (c) 2002 The Regents of the University of California, as
* Operator of Los Alamos National Laboratory.
* EPICS BASE Versions 3.13.7
* and higher are distributed subject to a Software License Agreement found
* in file LICENSE that is included with this distribution.
\*************************************************************************/
#ifndef INCepicsExporth
#define INCepicsExporth
#ifdef __cplusplus
extern "C" {
#endif
#define epicsExportSharedSymbols
#include <shareLib.h>
typedef void (*REGISTRAR)(void);
#define EPICS_EXPORT_POBJ(obj) p ## obj
#define epicsExportAddress(typ,obj) \
epicsShareExtern typ *EPICS_EXPORT_POBJ(obj); \
epicsShareDef typ *EPICS_EXPORT_POBJ(obj) = (typ *)&obj
#define epicsExportRegistrar(func) \
epicsShareFunc REGISTRAR EPICS_EXPORT_POBJ(func) = (REGISTRAR)&func
#ifdef __cplusplus
}
#endif
#endif /* epicsExporth */