mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-21 00:58:01 +02:00
ctb & moench: phase fix for absolute within limits, option to set as degrees and get max phase shift, bug fix for eiger with implementation of 2 udp interface
This commit is contained in:
@ -734,14 +734,14 @@ class multiSlsDetector : public virtual slsDetectorDefs {
|
||||
|
||||
/**
|
||||
* Set speed
|
||||
* @param sp speed type (clkdivider option for Jungfrau and Eiger, others
|
||||
* for Mythen/Gotthard)
|
||||
* @param sp speed type (clkdivider option for Jungfrau and Eiger,
|
||||
* adcphase for Gotthard, others for CTB & Moench)
|
||||
* @param value (clkdivider 0,1,2 for full, half and quarter speed). Other
|
||||
* values check manual
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns value of speed set
|
||||
*/
|
||||
int setSpeed(speedVariable index, int value = -1, int detPos = -1);
|
||||
int setSpeed(speedVariable index, int value = -1, int mode = 0, int detPos = -1);
|
||||
|
||||
/**
|
||||
* Set/get dynamic range and updates the number of dataBytes
|
||||
|
@ -697,11 +697,12 @@ class slsDetector : public virtual slsDetectorDefs{
|
||||
|
||||
/**
|
||||
* Set speed
|
||||
* @param sp speed type (clkdivider option for Jungfrau and Eiger, others for Mythen/Gotthard)
|
||||
* @param sp speed type (clkdivider option for Jungfrau and Eiger,
|
||||
* adcphase for Gotthard, others for CTB & Moench)
|
||||
* @param value (clkdivider 0,1,2 for full, half and quarter speed). Other values check manual
|
||||
* @returns value of speed set
|
||||
*/
|
||||
int setSpeed(speedVariable sp, int value = -1);
|
||||
int setSpeed(speedVariable sp, int value = -1, int mode = 0);
|
||||
|
||||
/**
|
||||
* Set/get dynamic range and updates the number of dataBytes
|
||||
|
@ -1199,14 +1199,14 @@ int64_t multiSlsDetector::getTimeLeft(timerIndex index, int detPos) {
|
||||
return sls::minusOneIfDifferent(r);
|
||||
}
|
||||
|
||||
int multiSlsDetector::setSpeed(speedVariable index, int value, int detPos) {
|
||||
int multiSlsDetector::setSpeed(speedVariable index, int value, int mode, int detPos) {
|
||||
// single
|
||||
if (detPos >= 0) {
|
||||
return detectors[detPos]->setSpeed(index, value);
|
||||
return detectors[detPos]->setSpeed(index, value, mode);
|
||||
}
|
||||
|
||||
// multi
|
||||
auto r = parallelCall(&slsDetector::setSpeed, index, value);
|
||||
auto r = parallelCall(&slsDetector::setSpeed, index, value, mode);
|
||||
return sls::minusOneIfDifferent(r);
|
||||
}
|
||||
|
||||
|
@ -1840,12 +1840,12 @@ int64_t slsDetector::getTimeLeft(timerIndex index) {
|
||||
return retval;
|
||||
}
|
||||
|
||||
int slsDetector::setSpeed(speedVariable sp, int value) {
|
||||
int slsDetector::setSpeed(speedVariable sp, int value, int mode) {
|
||||
int fnum = F_SET_SPEED;
|
||||
int ret = FAIL;
|
||||
int args[2] = {(int)sp, value};
|
||||
int args[3] = {(int)sp, value, mode};
|
||||
int retval = -1;
|
||||
FILE_LOG(logDEBUG1) << "Setting speed index " << sp << " to " << value;
|
||||
FILE_LOG(logDEBUG1) << "Setting speed index " << sp << " to " << value << " mode: " << mode;
|
||||
|
||||
if (detector_shm()->onlineFlag == ONLINE_FLAG) {
|
||||
auto client = DetectorSocket(detector_shm()->hostname, detector_shm()->controlPort);
|
||||
|
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user