67 lines
2.8 KiB
C
67 lines
2.8 KiB
C
/*************************************************************************\
|
|
* 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.
|
|
\*************************************************************************/
|
|
/* dbCa.h */
|
|
|
|
#ifndef INCdbCah
|
|
#define INCdbCah
|
|
|
|
#include "shareLib.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef void (*dbCaCallback)(void *userPvt);
|
|
epicsShareFunc void epicsShareAPI dbCaCallbackProcess(struct link *plink);
|
|
|
|
epicsShareFunc void epicsShareAPI dbCaLinkInit(void);
|
|
epicsShareFunc void epicsShareAPI dbCaAddLinkCallback(struct link *plink,
|
|
dbCaCallback connect,dbCaCallback monitor,void *userPvt);
|
|
#define dbCaAddLink(plink) dbCaAddLinkCallback((plink),0,0,0)
|
|
epicsShareFunc void epicsShareAPI dbCaRemoveLink(struct link *plink);
|
|
epicsShareFunc long epicsShareAPI dbCaGetLink(
|
|
struct link *plink,short dbrType,void *pbuffer,
|
|
unsigned short *psevr,long *nRequest);
|
|
epicsShareFunc long epicsShareAPI dbCaPutLinkCallback(
|
|
struct link *plink,short dbrType,const void *pbuffer,long nRequest,
|
|
dbCaCallback callback,void *userPvt);
|
|
#define dbCaPutLink(plink,dbrType,pbuffer,nRequest) \
|
|
dbCaPutLinkCallback((plink),(dbrType),(pbuffer),(nRequest),0,0)
|
|
epicsShareFunc int epicsShareAPI dbCaIsLinkConnected(const struct link *plink);
|
|
/* The following are available after the link is connected*/
|
|
epicsShareFunc long epicsShareAPI dbCaGetNelements(
|
|
const struct link *plink,long *nelements);
|
|
epicsShareFunc long epicsShareAPI dbCaGetSevr(
|
|
const struct link *plink,short *severity);
|
|
epicsShareFunc long epicsShareAPI dbCaGetTimeStamp(
|
|
const struct link *plink,epicsTimeStamp *pstamp);
|
|
epicsShareFunc int epicsShareAPI dbCaGetLinkDBFtype(const struct link *plink);
|
|
/*The following are available after attribute request is complete*/
|
|
epicsShareFunc long epicsShareAPI dbCaGetAttributes(
|
|
const struct link *plink,dbCaCallback callback,void *userPvt);
|
|
epicsShareFunc long epicsShareAPI dbCaGetControlLimits(
|
|
const struct link *plink,double *low, double *high);
|
|
epicsShareFunc long epicsShareAPI dbCaGetGraphicLimits(
|
|
const struct link *plink,double *low, double *high);
|
|
epicsShareFunc long epicsShareAPI dbCaGetAlarmLimits(
|
|
const struct link *plink,double *lolo, double *low, double *high, double *hihi);
|
|
epicsShareFunc long epicsShareAPI dbCaGetPrecision(
|
|
const struct link *plink,short *precision);
|
|
epicsShareFunc long epicsShareAPI dbCaGetUnits(
|
|
const struct link *plink,char *units,int unitsSize);
|
|
|
|
extern struct ca_client_context * dbCaClientContext;
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /*INCdbCah*/
|