16#ifndef YASMIN_ROS__YASMIN_NODE_HPP_
17#define YASMIN_ROS__YASMIN_NODE_HPP_
23#include <rclcpp/rclcpp.hpp>
90#if __has_include("rclcpp/version.h")
91#include "rclcpp/version.h"
92#if RCLCPP_VERSION_GTE(29, 1, 1)
93 rclcpp::experimental::executors::EventsExecutor
executor;
95 rclcpp::executors::MultiThreadedExecutor
executor;
98 rclcpp::executors::MultiThreadedExecutor
executor;
~YasminNode()
Destructor. Cleans up resources.
Definition yasmin_node.cpp:92
YasminNode()
Default constructor. Initializes the node with a unique name.
Definition yasmin_node.cpp:82
std::unique_ptr< std::thread > spin_thread
Thread for spinning the node.
Definition yasmin_node.hpp:101
YasminNode(YasminNode &other)=delete
Deleted copy constructor to prevent copying of the singleton instance.
static void destroy_instance()
Destroy the singleton instance if it exists.
Definition yasmin_node.cpp:73
rclcpp::executors::MultiThreadedExecutor executor
Executor for managing multiple threads.
Definition yasmin_node.hpp:98
static YasminNode::SharedPtr get_instance()
Provides access to the singleton instance of YasminNode.
Definition yasmin_node.cpp:58
void stop_executor()
Stop the executor thread and remove the node from the executor.
Definition yasmin_node.cpp:99
void operator=(const YasminNode &)=delete
Deleted assignment operator to enforce singleton pattern.
std::shared_ptr< YasminNode > SharedPtr
Definition yasmin_node.hpp:40
Definition action_state.hpp:37