diff --git a/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp b/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp index 873359d87..42e47a050 100644 --- a/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp +++ b/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp @@ -160,7 +160,7 @@ multiSlsDetector::multiSlsDetector(int id) : slsDetectorUtils(), shmId(-1) /** sets angular conversion file to none */ strcpy(thisMultiDetector->angConvFile,"none"); /** set binsize*/ - thisMultiDetector->binSize=0; + thisMultiDetector->binSize=0.001; thisMultiDetector->stoppedFlag=0; thisMultiDetector->threadedProcessing=1; diff --git a/slsDetectorSoftware/slsDetector/slsDetector.cpp b/slsDetectorSoftware/slsDetector/slsDetector.cpp index 4470aa2f1..a24c5ccef 100644 --- a/slsDetectorSoftware/slsDetector/slsDetector.cpp +++ b/slsDetectorSoftware/slsDetector/slsDetector.cpp @@ -569,7 +569,7 @@ int slsDetector::initializeDetectorSize(detectorType type) { /** sets angular conversion file to none */ strcpy(thisDetector->angConvFile,"none"); /** set binsize*/ - thisDetector->binSize=0; + thisDetector->binSize=0.001; thisDetector->stoppedFlag=0; thisDetector->threadedProcessing=1; diff --git a/slsDetectorSoftware/slsDetector/slsDetectorUtils.cpp b/slsDetectorSoftware/slsDetector/slsDetectorUtils.cpp index 79cbe8177..ca60be302 100644 --- a/slsDetectorSoftware/slsDetector/slsDetectorUtils.cpp +++ b/slsDetectorSoftware/slsDetector/slsDetectorUtils.cpp @@ -48,8 +48,6 @@ void slsDetectorUtils::acquire(int delflag){ progressIndex=0; *stoppedFlag=0; - int measurement = (int)setTimer(slsDetectorDefs::MEASUREMENTS_NUMBER,-1); - angCalLogClass *aclog=NULL; enCalLogClass *eclog=NULL; // int lastindex=startindex, nowindex=startindex; @@ -90,7 +88,20 @@ void slsDetectorUtils::acquire(int delflag){ posfinished=0; pthread_mutex_unlock(&mp); - for(int im=0;im0) + nm=timerValue[MEASUREMENTS_NUMBER]; + + for(int im=0;im0) @@ -309,30 +317,36 @@ void slsDetectorUtils::acquire(int delflag){ *fileIndex=setLastIndex(); if (*stoppedFlag==0) { executeAction(stopScript); - } + } else + break; // loop measurements - // waiting for the data processing thread to finish! - if (*threadedProcessing) { - pthread_mutex_lock(&mp); - jointhread=1; - pthread_mutex_unlock(&mp); - pthread_join(dataProcessingThread, &status); - } + if (measurement_finished) + measurement_finished(im,*fileIndex,measFinished_p); + if (*stoppedFlag) { break; } - if (measurement_finished) - measurement_finished(im,*fileIndex,measFinished_p); - } + + } + + // waiting for the data processing thread to finish! + if (*threadedProcessing) { + pthread_mutex_lock(&mp); + jointhread=1; + pthread_mutex_unlock(&mp); + pthread_join(dataProcessingThread, &status); + } + + if (connectChannels) { if (disconnect_channels) disconnect_channels(DCarg); } - + if (aclog) delete aclog; diff --git a/slsDetectorSoftware/slsDetectorAnalysis/angularConversionStatic.o b/slsDetectorSoftware/slsDetectorAnalysis/angularConversionStatic.o index 0bc7d3b3d..1bb505f1f 100644 Binary files a/slsDetectorSoftware/slsDetectorAnalysis/angularConversionStatic.o and b/slsDetectorSoftware/slsDetectorAnalysis/angularConversionStatic.o differ