This commit is contained in:
2019-08-21 12:45:08 +02:00
parent 62c4bfab64
commit 4b0fb5029f
8 changed files with 48 additions and 39 deletions

View File

@ -6,6 +6,8 @@
#include <vector>
class multiSlsDetector;
class detectorData;
namespace sls {
using ns = std::chrono::nanoseconds;
class MacAddr;
@ -83,6 +85,35 @@ class Detector {
/** [Jungfrau][Gotthard] */
void setSettings(defs::detectorSettings value, Positions pos = {});
/**************************************************
* *
* Callbacks *
* *
* ************************************************/
/**
* register callback for end of acquisition
* @param func function to be called with parameters:
* current progress in percentage, detector status, pArg pointer
* @param pArg pointer that is returned in call back
*/
void registerAcquisitionFinishedCallback(void (*func)(double, int, void *),
void *pArg);
/**
* register callback for accessing reconstructed complete images
* Receiver sends out images via zmq, the client reconstructs them into
* complete images. Therefore, it also enables zmq streaming from receiver
* and the client.
* @param func function to be called for each image with parameters:
* detector data structure, frame number, sub frame number (for eiger in 32
* bit mode), pArg pointer
* @param pArg pointer that is returned in call back
*/
void registerDataCallback(void (*func)(detectorData *, uint64_t, uint32_t,
void *),
void *pArg);
/**************************************************
* *
* Acquisition Parameters *

View File

@ -1993,13 +1993,6 @@ class multiSlsDetector : public virtual slsDetectorDefs {
*/
void registerAcquisitionFinishedCallback(void (*func)(double, int, void *),
void *pArg);
/**
* register callback for accessing detector progress
* @param func function to be called at the end of the acquisition.
* gets detector status and progress index as arguments
* @param pArg argument
*/
void registerProgressCallback(void (*func)(double, void *), void *pArg);
/**
* register calbback for accessing detector final data,
@ -2260,9 +2253,6 @@ class multiSlsDetector : public virtual slsDetectorDefs {
void (*acquisition_finished)(double, int, void *){nullptr};
void *acqFinished_p{nullptr};
void (*progress_call)(double, void *){nullptr};
void *pProgressCallArg{nullptr};
void (*dataReady)(detectorData *, uint64_t, uint32_t, void *){nullptr};
void *pCallbackArg{nullptr};
};

View File

@ -775,14 +775,6 @@ public:
*/
void registerAcquisitionFinishedCallback(void( *func)(double,int, void*), void *pArg);
/**
* register callback for accessing detector progress in client,
* @param func function to be called at the end of the acquisition.
* gets detector status and progress index as arguments
* @param pArg argument
*/
void registerProgressCallback(void( *func)(double,void*), void *pArg);
/**
@short [usage strongly discouraged] sets parameters trough command line interface http://www.psi.ch/detectors/UsersSupportEN/slsDetectorClientHowTo.pdf
\param command string as it would be written on the command line