23 #include "skill_wrapper.h" 25 #include <core/exception.h> 26 #include <utils/misc/string_conversions.h> 42 xabsl::ErrorHandler &error_handler,
44 : xabsl::BasicBehavior(name, error_handler)
53 std::map<std::string, ParameterValueBase *>::iterator i;
54 for (i = param_values_.begin(); i != param_values_.end(); ++i) {
57 param_values_.clear();
73 for (ParameterList::iterator i = params_.begin(); i != params_.end(); ++i) {
74 if ((i->second ==
"float") || (i->second ==
"double") || (i->second ==
"int")
75 || (i->second ==
"unsigned int") || (i->second ==
"long int")
76 || (i->second ==
"unsigned long int")) {
77 ParameterValue<double> *pv =
new ParameterValue<double>();
78 param_values_[i->first] = pv;
79 parameters->registerDecimal((
string(n) +
"." + i->first).c_str(), *(pv->get_value_ptr()));
80 }
else if (i->second ==
"bool") {
81 ParameterValue<bool> *pv =
new ParameterValue<bool>();
82 param_values_[i->first] = pv;
83 parameters->registerBoolean((
string(n) +
"." + i->first).c_str(), *(pv->get_value_ptr()));
110 std::string rv = std::string(n) +
"{";
111 std::map<std::string, ParameterValueBase *>::iterator i;
112 bool is_first =
true;
113 for (i = param_values_.begin(); i != param_values_.end(); ++i) {
119 ParameterValue<double> *pvd;
120 ParameterValue<bool> * pvb;
121 if ((pvd =
dynamic_cast<ParameterValue<double> *
>(i->second)) != NULL) {
123 }
else if ((pvb =
dynamic_cast<ParameterValue<bool> *
>(i->second)) != NULL) {
std::string skill_string()
Get skill string for this string.
virtual void registerParameters()
Register parameters.
virtual void execute()
Execute skill.
XabslSkillWrapper(const char *name, xabsl::ErrorHandler &error_handler, ParameterList ¶ms)
Constructor.
Base class for exceptions in Fawkes.
~XabslSkillWrapper()
Destructor.
const char * name()
Get name of the skill.
std::list< std::pair< std::string, std::string > > ParameterList
Parameter list.
static std::string to_string(unsigned int i)
Convert unsigned int value to a string.