ROS 2 rclcpp + rcl - jazzy  jazzy
ROS 2 C++ Client Library with ROS Client Library
wait_set.hpp
1 // Copyright 2020 Open Source Robotics Foundation, Inc.
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 
15 #ifndef RCLCPP__WAIT_SET_HPP_
16 #define RCLCPP__WAIT_SET_HPP_
17 
18 #include <memory>
19 
20 #include "rcl/wait.h"
21 
22 #include "rclcpp/guard_condition.hpp"
23 #include "rclcpp/macros.hpp"
24 #include "rclcpp/visibility_control.hpp"
25 #include "rclcpp/wait_set_policies/dynamic_storage.hpp"
26 #include "rclcpp/wait_set_policies/sequential_synchronization.hpp"
27 #include "rclcpp/wait_set_policies/static_storage.hpp"
28 #include "rclcpp/wait_set_policies/thread_safe_synchronization.hpp"
29 #include "rclcpp/wait_set_template.hpp"
30 
31 namespace rclcpp
32 {
33 
35 
48 >;
49 
51 
65 template<
66  std::size_t NumberOfSubscriptions,
67  std::size_t NumberOfGuardCondtions,
68  std::size_t NumberOfTimers,
69  std::size_t NumberOfClients,
70  std::size_t NumberOfServices,
71  std::size_t NumberOfWaitables
72 >
76  NumberOfSubscriptions,
77  NumberOfGuardCondtions,
78  NumberOfTimers,
79  NumberOfClients,
80  NumberOfServices,
81  NumberOfWaitables
82  >
83 >;
84 
86 
102 >;
103 
104 } // namespace rclcpp
105 
106 #endif // RCLCPP__WAIT_SET_HPP_
Encapsulates sets of waitable items which can be waited on as a group.
WaitSet policy that provides dynamically sized storage.
WaitSet policy that explicitly provides no thread synchronization.
WaitSet policy that explicitly provides fixed sized storage only.
WaitSet policy that provides thread-safe synchronization for the wait set.
Versions of rosidl_typesupport_cpp::get_message_type_support_handle that handle adapted types.