Class SystemNode

Inheritance Relationships

Base Type

  • public rclcpp_lifecycle::LifecycleNode

Class Documentation

class SystemNode : public rclcpp_lifecycle::LifecycleNode

ROS 2 lifecycle node coordinating all Easy Navigation components.

Manages lifecycle transitions, real-time execution, and communication between planner, controller, localizer, map manager, and sensor nodes.

Public Types

using CallbackReturnT = rclcpp_lifecycle::node_interfaces::LifecycleNodeInterface::CallbackReturn

Public Functions

explicit SystemNode(const rclcpp::NodeOptions &options = rclcpp::NodeOptions())

Constructor.

Parameters:

options – Node options.

~SystemNode()

Destructor.

CallbackReturnT on_configure(const rclcpp_lifecycle::State &state)

Configure the node.

Parameters:

state – Lifecycle state.

Returns:

SUCCESS if configuration succeeded.

CallbackReturnT on_activate(const rclcpp_lifecycle::State &state)

Activate the node.

Parameters:

state – Lifecycle state.

Returns:

SUCCESS if activation succeeded.

CallbackReturnT on_deactivate(const rclcpp_lifecycle::State &state)

Deactivate the node.

Parameters:

state – Lifecycle state.

Returns:

SUCCESS if deactivation succeeded.

CallbackReturnT on_cleanup(const rclcpp_lifecycle::State &state)

Cleanup the node.

Parameters:

state – Lifecycle state.

Returns:

SUCCESS if cleanup succeeded.

CallbackReturnT on_shutdown(const rclcpp_lifecycle::State &state)

Shutdown the node.

Parameters:

state – Lifecycle state.

Returns:

SUCCESS if shutdown succeeded.

CallbackReturnT on_error(const rclcpp_lifecycle::State &state)

Handle lifecycle transition error.

Parameters:

state – Lifecycle state.

Returns:

SUCCESS if error handled.

rclcpp::CallbackGroup::SharedPtr get_real_time_cbg()

Get the real-time callback group.

Returns:

Shared pointer to the callback group.

std::map<std::string, SystemNodeInfo> get_system_nodes()

Get all system nodes managed by this coordinator.

Returns:

Map of node names to node information.

void system_cycle_rt()

Real-time system cycle.

void system_cycle()

Non-real-time system cycle.