15 #ifndef RCLCPP__CALLBACK_GROUP_HPP_ 16 #define RCLCPP__CALLBACK_GROUP_HPP_ 33 namespace node_interfaces
40 namespace callback_group
63 get_subscription_ptrs() const;
67 get_timer_ptrs() const;
70 const
std::vector<
rclcpp::service::ServiceBase::WeakPtr> &
71 get_service_ptrs() const;
74 const
std::vector<
rclcpp::client::ClientBase::WeakPtr> &
75 get_client_ptrs() const;
98 add_service(const
rclcpp::service::ServiceBase::SharedPtr service_ptr);
102 add_client(const
rclcpp::client::ClientBase::SharedPtr client_ptr);
106 mutable
std::mutex mutex_;
109 std::vector<
rclcpp::service::ServiceBase::WeakPtr> service_ptrs_;
110 std::vector<
rclcpp::client::ClientBase::WeakPtr> client_ptrs_;
111 std::atomic_bool can_be_taken_from_;
117 #endif // RCLCPP__CALLBACK_GROUP_HPP_
Implementation of the NodeTimers part of the Node API.
Definition: node_timers.hpp:31
#define RCLCPP_DISABLE_COPY(...)
Definition: macros.hpp:26
CallbackGroupType
Definition: callback_group.hpp:43
Definition: allocator_common.hpp:24
Definition: subscription.hpp:51
Implementation of the NodeServices part of the Node API.
Definition: node_services.hpp:32
Definition: callback_group.hpp:49
virtual void add_subscription(rclcpp::subscription::SubscriptionBase::SharedPtr subscription, rclcpp::callback_group::CallbackGroup::SharedPtr callback_group)
#define RCLCPP_SMART_PTR_DEFINITIONS(...)
Definition: macros.hpp:36
Implementation of the NodeTopics part of the Node API.
Definition: node_topics.hpp:36
#define RCLCPP_PUBLIC
Definition: visibility_control.hpp:50