15 #ifndef HARDWARE_INTERFACE__SENSOR_HPP_
16 #define HARDWARE_INTERFACE__SENSOR_HPP_
23 #include "hardware_interface/handle.hpp"
24 #include "hardware_interface/hardware_info.hpp"
25 #include "hardware_interface/types/hardware_interface_return_values.hpp"
26 #include "hardware_interface/visibility_control.h"
27 #include "rclcpp_lifecycle/state.hpp"
31 class SensorInterface;
38 HARDWARE_INTERFACE_PUBLIC
39 explicit Sensor(std::unique_ptr<SensorInterface> impl);
45 HARDWARE_INTERFACE_PUBLIC
46 const rclcpp_lifecycle::State & initialize(
const HardwareInfo & sensor_info);
48 HARDWARE_INTERFACE_PUBLIC
49 const rclcpp_lifecycle::State & configure();
51 HARDWARE_INTERFACE_PUBLIC
52 const rclcpp_lifecycle::State & cleanup();
54 HARDWARE_INTERFACE_PUBLIC
55 const rclcpp_lifecycle::State & shutdown();
57 HARDWARE_INTERFACE_PUBLIC
58 const rclcpp_lifecycle::State & activate();
60 HARDWARE_INTERFACE_PUBLIC
61 const rclcpp_lifecycle::State & deactivate();
63 HARDWARE_INTERFACE_PUBLIC
64 const rclcpp_lifecycle::State & error();
66 HARDWARE_INTERFACE_PUBLIC
67 std::vector<StateInterface> export_state_interfaces();
69 HARDWARE_INTERFACE_PUBLIC
70 std::string get_name()
const;
72 HARDWARE_INTERFACE_PUBLIC
73 const rclcpp_lifecycle::State & get_state()
const;
75 HARDWARE_INTERFACE_PUBLIC
79 std::unique_ptr<SensorInterface> impl_;
Definition: sensor.hpp:34
Definition: actuator.hpp:29
This structure stores information about hardware defined in a robot's URDF.
Definition: hardware_info.hpp:101