Add uniform methods for all objects dealing with config + settings
Settings are often linked to configuration values.
Indeed, configuration represents static values to initialize controllers or objects. Settings are the 'live' counterparts of those values.
It is difficult to reset objects to their config values, because each implementation of settings and configs is left to be developer with no guidance/framework.
The idea is to add a mixin class to be able to 'plug' config+settings behaviour on top of objects. The added members could be, for example:
-
.reload_config()
=> reloads configuration for this object only -
.apply_config()
=> apply configuration values: really set settings to those values- eventually communicates with the controller (in case of a Keithley, a motor, etc)
-
.save_settings()
=> do the opposite asapply_config
, ie. take settings values and save them back to yml file -
.config
=> object configuration node
(list to be be refined during analysis phase)
Edited by Matias Guijarro