ROS 2 rclcpp + rcl - rolling
rolling-a919a6e5
ROS 2 C++ Client Library with ROS Client Library
|
WaitSet policy that provides dynamically sized storage. More...
#include <rclcpp/wait_set_policies/dynamic_storage.hpp>
Classes | |
class | SubscriptionEntry |
class | WaitableEntry |
class | WeakSubscriptionEntry |
class | WeakWaitableEntry |
Protected Types | |
using | is_mutable = std::true_type |
using | SequenceOfWeakSubscriptions = std::vector< WeakSubscriptionEntry > |
using | SubscriptionsIterable = std::vector< SubscriptionEntry > |
using | SequenceOfWeakGuardConditions = std::vector< std::weak_ptr< rclcpp::GuardCondition > > |
using | GuardConditionsIterable = std::vector< std::shared_ptr< rclcpp::GuardCondition > > |
using | SequenceOfWeakTimers = std::vector< std::weak_ptr< rclcpp::TimerBase > > |
using | TimersIterable = std::vector< std::shared_ptr< rclcpp::TimerBase > > |
using | SequenceOfWeakClients = std::vector< std::weak_ptr< rclcpp::ClientBase > > |
using | ClientsIterable = std::vector< std::shared_ptr< rclcpp::ClientBase > > |
using | SequenceOfWeakServices = std::vector< std::weak_ptr< rclcpp::ServiceBase > > |
using | ServicesIterable = std::vector< std::shared_ptr< rclcpp::ServiceBase > > |
using | SequenceOfWeakWaitables = std::vector< WeakWaitableEntry > |
using | WaitablesIterable = std::vector< WaitableEntry > |
Protected Member Functions | |
template<class ArrayOfExtraGuardConditions > | |
DynamicStorage (const SubscriptionsIterable &subscriptions, const GuardConditionsIterable &guard_conditions, const ArrayOfExtraGuardConditions &extra_guard_conditions, const TimersIterable &timers, const ClientsIterable &clients, const ServicesIterable &services, const WaitablesIterable &waitables, rclcpp::Context::SharedPtr context) | |
template<class ArrayOfExtraGuardConditions > | |
void | storage_rebuild_rcl_wait_set (const ArrayOfExtraGuardConditions &extra_guard_conditions) |
void | storage_add_subscription (std::shared_ptr< rclcpp::SubscriptionBase > &&subscription) |
void | storage_remove_subscription (std::shared_ptr< rclcpp::SubscriptionBase > &&subscription) |
void | storage_add_guard_condition (std::shared_ptr< rclcpp::GuardCondition > &&guard_condition) |
void | storage_remove_guard_condition (std::shared_ptr< rclcpp::GuardCondition > &&guard_condition) |
void | storage_add_timer (std::shared_ptr< rclcpp::TimerBase > &&timer) |
void | storage_remove_timer (std::shared_ptr< rclcpp::TimerBase > &&timer) |
void | storage_add_client (std::shared_ptr< rclcpp::ClientBase > &&client) |
void | storage_remove_client (std::shared_ptr< rclcpp::ClientBase > &&client) |
void | storage_add_service (std::shared_ptr< rclcpp::ServiceBase > &&service) |
void | storage_remove_service (std::shared_ptr< rclcpp::ServiceBase > &&service) |
void | storage_add_waitable (std::shared_ptr< rclcpp::Waitable > &&waitable, std::shared_ptr< void > &&associated_entity) |
void | storage_remove_waitable (std::shared_ptr< rclcpp::Waitable > &&waitable) |
void | storage_prune_deleted_entities () noexcept |
void | storage_acquire_ownerships () |
void | storage_release_ownerships () |
size_t | size_of_subscriptions () const |
size_t | size_of_timers () const |
size_t | size_of_clients () const |
size_t | size_of_services () const |
size_t | size_of_waitables () const |
std::shared_ptr< rclcpp::SubscriptionBase > | subscriptions (size_t ii) const |
std::shared_ptr< rclcpp::TimerBase > | timers (size_t ii) const |
std::shared_ptr< rclcpp::ClientBase > | clients (size_t ii) const |
std::shared_ptr< rclcpp::ServiceBase > | services (size_t ii) const |
std::shared_ptr< rclcpp::Waitable > | waitables (size_t ii) const |
![]() | |
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 () |
size_t | size_of_subscriptions () const |
size_t | size_of_timers () const |
size_t | size_of_clients () const |
size_t | size_of_services () const |
size_t | size_of_waitables () const |
SubscriptionsIterable::value_type | subscriptions (size_t) const |
TimersIterable::value_type | timers (size_t) const |
ClientsIterable::value_type | clients (size_t) const |
ServicesIterable::value_type | services (size_t) const |
WaitablesIterable::value_type | waitables (size_t) const |
Additional Inherited Members | |
![]() | |
rcl_wait_set_t | rcl_wait_set_ |
rclcpp::Context::SharedPtr | context_ |
bool | needs_pruning_ |
bool | needs_resize_ |
WaitSet policy that provides dynamically sized storage.
Definition at line 40 of file dynamic_storage.hpp.