scenario_simulator_v2 C++ API
routing_action.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 OPENSCENARIO_INTERPRETER__SYNTAX__ROUTING_ACTION_HPP_
16 #define OPENSCENARIO_INTERPRETER__SYNTAX__ROUTING_ACTION_HPP_
17 
22 #include <pugixml.hpp>
23 
25 {
26 inline namespace syntax
27 {
28 /* ---- RoutingAction ----------------------------------------------------------
29  *
30  * <xsd:complexType name="RoutingAction">
31  * <xsd:choice>
32  * <xsd:element name="AssignRouteAction" type="AssignRouteAction"/>
33  * <xsd:element name="FollowTrajectoryAction" type="FollowTrajectoryAction"/>
34  * <xsd:element name="AcquirePositionAction" type="AcquirePositionAction"/>
35  * </xsd:choice>
36  * </xsd:complexType>
37  *
38  * -------------------------------------------------------------------------- */
39 struct RoutingAction : public ComplexType
40 {
41  explicit RoutingAction(const pugi::xml_node &, Scope &);
42 
43  auto endsImmediately() const -> bool;
44 
45  auto run() -> void;
46 
47  auto start() -> void;
48 };
49 
55 );
56 
58  const RoutingAction,
62 );
63 } // namespace syntax
64 } // namespace openscenario_interpreter
65 
66 #endif // OPENSCENARIO_INTERPRETER__SYNTAX__ROUTING_ACTION_HPP_
Definition: scope.hpp:154
#define CASE(IDENTIFIER)
DEFINE_LAZY_VISITOR(Action, CASE(GlobalAction), CASE(UserDefinedAction), CASE(PrivateAction),)
Definition: escape_sequence.hpp:22
Definition: acquire_position_action.hpp:37
Definition: assign_route_action.hpp:37
Definition: follow_trajectory_action.hpp:60
Definition: routing_action.hpp:40
auto start() -> void
Definition: routing_action.cpp:43
RoutingAction(const pugi::xml_node &, Scope &)
Definition: routing_action.cpp:22
auto endsImmediately() const -> bool
Definition: routing_action.cpp:33
auto run() -> void
Definition: routing_action.cpp:38