AWS SDK for C++

AWS SDK for C++ Version 1.11.742

Loading...
Searching...
No Matches
RouteMatrixAvoidanceOptions.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/RouteMatrixAvoidanceArea.h>
11#include <aws/geo-routes/model/RouteMatrixAvoidanceZoneCategory.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
36 public:
37 AWS_GEOROUTES_API RouteMatrixAvoidanceOptions() = default;
40 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
41
43
46 inline const Aws::Vector<RouteMatrixAvoidanceArea>& GetAreas() const { return m_areas; }
47 inline bool AreasHasBeenSet() const { return m_areasHasBeenSet; }
48 template <typename AreasT = Aws::Vector<RouteMatrixAvoidanceArea>>
49 void SetAreas(AreasT&& value) {
50 m_areasHasBeenSet = true;
51 m_areas = std::forward<AreasT>(value);
52 }
53 template <typename AreasT = Aws::Vector<RouteMatrixAvoidanceArea>>
55 SetAreas(std::forward<AreasT>(value));
56 return *this;
57 }
58 template <typename AreasT = RouteMatrixAvoidanceArea>
60 m_areasHasBeenSet = true;
61 m_areas.emplace_back(std::forward<AreasT>(value));
62 return *this;
63 }
65
67
70 inline bool GetCarShuttleTrains() const { return m_carShuttleTrains; }
71 inline bool CarShuttleTrainsHasBeenSet() const { return m_carShuttleTrainsHasBeenSet; }
72 inline void SetCarShuttleTrains(bool value) {
73 m_carShuttleTrainsHasBeenSet = true;
74 m_carShuttleTrains = value;
75 }
78 return *this;
79 }
81
83
86 inline bool GetControlledAccessHighways() const { return m_controlledAccessHighways; }
87 inline bool ControlledAccessHighwaysHasBeenSet() const { return m_controlledAccessHighwaysHasBeenSet; }
88 inline void SetControlledAccessHighways(bool value) {
89 m_controlledAccessHighwaysHasBeenSet = true;
90 m_controlledAccessHighways = value;
91 }
94 return *this;
95 }
97
99
102 inline bool GetDirtRoads() const { return m_dirtRoads; }
103 inline bool DirtRoadsHasBeenSet() const { return m_dirtRoadsHasBeenSet; }
104 inline void SetDirtRoads(bool value) {
105 m_dirtRoadsHasBeenSet = true;
106 m_dirtRoads = value;
107 }
109 SetDirtRoads(value);
110 return *this;
111 }
113
115
118 inline bool GetFerries() const { return m_ferries; }
119 inline bool FerriesHasBeenSet() const { return m_ferriesHasBeenSet; }
120 inline void SetFerries(bool value) {
121 m_ferriesHasBeenSet = true;
122 m_ferries = value;
123 }
125 SetFerries(value);
126 return *this;
127 }
129
131
135 inline bool GetTollRoads() const { return m_tollRoads; }
136 inline bool TollRoadsHasBeenSet() const { return m_tollRoadsHasBeenSet; }
137 inline void SetTollRoads(bool value) {
138 m_tollRoadsHasBeenSet = true;
139 m_tollRoads = value;
140 }
142 SetTollRoads(value);
143 return *this;
144 }
146
148
152 inline bool GetTollTransponders() const { return m_tollTransponders; }
153 inline bool TollTranspondersHasBeenSet() const { return m_tollTranspondersHasBeenSet; }
154 inline void SetTollTransponders(bool value) {
155 m_tollTranspondersHasBeenSet = true;
156 m_tollTransponders = value;
157 }
159 SetTollTransponders(value);
160 return *this;
161 }
163
165
171 inline const Aws::Vector<Aws::String>& GetTruckRoadTypes() const { return m_truckRoadTypes; }
172 inline bool TruckRoadTypesHasBeenSet() const { return m_truckRoadTypesHasBeenSet; }
173 template <typename TruckRoadTypesT = Aws::Vector<Aws::String>>
174 void SetTruckRoadTypes(TruckRoadTypesT&& value) {
175 m_truckRoadTypesHasBeenSet = true;
176 m_truckRoadTypes = std::forward<TruckRoadTypesT>(value);
177 }
178 template <typename TruckRoadTypesT = Aws::Vector<Aws::String>>
180 SetTruckRoadTypes(std::forward<TruckRoadTypesT>(value));
181 return *this;
182 }
183 template <typename TruckRoadTypesT = Aws::String>
185 m_truckRoadTypesHasBeenSet = true;
186 m_truckRoadTypes.emplace_back(std::forward<TruckRoadTypesT>(value));
187 return *this;
188 }
190
192
195 inline bool GetTunnels() const { return m_tunnels; }
196 inline bool TunnelsHasBeenSet() const { return m_tunnelsHasBeenSet; }
197 inline void SetTunnels(bool value) {
198 m_tunnelsHasBeenSet = true;
199 m_tunnels = value;
200 }
202 SetTunnels(value);
203 return *this;
204 }
206
208
211 inline bool GetUTurns() const { return m_uTurns; }
212 inline bool UTurnsHasBeenSet() const { return m_uTurnsHasBeenSet; }
213 inline void SetUTurns(bool value) {
214 m_uTurnsHasBeenSet = true;
215 m_uTurns = value;
216 }
218 SetUTurns(value);
219 return *this;
220 }
222
224
227 inline const Aws::Vector<RouteMatrixAvoidanceZoneCategory>& GetZoneCategories() const { return m_zoneCategories; }
228 inline bool ZoneCategoriesHasBeenSet() const { return m_zoneCategoriesHasBeenSet; }
229 template <typename ZoneCategoriesT = Aws::Vector<RouteMatrixAvoidanceZoneCategory>>
230 void SetZoneCategories(ZoneCategoriesT&& value) {
231 m_zoneCategoriesHasBeenSet = true;
232 m_zoneCategories = std::forward<ZoneCategoriesT>(value);
233 }
234 template <typename ZoneCategoriesT = Aws::Vector<RouteMatrixAvoidanceZoneCategory>>
236 SetZoneCategories(std::forward<ZoneCategoriesT>(value));
237 return *this;
238 }
239 template <typename ZoneCategoriesT = RouteMatrixAvoidanceZoneCategory>
241 m_zoneCategoriesHasBeenSet = true;
242 m_zoneCategories.emplace_back(std::forward<ZoneCategoriesT>(value));
243 return *this;
244 }
246 private:
248
249 bool m_carShuttleTrains{false};
250
251 bool m_controlledAccessHighways{false};
252
253 bool m_dirtRoads{false};
254
255 bool m_ferries{false};
256
257 bool m_tollRoads{false};
258
259 bool m_tollTransponders{false};
260
261 Aws::Vector<Aws::String> m_truckRoadTypes;
262
263 bool m_tunnels{false};
264
265 bool m_uTurns{false};
266
268 bool m_areasHasBeenSet = false;
269 bool m_carShuttleTrainsHasBeenSet = false;
270 bool m_controlledAccessHighwaysHasBeenSet = false;
271 bool m_dirtRoadsHasBeenSet = false;
272 bool m_ferriesHasBeenSet = false;
273 bool m_tollRoadsHasBeenSet = false;
274 bool m_tollTranspondersHasBeenSet = false;
275 bool m_truckRoadTypesHasBeenSet = false;
276 bool m_tunnelsHasBeenSet = false;
277 bool m_uTurnsHasBeenSet = false;
278 bool m_zoneCategoriesHasBeenSet = false;
279};
280
281} // namespace Model
282} // namespace GeoRoutes
283} // namespace Aws
RouteMatrixAvoidanceOptions & WithDirtRoads(bool value)
const Aws::Vector< RouteMatrixAvoidanceZoneCategory > & GetZoneCategories() const
AWS_GEOROUTES_API RouteMatrixAvoidanceOptions(Aws::Utils::Json::JsonView jsonValue)
RouteMatrixAvoidanceOptions & WithTollRoads(bool value)
RouteMatrixAvoidanceOptions & WithCarShuttleTrains(bool value)
AWS_GEOROUTES_API RouteMatrixAvoidanceOptions()=default
const Aws::Vector< RouteMatrixAvoidanceArea > & GetAreas() const
RouteMatrixAvoidanceOptions & WithZoneCategories(ZoneCategoriesT &&value)
AWS_GEOROUTES_API RouteMatrixAvoidanceOptions & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetTruckRoadTypes() const
RouteMatrixAvoidanceOptions & AddZoneCategories(ZoneCategoriesT &&value)
RouteMatrixAvoidanceOptions & AddAreas(AreasT &&value)
RouteMatrixAvoidanceOptions & WithAreas(AreasT &&value)
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
RouteMatrixAvoidanceOptions & WithControlledAccessHighways(bool value)
RouteMatrixAvoidanceOptions & WithTollTransponders(bool value)
RouteMatrixAvoidanceOptions & WithFerries(bool value)
RouteMatrixAvoidanceOptions & AddTruckRoadTypes(TruckRoadTypesT &&value)
RouteMatrixAvoidanceOptions & WithTunnels(bool value)
RouteMatrixAvoidanceOptions & WithTruckRoadTypes(TruckRoadTypesT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue