15 #ifndef RCLCPP__MEMORY_STRATEGY_HPP_
16 #define RCLCPP__MEMORY_STRATEGY_HPP_
33 namespace memory_strategy
47 rclcpp::node_interfaces::NodeBaseInterface::WeakPtr,
54 virtual size_t number_of_ready_subscriptions()
const = 0;
55 virtual size_t number_of_ready_services()
const = 0;
56 virtual size_t number_of_ready_clients()
const = 0;
57 virtual size_t number_of_ready_events()
const = 0;
58 virtual size_t number_of_ready_timers()
const = 0;
59 virtual size_t number_of_guard_conditions()
const = 0;
60 virtual size_t number_of_waitables()
const = 0;
62 virtual void add_waitable_handle(
const rclcpp::Waitable::SharedPtr & waitable) = 0;
63 virtual bool add_handles_to_wait_set(
rcl_wait_set_t * wait_set) = 0;
64 virtual void clear_handles() = 0;
72 get_next_subscription(
99 static rclcpp::SubscriptionBase::SharedPtr
100 get_subscription_by_handle(
104 static rclcpp::ServiceBase::SharedPtr
105 get_service_by_handle(
109 static rclcpp::ClientBase::SharedPtr
110 get_client_by_handle(
114 static rclcpp::TimerBase::SharedPtr
119 static rclcpp::node_interfaces::NodeBaseInterface::SharedPtr
121 rclcpp::CallbackGroup::SharedPtr group,
124 static rclcpp::CallbackGroup::SharedPtr
125 get_group_by_subscription(
126 rclcpp::SubscriptionBase::SharedPtr subscription,
129 static rclcpp::CallbackGroup::SharedPtr
130 get_group_by_service(
131 rclcpp::ServiceBase::SharedPtr service,
134 static rclcpp::CallbackGroup::SharedPtr
136 rclcpp::ClientBase::SharedPtr client,
139 static rclcpp::CallbackGroup::SharedPtr
141 rclcpp::TimerBase::SharedPtr timer,
144 static rclcpp::CallbackGroup::SharedPtr
145 get_group_by_waitable(
146 rclcpp::Waitable::SharedPtr waitable,
153 #endif // RCLCPP__MEMORY_STRATEGY_HPP_