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.