C++ API
rclcpp_components: Package containing tools for dynamically loadable components.
ComponentManager: Node to manage components. It has the services to load, unload and list current components.
rclcpp_components/component_manager.hpp)
Node factory: The NodeFactory interface is used by the class loader to instantiate components.
rclcpp_components/node_factory.hpp)
It allows for classes not derived from
rclcpp::Node
to be used as components.It allows derived constructors to be called when components are loaded.
Some useful abstractions and utilities:
[RCLCPP_COMPONENTS_REGISTER_NODE: Register a component that can be dynamically loaded at runtime.
(include/rclcpp_components/register_node_macro.hpp)
Some useful internal abstractions and utilities:
Macros for controlling symbol visibility on the library
rclcpp_components/visibility_control.h
Package containing CMake tools for register components:
rclcpp_components_register_node
Register an rclcpp component with the ament resource index and create an executable.rclcpp_components_register_nodes
Register an rclcpp component with the ament resource index. The passed library can contain multiple nodes each registered via macro.
Page Hierarchy
Class Hierarchy
-
- Namespace rclcpp_components
- Class ComponentManager
- Class ComponentManagerException
- Template Class ComponentManagerIsolated
- Class NodeFactory
- Template Class NodeFactoryTemplate
- Class NodeInstanceWrapper
- Namespace rclcpp_components
File Hierarchy
-
- Directory include
- Directory rclcpp_components
- Directory include