35 struct rcl_wait_set_impl_t;
56 struct rcl_wait_set_impl_t *
impl;
120 size_t number_of_subscriptions,
121 size_t number_of_guard_conditions,
122 size_t number_of_timers,
123 size_t number_of_clients,
124 size_t number_of_services,
285 size_t subscriptions_size,
286 size_t guard_conditions_size,
289 size_t services_size);
444 #endif // RCL__WAIT_H_ Container for subscription's, guard condition's, etc to be waited on.
Definition: wait.h:38
const rcl_service_t ** services
Storage for service pointers.
Definition: wait.h:53
rmw_ret_t rcl_ret_t
Definition: types.h:20
size_t size_of_clients
Definition: wait.h:51
size_t size_of_guard_conditions
Definition: wait.h:45
rcl_ret_t rcl_wait_set_get_allocator(const rcl_wait_set_t *wait_set, rcl_allocator_t *allocator)
Retrieve the wait set's allocator.
size_t size_of_subscriptions
Definition: wait.h:42
size_t size_of_services
Definition: wait.h:54
const rcl_client_t ** clients
Storage for client pointers.
Definition: wait.h:50
Structure which encapsulates a ROS Client.
Definition: client.h:33
rcl_wait_set_t rcl_get_zero_initialized_wait_set(void)
Return a rcl_wait_set_t struct with members set to NULL.
const rcl_timer_t ** timers
Storage for timer pointers.
Definition: wait.h:47
#define RCL_WARN_UNUSED
Ignored return values of functions with this macro will emit a warning.
Definition: macros.h:25
size_t size_of_timers
Definition: wait.h:48
#define RCL_PUBLIC
Definition: visibility_control.h:48
rcl_ret_t rcl_wait_set_fini(rcl_wait_set_t *wait_set)
Finalize a rcl wait set.
rcl_ret_t rcl_wait_set_resize(rcl_wait_set_t *wait_set, size_t subscriptions_size, size_t guard_conditions_size, size_t timers_size, size_t clients_size, size_t services_size)
Reallocate space for entities in the wait set.
struct rcl_wait_set_impl_t * impl
Implementation specific storage.
Definition: wait.h:56
Structure which encapsulates a ROS Service.
Definition: service.h:33
rcl_ret_t rcl_wait_set_add_timer(rcl_wait_set_t *wait_set, const rcl_timer_t *timer, size_t *index)
Store a pointer to the timer in the next empty spot in the set.
struct rcl_wait_set_t rcl_wait_set_t
Container for subscription's, guard condition's, etc to be waited on.
rcl_ret_t rcl_wait_set_add_service(rcl_wait_set_t *wait_set, const rcl_service_t *service, size_t *index)
Store a pointer to the service in the next empty spot in the set.
rcl_ret_t rcl_wait_set_clear(rcl_wait_set_t *wait_set)
Remove (sets to NULL) all entities in the wait set.
Structure which encapsulates a ROS Subscription.
Definition: subscription.h:33
rcl_ret_t rcl_wait(rcl_wait_set_t *wait_set, int64_t timeout)
Block until the wait set is ready or until the timeout has been exceeded.
rcl_ret_t rcl_wait_set_add_subscription(rcl_wait_set_t *wait_set, const rcl_subscription_t *subscription, size_t *index)
Store a pointer to the given subscription in the next empty spot in the set.
Structure which encapsulates a ROS Timer.
Definition: timer.h:37
rcl_ret_t rcl_wait_set_add_client(rcl_wait_set_t *wait_set, const rcl_client_t *client, size_t *index)
Store a pointer to the client in the next empty spot in the set.
rcl_ret_t rcl_wait_set_init(rcl_wait_set_t *wait_set, size_t number_of_subscriptions, size_t number_of_guard_conditions, size_t number_of_timers, size_t number_of_clients, size_t number_of_services, rcl_allocator_t allocator)
Initialize a rcl wait set with space for items to be waited on.
Handle for a rcl guard condition.
Definition: guard_condition.h:33
const rcl_guard_condition_t ** guard_conditions
Storage for guard condition pointers.
Definition: wait.h:44
const rcl_subscription_t ** subscriptions
Storage for subscription pointers.
Definition: wait.h:41
rcl_ret_t rcl_wait_set_add_guard_condition(rcl_wait_set_t *wait_set, const rcl_guard_condition_t *guard_condition, size_t *index)
Store a pointer to the guard condition in the next empty spot in the set.