fixes in recSup and record types according to merge review

* removed struct valueDes
* made get_value take void (no arguments), added deprecation note
* removed misleading array size comment for get_units

Also added const to method parameters exactly where called in base with
const arguments.
This commit is contained in:
Ben Franksen
2017-03-03 16:43:50 +01:00
parent ff91ede462
commit 825c075df7
20 changed files with 62 additions and 69 deletions

View File

@@ -36,13 +36,6 @@ struct dbr_alDouble;
struct REC_TYPE;
/* Definition of structure for rset.get_value */
typedef struct valueDes {
long field_type;
long no_elements;
void * pvalue;
} valueDes;
/* record support entry table */
struct rset {
long number; /* number of support routines */
@@ -51,15 +44,15 @@ struct rset {
long (*init_record)(struct REC_TYPE *precord, int pass);
long (*process)(struct REC_TYPE *precord);
long (*special)(struct dbAddr *paddr, int after);
long (*get_value)(struct REC_TYPE *precord, struct valueDes *p);
long (*get_value)(void); /* DEPRECATED set to NULL */
long (*cvt_dbaddr)(struct dbAddr *paddr);
long (*get_array_info)(struct dbAddr *paddr, long *no_elements, long *offset);
long (*put_array_info)(struct dbAddr *paddr, long nNew);
long (*get_units)(struct dbAddr *paddr, char units[/* 8 */]);
long (*get_precision)(struct dbAddr *paddr, long *precision);
long (*get_enum_str)(struct dbAddr *paddr, char *pbuffer);
long (*get_enum_strs)(struct dbAddr *paddr, struct dbr_enumStrs *p);
long (*put_enum_str)(struct dbAddr *paddr, char *pbuffer);
long (*get_units)(struct dbAddr *paddr, char *units);
long (*get_precision)(const struct dbAddr *paddr, long *precision);
long (*get_enum_str)(const struct dbAddr *paddr, char *pbuffer);
long (*get_enum_strs)(const struct dbAddr *paddr, struct dbr_enumStrs *p);
long (*put_enum_str)(const struct dbAddr *paddr, const char *pbuffer);
long (*get_graphic_double)(struct dbAddr *paddr, struct dbr_grDouble *p);
long (*get_control_double)(struct dbAddr *paddr, struct dbr_ctrlDouble *p);
long (*get_alarm_double)(struct dbAddr *paddr, struct dbr_alDouble *p);

View File

@@ -54,7 +54,7 @@ static long cvt_dbaddr(DBADDR *);
static long get_array_info(DBADDR *, long *, long *);
static long put_array_info(DBADDR *, long );
static long get_units(DBADDR *, char *);
static long get_precision(DBADDR *, long *);
static long get_precision(const DBADDR *, long *);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -356,7 +356,7 @@ static long get_units(DBADDR *paddr, char *units)
return 0;
}
static long get_precision(DBADDR *paddr, long *pprecision)
static long get_precision(const DBADDR *paddr, long *pprecision)
{
aSubRecord *prec = (aSubRecord *)paddr->precord;
int fieldIndex = dbGetFieldIndex(paddr);

View File

@@ -60,7 +60,7 @@ static long cvt_dbaddr(DBADDR *);
static long get_array_info(DBADDR *, long *, long *);
static long put_array_info(DBADDR *, long);
static long get_units(DBADDR *, char *);
static long get_precision(DBADDR *, long *);
static long get_precision(const DBADDR *, long *);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -230,7 +230,7 @@ static long get_units(DBADDR *paddr, char *units)
return 0;
}
static long get_precision(DBADDR *paddr, long *precision)
static long get_precision(const DBADDR *paddr, long *precision)
{
aaiRecord *prec = (aaiRecord *)paddr->precord;

View File

@@ -60,7 +60,7 @@ static long cvt_dbaddr(DBADDR *);
static long get_array_info(DBADDR *, long *, long *);
static long put_array_info(DBADDR *, long);
static long get_units(DBADDR *, char *);
static long get_precision(DBADDR *, long *);
static long get_precision(const DBADDR *, long *);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -230,7 +230,7 @@ static long get_units(DBADDR *paddr, char *units)
return 0;
}
static long get_precision(DBADDR *paddr, long *precision)
static long get_precision(const DBADDR *paddr, long *precision)
{
aaoRecord *prec = (aaoRecord *)paddr->precord;

View File

@@ -57,7 +57,7 @@ static long special(DBADDR *, int);
#define get_array_info NULL
#define put_array_info NULL
static long get_units(DBADDR *, char *);
static long get_precision(DBADDR *, long *);
static long get_precision(const DBADDR *, long *);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -237,7 +237,7 @@ static long get_units(DBADDR *paddr, char *units)
return(0);
}
static long get_precision(DBADDR *paddr, long *precision)
static long get_precision(const DBADDR *paddr, long *precision)
{
aiRecord *prec=(aiRecord *)paddr->precord;

View File

@@ -56,7 +56,7 @@ static long special(DBADDR *, int);
#define get_array_info NULL
#define put_array_info NULL
static long get_units(DBADDR *, char *);
static long get_precision(DBADDR *, long *);
static long get_precision(const DBADDR *, long *);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -296,7 +296,7 @@ static long get_units(DBADDR * paddr,char *units)
return(0);
}
static long get_precision(DBADDR *paddr,long *precision)
static long get_precision(const DBADDR *paddr,long *precision)
{
aoRecord *prec=(aoRecord *)paddr->precord;

View File

@@ -52,9 +52,9 @@ static long process(biRecord *);
#define put_array_info NULL
#define get_units NULL
#define get_precision NULL
static long get_enum_str(DBADDR *, char *);
static long get_enum_strs(DBADDR *, struct dbr_enumStrs *);
static long put_enum_str(DBADDR *, char *);
static long get_enum_str(const DBADDR *, char *);
static long get_enum_strs(const DBADDR *, struct dbr_enumStrs *);
static long put_enum_str(const DBADDR *, const char *);
#define get_graphic_double NULL
#define get_control_double NULL
#define get_alarm_double NULL
@@ -153,7 +153,7 @@ static long process(biRecord *prec)
return(status);
}
static long get_enum_str(DBADDR *paddr, char *pstring)
static long get_enum_str(const DBADDR *paddr, char *pstring)
{
biRecord *prec=(biRecord *)paddr->precord;
int index;
@@ -175,7 +175,7 @@ static long get_enum_str(DBADDR *paddr, char *pstring)
return(0);
}
static long get_enum_strs(DBADDR *paddr,struct dbr_enumStrs *pes)
static long get_enum_strs(const DBADDR *paddr,struct dbr_enumStrs *pes)
{
biRecord *prec=(biRecord *)paddr->precord;
@@ -188,7 +188,7 @@ static long get_enum_strs(DBADDR *paddr,struct dbr_enumStrs *pes)
return(0);
}
static long put_enum_str(DBADDR *paddr, char *pstring)
static long put_enum_str(const DBADDR *paddr, const char *pstring)
{
biRecord *prec=(biRecord *)paddr->precord;

View File

@@ -53,10 +53,10 @@ static long process(boRecord *);
#define get_array_info NULL
#define put_array_info NULL
static long get_units(DBADDR *, char *);
static long get_precision(DBADDR *, long *);
static long get_enum_str(DBADDR *, char *);
static long get_enum_strs(DBADDR *, struct dbr_enumStrs *);
static long put_enum_str(DBADDR *, char *);
static long get_precision(const DBADDR *, long *);
static long get_enum_str(const DBADDR *, char *);
static long get_enum_strs(const DBADDR *, struct dbr_enumStrs *);
static long put_enum_str(const DBADDR *, const char *);
#define get_graphic_double NULL
static long get_control_double(DBADDR *, struct dbr_ctrlDouble *);
#define get_alarm_double NULL
@@ -283,7 +283,7 @@ static long get_units(DBADDR *paddr, char *units)
return(0);
}
static long get_precision(DBADDR *paddr, long *precision)
static long get_precision(const DBADDR *paddr, long *precision)
{
if(dbGetFieldIndex(paddr) == indexof(HIGH))
*precision = boHIGHprecision;
@@ -302,7 +302,7 @@ static long get_control_double(DBADDR *paddr,struct dbr_ctrlDouble *pcd)
return(0);
}
static long get_enum_str(DBADDR *paddr, char *pstring)
static long get_enum_str(const DBADDR *paddr, char *pstring)
{
boRecord *prec=(boRecord *)paddr->precord;
int index;
@@ -324,7 +324,7 @@ static long get_enum_str(DBADDR *paddr, char *pstring)
return(0);
}
static long get_enum_strs(DBADDR *paddr,struct dbr_enumStrs *pes)
static long get_enum_strs(const DBADDR *paddr,struct dbr_enumStrs *pes)
{
boRecord *prec=(boRecord *)paddr->precord;
@@ -337,7 +337,7 @@ static long get_enum_strs(DBADDR *paddr,struct dbr_enumStrs *pes)
if(*prec->onam!=0) pes->no_str=2;
return(0);
}
static long put_enum_str(DBADDR *paddr, char *pstring)
static long put_enum_str(const DBADDR *paddr, const char *pstring)
{
boRecord *prec=(boRecord *)paddr->precord;

View File

@@ -53,7 +53,7 @@ static long special(DBADDR *paddr, int after);
#define get_array_info NULL
#define put_array_info NULL
static long get_units(DBADDR *paddr, char *units);
static long get_precision(DBADDR *paddr, long *precision);
static long get_precision(const DBADDR *paddr, long *precision);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -182,7 +182,7 @@ static long get_units(DBADDR *paddr, char *units)
return 0;
}
static long get_precision(DBADDR *paddr, long *pprecision)
static long get_precision(const DBADDR *paddr, long *pprecision)
{
calcRecord *prec = (calcRecord *)paddr->precord;
int fieldIndex = dbGetFieldIndex(paddr);

View File

@@ -56,7 +56,7 @@ static long special(DBADDR *, int);
#define get_array_info NULL
#define put_array_info NULL
static long get_units(DBADDR *, char *);
static long get_precision(DBADDR *, long *);
static long get_precision(const DBADDR *, long *);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -410,7 +410,7 @@ static long get_units(DBADDR *paddr, char *units)
return 0;
}
static long get_precision(DBADDR *paddr, long *pprecision)
static long get_precision(const DBADDR *paddr, long *pprecision)
{
calcoutRecord *prec = (calcoutRecord *)paddr->precord;
int fieldIndex = dbGetFieldIndex(paddr);

View File

@@ -51,7 +51,7 @@ static long cvt_dbaddr(DBADDR *);
static long get_array_info(DBADDR *, long *, long *);
static long put_array_info(DBADDR *, long);
static long get_units(DBADDR *, char *);
static long get_precision(DBADDR *, long *);
static long get_precision(const DBADDR *, long *);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -459,7 +459,7 @@ static long get_units(DBADDR *paddr, char *units)
return 0;
}
static long get_precision(DBADDR *paddr, long *precision)
static long get_precision(const DBADDR *paddr, long *precision)
{
compressRecord *prec = (compressRecord *) paddr->precord;

View File

@@ -55,7 +55,7 @@ static long process(dfanoutRecord *);
#define get_array_info NULL
#define put_array_info NULL
static long get_units(DBADDR *, char *);
static long get_precision(DBADDR *, long *);
static long get_precision(const DBADDR *, long *);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -139,7 +139,7 @@ static long get_units(DBADDR *paddr,char *units)
return(0);
}
static long get_precision(DBADDR *paddr,long *precision)
static long get_precision(const DBADDR *paddr,long *precision)
{
dfanoutRecord *prec=(dfanoutRecord *)paddr->precord;

View File

@@ -56,7 +56,7 @@ static long cvt_dbaddr(DBADDR *);
static long get_array_info(DBADDR *, long *, long *);
#define put_array_info NULL
static long get_units(DBADDR *, char *);
static long get_precision(DBADDR *paddr,long *precision);
static long get_precision(const DBADDR *paddr,long *precision);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -417,7 +417,7 @@ static long get_units(DBADDR *paddr, char *units)
return 0;
}
static long get_precision(DBADDR *paddr,long *precision)
static long get_precision(const DBADDR *paddr,long *precision)
{
histogramRecord *prec = (histogramRecord *) paddr->precord;

View File

@@ -55,9 +55,9 @@ static long special(DBADDR *, int);
#define put_array_info NULL
#define get_units NULL
#define get_precision NULL
static long get_enum_str(DBADDR *, char *);
static long get_enum_strs(DBADDR *, struct dbr_enumStrs *);
static long put_enum_str(DBADDR *, char *);
static long get_enum_str(const DBADDR *, char *);
static long get_enum_strs(const DBADDR *, struct dbr_enumStrs *);
static long put_enum_str(const DBADDR *, const char *);
#define get_graphic_double NULL
#define get_control_double NULL
#define get_alarm_double NULL
@@ -238,7 +238,7 @@ static long special(DBADDR *paddr, int after)
}
}
static long get_enum_str(DBADDR *paddr, char *pstring)
static long get_enum_str(const DBADDR *paddr, char *pstring)
{
mbbiRecord *prec = (mbbiRecord *) paddr->precord;
int index;
@@ -260,7 +260,7 @@ static long get_enum_str(DBADDR *paddr, char *pstring)
return 0;
}
static long get_enum_strs(DBADDR *paddr, struct dbr_enumStrs *pes)
static long get_enum_strs(const DBADDR *paddr, struct dbr_enumStrs *pes)
{
mbbiRecord *prec = (mbbiRecord *) paddr->precord;
char *pstate = prec->zrst;
@@ -276,7 +276,7 @@ static long get_enum_strs(DBADDR *paddr, struct dbr_enumStrs *pes)
return 0;
}
static long put_enum_str(DBADDR *paddr, char *pstring)
static long put_enum_str(const DBADDR *paddr, const char *pstring)
{
mbbiRecord *prec = (mbbiRecord *) paddr->precord;
char *pstate;

View File

@@ -54,9 +54,9 @@ static long cvt_dbaddr(DBADDR *);
#define put_array_info NULL
#define get_units NULL
#define get_precision NULL
static long get_enum_str(DBADDR *, char *);
static long get_enum_strs(DBADDR *, struct dbr_enumStrs *);
static long put_enum_str(DBADDR *, char *);
static long get_enum_str(const DBADDR *, char *);
static long get_enum_strs(const DBADDR *, struct dbr_enumStrs *);
static long put_enum_str(const DBADDR *, const char *);
#define get_graphic_double NULL
#define get_control_double NULL
#define get_alarm_double NULL
@@ -306,7 +306,7 @@ static long cvt_dbaddr(DBADDR *paddr)
return 0;
}
static long get_enum_str(DBADDR *paddr, char *pstring)
static long get_enum_str(const DBADDR *paddr, char *pstring)
{
mbboRecord *prec = (mbboRecord *) paddr->precord;
epicsEnum16 *pfield = paddr->pfield;
@@ -326,7 +326,7 @@ static long get_enum_str(DBADDR *paddr, char *pstring)
return 0;
}
static long get_enum_strs(DBADDR *paddr, struct dbr_enumStrs *pes)
static long get_enum_strs(const DBADDR *paddr, struct dbr_enumStrs *pes)
{
mbboRecord *prec = (mbboRecord *) paddr->precord;
const char *pstate;
@@ -345,7 +345,7 @@ static long get_enum_strs(DBADDR *paddr, struct dbr_enumStrs *pes)
return 0;
}
static long put_enum_str(DBADDR *paddr,char *pstring)
static long put_enum_str(const DBADDR *paddr, const char *pstring)
{
mbboRecord *prec = (mbboRecord *) paddr->precord;
const char *pstate;

View File

@@ -48,7 +48,7 @@ static long process(selRecord *);
#define get_array_info NULL
#define put_array_info NULL
static long get_units(DBADDR *, char *);
static long get_precision(DBADDR *, long *);
static long get_precision(const DBADDR *, long *);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -145,7 +145,7 @@ static long get_units(DBADDR *paddr, char *units)
return(0);
}
static long get_precision(DBADDR *paddr, long *precision)
static long get_precision(const DBADDR *paddr, long *precision)
{
selRecord *prec=(selRecord *)paddr->precord;
double *pvalue,*plvalue;

View File

@@ -46,7 +46,7 @@ static long process(seqRecord *prec);
#define get_array_info NULL
#define put_array_info NULL
static long get_units(DBADDR *, char *);
static long get_precision(dbAddr *paddr, long *);
static long get_precision(const DBADDR *paddr, long *);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -299,7 +299,7 @@ static long get_units(DBADDR *paddr, char *units)
return 0;
}
static long get_precision(dbAddr *paddr, long *pprecision)
static long get_precision(const DBADDR *paddr, long *pprecision)
{
seqRecord *prec = (seqRecord *) paddr->precord;
int fieldOffset = dbGetFieldIndex(paddr) - indexof(DLY1);

View File

@@ -54,7 +54,7 @@ static long cvt_dbaddr(DBADDR *paddr);
static long get_array_info(DBADDR *paddr, long *no_elements, long *offset);
static long put_array_info(DBADDR *paddr, long nNew);
static long get_units(DBADDR *paddr, char *units);
static long get_precision(DBADDR *paddr, long *precision);
static long get_precision(const DBADDR *paddr, long *precision);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -218,7 +218,7 @@ static long get_units(DBADDR *paddr, char *units)
return 0;
}
static long get_precision(DBADDR *paddr, long *precision)
static long get_precision(const DBADDR *paddr, long *precision)
{
subArrayRecord *prec = (subArrayRecord *) paddr->precord;

View File

@@ -52,7 +52,7 @@ static long special(DBADDR *, int);
#define get_array_info NULL
#define put_array_info NULL
static long get_units(DBADDR *, char *);
static long get_precision(DBADDR *, long *);
static long get_precision(const DBADDR *, long *);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -216,7 +216,7 @@ static long get_units(DBADDR *paddr, char *units)
return 0;
}
static long get_precision(DBADDR *paddr, long *pprecision)
static long get_precision(const DBADDR *paddr, long *pprecision)
{
subRecord *prec = (subRecord *)paddr->precord;
int fieldIndex = dbGetFieldIndex(paddr);

View File

@@ -52,7 +52,7 @@ static long cvt_dbaddr(DBADDR *);
static long get_array_info(DBADDR *, long *, long *);
static long put_array_info(DBADDR *, long);
static long get_units(DBADDR *, char *);
static long get_precision(DBADDR *, long *);
static long get_precision(const DBADDR *, long *);
#define get_enum_str NULL
#define get_enum_strs NULL
#define put_enum_str NULL
@@ -212,7 +212,7 @@ static long get_units(DBADDR *paddr, char *units)
return 0;
}
static long get_precision(DBADDR *paddr, long *precision)
static long get_precision(const DBADDR *paddr, long *precision)
{
waveformRecord *prec = (waveformRecord *) paddr->precord;