8 ROS_INFO_STREAM(
"[XBot2Hal constructor]: wait for xbot2core and gazebo to be ready...");
33 std::string path_to_config_file = XBot::Utils::getXBotConfig();
35 _robot = XBot::RobotInterface::getRobot(path_to_config_file);
55 ROS_ERROR_STREAM(
"[XBot2Hal::" << __func__ <<
"] size of _js_msg is different from the size" <<
56 " or what received from the robot (_jointPositionActualMap)");
65 _js_msg.position.at(i) = it.second;
75 for (
int i=0; i<
_mr_msg.position.size(); i++) {
sensor_msgs::JointState _mr_msg
XBot2Hal(ros::NodeHandle *nh)
XBot::JointNameMap _jointPositionActualMap
XBot::RobotInterface::Ptr _robot
Class representing an end-effector.
XBot::JointNameMap _jointPositionReferenceMap
#define ROS_INFO_STREAM(args)
virtual bool sense() override
sensor_msgs::JointState _js_msg
virtual bool move() override
#define ROS_ERROR_STREAM(args)
ROSCPP_DECL bool waitForService(const std::string &service_name, int32_t timeout)