|
Hikyuu
0.1
|
供需要命名参数设定的类使用 更多...
#include <Parameter.h>
Public 成员函数 | |
| Parameter () | |
| Parameter (const Parameter &) | |
| virtual | ~Parameter () |
| Parameter & | operator= (const Parameter &) |
| StringList | getNameList () const |
| 获取所有参数名称列表 更多... | |
| string | getValueList () const |
| 返回形如"val1,val2,..."的字符串 更多... | |
| string | getNameValueList () const |
| 返回形如"name1=val1,name2=val2,..."的字符串 更多... | |
| bool | have (const string &name) const |
| 是否存在指定名称的参数 更多... | |
| template<typename ValueType > | |
| void | set (const string &name, const ValueType &value) |
| 设定指定的参数值 更多... | |
| template<typename ValueType > | |
| ValueType | get (const string &name) const |
| 获取指定的参数值 更多... | |
静态 Public 成员函数 | |
| static bool | support (const boost::any &) |
友元 | |
| class | boost::serialization::access |
| HKU_API friend std::ostream & | operator<< (std::ostream &os, const Parameter ¶m) |
供需要命名参数设定的类使用
在需要命名参数设定的类定义中,增加宏PARAMETER_SUPPORT,如:
由于Python的限制,目前只支持int、bool、double三种类型,增加新的类型支持, 需要修改以下几处,对于不支持的类型将在add时直接抛出异常,请勿捕捉次异常, 这样导致的程序终止,可以尽快补充需支持的类型: 1、Parameter::support 2、std::ostream& operator <<(std::ostream &os, const Parameter& param) 3、_Parameter.cpp中的AnyToPython、arameter::add<object>、Parameter::set<object> 4、Parameter::getValueList、getNameValueList 5、Parameter的序列化支持
在Python中,增加和修改参数,需要先创建或获取Parameter对象实例,通过Parameter示例 造成,之后将Parameter实例直接设定修改,如: 1、在init中增加参数 param = Parameter(); param.add("n", 1") param.add("bool", false) self.setParameter(param) 2、修改参数 param = x.getParameter() param.set("n", 10) param.set("bool", true) x.setParameter(param)
| hku::Parameter::Parameter | ( | ) |
| hku::Parameter::Parameter | ( | const Parameter & | p | ) |
|
virtual |
| ValueType hku::Parameter::get | ( | const string & | name | ) | const |
获取指定的参数值
| name | 参数名 |
| StringList hku::Parameter::getNameList | ( | ) | const |
获取所有参数名称列表
| string hku::Parameter::getNameValueList | ( | ) | const |
返回形如"name1=val1,name2=val2,..."的字符串
| string hku::Parameter::getValueList | ( | ) | const |
返回形如"val1,val2,..."的字符串
|
inline |
是否存在指定名称的参数
| void hku::Parameter::set | ( | const string & | name, |
| const ValueType & | value | ||
| ) |
设定指定的参数值
| name | 参数名称 |
| value | 参数值 |
|
static |
|
friend |
1.8.11