AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
RouteVehicleSpan.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/core/utils/memory/stl/AWSString.h>
10#include <aws/geo-routes/model/RouteSpanDynamicSpeedDetails.h>
11#include <aws/geo-routes/model/RouteSpanGateAttribute.h>
12#include <aws/geo-routes/model/RouteSpanRailwayCrossingAttribute.h>
13#include <aws/geo-routes/model/RouteSpanSpeedLimitDetails.h>
14#include <aws/geo-routes/model/RouteSpanCarAccessAttribute.h>
15#include <aws/geo-routes/model/LocalizedString.h>
16#include <aws/geo-routes/model/RouteSpanRoadAttribute.h>
17#include <aws/geo-routes/model/RouteNumber.h>
18#include <aws/geo-routes/model/RouteSpanScooterAccessAttribute.h>
19#include <aws/geo-routes/model/RouteSpanTruckAccessAttribute.h>
20#include <utility>
21
22namespace Aws
23{
24namespace Utils
25{
26namespace Json
27{
28 class JsonValue;
29 class JsonView;
30} // namespace Json
31} // namespace Utils
32namespace GeoRoutes
33{
34namespace Model
35{
36
44 {
45 public:
46 AWS_GEOROUTES_API RouteVehicleSpan() = default;
47 AWS_GEOROUTES_API RouteVehicleSpan(Aws::Utils::Json::JsonView jsonValue);
49 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
50
51
53
57 inline long long GetBestCaseDuration() const { return m_bestCaseDuration; }
58 inline bool BestCaseDurationHasBeenSet() const { return m_bestCaseDurationHasBeenSet; }
59 inline void SetBestCaseDuration(long long value) { m_bestCaseDurationHasBeenSet = true; m_bestCaseDuration = value; }
60 inline RouteVehicleSpan& WithBestCaseDuration(long long value) { SetBestCaseDuration(value); return *this;}
62
64
67 inline const Aws::Vector<RouteSpanCarAccessAttribute>& GetCarAccess() const { return m_carAccess; }
68 inline bool CarAccessHasBeenSet() const { return m_carAccessHasBeenSet; }
69 template<typename CarAccessT = Aws::Vector<RouteSpanCarAccessAttribute>>
70 void SetCarAccess(CarAccessT&& value) { m_carAccessHasBeenSet = true; m_carAccess = std::forward<CarAccessT>(value); }
71 template<typename CarAccessT = Aws::Vector<RouteSpanCarAccessAttribute>>
72 RouteVehicleSpan& WithCarAccess(CarAccessT&& value) { SetCarAccess(std::forward<CarAccessT>(value)); return *this;}
73 inline RouteVehicleSpan& AddCarAccess(RouteSpanCarAccessAttribute value) { m_carAccessHasBeenSet = true; m_carAccess.push_back(value); return *this; }
75
77
80 inline const Aws::String& GetCountry() const { return m_country; }
81 inline bool CountryHasBeenSet() const { return m_countryHasBeenSet; }
82 template<typename CountryT = Aws::String>
83 void SetCountry(CountryT&& value) { m_countryHasBeenSet = true; m_country = std::forward<CountryT>(value); }
84 template<typename CountryT = Aws::String>
85 RouteVehicleSpan& WithCountry(CountryT&& value) { SetCountry(std::forward<CountryT>(value)); return *this;}
87
89
93 inline long long GetDistance() const { return m_distance; }
94 inline bool DistanceHasBeenSet() const { return m_distanceHasBeenSet; }
95 inline void SetDistance(long long value) { m_distanceHasBeenSet = true; m_distance = value; }
96 inline RouteVehicleSpan& WithDistance(long long value) { SetDistance(value); return *this;}
98
100
105 inline long long GetDuration() const { return m_duration; }
106 inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; }
107 inline void SetDuration(long long value) { m_durationHasBeenSet = true; m_duration = value; }
108 inline RouteVehicleSpan& WithDuration(long long value) { SetDuration(value); return *this;}
110
112
116 inline const RouteSpanDynamicSpeedDetails& GetDynamicSpeed() const { return m_dynamicSpeed; }
117 inline bool DynamicSpeedHasBeenSet() const { return m_dynamicSpeedHasBeenSet; }
118 template<typename DynamicSpeedT = RouteSpanDynamicSpeedDetails>
119 void SetDynamicSpeed(DynamicSpeedT&& value) { m_dynamicSpeedHasBeenSet = true; m_dynamicSpeed = std::forward<DynamicSpeedT>(value); }
120 template<typename DynamicSpeedT = RouteSpanDynamicSpeedDetails>
121 RouteVehicleSpan& WithDynamicSpeed(DynamicSpeedT&& value) { SetDynamicSpeed(std::forward<DynamicSpeedT>(value)); return *this;}
123
125
128 inline int GetFunctionalClassification() const { return m_functionalClassification; }
129 inline bool FunctionalClassificationHasBeenSet() const { return m_functionalClassificationHasBeenSet; }
130 inline void SetFunctionalClassification(int value) { m_functionalClassificationHasBeenSet = true; m_functionalClassification = value; }
133
135
139 inline RouteSpanGateAttribute GetGate() const { return m_gate; }
140 inline bool GateHasBeenSet() const { return m_gateHasBeenSet; }
141 inline void SetGate(RouteSpanGateAttribute value) { m_gateHasBeenSet = true; m_gate = value; }
142 inline RouteVehicleSpan& WithGate(RouteSpanGateAttribute value) { SetGate(value); return *this;}
144
146
149 inline int GetGeometryOffset() const { return m_geometryOffset; }
150 inline bool GeometryOffsetHasBeenSet() const { return m_geometryOffsetHasBeenSet; }
151 inline void SetGeometryOffset(int value) { m_geometryOffsetHasBeenSet = true; m_geometryOffset = value; }
152 inline RouteVehicleSpan& WithGeometryOffset(int value) { SetGeometryOffset(value); return *this;}
154
156
160 inline const Aws::Vector<int>& GetIncidents() const { return m_incidents; }
161 inline bool IncidentsHasBeenSet() const { return m_incidentsHasBeenSet; }
162 template<typename IncidentsT = Aws::Vector<int>>
163 void SetIncidents(IncidentsT&& value) { m_incidentsHasBeenSet = true; m_incidents = std::forward<IncidentsT>(value); }
164 template<typename IncidentsT = Aws::Vector<int>>
165 RouteVehicleSpan& WithIncidents(IncidentsT&& value) { SetIncidents(std::forward<IncidentsT>(value)); return *this;}
166 inline RouteVehicleSpan& AddIncidents(int value) { m_incidentsHasBeenSet = true; m_incidents.push_back(value); return *this; }
168
170
173 inline const Aws::Vector<LocalizedString>& GetNames() const { return m_names; }
174 inline bool NamesHasBeenSet() const { return m_namesHasBeenSet; }
175 template<typename NamesT = Aws::Vector<LocalizedString>>
176 void SetNames(NamesT&& value) { m_namesHasBeenSet = true; m_names = std::forward<NamesT>(value); }
177 template<typename NamesT = Aws::Vector<LocalizedString>>
178 RouteVehicleSpan& WithNames(NamesT&& value) { SetNames(std::forward<NamesT>(value)); return *this;}
179 template<typename NamesT = LocalizedString>
180 RouteVehicleSpan& AddNames(NamesT&& value) { m_namesHasBeenSet = true; m_names.emplace_back(std::forward<NamesT>(value)); return *this; }
182
184
188 inline const Aws::Vector<int>& GetNotices() const { return m_notices; }
189 inline bool NoticesHasBeenSet() const { return m_noticesHasBeenSet; }
190 template<typename NoticesT = Aws::Vector<int>>
191 void SetNotices(NoticesT&& value) { m_noticesHasBeenSet = true; m_notices = std::forward<NoticesT>(value); }
192 template<typename NoticesT = Aws::Vector<int>>
193 RouteVehicleSpan& WithNotices(NoticesT&& value) { SetNotices(std::forward<NoticesT>(value)); return *this;}
194 inline RouteVehicleSpan& AddNotices(int value) { m_noticesHasBeenSet = true; m_notices.push_back(value); return *this; }
196
198
202 inline RouteSpanRailwayCrossingAttribute GetRailwayCrossing() const { return m_railwayCrossing; }
203 inline bool RailwayCrossingHasBeenSet() const { return m_railwayCrossingHasBeenSet; }
204 inline void SetRailwayCrossing(RouteSpanRailwayCrossingAttribute value) { m_railwayCrossingHasBeenSet = true; m_railwayCrossing = value; }
207
209
213 inline const Aws::String& GetRegion() const { return m_region; }
214 inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; }
215 template<typename RegionT = Aws::String>
216 void SetRegion(RegionT&& value) { m_regionHasBeenSet = true; m_region = std::forward<RegionT>(value); }
217 template<typename RegionT = Aws::String>
218 RouteVehicleSpan& WithRegion(RegionT&& value) { SetRegion(std::forward<RegionT>(value)); return *this;}
220
222
225 inline const Aws::Vector<RouteSpanRoadAttribute>& GetRoadAttributes() const { return m_roadAttributes; }
226 inline bool RoadAttributesHasBeenSet() const { return m_roadAttributesHasBeenSet; }
227 template<typename RoadAttributesT = Aws::Vector<RouteSpanRoadAttribute>>
228 void SetRoadAttributes(RoadAttributesT&& value) { m_roadAttributesHasBeenSet = true; m_roadAttributes = std::forward<RoadAttributesT>(value); }
229 template<typename RoadAttributesT = Aws::Vector<RouteSpanRoadAttribute>>
230 RouteVehicleSpan& WithRoadAttributes(RoadAttributesT&& value) { SetRoadAttributes(std::forward<RoadAttributesT>(value)); return *this;}
231 inline RouteVehicleSpan& AddRoadAttributes(RouteSpanRoadAttribute value) { m_roadAttributesHasBeenSet = true; m_roadAttributes.push_back(value); return *this; }
233
235
238 inline const Aws::Vector<RouteNumber>& GetRouteNumbers() const { return m_routeNumbers; }
239 inline bool RouteNumbersHasBeenSet() const { return m_routeNumbersHasBeenSet; }
240 template<typename RouteNumbersT = Aws::Vector<RouteNumber>>
241 void SetRouteNumbers(RouteNumbersT&& value) { m_routeNumbersHasBeenSet = true; m_routeNumbers = std::forward<RouteNumbersT>(value); }
242 template<typename RouteNumbersT = Aws::Vector<RouteNumber>>
243 RouteVehicleSpan& WithRouteNumbers(RouteNumbersT&& value) { SetRouteNumbers(std::forward<RouteNumbersT>(value)); return *this;}
244 template<typename RouteNumbersT = RouteNumber>
245 RouteVehicleSpan& AddRouteNumbers(RouteNumbersT&& value) { m_routeNumbersHasBeenSet = true; m_routeNumbers.emplace_back(std::forward<RouteNumbersT>(value)); return *this; }
247
249
252 inline const Aws::Vector<RouteSpanScooterAccessAttribute>& GetScooterAccess() const { return m_scooterAccess; }
253 inline bool ScooterAccessHasBeenSet() const { return m_scooterAccessHasBeenSet; }
254 template<typename ScooterAccessT = Aws::Vector<RouteSpanScooterAccessAttribute>>
255 void SetScooterAccess(ScooterAccessT&& value) { m_scooterAccessHasBeenSet = true; m_scooterAccess = std::forward<ScooterAccessT>(value); }
256 template<typename ScooterAccessT = Aws::Vector<RouteSpanScooterAccessAttribute>>
257 RouteVehicleSpan& WithScooterAccess(ScooterAccessT&& value) { SetScooterAccess(std::forward<ScooterAccessT>(value)); return *this;}
258 inline RouteVehicleSpan& AddScooterAccess(RouteSpanScooterAccessAttribute value) { m_scooterAccessHasBeenSet = true; m_scooterAccess.push_back(value); return *this; }
260
262
266 inline const RouteSpanSpeedLimitDetails& GetSpeedLimit() const { return m_speedLimit; }
267 inline bool SpeedLimitHasBeenSet() const { return m_speedLimitHasBeenSet; }
268 template<typename SpeedLimitT = RouteSpanSpeedLimitDetails>
269 void SetSpeedLimit(SpeedLimitT&& value) { m_speedLimitHasBeenSet = true; m_speedLimit = std::forward<SpeedLimitT>(value); }
270 template<typename SpeedLimitT = RouteSpanSpeedLimitDetails>
271 RouteVehicleSpan& WithSpeedLimit(SpeedLimitT&& value) { SetSpeedLimit(std::forward<SpeedLimitT>(value)); return *this;}
273
275
278 inline const Aws::Vector<int>& GetTollSystems() const { return m_tollSystems; }
279 inline bool TollSystemsHasBeenSet() const { return m_tollSystemsHasBeenSet; }
280 template<typename TollSystemsT = Aws::Vector<int>>
281 void SetTollSystems(TollSystemsT&& value) { m_tollSystemsHasBeenSet = true; m_tollSystems = std::forward<TollSystemsT>(value); }
282 template<typename TollSystemsT = Aws::Vector<int>>
283 RouteVehicleSpan& WithTollSystems(TollSystemsT&& value) { SetTollSystems(std::forward<TollSystemsT>(value)); return *this;}
284 inline RouteVehicleSpan& AddTollSystems(int value) { m_tollSystemsHasBeenSet = true; m_tollSystems.push_back(value); return *this; }
286
288
291 inline const Aws::Vector<RouteSpanTruckAccessAttribute>& GetTruckAccess() const { return m_truckAccess; }
292 inline bool TruckAccessHasBeenSet() const { return m_truckAccessHasBeenSet; }
293 template<typename TruckAccessT = Aws::Vector<RouteSpanTruckAccessAttribute>>
294 void SetTruckAccess(TruckAccessT&& value) { m_truckAccessHasBeenSet = true; m_truckAccess = std::forward<TruckAccessT>(value); }
295 template<typename TruckAccessT = Aws::Vector<RouteSpanTruckAccessAttribute>>
296 RouteVehicleSpan& WithTruckAccess(TruckAccessT&& value) { SetTruckAccess(std::forward<TruckAccessT>(value)); return *this;}
297 inline RouteVehicleSpan& AddTruckAccess(RouteSpanTruckAccessAttribute value) { m_truckAccessHasBeenSet = true; m_truckAccess.push_back(value); return *this; }
299
301
307 inline const Aws::Vector<int>& GetTruckRoadTypes() const { return m_truckRoadTypes; }
308 inline bool TruckRoadTypesHasBeenSet() const { return m_truckRoadTypesHasBeenSet; }
309 template<typename TruckRoadTypesT = Aws::Vector<int>>
310 void SetTruckRoadTypes(TruckRoadTypesT&& value) { m_truckRoadTypesHasBeenSet = true; m_truckRoadTypes = std::forward<TruckRoadTypesT>(value); }
311 template<typename TruckRoadTypesT = Aws::Vector<int>>
312 RouteVehicleSpan& WithTruckRoadTypes(TruckRoadTypesT&& value) { SetTruckRoadTypes(std::forward<TruckRoadTypesT>(value)); return *this;}
313 inline RouteVehicleSpan& AddTruckRoadTypes(int value) { m_truckRoadTypesHasBeenSet = true; m_truckRoadTypes.push_back(value); return *this; }
315
317
321 inline long long GetTypicalDuration() const { return m_typicalDuration; }
322 inline bool TypicalDurationHasBeenSet() const { return m_typicalDurationHasBeenSet; }
323 inline void SetTypicalDuration(long long value) { m_typicalDurationHasBeenSet = true; m_typicalDuration = value; }
324 inline RouteVehicleSpan& WithTypicalDuration(long long value) { SetTypicalDuration(value); return *this;}
326
328
331 inline const Aws::Vector<int>& GetZones() const { return m_zones; }
332 inline bool ZonesHasBeenSet() const { return m_zonesHasBeenSet; }
333 template<typename ZonesT = Aws::Vector<int>>
334 void SetZones(ZonesT&& value) { m_zonesHasBeenSet = true; m_zones = std::forward<ZonesT>(value); }
335 template<typename ZonesT = Aws::Vector<int>>
336 RouteVehicleSpan& WithZones(ZonesT&& value) { SetZones(std::forward<ZonesT>(value)); return *this;}
337 inline RouteVehicleSpan& AddZones(int value) { m_zonesHasBeenSet = true; m_zones.push_back(value); return *this; }
339 private:
340
341 long long m_bestCaseDuration{0};
342 bool m_bestCaseDurationHasBeenSet = false;
343
345 bool m_carAccessHasBeenSet = false;
346
347 Aws::String m_country;
348 bool m_countryHasBeenSet = false;
349
350 long long m_distance{0};
351 bool m_distanceHasBeenSet = false;
352
353 long long m_duration{0};
354 bool m_durationHasBeenSet = false;
355
356 RouteSpanDynamicSpeedDetails m_dynamicSpeed;
357 bool m_dynamicSpeedHasBeenSet = false;
358
359 int m_functionalClassification{0};
360 bool m_functionalClassificationHasBeenSet = false;
361
363 bool m_gateHasBeenSet = false;
364
365 int m_geometryOffset{0};
366 bool m_geometryOffsetHasBeenSet = false;
367
368 Aws::Vector<int> m_incidents;
369 bool m_incidentsHasBeenSet = false;
370
372 bool m_namesHasBeenSet = false;
373
374 Aws::Vector<int> m_notices;
375 bool m_noticesHasBeenSet = false;
376
378 bool m_railwayCrossingHasBeenSet = false;
379
380 Aws::String m_region;
381 bool m_regionHasBeenSet = false;
382
384 bool m_roadAttributesHasBeenSet = false;
385
386 Aws::Vector<RouteNumber> m_routeNumbers;
387 bool m_routeNumbersHasBeenSet = false;
388
390 bool m_scooterAccessHasBeenSet = false;
391
392 RouteSpanSpeedLimitDetails m_speedLimit;
393 bool m_speedLimitHasBeenSet = false;
394
395 Aws::Vector<int> m_tollSystems;
396 bool m_tollSystemsHasBeenSet = false;
397
399 bool m_truckAccessHasBeenSet = false;
400
401 Aws::Vector<int> m_truckRoadTypes;
402 bool m_truckRoadTypesHasBeenSet = false;
403
404 long long m_typicalDuration{0};
405 bool m_typicalDurationHasBeenSet = false;
406
407 Aws::Vector<int> m_zones;
408 bool m_zonesHasBeenSet = false;
409 };
410
411} // namespace Model
412} // namespace GeoRoutes
413} // namespace Aws
RouteVehicleSpan & WithSpeedLimit(SpeedLimitT &&value)
RouteVehicleSpan & WithRoadAttributes(RoadAttributesT &&value)
AWS_GEOROUTES_API RouteVehicleSpan(Aws::Utils::Json::JsonView jsonValue)
RouteVehicleSpan & WithScooterAccess(ScooterAccessT &&value)
RouteVehicleSpan & AddTruckRoadTypes(int value)
RouteVehicleSpan & WithRegion(RegionT &&value)
RouteVehicleSpan & WithBestCaseDuration(long long value)
RouteVehicleSpan & WithGate(RouteSpanGateAttribute value)
void SetTruckRoadTypes(TruckRoadTypesT &&value)
const Aws::Vector< LocalizedString > & GetNames() const
const RouteSpanSpeedLimitDetails & GetSpeedLimit() const
void SetRoadAttributes(RoadAttributesT &&value)
const Aws::Vector< RouteSpanRoadAttribute > & GetRoadAttributes() const
const Aws::Vector< int > & GetZones() const
RouteVehicleSpan & AddIncidents(int value)
RouteVehicleSpan & WithTruckAccess(TruckAccessT &&value)
RouteVehicleSpan & WithCarAccess(CarAccessT &&value)
RouteVehicleSpan & WithTypicalDuration(long long value)
RouteVehicleSpan & WithNotices(NoticesT &&value)
RouteVehicleSpan & WithTruckRoadTypes(TruckRoadTypesT &&value)
AWS_GEOROUTES_API RouteVehicleSpan()=default
RouteVehicleSpan & AddTollSystems(int value)
const Aws::Vector< int > & GetTruckRoadTypes() const
RouteVehicleSpan & WithTollSystems(TollSystemsT &&value)
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< RouteSpanTruckAccessAttribute > & GetTruckAccess() const
RouteVehicleSpan & AddRoadAttributes(RouteSpanRoadAttribute value)
RouteVehicleSpan & WithRouteNumbers(RouteNumbersT &&value)
RouteVehicleSpan & WithIncidents(IncidentsT &&value)
RouteVehicleSpan & WithZones(ZonesT &&value)
void SetTruckAccess(TruckAccessT &&value)
AWS_GEOROUTES_API RouteVehicleSpan & operator=(Aws::Utils::Json::JsonView jsonValue)
RouteVehicleSpan & AddZones(int value)
RouteVehicleSpan & AddNames(NamesT &&value)
RouteVehicleSpan & AddScooterAccess(RouteSpanScooterAccessAttribute value)
void SetGate(RouteSpanGateAttribute value)
RouteVehicleSpan & WithCountry(CountryT &&value)
const RouteSpanDynamicSpeedDetails & GetDynamicSpeed() const
RouteVehicleSpan & WithFunctionalClassification(int value)
RouteVehicleSpan & WithGeometryOffset(int value)
const Aws::String & GetRegion() const
const Aws::Vector< RouteSpanScooterAccessAttribute > & GetScooterAccess() const
void SetRailwayCrossing(RouteSpanRailwayCrossingAttribute value)
RouteVehicleSpan & AddNotices(int value)
RouteVehicleSpan & WithDistance(long long value)
RouteSpanGateAttribute GetGate() const
void SetScooterAccess(ScooterAccessT &&value)
RouteVehicleSpan & AddCarAccess(RouteSpanCarAccessAttribute value)
const Aws::Vector< int > & GetNotices() const
RouteVehicleSpan & WithDynamicSpeed(DynamicSpeedT &&value)
const Aws::Vector< RouteSpanCarAccessAttribute > & GetCarAccess() const
void SetDynamicSpeed(DynamicSpeedT &&value)
const Aws::String & GetCountry() const
void SetTollSystems(TollSystemsT &&value)
RouteVehicleSpan & WithRailwayCrossing(RouteSpanRailwayCrossingAttribute value)
RouteVehicleSpan & WithNames(NamesT &&value)
RouteVehicleSpan & AddRouteNumbers(RouteNumbersT &&value)
const Aws::Vector< RouteNumber > & GetRouteNumbers() const
const Aws::Vector< int > & GetIncidents() const
const Aws::Vector< int > & GetTollSystems() const
RouteVehicleSpan & AddTruckAccess(RouteSpanTruckAccessAttribute value)
void SetRouteNumbers(RouteNumbersT &&value)
RouteSpanRailwayCrossingAttribute GetRailwayCrossing() const
RouteVehicleSpan & WithDuration(long long value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue