19 YARP_LOG_COMPONENT(Odometry2D_nws_ros2ParamsCOMPONENT,
"yarp.device.Odometry2D_nws_ros2")
30 std::vector<std::string> params;
31 params.push_back(
"period");
32 params.push_back(
"node_name");
33 params.push_back(
"topic_name");
34 params.push_back(
"odom_frame");
35 params.push_back(
"base_frame");
42 if (paramName ==
"period")
44 paramValue = std::to_string(
m_period);
47 if (paramName ==
"node_name")
52 if (paramName ==
"topic_name")
57 if (paramName ==
"odom_frame")
62 if (paramName ==
"base_frame")
68 yError() <<
"parameter '" << paramName <<
"' was not found";
87 if (config.
check(
"help"))
96 if (config.
check(
"period"))
99 yCInfo(Odometry2D_nws_ros2ParamsCOMPONENT) <<
"Parameter 'period' using value:" <<
m_period;
103 yCInfo(Odometry2D_nws_ros2ParamsCOMPONENT) <<
"Parameter 'period' using DEFAULT value:" <<
m_period;
105 prop_check.
unput(
"period");
110 if (config.
check(
"node_name"))
113 yCInfo(Odometry2D_nws_ros2ParamsCOMPONENT) <<
"Parameter 'node_name' using value:" <<
m_node_name;
117 yCError(Odometry2D_nws_ros2ParamsCOMPONENT) <<
"Mandatory parameter 'node_name' not found!";
118 yCError(Odometry2D_nws_ros2ParamsCOMPONENT) <<
"Description of the parameter: name of the ros2 node";
121 prop_check.
unput(
"node_name");
126 if (config.
check(
"topic_name"))
129 yCInfo(Odometry2D_nws_ros2ParamsCOMPONENT) <<
"Parameter 'topic_name' using value:" <<
m_topic_name;
133 yCError(Odometry2D_nws_ros2ParamsCOMPONENT) <<
"Mandatory parameter 'topic_name' not found!";
134 yCError(Odometry2D_nws_ros2ParamsCOMPONENT) <<
"Description of the parameter: name of the topic where the device must publish the data";
137 prop_check.
unput(
"topic_name");
142 if (config.
check(
"odom_frame"))
145 yCInfo(Odometry2D_nws_ros2ParamsCOMPONENT) <<
"Parameter 'odom_frame' using value:" <<
m_odom_frame;
149 yCError(Odometry2D_nws_ros2ParamsCOMPONENT) <<
"Mandatory parameter 'odom_frame' not found!";
150 yCError(Odometry2D_nws_ros2ParamsCOMPONENT) <<
"Description of the parameter: name of the reference frame for odometry";
153 prop_check.
unput(
"odom_frame");
158 if (config.
check(
"base_frame"))
161 yCInfo(Odometry2D_nws_ros2ParamsCOMPONENT) <<
"Parameter 'base_frame' using value:" <<
m_base_frame;
165 yCError(Odometry2D_nws_ros2ParamsCOMPONENT) <<
"Mandatory parameter 'base_frame' not found!";
166 yCError(Odometry2D_nws_ros2ParamsCOMPONENT) <<
"Description of the parameter: name of the base frame for odometry";
169 prop_check.
unput(
"base_frame");
204 doc = doc + std::string(
"\n=============================================\n");
205 doc = doc + std::string(
"This is the help for device: Odometry2D_nws_ros2\n");
206 doc = doc + std::string(
"\n");
207 doc = doc + std::string(
"This is the list of the parameters accepted by the device:\n");
208 doc = doc + std::string(
"'period': refresh period of the broadcasted values in s\n");
209 doc = doc + std::string(
"'node_name': name of the ros2 node\n");
210 doc = doc + std::string(
"'topic_name': name of the topic where the device must publish the data\n");
211 doc = doc + std::string(
"'odom_frame': name of the reference frame for odometry\n");
212 doc = doc + std::string(
"'base_frame': name of the base frame for odometry\n");
213 doc = doc + std::string(
"\n");
214 doc = doc + std::string(
"Here are some examples of invocation command with yarpdev, with all params:\n");
215 doc = doc +
" yarpdev --device odometry2D_nws_ros2 --period 0.02 --node_name <mandatory_value> --topic_name <mandatory_value> --odom_frame <mandatory_value> --base_frame <mandatory_value>\n";
216 doc = doc + std::string(
"Using only mandatory params:\n");
217 doc = doc +
" yarpdev --device odometry2D_nws_ros2 --node_name <mandatory_value> --topic_name <mandatory_value> --odom_frame <mandatory_value> --base_frame <mandatory_value>\n";
218 doc = doc + std::string(
"=============================================\n\n");
return doc;
Odometry2D_nws_ros2_ParamsParser()
bool getParamValue(const std::string ¶mName, std::string ¶mValue) const override
Return the value (represented as a string) of the requested parameter.
bool parseParams(const yarp::os::Searchable &config) override
Parse the DeviceDriver parameters.
std::string m_provided_configuration
std::string getDocumentationOfDeviceParams() const override
Get the documentation of the DeviceDriver's parameters.
std::string getConfiguration() const override
Return the configuration of the device.
std::vector< std::string > getListOfParams() const override
Return a list of all params used by the device.
A class for storing options and configuration information.
void unput(const std::string &key)
Remove the association from the given key to a value, if present.
A base class for nested structures that can be searched.
virtual bool check(const std::string &key) const =0
Check if there exists a property of the given name.
virtual std::string toString() const =0
Return a standard text representation of the content of the object.
virtual Value & find(const std::string &key) const =0
Gets a value corresponding to a given keyword.
#define yCInfo(component,...)
#define yCError(component,...)
#define YARP_LOG_COMPONENT(name,...)