15 #ifndef HARDWARE_INTERFACE__ACTUATOR_HPP_
16 #define HARDWARE_INTERFACE__ACTUATOR_HPP_
22 #include "hardware_interface/handle.hpp"
23 #include "hardware_interface/hardware_info.hpp"
24 #include "hardware_interface/types/hardware_interface_return_values.hpp"
25 #include "hardware_interface/visibility_control.h"
26 #include "rclcpp_lifecycle/state.hpp"
37 HARDWARE_INTERFACE_PUBLIC
38 explicit Actuator(std::unique_ptr<ActuatorInterface> impl);
44 HARDWARE_INTERFACE_PUBLIC
45 const rclcpp_lifecycle::State & initialize(
const HardwareInfo & actuator_info);
47 HARDWARE_INTERFACE_PUBLIC
48 const rclcpp_lifecycle::State & configure();
50 HARDWARE_INTERFACE_PUBLIC
51 const rclcpp_lifecycle::State & cleanup();
53 HARDWARE_INTERFACE_PUBLIC
54 const rclcpp_lifecycle::State & shutdown();
56 HARDWARE_INTERFACE_PUBLIC
57 const rclcpp_lifecycle::State & activate();
59 HARDWARE_INTERFACE_PUBLIC
60 const rclcpp_lifecycle::State & deactivate();
62 HARDWARE_INTERFACE_PUBLIC
63 const rclcpp_lifecycle::State & error();
65 HARDWARE_INTERFACE_PUBLIC
66 std::vector<StateInterface> export_state_interfaces();
68 HARDWARE_INTERFACE_PUBLIC
69 std::vector<CommandInterface> export_command_interfaces();
71 HARDWARE_INTERFACE_PUBLIC
72 return_type prepare_command_mode_switch(
73 const std::vector<std::string> & start_interfaces,
74 const std::vector<std::string> & stop_interfaces);
76 HARDWARE_INTERFACE_PUBLIC
77 return_type perform_command_mode_switch(
78 const std::vector<std::string> & start_interfaces,
79 const std::vector<std::string> & stop_interfaces);
81 HARDWARE_INTERFACE_PUBLIC
82 std::string get_name()
const;
84 HARDWARE_INTERFACE_PUBLIC
85 const rclcpp_lifecycle::State & get_state()
const;
87 HARDWARE_INTERFACE_PUBLIC
90 HARDWARE_INTERFACE_PUBLIC
94 std::unique_ptr<ActuatorInterface> impl_;
Virtual Class to implement when integrating a 1 DoF actuator into ros2_control.
Definition: actuator_interface.hpp:67
Definition: actuator.hpp:33
Definition: actuator.hpp:29
This structure stores information about hardware defined in a robot's URDF.
Definition: hardware_info.hpp:101