cd ~/catkin_ws/src
git clone https://github.com/ivogeorg/robot_info.git
roscore
rosrun robot_info robot_info_node
or rosrun robot_info agv_robot_info_node
rostopic echo /robot_info
(in another terminal)
- There are 2 other tags that delimit different implementations.
- The
AGVRobotInfo::publish_data
implementation is less elegant in order to adhere to the requirement that the function isvirtual
in theRobotInfo
base class and overriden in the derived class. - The implementation of the
HydraulicSystemMonitor
is overengineered in order to adhere to the requirement that there is at least one method. Initially, the data fields werepublic
and accessed directly, but they were converted to (implicitly)private
in order to provide aget_params()
method. I used the opportunity to try out move semantics. This also required thatsrc/hydraulic_system_monitor.cpp
be added to theagv_robot_info_node
executable.