202202 new features
Description
This MR adds the features I didn't manage to squeeze into the previous big one. Main new features:
- condition checkers to keep constant parameters up to date from control devices (AGIPD, JUNGFRAU) https://git.xfel.eu/calibration/planning/-/issues/106
- more warning lamps to indicate what is going wrong https://git.xfel.eu/calibration/planning/-/issues/137
- double size pixel masking (AGIPD, JUNGFRAU) (didn't create issue, but Marcin asked for this for JUNGFRAU and it was always in requirements for AGIPD)
And some internal things:
- more detailed, consistent specification of which corrections use which constants (and more granular buffer reloading)
- use newest
TrainMatcher
, disabling source sorting inShmemTrainMatcher
in it without duplicating_maybe_connect_sources
- only import
cupy
when needed - use more
@property
and less hacky attributes - expect to run in 2.15.2
Given that I squash merged the last major MR, I rebased only the later commits from devel
onto master
to create the branch in this MR.
Hopefully, GitLab shows proper diff.
Not the most ergonomic; I should stop relying on devel
and switch to working on cleaner feature branches, right?
How Has This Been Tested?
In my Karabo installation (/gpfs/exfel/data/scratch/online_calibration/hammerd/2.15.2/karabo
), I've instantiated fake pipelines with MemToPipe
devices (templates in PLAYGROUND
project hammerd-cal-dev
) and messed around.
Will continue to do so for some time before removing draft status.
Types of changes
A lot. Refactoring, new features, new devices.