00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef __CONFIG_CHANGE_HANDLER_H_
00025 #define __CONFIG_CHANGE_HANDLER_H_
00026
00027 namespace fawkes {
00028
00029 class ConfigurationChangeHandler
00030 {
00031 public:
00032 ConfigurationChangeHandler(const char *path_prefix = "");
00033 virtual ~ConfigurationChangeHandler();
00034
00035 virtual void config_tag_changed(const char *new_tag) = 0;
00036 virtual void config_value_changed(const char *path, bool is_default, int value) = 0;
00037 virtual void config_value_changed(const char *path, bool is_default, unsigned int value) = 0;
00038 virtual void config_value_changed(const char *path, bool is_default, float value) = 0;
00039 virtual void config_value_changed(const char *path, bool is_default, bool value) = 0;
00040 virtual void config_value_changed(const char *path, bool is_default, const char *value) = 0;
00041 virtual void config_comment_changed(const char *path, bool is_default, const char *comment) = 0;
00042 virtual void config_value_erased(const char *path, bool is_default) = 0;
00043 const char * config_monitor_prefix();
00044
00045 private:
00046 char *__path_prefix;
00047
00048 };
00049
00050 }
00051
00052 #endif