AWS SDK for C++

AWS SDK for C++ Version 1.11.759

Loading...
Searching...
No Matches
IsolineAvoidanceOptions.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/geo-routes/GeoRoutes_EXPORTS.h>
10#include <aws/geo-routes/model/IsolineAvoidanceArea.h>
11#include <aws/geo-routes/model/IsolineAvoidanceZoneCategory.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace GeoRoutes {
23namespace Model {
24
34 public:
35 AWS_GEOROUTES_API IsolineAvoidanceOptions() = default;
38 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
44 inline const Aws::Vector<IsolineAvoidanceArea>& GetAreas() const { return m_areas; }
45 inline bool AreasHasBeenSet() const { return m_areasHasBeenSet; }
46 template <typename AreasT = Aws::Vector<IsolineAvoidanceArea>>
47 void SetAreas(AreasT&& value) {
48 m_areasHasBeenSet = true;
49 m_areas = std::forward<AreasT>(value);
50 }
51 template <typename AreasT = Aws::Vector<IsolineAvoidanceArea>>
53 SetAreas(std::forward<AreasT>(value));
54 return *this;
55 }
56 template <typename AreasT = IsolineAvoidanceArea>
58 m_areasHasBeenSet = true;
59 m_areas.emplace_back(std::forward<AreasT>(value));
60 return *this;
61 }
63
65
68 inline bool GetCarShuttleTrains() const { return m_carShuttleTrains; }
69 inline bool CarShuttleTrainsHasBeenSet() const { return m_carShuttleTrainsHasBeenSet; }
70 inline void SetCarShuttleTrains(bool value) {
71 m_carShuttleTrainsHasBeenSet = true;
72 m_carShuttleTrains = value;
73 }
76 return *this;
77 }
79
81
84 inline bool GetControlledAccessHighways() const { return m_controlledAccessHighways; }
85 inline bool ControlledAccessHighwaysHasBeenSet() const { return m_controlledAccessHighwaysHasBeenSet; }
86 inline void SetControlledAccessHighways(bool value) {
87 m_controlledAccessHighwaysHasBeenSet = true;
88 m_controlledAccessHighways = value;
89 }
92 return *this;
93 }
95
97
100 inline bool GetDirtRoads() const { return m_dirtRoads; }
101 inline bool DirtRoadsHasBeenSet() const { return m_dirtRoadsHasBeenSet; }
102 inline void SetDirtRoads(bool value) {
103 m_dirtRoadsHasBeenSet = true;
104 m_dirtRoads = value;
105 }
107 SetDirtRoads(value);
108 return *this;
109 }
111
113
116 inline bool GetFerries() const { return m_ferries; }
117 inline bool FerriesHasBeenSet() const { return m_ferriesHasBeenSet; }
118 inline void SetFerries(bool value) {
119 m_ferriesHasBeenSet = true;
120 m_ferries = value;
121 }
123 SetFerries(value);
124 return *this;
125 }
127
129
132 inline bool GetSeasonalClosure() const { return m_seasonalClosure; }
133 inline bool SeasonalClosureHasBeenSet() const { return m_seasonalClosureHasBeenSet; }
134 inline void SetSeasonalClosure(bool value) {
135 m_seasonalClosureHasBeenSet = true;
136 m_seasonalClosure = value;
137 }
139 SetSeasonalClosure(value);
140 return *this;
141 }
143
145
149 inline bool GetTollRoads() const { return m_tollRoads; }
150 inline bool TollRoadsHasBeenSet() const { return m_tollRoadsHasBeenSet; }
151 inline void SetTollRoads(bool value) {
152 m_tollRoadsHasBeenSet = true;
153 m_tollRoads = value;
154 }
156 SetTollRoads(value);
157 return *this;
158 }
160
162
166 inline bool GetTollTransponders() const { return m_tollTransponders; }
167 inline bool TollTranspondersHasBeenSet() const { return m_tollTranspondersHasBeenSet; }
168 inline void SetTollTransponders(bool value) {
169 m_tollTranspondersHasBeenSet = true;
170 m_tollTransponders = value;
171 }
173 SetTollTransponders(value);
174 return *this;
175 }
177
179
185 inline const Aws::Vector<Aws::String>& GetTruckRoadTypes() const { return m_truckRoadTypes; }
186 inline bool TruckRoadTypesHasBeenSet() const { return m_truckRoadTypesHasBeenSet; }
187 template <typename TruckRoadTypesT = Aws::Vector<Aws::String>>
188 void SetTruckRoadTypes(TruckRoadTypesT&& value) {
189 m_truckRoadTypesHasBeenSet = true;
190 m_truckRoadTypes = std::forward<TruckRoadTypesT>(value);
191 }
192 template <typename TruckRoadTypesT = Aws::Vector<Aws::String>>
193 IsolineAvoidanceOptions& WithTruckRoadTypes(TruckRoadTypesT&& value) {
194 SetTruckRoadTypes(std::forward<TruckRoadTypesT>(value));
195 return *this;
196 }
197 template <typename TruckRoadTypesT = Aws::String>
198 IsolineAvoidanceOptions& AddTruckRoadTypes(TruckRoadTypesT&& value) {
199 m_truckRoadTypesHasBeenSet = true;
200 m_truckRoadTypes.emplace_back(std::forward<TruckRoadTypesT>(value));
201 return *this;
202 }
204
206
209 inline bool GetTunnels() const { return m_tunnels; }
210 inline bool TunnelsHasBeenSet() const { return m_tunnelsHasBeenSet; }
211 inline void SetTunnels(bool value) {
212 m_tunnelsHasBeenSet = true;
213 m_tunnels = value;
214 }
216 SetTunnels(value);
217 return *this;
218 }
220
222
225 inline bool GetUTurns() const { return m_uTurns; }
226 inline bool UTurnsHasBeenSet() const { return m_uTurnsHasBeenSet; }
227 inline void SetUTurns(bool value) {
228 m_uTurnsHasBeenSet = true;
229 m_uTurns = value;
230 }
232 SetUTurns(value);
233 return *this;
234 }
236
238
241 inline const Aws::Vector<IsolineAvoidanceZoneCategory>& GetZoneCategories() const { return m_zoneCategories; }
242 inline bool ZoneCategoriesHasBeenSet() const { return m_zoneCategoriesHasBeenSet; }
243 template <typename ZoneCategoriesT = Aws::Vector<IsolineAvoidanceZoneCategory>>
244 void SetZoneCategories(ZoneCategoriesT&& value) {
245 m_zoneCategoriesHasBeenSet = true;
246 m_zoneCategories = std::forward<ZoneCategoriesT>(value);
247 }
248 template <typename ZoneCategoriesT = Aws::Vector<IsolineAvoidanceZoneCategory>>
249 IsolineAvoidanceOptions& WithZoneCategories(ZoneCategoriesT&& value) {
250 SetZoneCategories(std::forward<ZoneCategoriesT>(value));
251 return *this;
252 }
253 template <typename ZoneCategoriesT = IsolineAvoidanceZoneCategory>
254 IsolineAvoidanceOptions& AddZoneCategories(ZoneCategoriesT&& value) {
255 m_zoneCategoriesHasBeenSet = true;
256 m_zoneCategories.emplace_back(std::forward<ZoneCategoriesT>(value));
257 return *this;
258 }
260 private:
262
263 bool m_carShuttleTrains{false};
264
265 bool m_controlledAccessHighways{false};
266
267 bool m_dirtRoads{false};
268
269 bool m_ferries{false};
270
271 bool m_seasonalClosure{false};
272
273 bool m_tollRoads{false};
274
275 bool m_tollTransponders{false};
276
277 Aws::Vector<Aws::String> m_truckRoadTypes;
278
279 bool m_tunnels{false};
280
281 bool m_uTurns{false};
282
284 bool m_areasHasBeenSet = false;
285 bool m_carShuttleTrainsHasBeenSet = false;
286 bool m_controlledAccessHighwaysHasBeenSet = false;
287 bool m_dirtRoadsHasBeenSet = false;
288 bool m_ferriesHasBeenSet = false;
289 bool m_seasonalClosureHasBeenSet = false;
290 bool m_tollRoadsHasBeenSet = false;
291 bool m_tollTranspondersHasBeenSet = false;
292 bool m_truckRoadTypesHasBeenSet = false;
293 bool m_tunnelsHasBeenSet = false;
294 bool m_uTurnsHasBeenSet = false;
295 bool m_zoneCategoriesHasBeenSet = false;
296};
297
298} // namespace Model
299} // namespace GeoRoutes
300} // namespace Aws
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
IsolineAvoidanceOptions & WithTollRoads(bool value)
IsolineAvoidanceOptions & WithSeasonalClosure(bool value)
IsolineAvoidanceOptions & WithZoneCategories(ZoneCategoriesT &&value)
IsolineAvoidanceOptions & AddTruckRoadTypes(TruckRoadTypesT &&value)
IsolineAvoidanceOptions & AddAreas(AreasT &&value)
IsolineAvoidanceOptions & WithUTurns(bool value)
IsolineAvoidanceOptions & WithTollTransponders(bool value)
IsolineAvoidanceOptions & WithFerries(bool value)
const Aws::Vector< Aws::String > & GetTruckRoadTypes() const
IsolineAvoidanceOptions & WithTunnels(bool value)
AWS_GEOROUTES_API IsolineAvoidanceOptions()=default
IsolineAvoidanceOptions & WithTruckRoadTypes(TruckRoadTypesT &&value)
const Aws::Vector< IsolineAvoidanceArea > & GetAreas() const
IsolineAvoidanceOptions & WithControlledAccessHighways(bool value)
const Aws::Vector< IsolineAvoidanceZoneCategory > & GetZoneCategories() const
IsolineAvoidanceOptions & AddZoneCategories(ZoneCategoriesT &&value)
AWS_GEOROUTES_API IsolineAvoidanceOptions & operator=(Aws::Utils::Json::JsonView jsonValue)
IsolineAvoidanceOptions & WithDirtRoads(bool value)
AWS_GEOROUTES_API IsolineAvoidanceOptions(Aws::Utils::Json::JsonView jsonValue)
IsolineAvoidanceOptions & WithCarShuttleTrains(bool value)
IsolineAvoidanceOptions & WithAreas(AreasT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue