diff --git a/slsDetectorGui/include/qDrawPlot.h b/slsDetectorGui/include/qDrawPlot.h index 8a32d7364..583bce152 100644 --- a/slsDetectorGui/include/qDrawPlot.h +++ b/slsDetectorGui/include/qDrawPlot.h @@ -301,9 +301,11 @@ void GetStatistics(double &min, double &max, double &sum, double* array, int siz * @param source source char array * @param size number of pixels * @param databytes number of data bytes + * @param dr dynamic range * @param gaindest NULL if not required, points to a double array to be filled up if gain data enabled + * */ -void toDoublePixelData(double* dest, char* source,int size, int databytes, double* gaindest = NULL); +void toDoublePixelData(double* dest, char* source,int size, int databytes, int dr, double* gaindest = NULL); private slots: /** To update plot diff --git a/slsDetectorGui/src/qDrawPlot.cpp b/slsDetectorGui/src/qDrawPlot.cpp index f8c5a1237..9369310a4 100644 --- a/slsDetectorGui/src/qDrawPlot.cpp +++ b/slsDetectorGui/src/qDrawPlot.cpp @@ -848,7 +848,7 @@ int qDrawPlot::GetData(detectorData *data,int fIndex, int subIndex){ // convert char* to double if(data->values==NULL) { data->values = new double[nPixelsX*nPixelsY]; - toDoublePixelData(data->values, data->cvalues, nPixelsX*nPixelsY, data->databytes); + toDoublePixelData(data->values, data->cvalues, nPixelsX*nPixelsY, data->databytes, data->dynamicRange); } LockLastImageArray(); @@ -943,10 +943,10 @@ int qDrawPlot::GetData(detectorData *data,int fIndex, int subIndex){ data->values = new double[nPixelsX*nPixelsY]; if (gainDataEnable) { data->dgainvalues = new double[nPixelsX*nPixelsY]; - toDoublePixelData(data->values, data->cvalues, nPixelsX*nPixelsY, data->databytes, data->dgainvalues); + toDoublePixelData(data->values, data->cvalues, nPixelsX*nPixelsY, data->databytes, data->dynamicRange, data->dgainvalues); } else - toDoublePixelData(data->values, data->cvalues, nPixelsX*nPixelsY, data->databytes); + toDoublePixelData(data->values, data->cvalues, nPixelsX*nPixelsY, data->databytes, data->dynamicRange); } //if scan @@ -2161,8 +2161,7 @@ void qDrawPlot::EnableGainPlot(bool e) { //------------------------------------------------------------------------------------------------------------------------------------------------- -void qDrawPlot::toDoublePixelData(double* dest, char* source,int size, int databytes, double* gaindest) { - int dr = ((double)databytes/(double)size)*8; +void qDrawPlot::toDoublePixelData(double* dest, char* source,int size, int databytes, int dr, double* gaindest) { int ichan=0; int ibyte=0; int halfbyte=0;