Add state / include attribute to all hardware effects
Due to necessity, all Effect subclasses that have no other persistent properties have a state
property to indicate whether the effect is enabled or disabled; this state corresponds to the include
property in ScopeSIM. This state property turns out to be essential and should be added to all effects.
Originally the idea was that if an effect is not used, that it then should not be mentioned in the FITS headers, and for some effects this is true. However, for some effects ScopeSIM will add information into the FITS headers anyway, even if it is not used (include
is False). So for most effects it is unclear whether it was actually used when the FITS file is read.
The most reliable and flexible way to fix this, is adding this state property to all effects and always include it in the header keywords (through FITS_extra_keywords.yaml). We could decide to change the name from state
to include
to create parity between the MicadoWISE names and ScopeSIM names.