Implementation of global states
Some creative brainstorming:
For operation, some global states / switches would be very useful, that would ideally be customizable. In our case, a "10Hz Mode", "Pre-Shot" and "Shot Mode" state might be suitable.
State-changes could be either performed manually, or externally controlled (by the PCS?)
On state-change, all modules would be messaged. Wherever possible / necessary, the user can select which setting shall be used in which state. Some examples:
- In "10Hz Mode", the averaging in the Analysis is set to 20. In "Shot Mode", the averaging is set to 1, so no measurement is lost.
- A Wavefront offset in the AO Control Actor is enabled / disabled / selected, depending on the mode. Recorded shot-aberrations will automatically be pre-compensated, once "Pre-Shot" is selected.
A state could also be implemented as a layout-file, that can be saved for each state: Customize WOMBAT -> Save to State A. Customize again -> Save to State B. In this case, however, on-the-fly-changes would either be omited on state change or saved to the previous state. Maybe with a dialogue asking, what option should be performed