AWS SDK for C++

AWS SDK for C++ Version 1.11.775

Loading...
Searching...
No Matches
RouteVehicleTravelStep.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/LocalizedString.h>
11#include <aws/geo-routes/model/RouteContinueHighwayStepDetails.h>
12#include <aws/geo-routes/model/RouteContinueStepDetails.h>
13#include <aws/geo-routes/model/RouteEnterHighwayStepDetails.h>
14#include <aws/geo-routes/model/RouteExitStepDetails.h>
15#include <aws/geo-routes/model/RouteKeepStepDetails.h>
16#include <aws/geo-routes/model/RouteRampStepDetails.h>
17#include <aws/geo-routes/model/RouteRoad.h>
18#include <aws/geo-routes/model/RouteRoundaboutEnterStepDetails.h>
19#include <aws/geo-routes/model/RouteRoundaboutExitStepDetails.h>
20#include <aws/geo-routes/model/RouteRoundaboutPassStepDetails.h>
21#include <aws/geo-routes/model/RouteSignpost.h>
22#include <aws/geo-routes/model/RouteTurnStepDetails.h>
23#include <aws/geo-routes/model/RouteUTurnStepDetails.h>
24#include <aws/geo-routes/model/RouteVehicleTravelStepType.h>
25
26#include <utility>
27
28namespace Aws {
29namespace Utils {
30namespace Json {
31class JsonValue;
32class JsonView;
33} // namespace Json
34} // namespace Utils
35namespace GeoRoutes {
36namespace Model {
37
45 public:
46 AWS_GEOROUTES_API RouteVehicleTravelStep() = default;
49 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
50
52
55 inline const RouteContinueHighwayStepDetails& GetContinueHighwayStepDetails() const { return m_continueHighwayStepDetails; }
56 inline bool ContinueHighwayStepDetailsHasBeenSet() const { return m_continueHighwayStepDetailsHasBeenSet; }
57 template <typename ContinueHighwayStepDetailsT = RouteContinueHighwayStepDetails>
58 void SetContinueHighwayStepDetails(ContinueHighwayStepDetailsT&& value) {
59 m_continueHighwayStepDetailsHasBeenSet = true;
60 m_continueHighwayStepDetails = std::forward<ContinueHighwayStepDetailsT>(value);
61 }
62 template <typename ContinueHighwayStepDetailsT = RouteContinueHighwayStepDetails>
63 RouteVehicleTravelStep& WithContinueHighwayStepDetails(ContinueHighwayStepDetailsT&& value) {
64 SetContinueHighwayStepDetails(std::forward<ContinueHighwayStepDetailsT>(value));
65 return *this;
66 }
68
70
73 inline const RouteContinueStepDetails& GetContinueStepDetails() const { return m_continueStepDetails; }
74 inline bool ContinueStepDetailsHasBeenSet() const { return m_continueStepDetailsHasBeenSet; }
75 template <typename ContinueStepDetailsT = RouteContinueStepDetails>
76 void SetContinueStepDetails(ContinueStepDetailsT&& value) {
77 m_continueStepDetailsHasBeenSet = true;
78 m_continueStepDetails = std::forward<ContinueStepDetailsT>(value);
79 }
80 template <typename ContinueStepDetailsT = RouteContinueStepDetails>
81 RouteVehicleTravelStep& WithContinueStepDetails(ContinueStepDetailsT&& value) {
82 SetContinueStepDetails(std::forward<ContinueStepDetailsT>(value));
83 return *this;
84 }
86
88
91 inline const RouteRoad& GetCurrentRoad() const { return m_currentRoad; }
92 inline bool CurrentRoadHasBeenSet() const { return m_currentRoadHasBeenSet; }
93 template <typename CurrentRoadT = RouteRoad>
94 void SetCurrentRoad(CurrentRoadT&& value) {
95 m_currentRoadHasBeenSet = true;
96 m_currentRoad = std::forward<CurrentRoadT>(value);
97 }
98 template <typename CurrentRoadT = RouteRoad>
99 RouteVehicleTravelStep& WithCurrentRoad(CurrentRoadT&& value) {
100 SetCurrentRoad(std::forward<CurrentRoadT>(value));
101 return *this;
102 }
104
106
109 inline long long GetDistance() const { return m_distance; }
110 inline bool DistanceHasBeenSet() const { return m_distanceHasBeenSet; }
111 inline void SetDistance(long long value) {
112 m_distanceHasBeenSet = true;
113 m_distance = value;
114 }
115 inline RouteVehicleTravelStep& WithDistance(long long value) {
116 SetDistance(value);
117 return *this;
118 }
120
122
125 inline long long GetDuration() const { return m_duration; }
126 inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; }
127 inline void SetDuration(long long value) {
128 m_durationHasBeenSet = true;
129 m_duration = value;
130 }
131 inline RouteVehicleTravelStep& WithDuration(long long value) {
132 SetDuration(value);
133 return *this;
134 }
136
138
141 inline const RouteEnterHighwayStepDetails& GetEnterHighwayStepDetails() const { return m_enterHighwayStepDetails; }
142 inline bool EnterHighwayStepDetailsHasBeenSet() const { return m_enterHighwayStepDetailsHasBeenSet; }
143 template <typename EnterHighwayStepDetailsT = RouteEnterHighwayStepDetails>
144 void SetEnterHighwayStepDetails(EnterHighwayStepDetailsT&& value) {
145 m_enterHighwayStepDetailsHasBeenSet = true;
146 m_enterHighwayStepDetails = std::forward<EnterHighwayStepDetailsT>(value);
147 }
148 template <typename EnterHighwayStepDetailsT = RouteEnterHighwayStepDetails>
149 RouteVehicleTravelStep& WithEnterHighwayStepDetails(EnterHighwayStepDetailsT&& value) {
150 SetEnterHighwayStepDetails(std::forward<EnterHighwayStepDetailsT>(value));
151 return *this;
152 }
154
156
159 inline const Aws::Vector<LocalizedString>& GetExitNumber() const { return m_exitNumber; }
160 inline bool ExitNumberHasBeenSet() const { return m_exitNumberHasBeenSet; }
161 template <typename ExitNumberT = Aws::Vector<LocalizedString>>
162 void SetExitNumber(ExitNumberT&& value) {
163 m_exitNumberHasBeenSet = true;
164 m_exitNumber = std::forward<ExitNumberT>(value);
165 }
166 template <typename ExitNumberT = Aws::Vector<LocalizedString>>
168 SetExitNumber(std::forward<ExitNumberT>(value));
169 return *this;
170 }
171 template <typename ExitNumberT = LocalizedString>
172 RouteVehicleTravelStep& AddExitNumber(ExitNumberT&& value) {
173 m_exitNumberHasBeenSet = true;
174 m_exitNumber.emplace_back(std::forward<ExitNumberT>(value));
175 return *this;
176 }
178
180
183 inline const RouteExitStepDetails& GetExitStepDetails() const { return m_exitStepDetails; }
184 inline bool ExitStepDetailsHasBeenSet() const { return m_exitStepDetailsHasBeenSet; }
185 template <typename ExitStepDetailsT = RouteExitStepDetails>
186 void SetExitStepDetails(ExitStepDetailsT&& value) {
187 m_exitStepDetailsHasBeenSet = true;
188 m_exitStepDetails = std::forward<ExitStepDetailsT>(value);
189 }
190 template <typename ExitStepDetailsT = RouteExitStepDetails>
191 RouteVehicleTravelStep& WithExitStepDetails(ExitStepDetailsT&& value) {
192 SetExitStepDetails(std::forward<ExitStepDetailsT>(value));
193 return *this;
194 }
196
198
201 inline int GetGeometryOffset() const { return m_geometryOffset; }
202 inline bool GeometryOffsetHasBeenSet() const { return m_geometryOffsetHasBeenSet; }
203 inline void SetGeometryOffset(int value) {
204 m_geometryOffsetHasBeenSet = true;
205 m_geometryOffset = value;
206 }
208 SetGeometryOffset(value);
209 return *this;
210 }
212
214
218 inline const Aws::String& GetInstruction() const { return m_instruction; }
219 inline bool InstructionHasBeenSet() const { return m_instructionHasBeenSet; }
220 template <typename InstructionT = Aws::String>
221 void SetInstruction(InstructionT&& value) {
222 m_instructionHasBeenSet = true;
223 m_instruction = std::forward<InstructionT>(value);
224 }
225 template <typename InstructionT = Aws::String>
227 SetInstruction(std::forward<InstructionT>(value));
228 return *this;
229 }
231
233
236 inline const RouteKeepStepDetails& GetKeepStepDetails() const { return m_keepStepDetails; }
237 inline bool KeepStepDetailsHasBeenSet() const { return m_keepStepDetailsHasBeenSet; }
238 template <typename KeepStepDetailsT = RouteKeepStepDetails>
239 void SetKeepStepDetails(KeepStepDetailsT&& value) {
240 m_keepStepDetailsHasBeenSet = true;
241 m_keepStepDetails = std::forward<KeepStepDetailsT>(value);
242 }
243 template <typename KeepStepDetailsT = RouteKeepStepDetails>
244 RouteVehicleTravelStep& WithKeepStepDetails(KeepStepDetailsT&& value) {
245 SetKeepStepDetails(std::forward<KeepStepDetailsT>(value));
246 return *this;
247 }
249
251
254 inline const RouteRoad& GetNextRoad() const { return m_nextRoad; }
255 inline bool NextRoadHasBeenSet() const { return m_nextRoadHasBeenSet; }
256 template <typename NextRoadT = RouteRoad>
257 void SetNextRoad(NextRoadT&& value) {
258 m_nextRoadHasBeenSet = true;
259 m_nextRoad = std::forward<NextRoadT>(value);
260 }
261 template <typename NextRoadT = RouteRoad>
263 SetNextRoad(std::forward<NextRoadT>(value));
264 return *this;
265 }
267
269
272 inline const RouteRampStepDetails& GetRampStepDetails() const { return m_rampStepDetails; }
273 inline bool RampStepDetailsHasBeenSet() const { return m_rampStepDetailsHasBeenSet; }
274 template <typename RampStepDetailsT = RouteRampStepDetails>
275 void SetRampStepDetails(RampStepDetailsT&& value) {
276 m_rampStepDetailsHasBeenSet = true;
277 m_rampStepDetails = std::forward<RampStepDetailsT>(value);
278 }
279 template <typename RampStepDetailsT = RouteRampStepDetails>
280 RouteVehicleTravelStep& WithRampStepDetails(RampStepDetailsT&& value) {
281 SetRampStepDetails(std::forward<RampStepDetailsT>(value));
282 return *this;
283 }
285
287
290 inline const RouteRoundaboutEnterStepDetails& GetRoundaboutEnterStepDetails() const { return m_roundaboutEnterStepDetails; }
291 inline bool RoundaboutEnterStepDetailsHasBeenSet() const { return m_roundaboutEnterStepDetailsHasBeenSet; }
292 template <typename RoundaboutEnterStepDetailsT = RouteRoundaboutEnterStepDetails>
293 void SetRoundaboutEnterStepDetails(RoundaboutEnterStepDetailsT&& value) {
294 m_roundaboutEnterStepDetailsHasBeenSet = true;
295 m_roundaboutEnterStepDetails = std::forward<RoundaboutEnterStepDetailsT>(value);
296 }
297 template <typename RoundaboutEnterStepDetailsT = RouteRoundaboutEnterStepDetails>
298 RouteVehicleTravelStep& WithRoundaboutEnterStepDetails(RoundaboutEnterStepDetailsT&& value) {
299 SetRoundaboutEnterStepDetails(std::forward<RoundaboutEnterStepDetailsT>(value));
300 return *this;
301 }
303
305
308 inline const RouteRoundaboutExitStepDetails& GetRoundaboutExitStepDetails() const { return m_roundaboutExitStepDetails; }
309 inline bool RoundaboutExitStepDetailsHasBeenSet() const { return m_roundaboutExitStepDetailsHasBeenSet; }
310 template <typename RoundaboutExitStepDetailsT = RouteRoundaboutExitStepDetails>
311 void SetRoundaboutExitStepDetails(RoundaboutExitStepDetailsT&& value) {
312 m_roundaboutExitStepDetailsHasBeenSet = true;
313 m_roundaboutExitStepDetails = std::forward<RoundaboutExitStepDetailsT>(value);
314 }
315 template <typename RoundaboutExitStepDetailsT = RouteRoundaboutExitStepDetails>
316 RouteVehicleTravelStep& WithRoundaboutExitStepDetails(RoundaboutExitStepDetailsT&& value) {
317 SetRoundaboutExitStepDetails(std::forward<RoundaboutExitStepDetailsT>(value));
318 return *this;
319 }
321
323
326 inline const RouteRoundaboutPassStepDetails& GetRoundaboutPassStepDetails() const { return m_roundaboutPassStepDetails; }
327 inline bool RoundaboutPassStepDetailsHasBeenSet() const { return m_roundaboutPassStepDetailsHasBeenSet; }
328 template <typename RoundaboutPassStepDetailsT = RouteRoundaboutPassStepDetails>
329 void SetRoundaboutPassStepDetails(RoundaboutPassStepDetailsT&& value) {
330 m_roundaboutPassStepDetailsHasBeenSet = true;
331 m_roundaboutPassStepDetails = std::forward<RoundaboutPassStepDetailsT>(value);
332 }
333 template <typename RoundaboutPassStepDetailsT = RouteRoundaboutPassStepDetails>
334 RouteVehicleTravelStep& WithRoundaboutPassStepDetails(RoundaboutPassStepDetailsT&& value) {
335 SetRoundaboutPassStepDetails(std::forward<RoundaboutPassStepDetailsT>(value));
336 return *this;
337 }
339
341
345 inline const RouteSignpost& GetSignpost() const { return m_signpost; }
346 inline bool SignpostHasBeenSet() const { return m_signpostHasBeenSet; }
347 template <typename SignpostT = RouteSignpost>
348 void SetSignpost(SignpostT&& value) {
349 m_signpostHasBeenSet = true;
350 m_signpost = std::forward<SignpostT>(value);
351 }
352 template <typename SignpostT = RouteSignpost>
354 SetSignpost(std::forward<SignpostT>(value));
355 return *this;
356 }
358
360
363 inline const RouteTurnStepDetails& GetTurnStepDetails() const { return m_turnStepDetails; }
364 inline bool TurnStepDetailsHasBeenSet() const { return m_turnStepDetailsHasBeenSet; }
365 template <typename TurnStepDetailsT = RouteTurnStepDetails>
366 void SetTurnStepDetails(TurnStepDetailsT&& value) {
367 m_turnStepDetailsHasBeenSet = true;
368 m_turnStepDetails = std::forward<TurnStepDetailsT>(value);
369 }
370 template <typename TurnStepDetailsT = RouteTurnStepDetails>
371 RouteVehicleTravelStep& WithTurnStepDetails(TurnStepDetailsT&& value) {
372 SetTurnStepDetails(std::forward<TurnStepDetailsT>(value));
373 return *this;
374 }
376
378
381 inline RouteVehicleTravelStepType GetType() const { return m_type; }
382 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
384 m_typeHasBeenSet = true;
385 m_type = value;
386 }
388 SetType(value);
389 return *this;
390 }
392
394
397 inline const RouteUTurnStepDetails& GetUTurnStepDetails() const { return m_uTurnStepDetails; }
398 inline bool UTurnStepDetailsHasBeenSet() const { return m_uTurnStepDetailsHasBeenSet; }
399 template <typename UTurnStepDetailsT = RouteUTurnStepDetails>
400 void SetUTurnStepDetails(UTurnStepDetailsT&& value) {
401 m_uTurnStepDetailsHasBeenSet = true;
402 m_uTurnStepDetails = std::forward<UTurnStepDetailsT>(value);
403 }
404 template <typename UTurnStepDetailsT = RouteUTurnStepDetails>
405 RouteVehicleTravelStep& WithUTurnStepDetails(UTurnStepDetailsT&& value) {
406 SetUTurnStepDetails(std::forward<UTurnStepDetailsT>(value));
407 return *this;
408 }
410 private:
411 RouteContinueHighwayStepDetails m_continueHighwayStepDetails;
412
413 RouteContinueStepDetails m_continueStepDetails;
414
415 RouteRoad m_currentRoad;
416
417 long long m_distance{0};
418
419 long long m_duration{0};
420
421 RouteEnterHighwayStepDetails m_enterHighwayStepDetails;
422
423 Aws::Vector<LocalizedString> m_exitNumber;
424
425 RouteExitStepDetails m_exitStepDetails;
426
427 int m_geometryOffset{0};
428
429 Aws::String m_instruction;
430
431 RouteKeepStepDetails m_keepStepDetails;
432
433 RouteRoad m_nextRoad;
434
435 RouteRampStepDetails m_rampStepDetails;
436
437 RouteRoundaboutEnterStepDetails m_roundaboutEnterStepDetails;
438
439 RouteRoundaboutExitStepDetails m_roundaboutExitStepDetails;
440
441 RouteRoundaboutPassStepDetails m_roundaboutPassStepDetails;
442
443 RouteSignpost m_signpost;
444
445 RouteTurnStepDetails m_turnStepDetails;
446
448
449 RouteUTurnStepDetails m_uTurnStepDetails;
450 bool m_continueHighwayStepDetailsHasBeenSet = false;
451 bool m_continueStepDetailsHasBeenSet = false;
452 bool m_currentRoadHasBeenSet = false;
453 bool m_distanceHasBeenSet = false;
454 bool m_durationHasBeenSet = false;
455 bool m_enterHighwayStepDetailsHasBeenSet = false;
456 bool m_exitNumberHasBeenSet = false;
457 bool m_exitStepDetailsHasBeenSet = false;
458 bool m_geometryOffsetHasBeenSet = false;
459 bool m_instructionHasBeenSet = false;
460 bool m_keepStepDetailsHasBeenSet = false;
461 bool m_nextRoadHasBeenSet = false;
462 bool m_rampStepDetailsHasBeenSet = false;
463 bool m_roundaboutEnterStepDetailsHasBeenSet = false;
464 bool m_roundaboutExitStepDetailsHasBeenSet = false;
465 bool m_roundaboutPassStepDetailsHasBeenSet = false;
466 bool m_signpostHasBeenSet = false;
467 bool m_turnStepDetailsHasBeenSet = false;
468 bool m_typeHasBeenSet = false;
469 bool m_uTurnStepDetailsHasBeenSet = false;
470};
471
472} // namespace Model
473} // namespace GeoRoutes
474} // namespace Aws
const RouteKeepStepDetails & GetKeepStepDetails() const
AWS_GEOROUTES_API RouteVehicleTravelStep & operator=(Aws::Utils::Json::JsonView jsonValue)
RouteVehicleTravelStep & WithNextRoad(NextRoadT &&value)
const RouteTurnStepDetails & GetTurnStepDetails() const
const RouteRampStepDetails & GetRampStepDetails() const
RouteVehicleTravelStep & WithGeometryOffset(int value)
void SetType(RouteVehicleTravelStepType value)
RouteVehicleTravelStep & AddExitNumber(ExitNumberT &&value)
void SetEnterHighwayStepDetails(EnterHighwayStepDetailsT &&value)
RouteVehicleTravelStep & WithRoundaboutPassStepDetails(RoundaboutPassStepDetailsT &&value)
RouteVehicleTravelStep & WithTurnStepDetails(TurnStepDetailsT &&value)
RouteVehicleTravelStep & WithInstruction(InstructionT &&value)
RouteVehicleTravelStep & WithSignpost(SignpostT &&value)
RouteVehicleTravelStep & WithEnterHighwayStepDetails(EnterHighwayStepDetailsT &&value)
RouteVehicleTravelStep & WithExitStepDetails(ExitStepDetailsT &&value)
RouteVehicleTravelStep & WithRoundaboutEnterStepDetails(RoundaboutEnterStepDetailsT &&value)
RouteVehicleTravelStep & WithCurrentRoad(CurrentRoadT &&value)
RouteVehicleTravelStep & WithContinueHighwayStepDetails(ContinueHighwayStepDetailsT &&value)
const RouteRoundaboutExitStepDetails & GetRoundaboutExitStepDetails() const
const RouteEnterHighwayStepDetails & GetEnterHighwayStepDetails() const
RouteVehicleTravelStep & WithUTurnStepDetails(UTurnStepDetailsT &&value)
void SetContinueHighwayStepDetails(ContinueHighwayStepDetailsT &&value)
const Aws::Vector< LocalizedString > & GetExitNumber() const
void SetRoundaboutExitStepDetails(RoundaboutExitStepDetailsT &&value)
RouteVehicleTravelStep & WithContinueStepDetails(ContinueStepDetailsT &&value)
AWS_GEOROUTES_API RouteVehicleTravelStep()=default
void SetRoundaboutPassStepDetails(RoundaboutPassStepDetailsT &&value)
const RouteRoundaboutEnterStepDetails & GetRoundaboutEnterStepDetails() const
RouteVehicleTravelStep & WithRoundaboutExitStepDetails(RoundaboutExitStepDetailsT &&value)
AWS_GEOROUTES_API RouteVehicleTravelStep(Aws::Utils::Json::JsonView jsonValue)
const RouteContinueStepDetails & GetContinueStepDetails() const
RouteVehicleTravelStep & WithRampStepDetails(RampStepDetailsT &&value)
RouteVehicleTravelStep & WithType(RouteVehicleTravelStepType value)
RouteVehicleTravelStep & WithDuration(long long value)
const RouteUTurnStepDetails & GetUTurnStepDetails() const
RouteVehicleTravelStep & WithKeepStepDetails(KeepStepDetailsT &&value)
const RouteExitStepDetails & GetExitStepDetails() const
void SetContinueStepDetails(ContinueStepDetailsT &&value)
RouteVehicleTravelStep & WithDistance(long long value)
RouteVehicleTravelStep & WithExitNumber(ExitNumberT &&value)
const RouteRoundaboutPassStepDetails & GetRoundaboutPassStepDetails() const
void SetRoundaboutEnterStepDetails(RoundaboutEnterStepDetailsT &&value)
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
const RouteContinueHighwayStepDetails & GetContinueHighwayStepDetails() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue