v1.0.0-rc.109 (#15)
All checks were successful
Build Packages / build:rpm (rocky8_nocuda) (push) Successful in 8m46s
Build Packages / build:rpm (ubuntu2204_nocuda) (push) Successful in 7m52s
Build Packages / build:rpm (rocky9_nocuda) (push) Successful in 10m9s
Build Packages / build:rpm (ubuntu2404_nocuda) (push) Successful in 8m43s
Build Packages / build:rpm (rocky8_sls9) (push) Successful in 9m11s
Build Packages / Generate python client (push) Successful in 14s
Build Packages / Build documentation (push) Successful in 39s
Build Packages / Create release (push) Has been skipped
Build Packages / build:rpm (rocky8) (push) Successful in 8m26s
Build Packages / build:rpm (ubuntu2404) (push) Successful in 7m51s
Build Packages / build:rpm (ubuntu2204) (push) Successful in 8m36s
Build Packages / build:rpm (rocky9) (push) Successful in 9m20s
Build Packages / Unit tests (push) Successful in 1h12m50s

This is an UNSTABLE release.

* jfjoch_viewer: Add keyboard shortcuts and option to copy image to clipboard
* jfjoch_broker: Fix bit-width and exposure time for PSI EIGER detectors

Reviewed-on: #15
Co-authored-by: Filip Leonarski <filip.leonarski@psi.ch>
Co-committed-by: Filip Leonarski <filip.leonarski@psi.ch>
This commit was merged in pull request #15.
This commit is contained in:
2025-11-26 13:48:59 +01:00
committed by leonarski_f
parent d53e93023b
commit 05410d7cb3
153 changed files with 346 additions and 205 deletions

View File

@@ -81,13 +81,12 @@ void SLSDetectorWrapper::Initialize(DiffractionExperiment& experiment,
}
} else if (det_type == DetectorType::EIGER) {
if (det.size() != 2 * experiment.GetModulesNum()) {
logger.Error("Discrepancy in module number between DAQ and detector");
throw JFJochException(JFJochExceptionCategory::Detector,
"Discrepancy in module number between DAQ and detector");
}
det.setDynamicRange(experiment.GetEigerBitDepth());
det.setInterruptSubframe(true);
det.setTenGiga(true);
auto trim_directory = experiment.GetDetectorSetup().GetTrimFileDirectory();
@@ -145,7 +144,11 @@ void SLSDetectorWrapper::Start(const DiffractionExperiment& experiment) {
auto energy_threshold_ev = experiment.GetEigerThreshold_keV() * 1000.0f;
if (det.getThresholdEnergy().squash(0) != energy_threshold_ev)
det.setThresholdEnergy(energy_threshold_ev);
// For EIGER exposure time needs to be updated for every measurements
det.setDynamicRange(experiment.GetEigerBitDepth());
det.setPeriod(experiment.GetDetectorPeriod());
det.setExptime(std::chrono::microseconds(experiment.GetFrameCountTime()));
}
try {