Merged Michael Davidsaver's 'rec-init' branch.
This commit is contained in:
@@ -210,6 +210,9 @@ static long init_record(aSubRecord *prec, int pass)
|
||||
return S_db_BadSub;
|
||||
}
|
||||
}
|
||||
STATIC_ASSERT(sizeof(prec->onam)==sizeof(prec->snam));
|
||||
strcpy(prec->onam, prec->snam);
|
||||
prec->oval = prec->val;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -145,6 +145,10 @@ static long init_record(void *precord,int pass)
|
||||
}
|
||||
return (status);
|
||||
}
|
||||
prec->mlst = prec->val;
|
||||
prec->alst = prec->val;
|
||||
prec->lalm = prec->val;
|
||||
prec->oraw = prec->rval;
|
||||
return(0);
|
||||
}
|
||||
|
||||
|
||||
@@ -166,6 +166,11 @@ static long init_record(aoRecord *prec, int pass)
|
||||
}
|
||||
}
|
||||
prec->oval = prec->pval = prec->val;
|
||||
prec->mlst = prec->val;
|
||||
prec->alst = prec->val;
|
||||
prec->lalm = prec->val;
|
||||
prec->oraw = prec->rval;
|
||||
prec->orbv = prec->rbv;
|
||||
return(0);
|
||||
}
|
||||
|
||||
|
||||
@@ -110,6 +110,9 @@ static long init_record(biRecord *prec, int pass)
|
||||
if( pdset->init_record ) {
|
||||
if((status=(*pdset->init_record)(prec))) return(status);
|
||||
}
|
||||
prec->mlst = prec->val;
|
||||
prec->lalm = prec->val;
|
||||
prec->oraw = prec->rval;
|
||||
return(0);
|
||||
}
|
||||
|
||||
|
||||
@@ -177,6 +177,11 @@ static long init_record(boRecord *prec,int pass)
|
||||
if(prec->val==0) prec->rval = 0;
|
||||
else prec->rval = prec->mask;
|
||||
} else prec->rval = (epicsUInt32)prec->val;
|
||||
|
||||
prec->mlst = prec->val;
|
||||
prec->lalm = prec->val;
|
||||
prec->oraw = prec->rval;
|
||||
prec->orbv = prec->rbv;
|
||||
return(status);
|
||||
}
|
||||
|
||||
|
||||
@@ -198,6 +198,11 @@ static long init_record(calcoutRecord *prec, int pass)
|
||||
prpvt->cbScheduled = 0;
|
||||
|
||||
if (pcalcoutDSET->init_record) pcalcoutDSET->init_record(prec);
|
||||
prec->pval = prec->val;
|
||||
prec->mlst = prec->val;
|
||||
prec->alst = prec->val;
|
||||
prec->lalm = prec->val;
|
||||
prec->povl = prec->oval;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -121,6 +121,9 @@ static long init_record(longinRecord *prec, int pass)
|
||||
if( pdset->init_record ) {
|
||||
if((status=(*pdset->init_record)(prec))) return(status);
|
||||
}
|
||||
prec->mlst = prec->val;
|
||||
prec->alst = prec->val;
|
||||
prec->lalm = prec->val;
|
||||
return(0);
|
||||
}
|
||||
|
||||
|
||||
@@ -117,6 +117,9 @@ static long init_record(longoutRecord *prec, int pass)
|
||||
if( pdset->init_record ) {
|
||||
if((status=(*pdset->init_record)(prec))) return(status);
|
||||
}
|
||||
prec->mlst = prec->val;
|
||||
prec->alst = prec->val;
|
||||
prec->lalm = prec->val;
|
||||
return(0);
|
||||
}
|
||||
|
||||
|
||||
@@ -158,6 +158,9 @@ static long init_record(mbbiDirectRecord *prec, int pass)
|
||||
if((status=(*pdset->init_record)(prec))) return(status);
|
||||
refresh_bits(prec, 0);
|
||||
}
|
||||
prec->mlst = prec->val;
|
||||
prec->lalm = prec->val;
|
||||
prec->oraw = prec->rval;
|
||||
return(0);
|
||||
}
|
||||
|
||||
|
||||
@@ -135,6 +135,9 @@ static long init_record(mbbiRecord *prec, int pass)
|
||||
if((status=(*pdset->init_record)(prec))) return(status);
|
||||
}
|
||||
init_common(prec);
|
||||
prec->mlst = prec->val;
|
||||
prec->lalm = prec->val;
|
||||
prec->oraw = prec->rval;
|
||||
return(0);
|
||||
}
|
||||
|
||||
|
||||
@@ -141,6 +141,10 @@ static long init_record(mbboDirectRecord *prec, int pass)
|
||||
prec->udf = FALSE;
|
||||
} else if (status == 2) status = 0;
|
||||
}
|
||||
prec->mlst = prec->val;
|
||||
prec->lalm = prec->val;
|
||||
prec->oraw = prec->rval;
|
||||
prec->orbv = prec->rbv;
|
||||
return(status);
|
||||
}
|
||||
|
||||
|
||||
@@ -184,6 +184,10 @@ static long init_record(mbboRecord *prec, int pass)
|
||||
init_common(prec);
|
||||
/* convert val to rval */
|
||||
convert(prec);
|
||||
prec->mlst = prec->val;
|
||||
prec->lalm = prec->val;
|
||||
prec->oraw = prec->rval;
|
||||
prec->orbv = prec->rbv;
|
||||
return(0);
|
||||
}
|
||||
|
||||
|
||||
@@ -119,6 +119,8 @@ static long init_record(stringinRecord *prec, int pass)
|
||||
if( pdset->init_record ) {
|
||||
if((status=(*pdset->init_record)(prec))) return(status);
|
||||
}
|
||||
STATIC_ASSERT(sizeof(prec->oval)==sizeof(prec->val));
|
||||
strcpy(prec->oval,prec->val);
|
||||
return(0);
|
||||
}
|
||||
|
||||
@@ -157,9 +159,9 @@ static void monitor(stringinRecord *prec)
|
||||
unsigned short monitor_mask;
|
||||
|
||||
monitor_mask = recGblResetAlarms(prec);
|
||||
if(strncmp(prec->oval,prec->val,sizeof(prec->val))) {
|
||||
if(strcmp(prec->oval,prec->val)) {
|
||||
monitor_mask |= DBE_VALUE|DBE_LOG;
|
||||
strncpy(prec->oval,prec->val,sizeof(prec->val));
|
||||
strcpy(prec->oval,prec->val);
|
||||
}
|
||||
if (prec->mpst == stringinPOST_Always)
|
||||
monitor_mask |= DBE_VALUE;
|
||||
|
||||
@@ -121,6 +121,8 @@ static long init_record(stringoutRecord *prec, int pass)
|
||||
if( pdset->init_record ) {
|
||||
if((status=(*pdset->init_record)(prec))) return(status);
|
||||
}
|
||||
STATIC_ASSERT(sizeof(prec->oval)==sizeof(prec->val));
|
||||
strcpy(prec->oval,prec->val);
|
||||
return(0);
|
||||
}
|
||||
|
||||
@@ -185,9 +187,9 @@ static void monitor(stringoutRecord *prec)
|
||||
unsigned short monitor_mask;
|
||||
|
||||
monitor_mask = recGblResetAlarms(prec);
|
||||
if(strncmp(prec->oval,prec->val,sizeof(prec->val))) {
|
||||
if(strcmp(prec->oval,prec->val)) {
|
||||
monitor_mask |= DBE_VALUE|DBE_LOG;
|
||||
strncpy(prec->oval,prec->val,sizeof(prec->val));
|
||||
strcpy(prec->oval,prec->val);
|
||||
}
|
||||
if (prec->mpst == stringoutPOST_Always)
|
||||
monitor_mask |= DBE_VALUE;
|
||||
|
||||
@@ -127,6 +127,9 @@ static long init_record(subRecord *prec, int pass)
|
||||
recGblRecordError(S_db_BadSub, (void *)prec, "recSub(init_record)");
|
||||
return S_db_BadSub;
|
||||
}
|
||||
prec->mlst = prec->val;
|
||||
prec->alst = prec->val;
|
||||
prec->lalm = prec->val;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user