mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-24 15:20:02 +02:00
data call back form receiver includes both x and y dimensions
This commit is contained in:
parent
7848b79cf2
commit
5c239ad45f
@ -235,6 +235,10 @@ class slsDetectorBase : public virtual slsDetectorDefs, public virtual errorDef
|
|||||||
*/
|
*/
|
||||||
virtual int getTotalNumberOfChannels()=0;
|
virtual int getTotalNumberOfChannels()=0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
\returns total number of channels for each dimension
|
||||||
|
*/
|
||||||
|
virtual int getTotalNumberOfChannels(dimension d)=0;
|
||||||
|
|
||||||
/** generates file name without extension */
|
/** generates file name without extension */
|
||||||
virtual string createFileName()=0;
|
virtual string createFileName()=0;
|
||||||
|
@ -421,6 +421,7 @@ class slsDetectorUtils : public slsDetectorActions, public postProcessing {
|
|||||||
virtual int* startAndReadAll()=0;
|
virtual int* startAndReadAll()=0;
|
||||||
|
|
||||||
virtual int getTotalNumberOfChannels()=0;
|
virtual int getTotalNumberOfChannels()=0;
|
||||||
|
virtual int getTotalNumberOfChannels(dimension d)=0;
|
||||||
virtual int getMaxNumberOfChannels()=0;
|
virtual int getMaxNumberOfChannels()=0;
|
||||||
virtual int getMaxNumberOfChannels(dimension d)=0;
|
virtual int getMaxNumberOfChannels(dimension d)=0;
|
||||||
|
|
||||||
|
@ -137,7 +137,7 @@ void postProcessing::processFrame(int *myData, int delflag, int jctb) {
|
|||||||
|
|
||||||
// cout << "callback arg "<< getCurrentProgress()<< " " << (fname+string(".raw")).c_str() << " " << getTotalNumberOfChannels() << endl;
|
// cout << "callback arg "<< getCurrentProgress()<< " " << (fname+string(".raw")).c_str() << " " << getTotalNumberOfChannels() << endl;
|
||||||
// cout << "DATAREADY 1" <<endl;
|
// cout << "DATAREADY 1" <<endl;
|
||||||
thisData=new detectorData(fdata,NULL,NULL,getCurrentProgress(),(fname+string(".raw")).c_str(),getTotalNumberOfChannels());
|
thisData=new detectorData(fdata,NULL,NULL,getCurrentProgress(),(fname+string(".raw")).c_str(),getTotalNumberOfChannels()); //only 1d detectors
|
||||||
dataReady(thisData, currentFrameIndex, -1, pCallbackArg);
|
dataReady(thisData, currentFrameIndex, -1, pCallbackArg);
|
||||||
delete thisData;
|
delete thisData;
|
||||||
fdata=NULL;
|
fdata=NULL;
|
||||||
@ -280,7 +280,7 @@ data queue size unlock
|
|||||||
if (dataReady) {
|
if (dataReady) {
|
||||||
// cout << "callback arg "<< getCurrentProgress()<< " " << (fname+ext).c_str() << " " << np << endl;
|
// cout << "callback arg "<< getCurrentProgress()<< " " << (fname+ext).c_str() << " " << np << endl;
|
||||||
//cout << "ADATREADY 2 " << endl;
|
//cout << "ADATREADY 2 " << endl;
|
||||||
thisData=new detectorData(val,err,ang,getCurrentProgress(),(fname+ext).c_str(),np);
|
thisData=new detectorData(val,err,ang,getCurrentProgress(),(fname+ext).c_str(),np);//only 1d detectors
|
||||||
dataReady(thisData, currentFrameIndex, -1, pCallbackArg);
|
dataReady(thisData, currentFrameIndex, -1, pCallbackArg);
|
||||||
delete thisData;
|
delete thisData;
|
||||||
ang=NULL;
|
ang=NULL;
|
||||||
@ -493,7 +493,8 @@ void* postProcessing::processData(int delflag) {
|
|||||||
int currentSubFrameIndex = -1;
|
int currentSubFrameIndex = -1;
|
||||||
bool newData = false;
|
bool newData = false;
|
||||||
int nthframe = setReadReceiverFrequency(0);
|
int nthframe = setReadReceiverFrequency(0);
|
||||||
|
int nx =getTotalNumberOfChannels(slsDetectorDefs::X);
|
||||||
|
int ny =getTotalNumberOfChannels(slsDetectorDefs::Y);
|
||||||
|
|
||||||
#ifdef VERBOSE
|
#ifdef VERBOSE
|
||||||
std::cout << "receiver read freq:" << nthframe << std::endl;
|
std::cout << "receiver read freq:" << nthframe << std::endl;
|
||||||
@ -640,7 +641,7 @@ void* postProcessing::processData(int delflag) {
|
|||||||
delete [] receiverData;
|
delete [] receiverData;
|
||||||
if ((fdata) && (dataReady)){
|
if ((fdata) && (dataReady)){
|
||||||
// cout << "DATAREADY 3" << endl;
|
// cout << "DATAREADY 3" << endl;
|
||||||
thisData = new detectorData(fdata,NULL,NULL,getCurrentProgress(),currentfName,getTotalNumberOfChannels());
|
thisData = new detectorData(fdata,NULL,NULL,getCurrentProgress(),currentfName,nx,ny);
|
||||||
dataReady(thisData, currentFrameIndex, currentSubFrameIndex, pCallbackArg);
|
dataReady(thisData, currentFrameIndex, currentSubFrameIndex, pCallbackArg);
|
||||||
delete thisData;
|
delete thisData;
|
||||||
fdata = NULL;
|
fdata = NULL;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user