25 std::string
toStr(std::string value)
99 return std::string(
str.data(),
str.size() );
106 return str.to_string().c_str();
112 return std::stoi(
str.data());
118 return unsigned(std::stoul(
str.data()));
124 return std::stod(
str.data());
131 std::vector<int> output;
132 output.reserve( parts.size() );
136 output.push_back( std::strtol( part.data(), &end, 10 ) );
145 std::vector<double> output;
146 output.reserve( parts.size() );
150 output.push_back( std::strtod( part.data(), &end ) );
169 else if (
str.size() == 4)
171 if (
str ==
"true" ||
str ==
"TRUE" ||
str ==
"True")
176 else if (
str.size() == 5)
178 if (
str ==
"false" ||
str ==
"FALSE" ||
str ==
"False")
183 throw RuntimeError(
"convertFromString(): invalid bool conversion");
193 throw RuntimeError(std::string(
"Cannot convert this to NodeStatus: ") +
str.to_string() );
236 std::vector<StringView> splitted_strings;
237 splitted_strings.reserve(4);
240 while( pos < strToSplit.size())
242 size_t new_pos = strToSplit.find_first_of(delimeter, pos);
243 if( new_pos == std::string::npos)
245 new_pos = strToSplit.size();
247 StringView sv = { &strToSplit.data()[pos], new_pos - pos };
248 splitted_strings.push_back( sv );
251 return splitted_strings;
NodeStatus convertFromString< NodeStatus >(StringView str)
PortDirection convertFromString< PortDirection >(StringView str)
StringConverter _converter
const std::type_info * _info
PortDirection direction() const
std::string toStr(T value)
std::string default_value_
const std::string & description() const
std::string toStr< NodeType >(NodeType type)
std::string toStr< NodeStatus >(NodeStatus status)
std::ostream & operator<<(std::ostream &os, const BT::NodeStatus &status)
const std::type_info * type() const
Any parseString(const char *str) const
std::vector< StringView > splitString(const StringView &strToSplit, char delimeter)
const std::string & defaultValue() const
nonstd::string_view StringView
void setDefaultValue(StringView default_value_as_string)
unsigned convertFromString< unsigned >(StringView str)
NodeType convertFromString< NodeType >(StringView str)
bool convertFromString< bool >(StringView str)
const char * convertFromString< const char * >(StringView str)
int convertFromString< int >(StringView str)
void setDescription(StringView description)
std::string toStr< PortDirection >(PortDirection direction)
NodeType
Enumerates the possible types of nodes.
double convertFromString< double >(StringView str)