diff options
Diffstat (limited to 'settings.h')
-rw-r--r-- | settings.h | 17 |
1 files changed, 17 insertions, 0 deletions
@@ -30,6 +30,7 @@ #include "singleton.h" #include "accessors.h" #include <linux/em8300.h> +#include <vector> // ================================== //! possible video modes @@ -53,6 +54,15 @@ enum Ac3AudioMode { AC3_PASSTHROUGH }; +enum SettingsChange { + AUDIO, + BCS +}; +class iSettingsObserver { +public: + virtual void settingsChange(SettingsChange change) = 0; +}; + // ================================== //! global interface to access all config datas of this plugin /* @@ -83,6 +93,13 @@ public: Accessors<bool> loadFirmware; Accessors<AudioDriver> audioDriver; Accessors<Ac3AudioMode> ac3AudioMode; + + // observer + void registerObserver(iSettingsObserver *observer); + void emitChange(SettingsChange change); + +private: + std::vector<iSettingsObserver *> observers; }; #endif /*SETTINGS_H*/ |