pdlcore.h (PDL-2.076) | : | pdlcore.h (PDL-2.077) | ||
---|---|---|---|---|
skipping to change at line 187 | skipping to change at line 187 | |||
badvals bvals; /* store the default bad values */ | badvals bvals; /* store the default bad values */ | |||
#define X(sym, rettype, args) \ | #define X(sym, rettype, args) \ | |||
rettype (*sym) args; | rettype (*sym) args; | |||
PDL_CORE_LIST(X) | PDL_CORE_LIST(X) | |||
#undef X | #undef X | |||
}; | }; | |||
typedef struct Core Core; | typedef struct Core Core; | |||
#define PDL_DECLARE_PARAMETER(type, flag, name, pdlname) \ | #define PDL_DECLARE_PARAMETER(type, flag, name, pdlname, nullcheck) \ | |||
type *name ## _datap = ((type *)(PDL_REPRP_TRANS(pdlname, flag))); \ | type *name ## _datap = ((type *)(PDL_REPRP_TRANS(pdlname, flag))); \ | |||
type *name ## _physdatap = ((type *)(pdlname->data)); \ | type *name ## _physdatap = ((type *)(pdlname->data)); \ | |||
(void)name ## _datap; \ | if ((nullcheck) && pdlname->nvals > 0 && !name ## _datap) \ | |||
return PDL_CORE_(make_error_simple)(PDL_EUSERERROR, "parameter " #name " got | ||||
NULL data"); \ | ||||
(void)name ## _physdatap; | (void)name ## _physdatap; | |||
#define PDL_DECLARE_PARAMETER_BADVAL(type, flag, name, pdlname) \ | #define PDL_DECLARE_PARAMETER_BADVAL(type, flag, name, pdlname, nullcheck) \ | |||
PDL_DECLARE_PARAMETER(type, flag, name, pdlname) \ | PDL_DECLARE_PARAMETER(type, flag, name, pdlname, nullcheck) \ | |||
type name ## _badval = 0; \ | type name ## _badval = 0; \ | |||
PDL_Anyval name ## _anyval_badval = PDL_CORE_(get_pdl_badvalue)(pdlname); \ | PDL_Anyval name ## _anyval_badval = PDL_CORE_(get_pdl_badvalue)(pdlname); \ | |||
(void)name ## _badval; \ | (void)name ## _badval; \ | |||
(void)name ## _anyval_badval; \ | (void)name ## _anyval_badval; \ | |||
ANYVAL_TO_CTYPE(name ## _badval, type, name ## _anyval_badval); | ANYVAL_TO_CTYPE(name ## _badval, type, name ## _anyval_badval); | |||
/* __PDLCORE_H */ | /* __PDLCORE_H */ | |||
#endif | #endif | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 6 lines changed or added |