16#ifndef YASMIN_ROS__YASMIN_NODE_HPP_
17#define YASMIN_ROS__YASMIN_NODE_HPP_
23#include "rclcpp/rclcpp.hpp"
77 rclcpp::init(0,
nullptr);
81 static YasminNode::SharedPtr instance =
88#if __has_include("rclcpp/version.h")
89#include "rclcpp/version.h"
90#if RCLCPP_VERSION_GTE(29, 1, 1)
91 rclcpp::experimental::executors::EventsExecutor
executor;
93 rclcpp::executors::MultiThreadedExecutor
executor;
96 rclcpp::executors::MultiThreadedExecutor
executor;
static YasminNode::SharedPtr get_instance()
Provides access to the singleton instance of YasminNode.
Definition yasmin_node.hpp:74
YasminNode()
Default constructor. Initializes the node with a unique name.
Definition yasmin_node.cpp:45
std::unique_ptr< std::thread > spin_thread
Thread for spinning the node.
Definition yasmin_node.hpp:99
YasminNode(YasminNode &other)=delete
Deleted copy constructor to prevent copying of the singleton instance.
~YasminNode()
Destructor. Cleans up resources.
Definition yasmin_node.hpp:58
rclcpp::executors::MultiThreadedExecutor executor
Executor for managing multiple threads.
Definition yasmin_node.hpp:96
void operator=(const YasminNode &)=delete
Deleted assignment operator to enforce singleton pattern.
Definition action_state.hpp:37