MoveIt Pro API
Core Behaviors for MoveIt Pro
Loading...
Searching...
No Matches
moveit_pro::behaviors::DetachOrRemoveTool Class Referencefinal

This Behavior sends a request to detach a tool from a robot or remove it from the planning scene. More...

#include <detach_or_remove_tool.hpp>

Inheritance diagram for moveit_pro::behaviors::DetachOrRemoveTool:
Collaboration diagram for moveit_pro::behaviors::DetachOrRemoveTool:

Public Member Functions

 DetachOrRemoveTool (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources)
 
 DetachOrRemoveTool (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources, std::unique_ptr< ClientInterfaceBase< DetachOrRemoveURDFSrv > > client_interface)
 
- Public Member Functions inherited from moveit_pro::behaviors::DetachOrRemoveURDF
 DetachOrRemoveURDF (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources)
 
 DetachOrRemoveURDF (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources, std::unique_ptr< ClientInterfaceBase< DetachOrRemoveURDFSrv > > client_interface)
 
void setServiceName (std::string service_name)
 Set the service name this Behavior targets. Derived classes call this from their constructor.
 
- Public Member Functions inherited from moveit_pro::behaviors::ServiceClientBehaviorBase< moveit_studio_agent_msgs::srv::DetachOrRemoveURDF >
 ServiceClientBehaviorBase (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources)
 Constructs ServiceClientBehaviorBase using the RclcppClientInterface.
 
 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::DetachOrRemoveURDF > > client_interface)
 Constructs ServiceClientBehaviorBase using a user-provided implementation of ClientInterfaceBase.
 
 ~ServiceClientBehaviorBase () override=default
 
virtual tl::expected< std::chrono::duration< double >, std::string > getWaitForServerAvailableTimeout ()
 Optional user-provided function to set the timeout used when waiting for the service server to be available.
 
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.
 
tl::expected< void, std::string > doHalt () override
 Handles halting logic which is specific to the service client behavior implementation.
 
- Public Member Functions inherited from moveit_pro::behaviors::AsyncBehaviorBase
 AsyncBehaviorBase (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources)
 
 ~AsyncBehaviorBase () override=default
 
BT::NodeStatus onStart () override
 Required implementation of BT::StatefulActionNode::onStart().
 
BT::NodeStatus onRunning () override
 Required implementation of BT::StatefulActionNode::onRunning().
 
void onHalted () override
 Required implementation of BT::StatefulActionNode::onHalted().
 
void resetStatus ()
 Resets the internal status of this node.
 
void notifyCanHalt ()
 Called when runAsync() finishes to notify onHalted() that the async process has finished.
 
- Public Member Functions inherited from moveit_pro::behaviors::SharedResourcesNode< BT::StatefulActionNode >
 SharedResourcesNode (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &behavior_context)
 Constructor for SharedResourcesNode. Called by BT::BehaviorTreeFactory when creating a new behavior tree containing this node.
 
const std::shared_ptr< BehaviorContext > & getBehaviorContext () const
 

Static Public Member Functions

static BT::PortsList providedPorts ()
 
static BT::KeyValueVector metadata ()
 
- Static Public Member Functions inherited from moveit_pro::behaviors::DetachOrRemoveURDF
static BT::PortsList providedPorts ()
 

Static Public Attributes

static constexpr auto kToolNamePort = "tool_name"
 
static constexpr auto kDetachToolBehaviorName = "DetachTool"
 
static constexpr auto kRemoveToolFromSceneBehaviorName = "RemoveToolFromScene"
 
- Static Public Attributes inherited from moveit_pro::behaviors::DetachOrRemoveURDF
static constexpr auto kDefaultUrdfNamePort = "urdf_name"
 
static constexpr auto kDetachURDFBehaviorName = "DetachURDF"
 
static constexpr auto kRemoveURDFFromSceneBehaviorName = "RemoveURDFFromScene"
 
static constexpr auto kDetachURDFServiceName = "detach_urdf"
 
static constexpr auto kRemoveURDFFromSceneServiceName = "remove_urdf_from_scene"
 
- Static Public Attributes inherited from moveit_pro::behaviors::ServiceClientBehaviorBase< moveit_studio_agent_msgs::srv::DetachOrRemoveURDF >
static constexpr std::chrono::seconds kTimeoutWaitForServiceServer
 

Additional Inherited Members

- Public Types inherited from moveit_pro::behaviors::DetachOrRemoveURDF
using DetachOrRemoveURDFSrv = moveit_studio_agent_msgs::srv::DetachOrRemoveURDF
 

Detailed Description

This Behavior sends a request to detach a tool from a robot or remove it from the planning scene.

Deprecated:
This behavior is deprecated. Use DetachURDF or RemoveURDFFromScene instead.

The tool with the given tool_name will be detached from the robot or removed from the planning scene depending on which service is specified. If detached, the tool will no longer move with the robot and will not be considered in motion planning calculations. If removed, the tool will no longer be able to be attached to the robot until it is added to the planning scene again.

Data Port Name Port Type Object Type
tool_name input std::string

Constructor & Destructor Documentation

◆ DetachOrRemoveTool() [1/2]

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

◆ DetachOrRemoveTool() [2/2]

moveit_pro::behaviors::DetachOrRemoveTool::DetachOrRemoveTool ( const std::string &  name,
const BT::NodeConfiguration &  config,
const std::shared_ptr< BehaviorContext > &  shared_resources,
std::unique_ptr< ClientInterfaceBase< DetachOrRemoveURDFSrv > >  client_interface 
)
explicit

Member Function Documentation

◆ metadata()

BT::KeyValueVector moveit_pro::behaviors::DetachOrRemoveTool::metadata ( )
static

◆ providedPorts()

BT::PortsList moveit_pro::behaviors::DetachOrRemoveTool::providedPorts ( )
static

Member Data Documentation

◆ kDetachToolBehaviorName

constexpr auto moveit_pro::behaviors::DetachOrRemoveTool::kDetachToolBehaviorName = "DetachTool"
staticconstexpr

◆ kRemoveToolFromSceneBehaviorName

constexpr auto moveit_pro::behaviors::DetachOrRemoveTool::kRemoveToolFromSceneBehaviorName = "RemoveToolFromScene"
staticconstexpr

◆ kToolNamePort

constexpr auto moveit_pro::behaviors::DetachOrRemoveTool::kToolNamePort = "tool_name"
staticconstexpr

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