AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
RouteAvoidanceOptions.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/RouteAvoidanceArea.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/geo-routes/model/RouteAvoidanceZoneCategory.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace GeoRoutes
25{
26namespace Model
27{
28
40 {
41 public:
42 AWS_GEOROUTES_API RouteAvoidanceOptions() = default;
45 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
46
47
49
52 inline const Aws::Vector<RouteAvoidanceArea>& GetAreas() const { return m_areas; }
53 inline bool AreasHasBeenSet() const { return m_areasHasBeenSet; }
54 template<typename AreasT = Aws::Vector<RouteAvoidanceArea>>
55 void SetAreas(AreasT&& value) { m_areasHasBeenSet = true; m_areas = std::forward<AreasT>(value); }
56 template<typename AreasT = Aws::Vector<RouteAvoidanceArea>>
57 RouteAvoidanceOptions& WithAreas(AreasT&& value) { SetAreas(std::forward<AreasT>(value)); return *this;}
58 template<typename AreasT = RouteAvoidanceArea>
59 RouteAvoidanceOptions& AddAreas(AreasT&& value) { m_areasHasBeenSet = true; m_areas.emplace_back(std::forward<AreasT>(value)); return *this; }
61
63
66 inline bool GetCarShuttleTrains() const { return m_carShuttleTrains; }
67 inline bool CarShuttleTrainsHasBeenSet() const { return m_carShuttleTrainsHasBeenSet; }
68 inline void SetCarShuttleTrains(bool value) { m_carShuttleTrainsHasBeenSet = true; m_carShuttleTrains = value; }
69 inline RouteAvoidanceOptions& WithCarShuttleTrains(bool value) { SetCarShuttleTrains(value); return *this;}
71
73
76 inline bool GetControlledAccessHighways() const { return m_controlledAccessHighways; }
77 inline bool ControlledAccessHighwaysHasBeenSet() const { return m_controlledAccessHighwaysHasBeenSet; }
78 inline void SetControlledAccessHighways(bool value) { m_controlledAccessHighwaysHasBeenSet = true; m_controlledAccessHighways = value; }
81
83
86 inline bool GetDirtRoads() const { return m_dirtRoads; }
87 inline bool DirtRoadsHasBeenSet() const { return m_dirtRoadsHasBeenSet; }
88 inline void SetDirtRoads(bool value) { m_dirtRoadsHasBeenSet = true; m_dirtRoads = value; }
89 inline RouteAvoidanceOptions& WithDirtRoads(bool value) { SetDirtRoads(value); return *this;}
91
93
96 inline bool GetFerries() const { return m_ferries; }
97 inline bool FerriesHasBeenSet() const { return m_ferriesHasBeenSet; }
98 inline void SetFerries(bool value) { m_ferriesHasBeenSet = true; m_ferries = value; }
99 inline RouteAvoidanceOptions& WithFerries(bool value) { SetFerries(value); return *this;}
101
103
106 inline bool GetSeasonalClosure() const { return m_seasonalClosure; }
107 inline bool SeasonalClosureHasBeenSet() const { return m_seasonalClosureHasBeenSet; }
108 inline void SetSeasonalClosure(bool value) { m_seasonalClosureHasBeenSet = true; m_seasonalClosure = value; }
109 inline RouteAvoidanceOptions& WithSeasonalClosure(bool value) { SetSeasonalClosure(value); return *this;}
111
113
117 inline bool GetTollRoads() const { return m_tollRoads; }
118 inline bool TollRoadsHasBeenSet() const { return m_tollRoadsHasBeenSet; }
119 inline void SetTollRoads(bool value) { m_tollRoadsHasBeenSet = true; m_tollRoads = value; }
120 inline RouteAvoidanceOptions& WithTollRoads(bool value) { SetTollRoads(value); return *this;}
122
124
128 inline bool GetTollTransponders() const { return m_tollTransponders; }
129 inline bool TollTranspondersHasBeenSet() const { return m_tollTranspondersHasBeenSet; }
130 inline void SetTollTransponders(bool value) { m_tollTranspondersHasBeenSet = true; m_tollTransponders = value; }
131 inline RouteAvoidanceOptions& WithTollTransponders(bool value) { SetTollTransponders(value); return *this;}
133
135
141 inline const Aws::Vector<Aws::String>& GetTruckRoadTypes() const { return m_truckRoadTypes; }
142 inline bool TruckRoadTypesHasBeenSet() const { return m_truckRoadTypesHasBeenSet; }
143 template<typename TruckRoadTypesT = Aws::Vector<Aws::String>>
144 void SetTruckRoadTypes(TruckRoadTypesT&& value) { m_truckRoadTypesHasBeenSet = true; m_truckRoadTypes = std::forward<TruckRoadTypesT>(value); }
145 template<typename TruckRoadTypesT = Aws::Vector<Aws::String>>
146 RouteAvoidanceOptions& WithTruckRoadTypes(TruckRoadTypesT&& value) { SetTruckRoadTypes(std::forward<TruckRoadTypesT>(value)); return *this;}
147 template<typename TruckRoadTypesT = Aws::String>
148 RouteAvoidanceOptions& AddTruckRoadTypes(TruckRoadTypesT&& value) { m_truckRoadTypesHasBeenSet = true; m_truckRoadTypes.emplace_back(std::forward<TruckRoadTypesT>(value)); return *this; }
150
152
155 inline bool GetTunnels() const { return m_tunnels; }
156 inline bool TunnelsHasBeenSet() const { return m_tunnelsHasBeenSet; }
157 inline void SetTunnels(bool value) { m_tunnelsHasBeenSet = true; m_tunnels = value; }
158 inline RouteAvoidanceOptions& WithTunnels(bool value) { SetTunnels(value); return *this;}
160
162
165 inline bool GetUTurns() const { return m_uTurns; }
166 inline bool UTurnsHasBeenSet() const { return m_uTurnsHasBeenSet; }
167 inline void SetUTurns(bool value) { m_uTurnsHasBeenSet = true; m_uTurns = value; }
168 inline RouteAvoidanceOptions& WithUTurns(bool value) { SetUTurns(value); return *this;}
170
172
175 inline const Aws::Vector<RouteAvoidanceZoneCategory>& GetZoneCategories() const { return m_zoneCategories; }
176 inline bool ZoneCategoriesHasBeenSet() const { return m_zoneCategoriesHasBeenSet; }
177 template<typename ZoneCategoriesT = Aws::Vector<RouteAvoidanceZoneCategory>>
178 void SetZoneCategories(ZoneCategoriesT&& value) { m_zoneCategoriesHasBeenSet = true; m_zoneCategories = std::forward<ZoneCategoriesT>(value); }
179 template<typename ZoneCategoriesT = Aws::Vector<RouteAvoidanceZoneCategory>>
180 RouteAvoidanceOptions& WithZoneCategories(ZoneCategoriesT&& value) { SetZoneCategories(std::forward<ZoneCategoriesT>(value)); return *this;}
181 template<typename ZoneCategoriesT = RouteAvoidanceZoneCategory>
182 RouteAvoidanceOptions& AddZoneCategories(ZoneCategoriesT&& value) { m_zoneCategoriesHasBeenSet = true; m_zoneCategories.emplace_back(std::forward<ZoneCategoriesT>(value)); return *this; }
184 private:
185
187 bool m_areasHasBeenSet = false;
188
189 bool m_carShuttleTrains{false};
190 bool m_carShuttleTrainsHasBeenSet = false;
191
192 bool m_controlledAccessHighways{false};
193 bool m_controlledAccessHighwaysHasBeenSet = false;
194
195 bool m_dirtRoads{false};
196 bool m_dirtRoadsHasBeenSet = false;
197
198 bool m_ferries{false};
199 bool m_ferriesHasBeenSet = false;
200
201 bool m_seasonalClosure{false};
202 bool m_seasonalClosureHasBeenSet = false;
203
204 bool m_tollRoads{false};
205 bool m_tollRoadsHasBeenSet = false;
206
207 bool m_tollTransponders{false};
208 bool m_tollTranspondersHasBeenSet = false;
209
210 Aws::Vector<Aws::String> m_truckRoadTypes;
211 bool m_truckRoadTypesHasBeenSet = false;
212
213 bool m_tunnels{false};
214 bool m_tunnelsHasBeenSet = false;
215
216 bool m_uTurns{false};
217 bool m_uTurnsHasBeenSet = false;
218
220 bool m_zoneCategoriesHasBeenSet = false;
221 };
222
223} // namespace Model
224} // namespace GeoRoutes
225} // namespace Aws
RouteAvoidanceOptions & AddZoneCategories(ZoneCategoriesT &&value)
RouteAvoidanceOptions & WithZoneCategories(ZoneCategoriesT &&value)
RouteAvoidanceOptions & WithControlledAccessHighways(bool value)
RouteAvoidanceOptions & WithTollRoads(bool value)
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_GEOROUTES_API RouteAvoidanceOptions & operator=(Aws::Utils::Json::JsonView jsonValue)
RouteAvoidanceOptions & WithTunnels(bool value)
RouteAvoidanceOptions & WithAreas(AreasT &&value)
AWS_GEOROUTES_API RouteAvoidanceOptions(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< RouteAvoidanceArea > & GetAreas() const
RouteAvoidanceOptions & WithTollTransponders(bool value)
RouteAvoidanceOptions & AddTruckRoadTypes(TruckRoadTypesT &&value)
AWS_GEOROUTES_API RouteAvoidanceOptions()=default
RouteAvoidanceOptions & WithDirtRoads(bool value)
RouteAvoidanceOptions & AddAreas(AreasT &&value)
RouteAvoidanceOptions & WithTruckRoadTypes(TruckRoadTypesT &&value)
RouteAvoidanceOptions & WithFerries(bool value)
RouteAvoidanceOptions & WithSeasonalClosure(bool value)
RouteAvoidanceOptions & WithCarShuttleTrains(bool value)
const Aws::Vector< RouteAvoidanceZoneCategory > & GetZoneCategories() const
RouteAvoidanceOptions & WithUTurns(bool value)
const Aws::Vector< Aws::String > & GetTruckRoadTypes() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue