AutoAPMS
Streamlining behaviors in ROS 2
Loading...
Searching...
No Matches
CompositionLoadNode Class Reference

Loads a composable node plugin into a running ROS 2 component container. More...

Inheritance diagram for CompositionLoadNode:

Additional Inherited Members

- Public Member Functions inherited from RosServiceNode< composition_interfaces::srv::LoadNode >
 RosServiceNode (const std::string &instance_name, const Config &config, Context context)
 Constructor.
 
virtual BT::NodeStatus onResponseReceived (const typename Response::SharedPtr &response)
 Callback invoked after the service response was received.
 
virtual BT::NodeStatus onFailure (ServiceNodeErrorCode error)
 Callback invoked when one of the errors in ServiceNodeErrorCode occur.
 
bool createClient (const std::string &service_name)
 Create the client of the ROS 2 service.
 
std::string getServiceName () const
 Get the name of the service this node connects with.
 
- Static Public Member Functions inherited from RosServiceNode< composition_interfaces::srv::LoadNode >
static BT::PortsList providedBasicPorts (BT::PortsList addition)
 ADerived nodes implementing the static method RosServiceNode::providedPorts may call this method to also include the default port for ROS 2 behavior tree nodes.
 
static BT::PortsList providedPorts ()
 If a behavior tree requires input/output data ports, the developer must define this method accordingly.
 

Detailed Description

Loads a composable node plugin into a running ROS 2 component container.

The targeted container's service name is constructed from the 'container' input port as '<container>/_container/load_node'. Both 'package' and 'plugin' are required inputs. Optional inputs allow fine-grained control over the loaded node's name, namespace, log level and static remapping rules.

On success, the container-local unique ID and the full node name are written to the output ports, allowing subsequent behavior tree nodes (e.g. CompositionUnloadNode) to reference the loaded instance.

Definition at line 48 of file composition_nodes.cpp.


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