MoveItMultiControllerManager discovers all running ros_control node and delegates member function to the corresponding MoveItControllerManager instances. More...
Public Member Functions | |
virtual void | getActiveControllers (std::vector< std::string > &names) |
Read all active, managed controllers from discovered interfaces. | |
virtual moveit_controller_manager::MoveItControllerHandlePtr | getControllerHandle (const std::string &name) |
Find appropriate interface and delegate handle creation. | |
virtual void | getControllerJoints (const std::string &name, std::vector< std::string > &joints) |
Find appropriate interface and delegate joints query. | |
virtual void | getControllersList (std::vector< std::string > &names) |
Read all managed controllers from discovered interfaces. | |
virtual ControllerState | getControllerState (const std::string &name) |
Find appropriate interface and delegate state query. | |
virtual bool | switchControllers (const std::vector< std::string > &activate, const std::vector< std::string > &deactivate) |
delegates switch to all known interfaces. Stops of first failing switch. | |
Private Types | |
typedef std::map< std::string, moveit_ros_control_interface::MoveItControllerManagerPtr > | ControllerManagersMap |
Private Member Functions | |
void | discover () |
Poll ROS master for services and filters all controller_manager/list_controllers instances Throttled down to 1 Hz, controller_managers_mutex_ must be locked externally. | |
Static Private Member Functions | |
static std::string | getNamespace (const std::string &name) |
Get namespace (including leading and trailing slashes) from controller name. | |
Private Attributes | |
ControllerManagersMap | controller_managers_ |
boost::mutex | controller_managers_mutex_ |
ros::Time | controller_managers_stamp_ |
MoveItMultiControllerManager discovers all running ros_control node and delegates member function to the corresponding MoveItControllerManager instances.
Definition at line 350 of file controller_manager_plugin.cpp.
typedef std::map<std::string, moveit_ros_control_interface::MoveItControllerManagerPtr> moveit_ros_control_interface::MoveItMultiControllerManager::ControllerManagersMap [private] |
Definition at line 352 of file controller_manager_plugin.cpp.
void moveit_ros_control_interface::MoveItMultiControllerManager::discover | ( | ) | [inline, private] |
Poll ROS master for services and filters all controller_manager/list_controllers instances Throttled down to 1 Hz, controller_managers_mutex_ must be locked externally.
Definition at line 361 of file controller_manager_plugin.cpp.
virtual void moveit_ros_control_interface::MoveItMultiControllerManager::getActiveControllers | ( | std::vector< std::string > & | names | ) | [inline, virtual] |
Read all active, managed controllers from discovered interfaces.
names |
Implements moveit_controller_manager::MoveItControllerManager.
Definition at line 445 of file controller_manager_plugin.cpp.
virtual moveit_controller_manager::MoveItControllerHandlePtr moveit_ros_control_interface::MoveItMultiControllerManager::getControllerHandle | ( | const std::string & | name | ) | [inline, virtual] |
Find appropriate interface and delegate handle creation.
name |
Implements moveit_controller_manager::MoveItControllerManager.
Definition at line 413 of file controller_manager_plugin.cpp.
virtual void moveit_ros_control_interface::MoveItMultiControllerManager::getControllerJoints | ( | const std::string & | name, |
std::vector< std::string > & | joints | ||
) | [inline, virtual] |
Find appropriate interface and delegate joints query.
name | |
joints |
Implements moveit_controller_manager::MoveItControllerManager.
Definition at line 461 of file controller_manager_plugin.cpp.
virtual void moveit_ros_control_interface::MoveItMultiControllerManager::getControllersList | ( | std::vector< std::string > & | names | ) | [inline, virtual] |
Read all managed controllers from discovered interfaces.
names |
Implements moveit_controller_manager::MoveItControllerManager.
Definition at line 430 of file controller_manager_plugin.cpp.
virtual ControllerState moveit_ros_control_interface::MoveItMultiControllerManager::getControllerState | ( | const std::string & | name | ) | [inline, virtual] |
Find appropriate interface and delegate state query.
name |
Implements moveit_controller_manager::MoveItControllerManager.
Definition at line 478 of file controller_manager_plugin.cpp.
static std::string moveit_ros_control_interface::MoveItMultiControllerManager::getNamespace | ( | const std::string & | name | ) | [inline, static, private] |
Get namespace (including leading and trailing slashes) from controller name.
name |
Definition at line 399 of file controller_manager_plugin.cpp.
virtual bool moveit_ros_control_interface::MoveItMultiControllerManager::switchControllers | ( | const std::vector< std::string > & | activate, |
const std::vector< std::string > & | deactivate | ||
) | [inline, virtual] |
delegates switch to all known interfaces. Stops of first failing switch.
activate | |
deactivate |
Implements moveit_controller_manager::MoveItControllerManager.
Definition at line 497 of file controller_manager_plugin.cpp.
ControllerManagersMap moveit_ros_control_interface::MoveItMultiControllerManager::controller_managers_ [private] |
Definition at line 353 of file controller_manager_plugin.cpp.
boost::mutex moveit_ros_control_interface::MoveItMultiControllerManager::controller_managers_mutex_ [private] |
Definition at line 355 of file controller_manager_plugin.cpp.
ros::Time moveit_ros_control_interface::MoveItMultiControllerManager::controller_managers_stamp_ [private] |
Definition at line 354 of file controller_manager_plugin.cpp.