19 #ifndef RTC_CONFIGADMIN_H
20 #define RTC_CONFIGADMIN_H
225 virtual bool update(
const char* val) = 0;
281 template <
typename VarType,
282 typename TransFunc = bool (*)(VarType&,
const char*)>
312 Config(
const char* name, VarType& var,
const char* def_val,
314 :
ConfigBase(name, def_val), m_var(var), m_trans(trans)
360 if ((*m_trans)(m_var, val)) {
return true; }
361 (*m_trans)(m_var, default_value);
611 template <
typename VarType>
616 if (param_name == 0) {
return false; }
617 if (def_val == 0) {
return false; }
618 if (isExist(param_name)) {
return false; }
619 if (!trans(var, def_val)) {
return false; }
620 m_params.push_back(
new Config<VarType>(param_name, var, def_val, trans));
686 void update(
const char* config_set);
725 void update(
const char* config_set,
const char* config_param);
753 bool isExist(
const char* name);
824 return (m_configsets.hasKey(config_id) == NULL) ?
false :
true;
874 const std::vector<coil::Properties*>& getConfigurationSets(
void);
1040 bool removeConfigurationSet(
const char* config_id);
1069 bool activateConfigurationSet(
const char* config_id);
1123 bool autoclean =
true);
1185 bool autoclean =
true);
1249 bool autoclean =
true);
1301 void onUpdate(
const char* config_set);
1324 void onUpdateParam(
const char* config_set,
const char* config_param);
1387 void onRemoveConfigurationSet(
const char* config_id);
1408 void onActivateSet(
const char* config_id);
1417 find_conf(
const char* name) : m_name(name) {};
1418 bool operator()(ConfigBase* conf)
1420 if (conf == 0) {
return false; }
1421 return (m_name == conf->name);
1427 std::vector<ConfigBase*> m_params;
1428 std::string m_activeId;
1431 std::vector<std::string> m_newConfig;
1432 ConfigurationListeners m_listeners;
1436 #endif // RTC_CONFIGADMIN_H
ConfigBase 抽象クラス
Definition: ConfigAdmin.h:157
ConfigurationSetNameListener OnActivateSetCallback
Definition: ConfigAdmin.h:121
ConfigurationParamListener OnUpdateParamCallback
Definition: ConfigAdmin.h:69
bool stringTo(To &val, const char *str)
与えられたstd::stringをオブジェクトに変換
Definition: stringutil.h:597
ConfigBase(const char *name_, const char *def_val)
コンストラクタ
Definition: ConfigAdmin.h:180
ConfigurationSetNameListener OnRemoveConfigurationSetCallback
Definition: ConfigAdmin.h:108
bool isActive(void)
コンフィギュレーションセットのアクティブ化確認
Definition: ConfigAdmin.h:847
ConfigAdmin クラス
Definition: ConfigAdmin.h:534
ConfigurationSetListener クラス
Definition: ConfigurationListener.h:188
ConfigurationSetNameListener クラス
Definition: ConfigurationListener.h:298
ConfigurationParamListener クラス
Definition: ConfigurationListener.h:72
ConfigurationSetNameListenerType
ConfigurationSetNameListenerType.
Definition: ConfigurationListener.h:266
VarType & m_var
コンフィギュレーションパラメータ格納用変数
Definition: ConfigAdmin.h:373
ConfigurationSetListener OnAddConfigurationAddCallback
Definition: ConfigAdmin.h:95
bool isChanged(void)
コンフィギュレーションパラメータの変更確認
Definition: ConfigAdmin.h:775
virtual bool update(const char *val)=0
コンフィギュレーションパラメータ値更新用純粋仮想関数
TransFunc m_trans
コンフィギュレーションパラメータ型文字列変換関数
Definition: ConfigAdmin.h:383
const char * name
コンフィギュレーション名
Definition: ConfigAdmin.h:234
virtual ~ConfigBase(void)
仮想デストラクタ
Definition: ConfigAdmin.h:198
プロパティセットを表現するクラス
Definition: Properties.h:101
Property list class (derived from Java Properties)
virtual bool update(const char *val)
バインドパラメータ値を更新
Definition: ConfigAdmin.h:358
const char * getActiveId(void)
アクティブ・コンフィギュレーションセットIDの取得
Definition: ConfigAdmin.h:796
ConfigurationSetNameListener OnUpdateCallback
Definition: ConfigAdmin.h:56
bool bindParameter(const char *param_name, VarType &var, const char *def_val, bool(*trans)(VarType &, const char *)=coil::stringTo)
コンフィギュレーションパラメータの設定
Definition: ConfigAdmin.h:612
virtual ~Config(void)
仮想デストラクタ
Definition: ConfigAdmin.h:333
Config クラス
Definition: ConfigAdmin.h:283
ConfigurationSetListenerType
ConfigurationSetListener のタイプ
Definition: ConfigurationListener.h:158
Config(const char *name, VarType &var, const char *def_val, TransFunc trans=coil::stringTo)
コンストラクタ
Definition: ConfigAdmin.h:312
bool haveConfig(const char *config_id)
コンフィギュレーションセットの存在確認
Definition: ConfigAdmin.h:822
const char * default_value
文字列形式のデフォルト値
Definition: ConfigAdmin.h:243
ConfigurationParamListenerType
ConfigurationParamListener のタイプ
Definition: ConfigurationListener.h:43
ConfigurationSetListener OnSetConfigurationSetCallback
Definition: ConfigAdmin.h:82
Configuration related event listener classes.