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

Append an MTC ModifyPlanningScene stage that detaches a collision object from a robot link during MTC task execution. More...

#include <setup_mtc_detach_object_by_id.hpp>

Inheritance diagram for moveit_pro::behaviors::SetupMTCDetachObjectByID:
Collaboration diagram for moveit_pro::behaviors::SetupMTCDetachObjectByID:

Public Member Functions

 SetupMTCDetachObjectByID (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources)
 
BT::NodeStatus tick () override
 
- Public Member Functions inherited from moveit_pro::behaviors::SharedResourcesNode< BT::SyncActionNode >
 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 Attributes

static constexpr auto kPortIDTask = "task"
 
static constexpr auto kPortIDObjectId = "object_id"
 
static constexpr auto kPortIDLinkName = "link_name"
 

Detailed Description

Append an MTC ModifyPlanningScene stage that detaches a collision object from a robot link during MTC task execution.

MTC stage equivalent of DetachObject, taking a plain object_id. The Behavior only appends the stage at Behavior-tick time; the scene change happens later, when MTC's planner executes the task.

Unlike the non-MTC DetachObject, link_name is required: MTC stages are constructed before the task runs, so the runtime scene cannot be queried to find which link the object is currently attached to.

Data Port Name Port Type Object Type
task Bidirectional std::shared_ptr<moveit_pro::task_constructor::Task>
object_id Input std::string
link_name Input std::string

Constructor & Destructor Documentation

◆ SetupMTCDetachObjectByID()

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

Member Function Documentation

◆ metadata()

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

◆ providedPorts()

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

◆ tick()

BT::NodeStatus moveit_pro::behaviors::SetupMTCDetachObjectByID::tick ( )
override

Member Data Documentation

◆ kPortIDLinkName

constexpr auto moveit_pro::behaviors::SetupMTCDetachObjectByID::kPortIDLinkName = "link_name"
staticconstexpr

◆ kPortIDObjectId

constexpr auto moveit_pro::behaviors::SetupMTCDetachObjectByID::kPortIDObjectId = "object_id"
staticconstexpr

◆ kPortIDTask

constexpr auto moveit_pro::behaviors::SetupMTCDetachObjectByID::kPortIDTask = "task"
staticconstexpr

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