22 #include "epicsMath.h" 30 static long read_ai(aiRecord *
prec);
40 aiRecord *
prec = (aiRecord *)pcommon;
42 if (recGblInitConstantLink(&prec->inp,
DBF_DOUBLE, &prec->val))
53 static long readLocked(
struct link *pinp,
void *vvt)
55 struct aivt *pvt = (
struct aivt *) vvt;
58 if (!status && pvt->
ptime)
59 dbGetTimeStamp(pinp, pvt->
ptime);
64 static long read_ai(aiRecord *
prec)
69 if (dbLinkIsConstant(&prec->inp))
72 vt.
ptime = (dbLinkIsConstant(&prec->tsel) &&
75 status = dbLinkDoLocked(&prec->inp, readLocked, &vt);
76 if (status == S_db_noLSET)
77 status = readLocked(&prec->inp, &vt);
81 if (prec->smoo != 0.0 && prec->dpvt &&
finite(prec->val))
82 prec->val = vt.
val * (1.0 - prec->smoo) + (prec->val * prec->smoo);
Miscellaneous macro definitions.
#define epicsTimeEventDeviceTime
EPICS time stamp, for use from C code.
epicsExportAddress(dset, devAiSoft)