15 #ifndef RCLCPP__MEMORY_STRATEGY_HPP_
16 #define RCLCPP__MEMORY_STRATEGY_HPP_
21 #include "rcl/allocator.h"
32 namespace memory_strategy
49 virtual
bool collect_entities(const
WeakNodeList & weak_nodes) = 0;
51 virtual
size_t number_of_ready_subscriptions() const = 0;
52 virtual
size_t number_of_ready_services() const = 0;
53 virtual
size_t number_of_ready_clients() const = 0;
54 virtual
size_t number_of_ready_events() const = 0;
55 virtual
size_t number_of_ready_timers() const = 0;
56 virtual
size_t number_of_guard_conditions() const = 0;
57 virtual
size_t number_of_waitables() const = 0;
59 virtual
void add_waitable_handle(const
rclcpp::
Waitable::SharedPtr & waitable) = 0;
60 virtual
bool add_handles_to_wait_set(
rcl_wait_set_t * wait_set) = 0;
61 virtual
void clear_handles() = 0;
69 get_next_subscription(
93 virtual rcl_allocator_t
97 get_subscription_by_handle(
102 get_service_by_handle(
107 get_client_by_handle(
116 static
rclcpp::node_interfaces::NodeBaseInterface::SharedPtr
122 get_group_by_subscription(
127 get_group_by_service(
142 get_group_by_waitable(
150 #endif // RCLCPP__MEMORY_STRATEGY_HPP_