scenario_simulator_v2 C++ API
path_with_lane_id.hpp
Go to the documentation of this file.
1 // Copyright 2015 TIER IV, Inc. All rights reserved.
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 CONCEALER__PATH_WITH_LANE_ID_HPP_
16 #define CONCEALER__PATH_WITH_LANE_ID_HPP_
17 
18 #if __has_include(<autoware_internal_planning_msgs/msg/path_with_lane_id.hpp>)
19 #include <autoware_internal_planning_msgs/msg/path_with_lane_id.hpp>
20 #endif
21 
22 #if __has_include(<tier4_planning_msgs/msg/path_with_lane_id.hpp>)
23 #include <tier4_planning_msgs/msg/path_with_lane_id.hpp>
24 #endif
25 
26 #include <concealer/available.hpp>
27 #include <concealer/convert.hpp>
28 
29 namespace concealer
30 {
31 namespace priority
32 {
33 using PathWithLaneId = decltype(std::tuple_cat(
34  std::declval<std::tuple<
35 #if __has_include(<autoware_internal_planning_msgs/msg/path_with_lane_id.hpp>)
37 #endif
38  > >(),
39  std::declval<std::tuple<
40 #if __has_include(<tier4_planning_msgs/msg/path_with_lane_id.hpp>)
42 #endif
43  > >()));
44 
45 static_assert(0 < std::tuple_size_v<PathWithLaneId>);
46 } // namespace priority
47 
48 #if __has_include(<autoware_internal_planning_msgs/msg/path_with_lane_id.hpp>)
49 template <>
50 auto available<autoware_internal_planning_msgs::msg::PathWithLaneId>() -> bool;
51 #endif
52 
53 #if __has_include(<tier4_planning_msgs/msg/path_with_lane_id.hpp>)
54 template <>
55 auto available<tier4_planning_msgs::msg::PathWithLaneId>() -> bool;
56 #endif
57 
58 #if __has_include(<autoware_internal_planning_msgs/msg/path_with_lane_id.hpp>) and \
59  __has_include(<tier4_planning_msgs/msg/path_with_lane_id.hpp>)
60 template <>
63 #endif
64 } // namespace concealer
65 
66 #endif // CONCEALER__PATH_WITH_LANE_ID_HPP_
decltype(std::tuple_cat(std::declval< std::tuple< > >(), std::declval< std::tuple< > >())) PathWithLaneId
Definition: path_with_lane_id.hpp:43
Definition: autoware_universe.hpp:40
auto convert(const From &from) -> To
Definition: convert.hpp:21