ros2_control - rolling
Protected Types | Protected Member Functions | Protected Attributes | List of all members
forward_command_controller::MultiInterfaceForwardCommandController Class Reference

Multi interface forward command controller for a set of interfaces. More...

#include <multi_interface_forward_command_controller.hpp>

Inheritance diagram for forward_command_controller::MultiInterfaceForwardCommandController:
Inheritance graph
[legend]
Collaboration diagram for forward_command_controller::MultiInterfaceForwardCommandController:
Collaboration graph
[legend]

Protected Types

using Params = multi_interface_forward_command_controller::Params
 
using ParamListener = multi_interface_forward_command_controller::ParamListener
 

Protected Member Functions

void declare_parameters () override
 
controller_interface::CallbackReturn read_parameters () override
 

Protected Attributes

std::shared_ptr< ParamListener > param_listener_
 
Params params_
 
- Protected Attributes inherited from forward_command_controller::ForwardControllersBase
std::vector< std::string > joint_names_
 
std::string interface_name_
 
std::vector< std::string > command_interface_types_
 
realtime_tools::RealtimeBuffer< std::shared_ptr< CmdType > > rt_command_ptr_
 
rclcpp::Subscription< CmdType >::SharedPtr joints_command_subscriber_
 
- Protected Attributes inherited from controller_interface::ControllerInterfaceBase
std::vector< hardware_interface::LoanedCommandInterfacecommand_interfaces_
 
std::vector< hardware_interface::LoanedStateInterfacestate_interfaces_
 

Additional Inherited Members

- Public Member Functions inherited from forward_command_controller::ForwardControllersBase
FORWARD_COMMAND_CONTROLLER_PUBLIC controller_interface::InterfaceConfiguration command_interface_configuration () const override
 Get configuration for controller's required command interfaces. More...
 
FORWARD_COMMAND_CONTROLLER_PUBLIC controller_interface::InterfaceConfiguration state_interface_configuration () const override
 Get configuration for controller's required state interfaces. More...
 
FORWARD_COMMAND_CONTROLLER_PUBLIC controller_interface::CallbackReturn on_init () override
 Extending interface with initialization method which is individual for each controller.
 
FORWARD_COMMAND_CONTROLLER_PUBLIC controller_interface::CallbackReturn on_configure (const rclcpp_lifecycle::State &previous_state) override
 
FORWARD_COMMAND_CONTROLLER_PUBLIC controller_interface::CallbackReturn on_activate (const rclcpp_lifecycle::State &previous_state) override
 
FORWARD_COMMAND_CONTROLLER_PUBLIC controller_interface::CallbackReturn on_deactivate (const rclcpp_lifecycle::State &previous_state) override
 
FORWARD_COMMAND_CONTROLLER_PUBLIC controller_interface::return_type update (const rclcpp::Time &time, const rclcpp::Duration &period) override
 
- Public Member Functions inherited from controller_interface::ControllerInterface
CONTROLLER_INTERFACE_PUBLIC bool is_chainable () const final
 
CONTROLLER_INTERFACE_PUBLIC std::vector< hardware_interface::StateInterfaceexport_state_interfaces () final
 
CONTROLLER_INTERFACE_PUBLIC std::vector< hardware_interface::CommandInterfaceexport_reference_interfaces () final
 
CONTROLLER_INTERFACE_PUBLIC bool set_chained_mode (bool chained_mode) final
 
CONTROLLER_INTERFACE_PUBLIC bool is_in_chained_mode () const final
 
- Public Member Functions inherited from controller_interface::ControllerInterfaceBase
virtual CONTROLLER_INTERFACE_PUBLIC void assign_interfaces (std::vector< hardware_interface::LoanedCommandInterface > &&command_interfaces, std::vector< hardware_interface::LoanedStateInterface > &&state_interfaces)
 Method that assigns the Loaned interfaces to the controller. More...
 
virtual CONTROLLER_INTERFACE_PUBLIC void release_interfaces ()
 Method that releases the Loaned interfaces from the controller. More...
 
CONTROLLER_INTERFACE_PUBLIC return_type init (const std::string &controller_name, const std::string &urdf, unsigned int cm_update_rate, const std::string &node_namespace, const rclcpp::NodeOptions &node_options)
 
CONTROLLER_INTERFACE_PUBLIC const rclcpp_lifecycle::State & configure ()
 Custom configure method to read additional parameters for controller-nodes.
 
CONTROLLER_INTERFACE_PUBLIC std::shared_ptr< rclcpp_lifecycle::LifecycleNode > get_node ()
 
CONTROLLER_INTERFACE_PUBLIC std::shared_ptr< const rclcpp_lifecycle::LifecycleNode > get_node () const
 
CONTROLLER_INTERFACE_PUBLIC const rclcpp_lifecycle::State & get_lifecycle_state () const
 
CONTROLLER_INTERFACE_PUBLIC unsigned int get_update_rate () const
 
CONTROLLER_INTERFACE_PUBLIC bool is_async () const
 
CONTROLLER_INTERFACE_PUBLIC const std::string & get_robot_description () const
 
virtual CONTROLLER_INTERFACE_PUBLIC rclcpp::NodeOptions define_custom_node_options () const
 
template<typename ParameterT >
auto auto_declare (const std::string &name, const ParameterT &default_value)
 Declare and initialize a parameter with a type. More...
 

Detailed Description

Multi interface forward command controller for a set of interfaces.

This class forwards the command signal down to a set of interfaces on the specified joint.

Parameters
jointName of the joint to control.
interface_namesNames of the interfaces to command.

Subscribes to:

Member Function Documentation

◆ declare_parameters()

void forward_command_controller::MultiInterfaceForwardCommandController::declare_parameters ( )
overrideprotectedvirtual

Derived controllers have to declare parameters in this method. Error handling does not have to be done. It is done in on_init-method of this class.

Implements forward_command_controller::ForwardControllersBase.

◆ read_parameters()

controller_interface::CallbackReturn forward_command_controller::MultiInterfaceForwardCommandController::read_parameters ( )
overrideprotectedvirtual

Derived controllers have to read parameters in this method and set command_interface_types_ variable. The variable is then used to propagate the command interface configuration to controller manager. The method is called from on_configure-method of this class.

It is expected that error handling of exceptions is done.

Returns
controller_interface::CallbackReturn::SUCCESS if parameters are successfully read and their values are allowed, controller_interface::CallbackReturn::ERROR otherwise.

Implements forward_command_controller::ForwardControllersBase.


The documentation for this class was generated from the following files: