|
ROS 2 rclcpp + rcl - rolling
rolling-20536064
ROS 2 C++ Client Library with ROS Client Library
|


Public Member Functions | |
| CallbackGroupHandle (CBGScheduler &scheduler, CallbackGroupType type) | |
| CallbackGroupHandle (const CallbackGroupHandle &)=delete | |
| CallbackGroupHandle (CallbackGroupHandle &&)=delete | |
| CallbackGroupHandle & | operator= (const CallbackGroupHandle &)=delete |
| CallbackGroupHandle & | operator= (CallbackGroupHandle &&)=delete |
| virtual std::function< void(size_t)> | get_ready_callback_for_entity (const rclcpp::SubscriptionBase::WeakPtr &entity)=0 |
| virtual std::function< void(std::function< void()> executed_callback)> | get_ready_callback_for_entity (const rclcpp::TimerBase::WeakPtr &entity)=0 |
| virtual std::function< void(size_t)> | get_ready_callback_for_entity (const rclcpp::ClientBase::WeakPtr &entity)=0 |
| virtual std::function< void(size_t)> | get_ready_callback_for_entity (const rclcpp::ServiceBase::WeakPtr &entity)=0 |
| virtual std::function< void(size_t, int)> | get_ready_callback_for_entity (const rclcpp::Waitable::WeakPtr &entity)=0 |
| virtual std::function< void(size_t)> | get_ready_callback_for_entity (const CallbackEventType &entity)=0 |
| void | mark_as_executed () |
| CallbackGroupType | get_type () |
| bool | is_ready () |
Public Attributes | |
| bool | in_queue = false |
Protected Member Functions | |
| virtual bool | has_ready_entities () const =0 |
| template<typename add_fun > | |
| void | add_ready_entity (const add_fun &fun) |
| void | mark_as_skipped () |
| void | mark_as_executing () |
Protected Attributes | |
| CBGScheduler & | scheduler |
| std::mutex | ready_mutex |
Definition at line 60 of file scheduler.hpp.
|
inlineprotected |
Executes the given function to add an entity under the ready mutex. Afterwards the function checks if the scheduler needs to be informed that the callback group got ready and informs it if needed.
Definition at line 129 of file scheduler.hpp.
References rclcpp::executors::cbg_executor::CBGScheduler::callback_group_ready().

|
protectedpure virtual |
Will always be called under lock of ready_mutex
Implemented in rclcpp::executors::cbg_executor::FirstInFirstOutCallbackGroupHandle.
Referenced by mark_as_executed().

|
inline |
Marks the last removed ready entity as executed.
Definition at line 91 of file scheduler.hpp.
References rclcpp::executors::cbg_executor::CBGScheduler::callback_group_ready(), and has_ready_entities().
Referenced by rclcpp::executors::cbg_executor::CBGScheduler::mark_entity_as_executed().


|
inlineprotected |
Must be called by derived classes if a ready entity is returned. This call must happen under a lock holding the ready_mutex.
Definition at line 161 of file scheduler.hpp.