AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
WaypointOptimizationAvoidanceOptions.h
1
6#pragma once
7#include <aws/geo-routes/GeoRoutes_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/geo-routes/model/WaypointOptimizationAvoidanceArea.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace GeoRoutes
23{
24namespace Model
25{
26
37 {
38 public:
39 AWS_GEOROUTES_API WaypointOptimizationAvoidanceOptions() = default;
42 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
49 inline const Aws::Vector<WaypointOptimizationAvoidanceArea>& GetAreas() const { return m_areas; }
50 inline bool AreasHasBeenSet() const { return m_areasHasBeenSet; }
51 template<typename AreasT = Aws::Vector<WaypointOptimizationAvoidanceArea>>
52 void SetAreas(AreasT&& value) { m_areasHasBeenSet = true; m_areas = std::forward<AreasT>(value); }
53 template<typename AreasT = Aws::Vector<WaypointOptimizationAvoidanceArea>>
54 WaypointOptimizationAvoidanceOptions& WithAreas(AreasT&& value) { SetAreas(std::forward<AreasT>(value)); return *this;}
55 template<typename AreasT = WaypointOptimizationAvoidanceArea>
56 WaypointOptimizationAvoidanceOptions& AddAreas(AreasT&& value) { m_areasHasBeenSet = true; m_areas.emplace_back(std::forward<AreasT>(value)); return *this; }
58
60
63 inline bool GetCarShuttleTrains() const { return m_carShuttleTrains; }
64 inline bool CarShuttleTrainsHasBeenSet() const { return m_carShuttleTrainsHasBeenSet; }
65 inline void SetCarShuttleTrains(bool value) { m_carShuttleTrainsHasBeenSet = true; m_carShuttleTrains = value; }
68
70
73 inline bool GetControlledAccessHighways() const { return m_controlledAccessHighways; }
74 inline bool ControlledAccessHighwaysHasBeenSet() const { return m_controlledAccessHighwaysHasBeenSet; }
75 inline void SetControlledAccessHighways(bool value) { m_controlledAccessHighwaysHasBeenSet = true; m_controlledAccessHighways = value; }
78
80
83 inline bool GetDirtRoads() const { return m_dirtRoads; }
84 inline bool DirtRoadsHasBeenSet() const { return m_dirtRoadsHasBeenSet; }
85 inline void SetDirtRoads(bool value) { m_dirtRoadsHasBeenSet = true; m_dirtRoads = value; }
86 inline WaypointOptimizationAvoidanceOptions& WithDirtRoads(bool value) { SetDirtRoads(value); return *this;}
88
90
93 inline bool GetFerries() const { return m_ferries; }
94 inline bool FerriesHasBeenSet() const { return m_ferriesHasBeenSet; }
95 inline void SetFerries(bool value) { m_ferriesHasBeenSet = true; m_ferries = value; }
96 inline WaypointOptimizationAvoidanceOptions& WithFerries(bool value) { SetFerries(value); return *this;}
98
100
104 inline bool GetTollRoads() const { return m_tollRoads; }
105 inline bool TollRoadsHasBeenSet() const { return m_tollRoadsHasBeenSet; }
106 inline void SetTollRoads(bool value) { m_tollRoadsHasBeenSet = true; m_tollRoads = value; }
107 inline WaypointOptimizationAvoidanceOptions& WithTollRoads(bool value) { SetTollRoads(value); return *this;}
109
111
114 inline bool GetTunnels() const { return m_tunnels; }
115 inline bool TunnelsHasBeenSet() const { return m_tunnelsHasBeenSet; }
116 inline void SetTunnels(bool value) { m_tunnelsHasBeenSet = true; m_tunnels = value; }
117 inline WaypointOptimizationAvoidanceOptions& WithTunnels(bool value) { SetTunnels(value); return *this;}
119
121
124 inline bool GetUTurns() const { return m_uTurns; }
125 inline bool UTurnsHasBeenSet() const { return m_uTurnsHasBeenSet; }
126 inline void SetUTurns(bool value) { m_uTurnsHasBeenSet = true; m_uTurns = value; }
127 inline WaypointOptimizationAvoidanceOptions& WithUTurns(bool value) { SetUTurns(value); return *this;}
129 private:
130
132 bool m_areasHasBeenSet = false;
133
134 bool m_carShuttleTrains{false};
135 bool m_carShuttleTrainsHasBeenSet = false;
136
137 bool m_controlledAccessHighways{false};
138 bool m_controlledAccessHighwaysHasBeenSet = false;
139
140 bool m_dirtRoads{false};
141 bool m_dirtRoadsHasBeenSet = false;
142
143 bool m_ferries{false};
144 bool m_ferriesHasBeenSet = false;
145
146 bool m_tollRoads{false};
147 bool m_tollRoadsHasBeenSet = false;
148
149 bool m_tunnels{false};
150 bool m_tunnelsHasBeenSet = false;
151
152 bool m_uTurns{false};
153 bool m_uTurnsHasBeenSet = false;
154 };
155
156} // namespace Model
157} // namespace GeoRoutes
158} // namespace Aws
WaypointOptimizationAvoidanceOptions & AddAreas(AreasT &&value)
AWS_GEOROUTES_API WaypointOptimizationAvoidanceOptions & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_GEOROUTES_API WaypointOptimizationAvoidanceOptions(Aws::Utils::Json::JsonView jsonValue)
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
WaypointOptimizationAvoidanceOptions & WithAreas(AreasT &&value)
WaypointOptimizationAvoidanceOptions & WithCarShuttleTrains(bool value)
WaypointOptimizationAvoidanceOptions & WithControlledAccessHighways(bool value)
const Aws::Vector< WaypointOptimizationAvoidanceArea > & GetAreas() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue