mbbo/mbbiDirect number of bits as precision
Not really useful w/ RSRV/CA, but can be used by QSRV/PVA to provide number of bits as meta-data.
This commit is contained in:
@@ -51,7 +51,7 @@ static long special(DBADDR *, int);
|
||||
#define get_array_info NULL
|
||||
#define put_array_info NULL
|
||||
#define get_units NULL
|
||||
#define get_precision NULL
|
||||
static long get_precision(const DBADDR *, long *);
|
||||
#define get_enum_str NULL
|
||||
#define get_enum_strs NULL
|
||||
#define put_enum_str NULL
|
||||
@@ -204,6 +204,16 @@ static long special(DBADDR *paddr, int after)
|
||||
}
|
||||
}
|
||||
|
||||
static long get_precision(const DBADDR *paddr,long *precision)
|
||||
{
|
||||
mbbiDirectRecord *prec=(mbbiDirectRecord *)paddr->precord;
|
||||
if(dbGetFieldIndex(paddr)==mbbiDirectRecordVAL)
|
||||
*precision = prec->nobt;
|
||||
else
|
||||
recGblGetPrec(paddr,precision);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void monitor(mbbiDirectRecord *prec)
|
||||
{
|
||||
epicsUInt16 events = recGblResetAlarms(prec);
|
||||
|
||||
@@ -51,7 +51,7 @@ static long special(DBADDR *, int);
|
||||
#define get_array_info NULL
|
||||
#define put_array_info NULL
|
||||
#define get_units NULL
|
||||
#define get_precision NULL
|
||||
static long get_precision(const DBADDR *, long *);
|
||||
#define get_enum_str NULL
|
||||
#define get_enum_strs NULL
|
||||
#define put_enum_str NULL
|
||||
@@ -313,6 +313,16 @@ static long special(DBADDR *paddr, int after)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static long get_precision(const DBADDR *paddr,long *precision)
|
||||
{
|
||||
mbboDirectRecord *prec=(mbboDirectRecord *)paddr->precord;
|
||||
if(dbGetFieldIndex(paddr)==mbboDirectRecordVAL)
|
||||
*precision = prec->nobt;
|
||||
else
|
||||
recGblGetPrec(paddr,precision);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void monitor(mbboDirectRecord *prec)
|
||||
{
|
||||
epicsUInt16 events = recGblResetAlarms(prec);
|
||||
|
||||
Reference in New Issue
Block a user