frame index updated for receiver

git-svn-id: file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware@322 951219d9-93cf-4727-9268-0efd64621fa3
This commit is contained in:
l_maliakal_d
2012-10-29 13:48:56 +00:00
parent 69d08ac546
commit 7cd1f9138e

View File

@ -320,52 +320,65 @@ int postProcessing::fillBadChannelMask() {
void* postProcessing::processData(int delflag) { void* postProcessing::processData(int delflag) {
if(setReceiverOnline()==OFFLINE_FLAG){
#ifdef VERBOSE #ifdef VERBOSE
std::cout<< " processing data - threaded mode " << *threadedProcessing << endl; std::cout<< " processing data - threaded mode " << *threadedProcessing << endl;
#endif #endif
queuesize=dataQueueSize();
int *myData; queuesize=dataQueueSize();
int dum=1;
fdata=NULL; int *myData;
int dum=1;
while(dum | *threadedProcessing) { // ???????????????????????? fdata=NULL;
/* IF THERE ARE DATA PROCESS THEM*/
while((queuesize=dataQueueSize())>0) { while(dum | *threadedProcessing) { // ????????????????????????
/** Pop data queue */ /* IF THERE ARE DATA PROCESS THEM*/
while((queuesize=dataQueueSize())>0) {
/** Pop data queue */
#ifdef VERBOSE #ifdef VERBOSE
cout << "data found"<< endl; cout << "data found"<< endl;
#endif #endif
myData=dataQueueFront(); // get the data from the queue myData=dataQueueFront(); // get the data from the queue
#ifdef VERBOSE #ifdef VERBOSE
cout << "got them"<< endl; cout << "got them"<< endl;
#endif #endif
if (myData) { if (myData) {
processFrame(myData,delflag); processFrame(myData,delflag);
} }
} }
/* IF THERE ARE NO DATA look if acquisition is finished */
if (checkJoinThread()) {
if (dataQueueSize()==0) {
break;
}
}
dum=0;
}
if (fdata) { /* IF THERE ARE NO DATA look if acquisition is finished */
delete [] fdata; if (checkJoinThread()) {
} if (dataQueueSize()==0) {
return 0; break;
}
}
dum=0;
}
if (fdata) {
delete [] fdata;
}
}
//receiver
else{
int prevCaught=getCurrentFrameIndex();
int caught=0;
while(getRunStatus()!=IDLE){
//while((getCurrentProgress()<100)&&(getReceiverStatus()==RUNNING)){
caught=getCurrentFrameIndex();
incrementProgress(caught-prevCaught);cout<<endl;
prevCaught=caught;
usleep(1000000);
}
}
return 0;
} }