AWS SDK for C++

AWS SDK for C++ Version 1.11.791

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
38 public:
39 AWS_GEOROUTES_API IsolineAvoidanceOptions() = default;
42 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
43
45
49 inline const Aws::Vector<IsolineAvoidanceArea>& GetAreas() const { return m_areas; }
50 inline bool AreasHasBeenSet() const { return m_areasHasBeenSet; }
51 template <typename AreasT = Aws::Vector<IsolineAvoidanceArea>>
52 void SetAreas(AreasT&& value) {
53 m_areasHasBeenSet = true;
54 m_areas = std::forward<AreasT>(value);
55 }
56 template <typename AreasT = Aws::Vector<IsolineAvoidanceArea>>
58 SetAreas(std::forward<AreasT>(value));
59 return *this;
60 }
61 template <typename AreasT = IsolineAvoidanceArea>
63 m_areasHasBeenSet = true;
64 m_areas.emplace_back(std::forward<AreasT>(value));
65 return *this;
66 }
68
70
75 inline bool GetCarShuttleTrains() const { return m_carShuttleTrains; }
76 inline bool CarShuttleTrainsHasBeenSet() const { return m_carShuttleTrainsHasBeenSet; }
77 inline void SetCarShuttleTrains(bool value) {
78 m_carShuttleTrainsHasBeenSet = true;
79 m_carShuttleTrains = value;
80 }
83 return *this;
84 }
86
88
94 inline bool GetControlledAccessHighways() const { return m_controlledAccessHighways; }
95 inline bool ControlledAccessHighwaysHasBeenSet() const { return m_controlledAccessHighwaysHasBeenSet; }
96 inline void SetControlledAccessHighways(bool value) {
97 m_controlledAccessHighwaysHasBeenSet = true;
98 m_controlledAccessHighways = value;
99 }
102 return *this;
103 }
105
107
111 inline bool GetDirtRoads() const { return m_dirtRoads; }
112 inline bool DirtRoadsHasBeenSet() const { return m_dirtRoadsHasBeenSet; }
113 inline void SetDirtRoads(bool value) {
114 m_dirtRoadsHasBeenSet = true;
115 m_dirtRoads = value;
116 }
118 SetDirtRoads(value);
119 return *this;
120 }
122
124
128 inline bool GetFerries() const { return m_ferries; }
129 inline bool FerriesHasBeenSet() const { return m_ferriesHasBeenSet; }
130 inline void SetFerries(bool value) {
131 m_ferriesHasBeenSet = true;
132 m_ferries = value;
133 }
135 SetFerries(value);
136 return *this;
137 }
139
141
146 inline bool GetSeasonalClosure() const { return m_seasonalClosure; }
147 inline bool SeasonalClosureHasBeenSet() const { return m_seasonalClosureHasBeenSet; }
148 inline void SetSeasonalClosure(bool value) {
149 m_seasonalClosureHasBeenSet = true;
150 m_seasonalClosure = value;
151 }
153 SetSeasonalClosure(value);
154 return *this;
155 }
157
159
163 inline bool GetTollRoads() const { return m_tollRoads; }
164 inline bool TollRoadsHasBeenSet() const { return m_tollRoadsHasBeenSet; }
165 inline void SetTollRoads(bool value) {
166 m_tollRoadsHasBeenSet = true;
167 m_tollRoads = value;
168 }
170 SetTollRoads(value);
171 return *this;
172 }
174
176
181 inline bool GetTollTransponders() const { return m_tollTransponders; }
182 inline bool TollTranspondersHasBeenSet() const { return m_tollTranspondersHasBeenSet; }
183 inline void SetTollTransponders(bool value) {
184 m_tollTranspondersHasBeenSet = true;
185 m_tollTransponders = value;
186 }
188 SetTollTransponders(value);
189 return *this;
190 }
192
194
201 inline const Aws::Vector<Aws::String>& GetTruckRoadTypes() const { return m_truckRoadTypes; }
202 inline bool TruckRoadTypesHasBeenSet() const { return m_truckRoadTypesHasBeenSet; }
203 template <typename TruckRoadTypesT = Aws::Vector<Aws::String>>
204 void SetTruckRoadTypes(TruckRoadTypesT&& value) {
205 m_truckRoadTypesHasBeenSet = true;
206 m_truckRoadTypes = std::forward<TruckRoadTypesT>(value);
207 }
208 template <typename TruckRoadTypesT = Aws::Vector<Aws::String>>
209 IsolineAvoidanceOptions& WithTruckRoadTypes(TruckRoadTypesT&& value) {
210 SetTruckRoadTypes(std::forward<TruckRoadTypesT>(value));
211 return *this;
212 }
213 template <typename TruckRoadTypesT = Aws::String>
214 IsolineAvoidanceOptions& AddTruckRoadTypes(TruckRoadTypesT&& value) {
215 m_truckRoadTypesHasBeenSet = true;
216 m_truckRoadTypes.emplace_back(std::forward<TruckRoadTypesT>(value));
217 return *this;
218 }
220
222
226 inline bool GetTunnels() const { return m_tunnels; }
227 inline bool TunnelsHasBeenSet() const { return m_tunnelsHasBeenSet; }
228 inline void SetTunnels(bool value) {
229 m_tunnelsHasBeenSet = true;
230 m_tunnels = value;
231 }
233 SetTunnels(value);
234 return *this;
235 }
237
239
244 inline bool GetUTurns() const { return m_uTurns; }
245 inline bool UTurnsHasBeenSet() const { return m_uTurnsHasBeenSet; }
246 inline void SetUTurns(bool value) {
247 m_uTurnsHasBeenSet = true;
248 m_uTurns = value;
249 }
251 SetUTurns(value);
252 return *this;
253 }
255
257
262 inline const Aws::Vector<IsolineAvoidanceZoneCategory>& GetZoneCategories() const { return m_zoneCategories; }
263 inline bool ZoneCategoriesHasBeenSet() const { return m_zoneCategoriesHasBeenSet; }
264 template <typename ZoneCategoriesT = Aws::Vector<IsolineAvoidanceZoneCategory>>
265 void SetZoneCategories(ZoneCategoriesT&& value) {
266 m_zoneCategoriesHasBeenSet = true;
267 m_zoneCategories = std::forward<ZoneCategoriesT>(value);
268 }
269 template <typename ZoneCategoriesT = Aws::Vector<IsolineAvoidanceZoneCategory>>
270 IsolineAvoidanceOptions& WithZoneCategories(ZoneCategoriesT&& value) {
271 SetZoneCategories(std::forward<ZoneCategoriesT>(value));
272 return *this;
273 }
274 template <typename ZoneCategoriesT = IsolineAvoidanceZoneCategory>
275 IsolineAvoidanceOptions& AddZoneCategories(ZoneCategoriesT&& value) {
276 m_zoneCategoriesHasBeenSet = true;
277 m_zoneCategories.emplace_back(std::forward<ZoneCategoriesT>(value));
278 return *this;
279 }
281 private:
283
284 bool m_carShuttleTrains{false};
285
286 bool m_controlledAccessHighways{false};
287
288 bool m_dirtRoads{false};
289
290 bool m_ferries{false};
291
292 bool m_seasonalClosure{false};
293
294 bool m_tollRoads{false};
295
296 bool m_tollTransponders{false};
297
298 Aws::Vector<Aws::String> m_truckRoadTypes;
299
300 bool m_tunnels{false};
301
302 bool m_uTurns{false};
303
305 bool m_areasHasBeenSet = false;
306 bool m_carShuttleTrainsHasBeenSet = false;
307 bool m_controlledAccessHighwaysHasBeenSet = false;
308 bool m_dirtRoadsHasBeenSet = false;
309 bool m_ferriesHasBeenSet = false;
310 bool m_seasonalClosureHasBeenSet = false;
311 bool m_tollRoadsHasBeenSet = false;
312 bool m_tollTranspondersHasBeenSet = false;
313 bool m_truckRoadTypesHasBeenSet = false;
314 bool m_tunnelsHasBeenSet = false;
315 bool m_uTurnsHasBeenSet = false;
316 bool m_zoneCategoriesHasBeenSet = false;
317};
318
319} // namespace Model
320} // namespace GeoRoutes
321} // 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