15 #ifndef HARDWARE_INTERFACE__SYSTEM_HPP_ 16 #define HARDWARE_INTERFACE__SYSTEM_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/types/hardware_interface_status_values.hpp" 27 #include "hardware_interface/visibility_control.h" 31 class SystemInterface;
36 HARDWARE_INTERFACE_PUBLIC
37 explicit System(std::unique_ptr<SystemInterface> impl);
39 System(System && other) =
default;
43 HARDWARE_INTERFACE_PUBLIC
46 HARDWARE_INTERFACE_PUBLIC
47 std::vector<StateInterface> export_state_interfaces();
49 HARDWARE_INTERFACE_PUBLIC
50 std::vector<CommandInterface> export_command_interfaces();
52 HARDWARE_INTERFACE_PUBLIC
53 return_type prepare_command_mode_switch(
54 const std::vector<std::string> & start_interfaces,
55 const std::vector<std::string> & stop_interfaces);
57 HARDWARE_INTERFACE_PUBLIC
58 return_type perform_command_mode_switch(
59 const std::vector<std::string> & start_interfaces,
60 const std::vector<std::string> & stop_interfaces);
62 HARDWARE_INTERFACE_PUBLIC
65 HARDWARE_INTERFACE_PUBLIC
68 HARDWARE_INTERFACE_PUBLIC
69 std::string get_name()
const;
71 HARDWARE_INTERFACE_PUBLIC
72 status get_status()
const;
74 HARDWARE_INTERFACE_PUBLIC
77 HARDWARE_INTERFACE_PUBLIC
81 std::unique_ptr<SystemInterface> impl_;
85 #endif // HARDWARE_INTERFACE__SYSTEM_HPP_ Definition: actuator.hpp:28
This structure stores information about hardware defined in a robot's URDF.
Definition: hardware_info.hpp:100
Definition: system.hpp:33