scenario_simulator_v2 C++ API
openscenario
openscenario_interpreter
include
openscenario_interpreter
syntax
maneuver.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__MANEUVER_HPP_
16
#define OPENSCENARIO_INTERPRETER__SYNTAX__MANEUVER_HPP_
17
18
#include <boost/json.hpp>
19
#include <
openscenario_interpreter/scope.hpp
>
20
#include <
openscenario_interpreter/syntax/parameter_declarations.hpp
>
21
#include <
openscenario_interpreter/syntax/storyboard_element.hpp
>
22
#include <pugixml.hpp>
23
24
namespace
openscenario_interpreter
25
{
26
inline
namespace
syntax
27
{
28
/* ---- Maneuver ---------------------------------------------------------------
29
*
30
* <xsd:complexType name="Maneuver">
31
* <xsd:sequence>
32
* <xsd:element name="ParameterDeclarations" type="ParameterDeclarations" minOccurs="0"/>
33
* <xsd:element name="Event" maxOccurs="unbounded" type="Event"/>
34
* </xsd:sequence>
35
* <xsd:attribute name="name" type="String" use="required"/>
36
* </xsd:complexType>
37
*
38
* -------------------------------------------------------------------------- */
39
struct
Maneuver
:
public
Scope
,
public
StoryboardElement
40
{
41
const
ParameterDeclarations
parameter_declarations
;
42
43
explicit
Maneuver
(
const
pugi::xml_node &,
Scope
&);
44
45
auto
run
() ->
void
override
;
46
47
auto
overrideEvents
() -> void;
48
49
auto
running_events_count
() const ->
std
::
size_t
;
50
51
friend auto operator<<(boost::json::
object
&, const
Maneuver
&) -> boost::json::
object
&;
52
};
53
}
// namespace syntax
54
}
// namespace openscenario_interpreter
55
56
#endif
// OPENSCENARIO_INTERPRETER__SYNTAX__MANEUVER_HPP_
openscenario_interpreter::Scope
Definition:
scope.hpp:154
openscenario_interpreter::StoryboardElement
Definition:
storyboard_element.hpp:37
openscenario_interpreter
Definition:
escape_sequence.hpp:22
std
Definition:
cache.hpp:27
parameter_declarations.hpp
scope.hpp
storyboard_element.hpp
openscenario_interpreter::Maneuver
Definition:
maneuver.hpp:40
openscenario_interpreter::syntax::Maneuver::running_events_count
auto running_events_count() const -> std::size_t
Definition:
maneuver.cpp:55
openscenario_interpreter::syntax::Maneuver::parameter_declarations
const ParameterDeclarations parameter_declarations
Definition:
maneuver.hpp:41
openscenario_interpreter::syntax::Maneuver::run
auto run() -> void override
Definition:
maneuver.cpp:33
openscenario_interpreter::syntax::Maneuver::overrideEvents
auto overrideEvents() -> void
Definition:
maneuver.cpp:47
openscenario_interpreter::syntax::Maneuver::Maneuver
Maneuver(const pugi::xml_node &, Scope &)
Definition:
maneuver.cpp:24
openscenario_interpreter::syntax::ParameterDeclarations
Definition:
parameter_declarations.hpp:36
Generated by
1.9.1