rclcpp
master
C++ ROS Client Library API
|
Go to the documentation of this file.
15 #ifndef RCLCPP__EXECUTORS__STATIC_EXECUTOR_ENTITIES_COLLECTOR_HPP_
16 #define RCLCPP__EXECUTORS__STATIC_EXECUTOR_ENTITIES_COLLECTOR_HPP_
22 #include "rcl/guard_condition.h"
62 rclcpp::memory_strategy::MemoryStrategy::SharedPtr & memory_strategy,
113 rclcpp::node_interfaces::NodeBaseInterface::SharedPtr node_ptr);
122 rclcpp::node_interfaces::NodeBaseInterface::SharedPtr node_ptr);
180 rclcpp::SubscriptionBase::SharedPtr
189 rclcpp::TimerBase::SharedPtr
198 rclcpp::ServiceBase::SharedPtr
207 rclcpp::ClientBase::SharedPtr
216 rclcpp::Waitable::SharedPtr
224 rclcpp::memory_strategy::MemoryStrategy::SharedPtr memory_strategy_;
239 #endif // RCLCPP__EXECUTORS__STATIC_EXECUTOR_ENTITIES_COLLECTOR_HPP_
bool add_to_wait_set(rcl_wait_set_t *wait_set) override
size_t get_number_of_clients()
Return number of clients.
Definition: static_executor_entities_collector.hpp:164
~StaticExecutorEntitiesCollector()
std::vector< rclcpp::Waitable::SharedPtr > waitable
Definition: executable_list.hpp:84
void add_node(rclcpp::node_interfaces::NodeBaseInterface::SharedPtr node_ptr)
bool is_ready(rcl_wait_set_t *wait_set) override
Complete all available queued work without blocking.
void execute() override
Execute any entities of the Waitable that are ready.
rclcpp::Waitable::SharedPtr get_waitable(size_t i)
Definition: static_executor_entities_collector.hpp:217
size_t number_of_clients
Definition: executable_list.hpp:82
rclcpp::TimerBase::SharedPtr get_timer(size_t i)
Definition: static_executor_entities_collector.hpp:190
Definition: waitable.hpp:28
void refresh_wait_set(std::chrono::nanoseconds timeout=std::chrono::nanoseconds(-1))
Function to add_handles_to_wait_set and wait for work and.
This header provides the get_node_base_interface() template function.
Definition: allocator_common.hpp:24
std::vector< rclcpp::ServiceBase::SharedPtr > service
Definition: executable_list.hpp:76
#define RCLCPP_PUBLIC
Definition: visibility_control.hpp:50
rclcpp::ServiceBase::SharedPtr get_service(size_t i)
Definition: static_executor_entities_collector.hpp:199
This class contains subscriptionbase, timerbase, etc. which can be used to run callbacks.
Definition: executable_list.hpp:34
#define RCLCPP_SMART_PTR_DEFINITIONS(...)
Definition: macros.hpp:36
void prepare_wait_set()
Function to reallocate space for entities in the wait set.
void fill_memory_strategy()
rclcpp::ClientBase::SharedPtr get_client(size_t i)
Definition: static_executor_entities_collector.hpp:208
size_t get_number_of_services()
Return number of services.
Definition: static_executor_entities_collector.hpp:156
std::vector< rclcpp::ClientBase::SharedPtr > client
Definition: executable_list.hpp:80
std::vector< rclcpp::SubscriptionBase::SharedPtr > subscription
Definition: executable_list.hpp:68
size_t number_of_waitables
Definition: executable_list.hpp:86
rclcpp::SubscriptionBase::SharedPtr get_subscription(size_t i)
Definition: static_executor_entities_collector.hpp:181
size_t get_number_of_subscriptions()
Return number of subscriptions.
Definition: static_executor_entities_collector.hpp:148
void init(rcl_wait_set_t *p_wait_set, rclcpp::memory_strategy::MemoryStrategy::SharedPtr &memory_strategy, rcl_guard_condition_t *executor_guard_condition)
Initialize StaticExecutorEntitiesCollector.
size_t get_number_of_ready_guard_conditions() override
Get the number of ready guard_conditions.
size_t get_number_of_waitables()
Return number of waitables.
Definition: static_executor_entities_collector.hpp:172
void fill_executable_list()
Definition: static_executor_entities_collector.hpp:36
size_t get_number_of_timers()
Return number of timers.
Definition: static_executor_entities_collector.hpp:140
size_t number_of_timers
Definition: executable_list.hpp:74
size_t number_of_services
Definition: executable_list.hpp:78
bool remove_node(rclcpp::node_interfaces::NodeBaseInterface::SharedPtr node_ptr)
std::vector< rclcpp::TimerBase::SharedPtr > timer
Definition: executable_list.hpp:72
size_t number_of_subscriptions
Definition: executable_list.hpp:70
StaticExecutorEntitiesCollector()=default