ros2_control - humble
|
Public Member Functions | |
template<class HardwareT , class HardwareInterfaceT > | |
void | load_hardware (const HardwareInfo &hardware_info, pluginlib::ClassLoader< HardwareInterfaceT > &loader, std::vector< HardwareT > &container) |
template<class HardwareT > | |
bool | initialize_hardware (const HardwareInfo &hardware_info, HardwareT &hardware) |
template<class HardwareT > | |
bool | configure_hardware (HardwareT &hardware) |
void | remove_all_hardware_interfaces_from_available_list (const std::string &hardware_name) |
template<class HardwareT > | |
bool | cleanup_hardware (HardwareT &hardware) |
template<class HardwareT > | |
bool | shutdown_hardware (HardwareT &hardware) |
template<class HardwareT > | |
bool | activate_hardware (HardwareT &hardware) |
template<class HardwareT > | |
bool | deactivate_hardware (HardwareT &hardware) |
template<class HardwareT > | |
bool | set_component_state (HardwareT &hardware, const rclcpp_lifecycle::State &target_state) |
template<class HardwareT > | |
void | import_state_interfaces (HardwareT &hardware) |
template<class HardwareT > | |
void | import_command_interfaces (HardwareT &hardware) |
std::vector< std::string > | add_command_interfaces (std::vector< CommandInterface > &interfaces) |
Adds exported command interfaces into internal storage. More... | |
void | remove_command_interfaces (const std::vector< std::string > &interface_names) |
Removes command interfaces from internal storage. More... | |
void | check_for_duplicates (const HardwareInfo &hardware_info) |
void | load_and_initialize_actuator (const HardwareInfo &hardware_info) |
void | load_and_initialize_sensor (const HardwareInfo &hardware_info) |
void | load_and_initialize_system (const HardwareInfo &hardware_info) |
void | initialize_actuator (std::unique_ptr< ActuatorInterface > actuator, const HardwareInfo &hardware_info) |
void | initialize_sensor (std::unique_ptr< SensorInterface > sensor, const HardwareInfo &hardware_info) |
void | initialize_system (std::unique_ptr< SystemInterface > system, const HardwareInfo &hardware_info) |
Public Attributes | |
pluginlib::ClassLoader< ActuatorInterface > | actuator_loader_ |
pluginlib::ClassLoader< SensorInterface > | sensor_loader_ |
pluginlib::ClassLoader< SystemInterface > | system_loader_ |
std::vector< Actuator > | actuators_ |
std::vector< Sensor > | sensors_ |
std::vector< System > | systems_ |
std::unordered_map< std::string, HardwareComponentInfo > | hardware_info_map_ |
std::unordered_map< std::string, std::vector< std::string > > | hardware_used_by_controllers_ |
Mapping between hardware and controllers that are using it (accessing data from it) | |
std::unordered_map< std::string, std::vector< std::string > > | controllers_reference_interfaces_map_ |
Mapping between controllers and list of reference interfaces they are using. | |
std::map< std::string, StateInterface > | state_interface_map_ |
Storage of all available state interfaces. | |
std::map< std::string, CommandInterface > | command_interface_map_ |
Storage of all available command interfaces. | |
std::vector< std::string > | available_state_interfaces_ |
Vectors with interfaces available to controllers (depending on hardware component state) | |
std::vector< std::string > | available_command_interfaces_ |
std::unordered_map< std::string, bool > | claimed_command_interface_map_ |
List of all claimed command interfaces. | |
|
inline |
Adds exported command interfaces into internal storage.
Add command interfaces to the internal storage. Command interfaces exported from hardware or chainable controllers are moved to the map with name-interface pairs, the interface names are added to the claimed map and available list's size is increased to reserve storage when interface change theirs status in real-time control loop.
[interfaces] | list of command interface to add into storage. |
|
inline |
Removes command interfaces from internal storage.
Command interface are removed from the maps with theirs storage and their claimed status.
[interface_names] | list of command interface names to remove from storage. |