mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-13 13:27:14 +02:00
get progress when acquisition is over to show 100 percent
git-svn-id: file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware@363 951219d9-93cf-4727-9268-0efd64621fa3
This commit is contained in:
@ -20,6 +20,8 @@ slsDetectorUtils::slsDetectorUtils() {
|
|||||||
acqFinished_p=NULL;
|
acqFinished_p=NULL;
|
||||||
measurement_finished=NULL;
|
measurement_finished=NULL;
|
||||||
measFinished_p=NULL;
|
measFinished_p=NULL;
|
||||||
|
progress_call=0;
|
||||||
|
pProgressCallArg=0;
|
||||||
registerGetPositionCallback(&defaultGetPosition, NULL);
|
registerGetPositionCallback(&defaultGetPosition, NULL);
|
||||||
registerConnectChannelsCallback(&defaultConnectChannels,NULL);
|
registerConnectChannelsCallback(&defaultConnectChannels,NULL);
|
||||||
registerDisconnectChannelsCallback(&defaultDisconnectChannels,NULL);
|
registerDisconnectChannelsCallback(&defaultDisconnectChannels,NULL);
|
||||||
@ -431,6 +433,10 @@ void slsDetectorUtils::acquire(int delflag){
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if(progress_call)
|
||||||
|
progress_call(getCurrentProgress(),pProgressCallArg);
|
||||||
|
|
||||||
|
|
||||||
if (connectChannels) {
|
if (connectChannels) {
|
||||||
if (disconnect_channels)
|
if (disconnect_channels)
|
||||||
disconnect_channels(DCarg);
|
disconnect_channels(DCarg);
|
||||||
|
@ -545,7 +545,7 @@ class slsDetectorUtils : public slsDetectorActions, public postProcessing {
|
|||||||
void registerAcquisitionFinishedCallback(int( *func)(double,int, void*), void *pArg){acquisition_finished=func; acqFinished_p=pArg;};
|
void registerAcquisitionFinishedCallback(int( *func)(double,int, void*), void *pArg){acquisition_finished=func; acqFinished_p=pArg;};
|
||||||
void registerMeasurementFinishedCallback(int( *func)(int,int, void*), void *pArg){measurement_finished=func; measFinished_p=pArg;};
|
void registerMeasurementFinishedCallback(int( *func)(int,int, void*), void *pArg){measurement_finished=func; measFinished_p=pArg;};
|
||||||
|
|
||||||
|
void registerProgressCallback(int( *func)(double,void*), void *pArg){progress_call=func; pProgressCallArg=pArg;};
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -671,6 +671,8 @@ virtual int exitReceiver()=0;
|
|||||||
int (*measurement_finished)(int,int,void*);
|
int (*measurement_finished)(int,int,void*);
|
||||||
void *acqFinished_p, *measFinished_p;
|
void *acqFinished_p, *measFinished_p;
|
||||||
|
|
||||||
|
int (*progress_call)(double,void*);
|
||||||
|
void *pProgressCallArg;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -37,8 +37,6 @@ postProcessing::postProcessing(): expTime(NULL), ang(NULL), val(NULL), err(NULL)
|
|||||||
rawDataReady = 0;
|
rawDataReady = 0;
|
||||||
pRawDataArg = 0;
|
pRawDataArg = 0;
|
||||||
|
|
||||||
progress_call=0;
|
|
||||||
pProgressCallArg=0;
|
|
||||||
#ifdef VERBOSE
|
#ifdef VERBOSE
|
||||||
registerDataCallback(&defaultDataReadyFunc, NULL);
|
registerDataCallback(&defaultDataReadyFunc, NULL);
|
||||||
#endif
|
#endif
|
||||||
@ -407,8 +405,6 @@ void* postProcessing::processData(int delflag) {
|
|||||||
else newData=false;
|
else newData=false;
|
||||||
prevCaught=caught;
|
prevCaught=caught;
|
||||||
if (checkJoinThread()) break;
|
if (checkJoinThread()) break;
|
||||||
//if(progress_call)
|
|
||||||
// progress_call(getCurrentProgress(),pProgressCallArg);
|
|
||||||
if(newData){
|
if(newData){
|
||||||
pthread_mutex_lock(&mg);
|
pthread_mutex_lock(&mg);
|
||||||
int* receiverData = readFrameFromReceiver(currentfName,currentfIndex);
|
int* receiverData = readFrameFromReceiver(currentfName,currentfIndex);
|
||||||
|
@ -240,8 +240,6 @@ s
|
|||||||
|
|
||||||
void registerRawDataCallback(int( *userCallback)(double*, int, void*), void *pArg) {rawDataReady = userCallback; pRawDataArg = pArg;};
|
void registerRawDataCallback(int( *userCallback)(double*, int, void*), void *pArg) {rawDataReady = userCallback; pRawDataArg = pArg;};
|
||||||
|
|
||||||
void registerProgressCallback(int( *func)(double,void*), void *pArg){progress_call=func; pProgressCallArg=pArg;};
|
|
||||||
|
|
||||||
virtual double getRateCorrectionTau()=0;
|
virtual double getRateCorrectionTau()=0;
|
||||||
|
|
||||||
|
|
||||||
@ -334,9 +332,6 @@ s
|
|||||||
int (*rawDataReady)(double*,int,void*);
|
int (*rawDataReady)(double*,int,void*);
|
||||||
void *pRawDataArg;
|
void *pRawDataArg;
|
||||||
|
|
||||||
int (*progress_call)(double,void*);
|
|
||||||
void *pProgressCallArg;
|
|
||||||
|
|
||||||
|
|
||||||
postProcessingFuncs *ppFun;
|
postProcessingFuncs *ppFun;
|
||||||
detectorData *thisData;
|
detectorData *thisData;
|
||||||
|
Reference in New Issue
Block a user