fixed virtual function problem in slsDetectorCalibration

This commit is contained in:
2022-02-01 12:01:53 +01:00
parent 63ebc03df0
commit 6793f5e530
10 changed files with 184 additions and 167 deletions

View File

@ -182,10 +182,10 @@ class threadedAnalogDetector {
interp->prepareInterpolation(ok);
}
virtual int *getFlatField() {
virtual int *getFlatFieldDistribution() {
slsInterpolation *interp = (det)->getInterpolation();
if (interp)
return interp->getFlatField();
return interp->getFlatFieldDistribution();
else
return NULL;
}
@ -208,19 +208,19 @@ class threadedAnalogDetector {
return NULL;
}
void *readFlatField(const char *imgname, int nb = -1, double emin = 1,
void *readFlatField(const char *imgname, double emin = 1,
double emax = 0) {
slsInterpolation *interp = (det)->getInterpolation();
if (interp)
return interp->readFlatField(imgname, nb, emin, emax);
return interp->readFlatField(imgname, emin, emax);
return NULL;
}
virtual int *getFlatField(int &nb, double emi, double ema) {
virtual int *getFlatField(int &nbx, int &nby, double &emi, double &ema) {
slsInterpolation *interp = (det)->getInterpolation();
int *ff = NULL;
if (interp) {
ff = interp->getFlatField(nb, emi, ema);
ff = interp->getFlatField(nbx, nby, emi, ema);
}
return ff;
}