[AGIPD][DARK] Improvements for reading conditions by creating new dataclass for multiple runs
Description
While working on a feature to sort dark runs for AGIPD, I realized that the AGIDP dark notebook might need some improvements. This is a refactor to AGIPD darks with no new functionalities.
1- Introduce AgipdCtrlRuns
data class
2- Convert AgipdCtrl
class to dataclass
3- Replace cells for reading/validating AGIPD Conditions with AgipdCtrlRuns
4- Now I add more tests to untested pieces in the dark notebook.
This leads to simpler code and better performance while reading conditions. This can also be used with other notebooks, e.g. Gain notebooks that reads more than one run.
How Has This Been Tested?
-
TBD
Relevant Documents (optional)
Types of changes
- Refactor (refactoring code with no functionality changes)
- Test (additional or refactored tests)
- Chore (non-code changes, e.g. comments, readme, grammar, etc...)
Checklist:
-
Add unit tests
Reviewers
Edited by Karim Ahmed