6#ifndef YARP_ROS2_RANGEFINDER2D_CONTROLBOARD_NWS_ROS2_H
7#define YARP_ROS2_RANGEFINDER2D_CONTROLBOARD_NWS_ROS2_H
19#include <rclcpp/rclcpp.hpp>
20#include <std_msgs/msg/string.hpp>
22#include <sensor_msgs/msg/laser_scan.hpp>
23#include <sensor_msgs/msg/joint_state.hpp>
53 bool attach(
yarp::dev::PolyDriver* driver) override;
57 bool open(
yarp::os::Searchable& config) override;
58 bool close() override;
67 yarp::dev::PolyDriver m_driver;
69 yarp::dev::IRangefinder2D *m_iLidar =
nullptr;
70 yarp::dev::IPositionControl* iPositionControl{
nullptr};
74 std::vector<std::string> jointNames;
75 size_t subdevice_joints {0};
78 rclcpp::Node::SharedPtr m_node;
79 rclcpp::Publisher<sensor_msgs::msg::LaserScan>::SharedPtr m_publisher_laser;
80 rclcpp::Publisher<sensor_msgs::msg::JointState>::SharedPtr m_publisher_joint;
81 bool m_isDeviceReady =
false;
84 double m_minAngle, m_maxAngle;
85 double m_minDistance, m_maxDistance;
87 sensor_msgs::msg::JointState m_ros_struct;
define control board standard interfaces
This class is the parameters parser for class Rangefinder2D_controlBoard_nws_ros2.
Rangefinder2D_nws_ros2: A Network grabber that simultaneously publishes the joint states and the meas...
bool detach() override
Detach the object (you must have first called attach).
bool close() override
Close the DeviceDriver.
Rangefinder2D_controlBoard_nws_ros2(const Rangefinder2D_controlBoard_nws_ros2 &)=delete
void run() override
Loop function.
bool attach(yarp::dev::PolyDriver *driver) override
Attach to another object.
Rangefinder2D_controlBoard_nws_ros2()
bool setDevice(yarp::dev::DeviceDriver *device)
bool open(yarp::os::Searchable &config) override
Open the DeviceDriver.
Rangefinder2D_controlBoard_nws_ros2(Rangefinder2D_controlBoard_nws_ros2 &&) noexcept=delete
Interface implemented by all device drivers.
Interface for getting information about specific axes, if available.
Control board, extend encoder interface with timestamps.
Interface for control boards implementing torque control.
Helper interface for an object that can wrap/or "attach" to a single other device.
An abstraction for a periodic thread.
The main, catch-all namespace for YARP.