MoveIt Pro Behavior
Core Behaviors for MoveIt Pro
moveit_studio::behaviors::AddTool Class Referencefinal

This Behavior sends a request to add a tool to the planning scene as a collision object. More...

#include <add_tool.hpp>

Inheritance diagram for moveit_studio::behaviors::AddTool:
Collaboration diagram for moveit_studio::behaviors::AddTool:

Public Types

using AddToolSrv = moveit_studio_agent_msgs::srv::AddTool
 

Public Member Functions

 AddTool (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources)
 
 AddTool (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources, std::unique_ptr< ClientInterfaceBase< AddToolSrv >> client_interface)
 
- Public Member Functions inherited from moveit_studio::behaviors::ServiceClientBehaviorBase< moveit_studio_agent_msgs::srv::AddTool >
 ServiceClientBehaviorBase (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources)
 Constructs ServiceClientBehaviorBase using the RclcppClientInterface. More...
 
 ServiceClientBehaviorBase (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources, std::unique_ptr< ClientInterfaceBase< moveit_studio_agent_msgs::srv::AddTool >> client_interface)
 Constructs ServiceClientBehaviorBase using a user-provided implementation of ClientInterfaceBase. More...
 
virtual ~ServiceClientBehaviorBase ()=default
 
- Public Member Functions inherited from moveit_studio::behaviors::AsyncBehaviorBase
 AsyncBehaviorBase (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources)
 
virtual ~AsyncBehaviorBase ()=default
 
BT::NodeStatus onStart () override
 Required implementation of BT::StatefulActionNode::onStart(). More...
 
BT::NodeStatus onRunning () override
 Required implementation of BT::StatefulActionNode::onRunning(). More...
 
void onHalted () override
 Required implementation of BT::StatefulActionNode::onHalted(). More...
 
void resetStatus ()
 Resets the internal status of this node. More...
 
- Public Member Functions inherited from moveit_studio::behaviors::SharedResourcesNode< BT::StatefulActionNode >
 SharedResourcesNode (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources)
 Constructor for SharedResourcesNode. Called by BT::BehaviorTreeFactory when creating a new behavior tree containing this node. More...
 

Static Public Member Functions

static BT::PortsList providedPorts ()
 
static BT::KeyValueVector metadata ()
 

Static Public Attributes

static constexpr auto kToolNamePort = "tool_name"
 
static constexpr auto kPackageNamePort = "package_name"
 
static constexpr auto kToolUrdfFilePort = "tool_urdf_file_path"
 
static constexpr auto kToolPosePort = "relative_pose"
 
- Static Public Attributes inherited from moveit_studio::behaviors::ServiceClientBehaviorBase< moveit_studio_agent_msgs::srv::AddTool >
static constexpr std::chrono::seconds kTimeoutWaitForServiceServer
 

Additional Inherited Members

- Protected Member Functions inherited from moveit_studio::behaviors::ServiceClientBehaviorBase< moveit_studio_agent_msgs::srv::AddTool >
virtual tl::expected< bool, std::string > processResponse (const typename ServiceT::Response &)
 Optional user-provided function to process the service response after the service has finished. More...
 
- Protected Member Functions inherited from moveit_studio::behaviors::AsyncBehaviorBase
void notifyCanHalt ()
 Called when runAsync() finishes to notify onHalted() that the async process has finished. More...
 
- Protected Attributes inherited from moveit_studio::behaviors::SharedResourcesNode< BT::StatefulActionNode >
std::shared_ptr< BehaviorContextshared_resources_
 

Detailed Description

This Behavior sends a request to add a tool to the planning scene as a collision object.

The tool is added to the planning scene at the specified pose. The tool is given as a URDF file, which describes the kinematics and collision geometry.

See also AttachTool for attaching a tool.

Data Port Name Port Type Object Type
tool_name input std::string
package_name input std::string
tool_urdf_file input std::string
tool_pose input geometry_msgs::msg::PoseStamped

Member Typedef Documentation

◆ AddToolSrv

using moveit_studio::behaviors::AddTool::AddToolSrv = moveit_studio_agent_msgs::srv::AddTool

Constructor & Destructor Documentation

◆ AddTool() [1/2]

moveit_studio::behaviors::AddTool::AddTool ( const std::string &  name,
const BT::NodeConfiguration &  config,
const std::shared_ptr< BehaviorContext > &  shared_resources 
)
explicit

◆ AddTool() [2/2]

moveit_studio::behaviors::AddTool::AddTool ( const std::string &  name,
const BT::NodeConfiguration &  config,
const std::shared_ptr< BehaviorContext > &  shared_resources,
std::unique_ptr< ClientInterfaceBase< AddToolSrv >>  client_interface 
)
explicit

Member Function Documentation

◆ metadata()

BT::KeyValueVector moveit_studio::behaviors::AddTool::metadata ( )
static

◆ providedPorts()

BT::PortsList moveit_studio::behaviors::AddTool::providedPorts ( )
static

Member Data Documentation

◆ kPackageNamePort

constexpr auto moveit_studio::behaviors::AddTool::kPackageNamePort = "package_name"
staticconstexpr

◆ kToolNamePort

constexpr auto moveit_studio::behaviors::AddTool::kToolNamePort = "tool_name"
staticconstexpr

◆ kToolPosePort

constexpr auto moveit_studio::behaviors::AddTool::kToolPosePort = "relative_pose"
staticconstexpr

◆ kToolUrdfFilePort

constexpr auto moveit_studio::behaviors::AddTool::kToolUrdfFilePort = "tool_urdf_file_path"
staticconstexpr

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