mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-22 03:40:04 +02:00
moench receiver works most of the time
git-svn-id: file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware@512 951219d9-93cf-4727-9268-0efd64621fa3
This commit is contained in:
parent
27c91c36ff
commit
c9cef8c12f
@ -415,7 +415,7 @@ void* postProcessing::processData(int delflag) {
|
|||||||
while(1){
|
while(1){
|
||||||
cout.flush();
|
cout.flush();
|
||||||
cout<<flush;
|
cout<<flush;
|
||||||
if (checkJoinThread()) break;
|
//if (checkJoinThread()) break;
|
||||||
usleep(200000);
|
usleep(200000);
|
||||||
|
|
||||||
pthread_mutex_lock(&mg);
|
pthread_mutex_lock(&mg);
|
||||||
@ -432,8 +432,8 @@ void* postProcessing::processData(int delflag) {
|
|||||||
int* receiverData = readFrameFromReceiver(currentfName,currentfIndex);
|
int* receiverData = readFrameFromReceiver(currentfName,currentfIndex);
|
||||||
pthread_mutex_unlock(&mg);
|
pthread_mutex_unlock(&mg);
|
||||||
|
|
||||||
if(!receiverData){
|
if(receiverData == NULL){
|
||||||
cout<<"****Detector returned NULL***"<<endl;
|
cout<<"****Detector Data returned is NULL***"<<endl;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -884,10 +884,9 @@ int slsReceiverFuncs::moench_read_frame(){
|
|||||||
int rnel = bufferSize/(sizeof(int));
|
int rnel = bufferSize/(sizeof(int));
|
||||||
int* retval = new int[rnel];
|
int* retval = new int[rnel];
|
||||||
int* origVal = new int[rnel];
|
int* origVal = new int[rnel];
|
||||||
|
|
||||||
//all initialized to 0
|
//all initialized to 0
|
||||||
for(i=0;i<rnel;i++) retval[i]=0;
|
for(i=0;i<rnel;i++) retval[i]=0;
|
||||||
|
for(i=0;i<rnel;i++) origVal[i]=0;
|
||||||
|
|
||||||
int onebuffersize = bufferSize/MOENCH_PACKETS_PER_FRAME;
|
int onebuffersize = bufferSize/MOENCH_PACKETS_PER_FRAME;
|
||||||
int onedatasize = MOENCH_DATA_BYTES/MOENCH_PACKETS_PER_FRAME;
|
int onedatasize = MOENCH_DATA_BYTES/MOENCH_PACKETS_PER_FRAME;
|
||||||
@ -922,21 +921,20 @@ int slsReceiverFuncs::moench_read_frame(){
|
|||||||
index = startIndex;
|
index = startIndex;
|
||||||
cout << "didnt get data. Gui will try again" << endl;
|
cout << "didnt get data. Gui will try again" << endl;
|
||||||
|
|
||||||
for(i=0;i<MOENCH_PACKETS_PER_FRAME/2;i++){
|
for(i=0;i<MOENCH_PACKETS_PER_FRAME;i=i+2){
|
||||||
memcpy(retval + onedatasize*i, ((char*) origVal)+4+ onedatasize*i , onedatasize);
|
memcpy((((char*)retval)+ onedatasize*i), (((char*) origVal)+4+ onebuffersize*i) , onedatasize);
|
||||||
memcpy((((char*)retval)+onedatasize*(i+1)), ((char*) origVal)+10+ onedatasize*(i+1), onedatasize);
|
memcpy((((char*)retval)+ onedatasize*(i+1)), (((char*) origVal)+10+onedatasize+ onebuffersize*i),onedatasize);
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
//upto 40 indices, look at just index1 and index2 for now
|
//upto 40 indices, look at just index1 and index2 for now
|
||||||
index=(int)(*(int*)raw);
|
index=(int)(*(int*)raw);
|
||||||
//index2= (int)(*((int*)((char*)(raw+onebuffersize))));
|
//index2= (int)(*((int*)((char*)(raw+onebuffersize))));
|
||||||
memcpy(origVal,raw,bufferSize);
|
memcpy(origVal,raw,bufferSize);
|
||||||
delete [] raw;/****?????????FOR GOTTHARD AS WELL?????**/
|
|
||||||
raw=NULL;
|
raw=NULL;
|
||||||
|
|
||||||
for(i=0;i<MOENCH_PACKETS_PER_FRAME/2;i++){
|
for(i=0;i<MOENCH_PACKETS_PER_FRAME;i=i+2){
|
||||||
memcpy(retval + onedatasize*i, ((char*) origVal)+4+ onedatasize*i , onedatasize);
|
memcpy((((char*)retval)+ onedatasize*i), (((char*) origVal)+4+ onebuffersize*i) , onedatasize);
|
||||||
memcpy((((char*)retval)+onedatasize*(i+1)), ((char*) origVal)+10+ onedatasize*(i+1), onedatasize);
|
memcpy((((char*)retval)+ onedatasize*(i+1)), (((char*) origVal)+10+onedatasize+ onebuffersize*i),onedatasize);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -970,10 +968,11 @@ int slsReceiverFuncs::moench_read_frame(){
|
|||||||
}
|
}
|
||||||
//return ok/fail
|
//return ok/fail
|
||||||
|
|
||||||
/* ///ADDED BY ANNA?!?!?!? //?????????FOR GOTTHARD AS WELL?????
|
///ADDED BY ANNA?!?!?!? //?????????FOR GOTTHARD AS WELL?????
|
||||||
if(retval) delete [] retval;
|
delete [] origVal;
|
||||||
if(origVal) delete [] origVal;
|
delete [] retval;
|
||||||
*/
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user