|
AutoAPMS
Streamlining behaviors in ROS 2
|
Loads a composable node plugin into a running ROS 2 component container. More...

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. | |
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.