My memories are that this has also been discussed at tech-talk.
I have defined a longout record and wanted to achieve that you can set exactly only one value.
In my example I tried this with DRVL = DRVH = 32768.
But the conversion function in the logout record looks like this:
static void convert(longoutRecord *prec, epicsInt32 value)
{
/* check drive limits */
if(prec->drvh > prec->drvl) {
if (value > prec->drvh) value = prec->drvh;
else if (value < prec->drvl) value = prec->drvl;
}
prec->val = value;
}
Something speaks against the check like this ?
if(prec->drvh => prec->drvl)
The default case of DRVH = DRVL = 0 would limit the device to 0.
Cheers,
~Ralph