15 #ifndef HARDWARE_INTERFACE__SYSTEM_INTERFACE_HPP_ 16 #define HARDWARE_INTERFACE__SYSTEM_INTERFACE_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/types/hardware_interface_status_values.hpp" 26 #include "hardware_interface/visibility_control.h" 87 const std::vector<std::string> & ,
88 const std::vector<std::string> & )
90 return return_type::OK;
106 const std::vector<std::string> & ,
107 const std::vector<std::string> & )
109 return return_type::OK;
116 virtual return_type
start() = 0;
122 virtual return_type
stop() = 0;
128 virtual std::string
get_name()
const = 0;
144 virtual return_type
read() = 0;
153 virtual return_type
write() = 0;
157 #endif // HARDWARE_INTERFACE__SYSTEM_INTERFACE_HPP_ virtual return_type perform_command_mode_switch(const std::vector< std::string > &, const std::vector< std::string > &)
Definition: system_interface.hpp:105
virtual std::vector< StateInterface > export_state_interfaces()=0
Exports all state interfaces for this system.
virtual status get_status() const =0
Get current state of the system hardware.
Definition: actuator.hpp:28
virtual return_type configure(const HardwareInfo &system_info)=0
Configuration of the system from data parsed from the robot's URDF.
Virtual Class to implement when integrating a complex system into ros2_control.
Definition: system_interface.hpp:35
virtual std::string get_name() const =0
Get name of the system hardware.
virtual std::vector< CommandInterface > export_command_interfaces()=0
Exports all command interfaces for this system.
This structure stores information about hardware defined in a robot's URDF.
Definition: hardware_info.hpp:100
virtual return_type prepare_command_mode_switch(const std::vector< std::string > &, const std::vector< std::string > &)
Prepare for a new command interface switch.
Definition: system_interface.hpp:86
virtual return_type stop()=0
Stop exchange data with the hardware.
virtual return_type read()=0
Read the current state values from the actuators and sensors within the system.
virtual return_type start()=0
Start exchange data with the hardware.
virtual return_type write()=0
Write the current command values to the actuator within the system.