EPICS Base  7.0.5.1
Classes | Macros | Typedefs | Functions
dbLink.h File Reference

Link Support API. More...

#include "link.h"
#include "shareLib.h"
#include "epicsTypes.h"
#include "epicsTime.h"
#include "dbAddr.h"
#include "dbChannel.h"
Include dependency graph for dbLink.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  lset
 Link Support Entry Table. More...
 

Macros

#define dbGetSevr(link, sevr)   dbGetAlarm(link, NULL, sevr)
 

Typedefs

typedef long(* dbLinkUserCallback) (struct link *plink, void *priv)
 callback routine for locked link operations More...
 

Functions

epicsShareFunc const char * dbLinkFieldName (const struct link *plink)
 
epicsShareFunc void dbInitLink (struct link *plink, short dbfType)
 
epicsShareFunc void dbAddLink (struct dbLocker *locker, struct link *plink, short dbfType, dbChannel *ptarget)
 
epicsShareFunc void dbLinkOpen (struct link *plink)
 
epicsShareFunc void dbRemoveLink (struct dbLocker *locker, struct link *plink)
 
epicsShareFunc int dbLinkIsDefined (const struct link *plink)
 
epicsShareFunc int dbLinkIsConstant (const struct link *plink)
 
epicsShareFunc int dbLinkIsVolatile (const struct link *plink)
 
epicsShareFunc long dbLoadLink (struct link *plink, short dbrType, void *pbuffer)
 
epicsShareFunc long dbLoadLinkArray (struct link *, short dbrType, void *pbuffer, long *pnRequest)
 
epicsShareFunc long dbGetNelements (const struct link *plink, long *pnElements)
 
epicsShareFunc int dbIsLinkConnected (const struct link *plink)
 
epicsShareFunc int dbGetLinkDBFtype (const struct link *plink)
 
epicsShareFunc long dbTryGetLink (struct link *, short dbrType, void *pbuffer, long *nRequest)
 
epicsShareFunc long dbGetLink (struct link *, short dbrType, void *pbuffer, long *options, long *nRequest)
 
epicsShareFunc long dbGetControlLimits (const struct link *plink, double *low, double *high)
 
epicsShareFunc long dbGetGraphicLimits (const struct link *plink, double *low, double *high)
 
epicsShareFunc long dbGetAlarmLimits (const struct link *plink, double *lolo, double *low, double *high, double *hihi)
 
epicsShareFunc long dbGetPrecision (const struct link *plink, short *precision)
 
epicsShareFunc long dbGetUnits (const struct link *plink, char *units, int unitsSize)
 
epicsShareFunc long dbGetAlarm (const struct link *plink, epicsEnum16 *status, epicsEnum16 *severity)
 
epicsShareFunc long dbGetTimeStamp (const struct link *plink, epicsTimeStamp *pstamp)
 
epicsShareFunc long dbPutLink (struct link *plink, short dbrType, const void *pbuffer, long nRequest)
 
epicsShareFunc void dbLinkAsyncComplete (struct link *plink)
 
epicsShareFunc long dbPutLinkAsync (struct link *plink, short dbrType, const void *pbuffer, long nRequest)
 
epicsShareFunc void dbScanFwdLink (struct link *plink)
 
epicsShareFunc long dbLinkDoLocked (struct link *plink, dbLinkUserCallback rtn, void *priv)
 
epicsShareFunc long dbLoadLinkLS (struct link *plink, char *pbuffer, epicsUInt32 size, epicsUInt32 *plen)
 
epicsShareFunc long dbGetLinkLS (struct link *plink, char *pbuffer, epicsUInt32 buffer_size, epicsUInt32 *plen)
 
epicsShareFunc long dbPutLinkLS (struct link *plink, char *pbuffer, epicsUInt32 len)
 

Detailed Description

Link support run-time API, all link types provide an lset which is used by the IOC database to control and operate the link. This file also declares the dbLink routines that IOC, record and device code can call to perform link operations.

Definition in file dbLink.h.

Typedef Documentation

◆ dbLinkUserCallback

typedef long(* dbLinkUserCallback) (struct link *plink, void *priv)

Called by the lset::doLocked method to permit multiple link operations while the link instance is locked.

Parameters
plinkthe link
privcontext for the callback routine

Definition at line 49 of file dbLink.h.