|
ROS 2 rclcpp + rcl - humble
humble
ROS 2 C++ Client Library with ROS Client Library
|
WaitSet policy that explicitly provides fixed sized storage only. More...
#include <rclcpp/wait_set_policies/static_storage.hpp>


Classes | |
| class | SubscriptionEntry |
| struct | WaitableEntry |
Protected Types | |
| using | is_mutable = std::false_type |
| using | ArrayOfSubscriptions = std::array< SubscriptionEntry, NumberOfSubscriptions > |
| using | SubscriptionsIterable = ArrayOfSubscriptions |
| using | ArrayOfGuardConditions = std::array< std::shared_ptr< rclcpp::GuardCondition >, NumberOfGuardCondtions > |
| using | GuardConditionsIterable = ArrayOfGuardConditions |
| using | ArrayOfTimers = std::array< std::shared_ptr< rclcpp::TimerBase >, NumberOfTimers > |
| using | TimersIterable = ArrayOfTimers |
| using | ArrayOfClients = std::array< std::shared_ptr< rclcpp::ClientBase >, NumberOfClients > |
| using | ClientsIterable = ArrayOfClients |
| using | ArrayOfServices = std::array< std::shared_ptr< rclcpp::ServiceBase >, NumberOfServices > |
| using | ServicesIterable = ArrayOfServices |
| using | ArrayOfWaitables = std::array< WaitableEntry, NumberOfWaitables > |
| using | WaitablesIterable = ArrayOfWaitables |
Protected Member Functions | |
| template<class ArrayOfExtraGuardConditions > | |
| StaticStorage (const ArrayOfSubscriptions &subscriptions, const ArrayOfGuardConditions &guard_conditions, const ArrayOfExtraGuardConditions &extra_guard_conditions, const ArrayOfTimers &timers, const ArrayOfClients &clients, const ArrayOfServices &services, const ArrayOfWaitables &waitables, rclcpp::Context::SharedPtr context) | |
| template<class ArrayOfExtraGuardConditions > | |
| void | storage_rebuild_rcl_wait_set (const ArrayOfExtraGuardConditions &extra_guard_conditions) |
| void | storage_acquire_ownerships () |
| void | storage_release_ownerships () |
Protected Member Functions inherited from rclcpp::wait_set_policies::detail::StoragePolicyCommon< true > | |
| StoragePolicyCommon (const SubscriptionsIterable &subscriptions, const GuardConditionsIterable &guard_conditions, const ExtraGuardConditionsIterable &extra_guard_conditions, const TimersIterable &timers, const ClientsIterable &clients, const ServicesIterable &services, const WaitablesIterable &waitables, rclcpp::Context::SharedPtr context) | |
| std::pair< void *, EntityT * > | get_raw_pointer_from_smart_pointer (const std::shared_ptr< EntityT > &shared_pointer) |
| std::pair< std::shared_ptr< EntityT >, EntityT * > | get_raw_pointer_from_smart_pointer (const std::weak_ptr< EntityT > &weak_pointer) |
| void | storage_rebuild_rcl_wait_set_with_sets (const SubscriptionsIterable &subscriptions, const GuardConditionsIterable &guard_conditions, const ExtraGuardConditionsIterable &extra_guard_conditions, const TimersIterable &timers, const ClientsIterable &clients, const ServicesIterable &services, const WaitablesIterable &waitables) |
| Rebuild the wait set, preparing it for the next wait call. More... | |
| const rcl_wait_set_t & | storage_get_rcl_wait_set () const |
| rcl_wait_set_t & | storage_get_rcl_wait_set () |
| void | storage_flag_for_resize () |
Protected Attributes | |
| const ArrayOfSubscriptions | subscriptions_ |
| const ArrayOfGuardConditions | guard_conditions_ |
| const ArrayOfTimers | timers_ |
| const ArrayOfClients | clients_ |
| const ArrayOfServices | services_ |
| const ArrayOfWaitables | waitables_ |
Protected Attributes inherited from rclcpp::wait_set_policies::detail::StoragePolicyCommon< true > | |
| rcl_wait_set_t | rcl_wait_set_ |
| rclcpp::Context::SharedPtr | context_ |
| bool | needs_pruning_ |
| bool | needs_resize_ |
WaitSet policy that explicitly provides fixed sized storage only.
Note the underlying rcl_wait_set_t is still dynamically allocated, but only once during construction, and deallocated once during destruction.
Definition at line 51 of file static_storage.hpp.