DectrisSimplonClient: Set energy/threshold for each acquisition (if different from currently configured by 0.01 eV)

This commit is contained in:
2026-04-30 10:45:13 +02:00
parent 06d8fc3972
commit 37495c0902
@@ -247,6 +247,10 @@ void DectrisSimplonClient::EndAcquisitionFinished() {
}
void DectrisSimplonClient::StartAcquisition(const DiffractionExperiment& experiment) {
SetConfigIfDifferent(SimplonModule::Detector, "photon_energy", experiment.GetIncidentEnergy_keV() * 1e3f, 0.01f);
auto thr = experiment.GetEigerThreshold_keV();
SetConfigIfDifferent(SimplonModule::Detector, "threshold_energy", thr * 1e3f, 0.01);
SetConfigIfDifferent(SimplonModule::Detector, "count_time", std::chrono::duration<float>(experiment.GetFrameCountTime()).count(), 1e-9);
SetConfigIfDifferent(SimplonModule::Detector, "frame_time", std::chrono::duration<float>(experiment.GetFrameTime()).count(), 1e-9);
SetConfigIfDifferent(SimplonModule::Detector, "nimages", experiment.GetFrameNumPerTrigger());