15 #ifndef RCLCPP__CALLBACK_GROUP_HPP_ 16 #define RCLCPP__CALLBACK_GROUP_HPP_ 35 namespace node_interfaces
43 namespace callback_group
67 get_subscription_ptrs()
const;
71 get_timer_ptrs()
const;
75 get_service_ptrs()
const;
79 get_client_ptrs()
const;
83 get_waitable_ptrs()
const;
98 add_publisher(
const rclcpp::PublisherBase::SharedPtr publisher_ptr);
102 add_subscription(
const rclcpp::SubscriptionBase::SharedPtr subscription_ptr);
106 add_timer(
const rclcpp::TimerBase::SharedPtr timer_ptr);
110 add_service(
const rclcpp::ServiceBase::SharedPtr service_ptr);
114 add_client(
const rclcpp::ClientBase::SharedPtr client_ptr);
118 add_waitable(
const rclcpp::Waitable::SharedPtr waitable_ptr);
122 remove_waitable(
const rclcpp::Waitable::SharedPtr waitable_ptr) noexcept;
138 #endif // RCLCPP__CALLBACK_GROUP_HPP_
#define RCLCPP_DISABLE_COPY(...)
Definition: macros.hpp:26
std::vector< rclcpp::ServiceBase::WeakPtr > service_ptrs_
Definition: callback_group.hpp:129
CallbackGroupType type_
Definition: callback_group.hpp:124
std::mutex mutex_
Definition: callback_group.hpp:126
CallbackGroupType
Definition: callback_group.hpp:46
std::vector< rclcpp::ClientBase::WeakPtr > client_ptrs_
Definition: callback_group.hpp:130
Implementation of the NodeTimers part of the Node API.
Definition: node_timers.hpp:31
This header provides the get_node_topics_interface() template function.
Definition: allocator_common.hpp:24
std::atomic_bool can_be_taken_from_
Definition: callback_group.hpp:132
Implementation of the NodeServices part of the Node API.
Definition: node_services.hpp:32
std::vector< rclcpp::SubscriptionBase::WeakPtr > subscription_ptrs_
Definition: callback_group.hpp:127
#define RCLCPP_SMART_PTR_DEFINITIONS(...)
Definition: macros.hpp:36
Definition: callback_group.hpp:52
std::vector< rclcpp::TimerBase::WeakPtr > timer_ptrs_
Definition: callback_group.hpp:128
virtual void remove_waitable(rclcpp::Waitable::SharedPtr waitable_ptr, rclcpp::callback_group::CallbackGroup::SharedPtr group) noexcept
#define RCLCPP_PUBLIC
Definition: visibility_control.hpp:50
std::vector< rclcpp::Waitable::WeakPtr > waitable_ptrs_
Definition: callback_group.hpp:131
Implementation of the NodeTopics part of the Node API.
Definition: node_topics.hpp:36
Implementation of the NodeWaitables part of the Node API.
Definition: node_waitables.hpp:32
virtual void add_waitable(rclcpp::Waitable::SharedPtr waitable_base_ptr, rclcpp::callback_group::CallbackGroup::SharedPtr group)