mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-22 11:50:03 +02:00
m3 gui: slave timing modes should be discarded when squashing (#449)
This commit is contained in:
parent
8d6b8d66cc
commit
e30ee445a1
@ -337,9 +337,26 @@ void qTabMeasurement::GetTimingMode() {
|
|||||||
disconnect(comboTimingMode, SIGNAL(currentIndexChanged(int)), this,
|
disconnect(comboTimingMode, SIGNAL(currentIndexChanged(int)), this,
|
||||||
SLOT(SetTimingMode(int)));
|
SLOT(SetTimingMode(int)));
|
||||||
try {
|
try {
|
||||||
|
|
||||||
|
slsDetectorDefs::timingMode retval{slsDetectorDefs::AUTO_TIMING};
|
||||||
|
// m3: remove slave modes (always trigger) before squashing
|
||||||
|
if (det->getDetectorType().squash() == slsDetectorDefs::MYTHEN3) {
|
||||||
|
auto retvals = det->getTimingMode();
|
||||||
|
auto is_master = det->getMaster();
|
||||||
|
sls::Result<slsDetectorDefs::timingMode> masterRetvals;
|
||||||
|
for (size_t i = 0; i != is_master.size(); ++i) {
|
||||||
|
if (is_master[i]) {
|
||||||
|
masterRetvals.push_back(retvals[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
retval = masterRetvals.tsquash(
|
||||||
|
"Inconsistent timing mode for all detectors.");
|
||||||
|
} else {
|
||||||
|
retval = det->getTimingMode().tsquash(
|
||||||
|
"Inconsistent timing mode for all detectors.");
|
||||||
|
}
|
||||||
|
|
||||||
auto oldMode = comboTimingMode->currentIndex();
|
auto oldMode = comboTimingMode->currentIndex();
|
||||||
auto retval = det->getTimingMode().tsquash(
|
|
||||||
"Inconsistent timing mode for all detectors.");
|
|
||||||
switch (retval) {
|
switch (retval) {
|
||||||
case slsDetectorDefs::AUTO_TIMING:
|
case slsDetectorDefs::AUTO_TIMING:
|
||||||
case slsDetectorDefs::TRIGGER_EXPOSURE:
|
case slsDetectorDefs::TRIGGER_EXPOSURE:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user