Struct RegisteredEntityCache

Struct Documentation

struct RegisteredEntityCache

Public Functions

inline RegisteredEntityCache(CBGScheduler &scheduler, TimerManager &timer_manager, const rclcpp::CallbackGroup::SharedPtr &callback_group)
inline void handle_callback_group_guard_condition()
inline ~RegisteredEntityCache()
inline void clear_caches()
inline bool regenerate_events()
inline void add_guard_condition_event(rclcpp::GuardCondition::SharedPtr ptr, std::function<void(void)> fun)

Register special case guard conditions. These guard conditions can be registered to a callback, that will be executed within the executor worker context on trigger.

Note, there is currently no way, to deregister these guard conditions

Public Members

EntityCache<rclcpp::TimerBase> timers_cache
EntityCache<rclcpp::SubscriptionBase> subscribers_cache
EntityCache<rclcpp::ClientBase> clients_cache
EntityCache<rclcpp::ServiceBase> services_cache
EntityCache<rclcpp::Waitable> waitables_cache
std::vector<GuardConditionWithFunction> guard_conditions
rclcpp::CallbackGroup::WeakPtr callback_group_weak_ptr
CBGScheduler::CallbackGroupHandle &scheduler_cbg_handle
TimerManager &timer_manager