AWS SDK for C++

AWS SDK for C++ Version 1.11.781

Loading...
Searching...
No Matches
RouteVehicleLegDetails.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/RoutePassThroughWaypoint.h>
11#include <aws/geo-routes/model/RouteToll.h>
12#include <aws/geo-routes/model/RouteTollSystem.h>
13#include <aws/geo-routes/model/RouteVehicleArrival.h>
14#include <aws/geo-routes/model/RouteVehicleDeparture.h>
15#include <aws/geo-routes/model/RouteVehicleIncident.h>
16#include <aws/geo-routes/model/RouteVehicleNotice.h>
17#include <aws/geo-routes/model/RouteVehicleSpan.h>
18#include <aws/geo-routes/model/RouteVehicleSummary.h>
19#include <aws/geo-routes/model/RouteVehicleTravelStep.h>
20#include <aws/geo-routes/model/RouteZone.h>
21
22#include <utility>
23
24namespace Aws {
25namespace Utils {
26namespace Json {
27class JsonValue;
28class JsonView;
29} // namespace Json
30} // namespace Utils
31namespace GeoRoutes {
32namespace Model {
33
41 public:
42 AWS_GEOROUTES_API RouteVehicleLegDetails() = default;
45 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
46
48
51 inline const RouteVehicleArrival& GetArrival() const { return m_arrival; }
52 inline bool ArrivalHasBeenSet() const { return m_arrivalHasBeenSet; }
53 template <typename ArrivalT = RouteVehicleArrival>
54 void SetArrival(ArrivalT&& value) {
55 m_arrivalHasBeenSet = true;
56 m_arrival = std::forward<ArrivalT>(value);
57 }
58 template <typename ArrivalT = RouteVehicleArrival>
60 SetArrival(std::forward<ArrivalT>(value));
61 return *this;
62 }
64
66
69 inline const RouteVehicleDeparture& GetDeparture() const { return m_departure; }
70 inline bool DepartureHasBeenSet() const { return m_departureHasBeenSet; }
71 template <typename DepartureT = RouteVehicleDeparture>
72 void SetDeparture(DepartureT&& value) {
73 m_departureHasBeenSet = true;
74 m_departure = std::forward<DepartureT>(value);
75 }
76 template <typename DepartureT = RouteVehicleDeparture>
78 SetDeparture(std::forward<DepartureT>(value));
79 return *this;
80 }
82
84
90 inline const Aws::Vector<RouteVehicleIncident>& GetIncidents() const { return m_incidents; }
91 inline bool IncidentsHasBeenSet() const { return m_incidentsHasBeenSet; }
92 template <typename IncidentsT = Aws::Vector<RouteVehicleIncident>>
93 void SetIncidents(IncidentsT&& value) {
94 m_incidentsHasBeenSet = true;
95 m_incidents = std::forward<IncidentsT>(value);
96 }
97 template <typename IncidentsT = Aws::Vector<RouteVehicleIncident>>
99 SetIncidents(std::forward<IncidentsT>(value));
100 return *this;
101 }
102 template <typename IncidentsT = RouteVehicleIncident>
104 m_incidentsHasBeenSet = true;
105 m_incidents.emplace_back(std::forward<IncidentsT>(value));
106 return *this;
107 }
109
111
118 inline const Aws::Vector<RouteVehicleNotice>& GetNotices() const { return m_notices; }
119 inline bool NoticesHasBeenSet() const { return m_noticesHasBeenSet; }
120 template <typename NoticesT = Aws::Vector<RouteVehicleNotice>>
121 void SetNotices(NoticesT&& value) {
122 m_noticesHasBeenSet = true;
123 m_notices = std::forward<NoticesT>(value);
124 }
125 template <typename NoticesT = Aws::Vector<RouteVehicleNotice>>
127 SetNotices(std::forward<NoticesT>(value));
128 return *this;
129 }
130 template <typename NoticesT = RouteVehicleNotice>
132 m_noticesHasBeenSet = true;
133 m_notices.emplace_back(std::forward<NoticesT>(value));
134 return *this;
135 }
137
139
143 inline const Aws::Vector<RoutePassThroughWaypoint>& GetPassThroughWaypoints() const { return m_passThroughWaypoints; }
144 inline bool PassThroughWaypointsHasBeenSet() const { return m_passThroughWaypointsHasBeenSet; }
145 template <typename PassThroughWaypointsT = Aws::Vector<RoutePassThroughWaypoint>>
146 void SetPassThroughWaypoints(PassThroughWaypointsT&& value) {
147 m_passThroughWaypointsHasBeenSet = true;
148 m_passThroughWaypoints = std::forward<PassThroughWaypointsT>(value);
149 }
150 template <typename PassThroughWaypointsT = Aws::Vector<RoutePassThroughWaypoint>>
151 RouteVehicleLegDetails& WithPassThroughWaypoints(PassThroughWaypointsT&& value) {
152 SetPassThroughWaypoints(std::forward<PassThroughWaypointsT>(value));
153 return *this;
154 }
155 template <typename PassThroughWaypointsT = RoutePassThroughWaypoint>
156 RouteVehicleLegDetails& AddPassThroughWaypoints(PassThroughWaypointsT&& value) {
157 m_passThroughWaypointsHasBeenSet = true;
158 m_passThroughWaypoints.emplace_back(std::forward<PassThroughWaypointsT>(value));
159 return *this;
160 }
162
164
171 inline const Aws::Vector<RouteVehicleSpan>& GetSpans() const { return m_spans; }
172 inline bool SpansHasBeenSet() const { return m_spansHasBeenSet; }
173 template <typename SpansT = Aws::Vector<RouteVehicleSpan>>
174 void SetSpans(SpansT&& value) {
175 m_spansHasBeenSet = true;
176 m_spans = std::forward<SpansT>(value);
177 }
178 template <typename SpansT = Aws::Vector<RouteVehicleSpan>>
180 SetSpans(std::forward<SpansT>(value));
181 return *this;
182 }
183 template <typename SpansT = RouteVehicleSpan>
185 m_spansHasBeenSet = true;
186 m_spans.emplace_back(std::forward<SpansT>(value));
187 return *this;
188 }
190
192
195 inline const RouteVehicleSummary& GetSummary() const { return m_summary; }
196 inline bool SummaryHasBeenSet() const { return m_summaryHasBeenSet; }
197 template <typename SummaryT = RouteVehicleSummary>
198 void SetSummary(SummaryT&& value) {
199 m_summaryHasBeenSet = true;
200 m_summary = std::forward<SummaryT>(value);
201 }
202 template <typename SummaryT = RouteVehicleSummary>
204 SetSummary(std::forward<SummaryT>(value));
205 return *this;
206 }
208
210
216 inline const Aws::Vector<RouteToll>& GetTolls() const { return m_tolls; }
217 inline bool TollsHasBeenSet() const { return m_tollsHasBeenSet; }
218 template <typename TollsT = Aws::Vector<RouteToll>>
219 void SetTolls(TollsT&& value) {
220 m_tollsHasBeenSet = true;
221 m_tolls = std::forward<TollsT>(value);
222 }
223 template <typename TollsT = Aws::Vector<RouteToll>>
225 SetTolls(std::forward<TollsT>(value));
226 return *this;
227 }
228 template <typename TollsT = RouteToll>
230 m_tollsHasBeenSet = true;
231 m_tolls.emplace_back(std::forward<TollsT>(value));
232 return *this;
233 }
235
237
244 inline const Aws::Vector<RouteTollSystem>& GetTollSystems() const { return m_tollSystems; }
245 inline bool TollSystemsHasBeenSet() const { return m_tollSystemsHasBeenSet; }
246 template <typename TollSystemsT = Aws::Vector<RouteTollSystem>>
247 void SetTollSystems(TollSystemsT&& value) {
248 m_tollSystemsHasBeenSet = true;
249 m_tollSystems = std::forward<TollSystemsT>(value);
250 }
251 template <typename TollSystemsT = Aws::Vector<RouteTollSystem>>
253 SetTollSystems(std::forward<TollSystemsT>(value));
254 return *this;
255 }
256 template <typename TollSystemsT = RouteTollSystem>
257 RouteVehicleLegDetails& AddTollSystems(TollSystemsT&& value) {
258 m_tollSystemsHasBeenSet = true;
259 m_tollSystems.emplace_back(std::forward<TollSystemsT>(value));
260 return *this;
261 }
263
265
269 inline const Aws::Vector<RouteVehicleTravelStep>& GetTravelSteps() const { return m_travelSteps; }
270 inline bool TravelStepsHasBeenSet() const { return m_travelStepsHasBeenSet; }
271 template <typename TravelStepsT = Aws::Vector<RouteVehicleTravelStep>>
272 void SetTravelSteps(TravelStepsT&& value) {
273 m_travelStepsHasBeenSet = true;
274 m_travelSteps = std::forward<TravelStepsT>(value);
275 }
276 template <typename TravelStepsT = Aws::Vector<RouteVehicleTravelStep>>
278 SetTravelSteps(std::forward<TravelStepsT>(value));
279 return *this;
280 }
281 template <typename TravelStepsT = RouteVehicleTravelStep>
282 RouteVehicleLegDetails& AddTravelSteps(TravelStepsT&& value) {
283 m_travelStepsHasBeenSet = true;
284 m_travelSteps.emplace_back(std::forward<TravelStepsT>(value));
285 return *this;
286 }
288
290
299 inline const Aws::Vector<Aws::String>& GetTruckRoadTypes() const { return m_truckRoadTypes; }
300 inline bool TruckRoadTypesHasBeenSet() const { return m_truckRoadTypesHasBeenSet; }
301 template <typename TruckRoadTypesT = Aws::Vector<Aws::String>>
302 void SetTruckRoadTypes(TruckRoadTypesT&& value) {
303 m_truckRoadTypesHasBeenSet = true;
304 m_truckRoadTypes = std::forward<TruckRoadTypesT>(value);
305 }
306 template <typename TruckRoadTypesT = Aws::Vector<Aws::String>>
307 RouteVehicleLegDetails& WithTruckRoadTypes(TruckRoadTypesT&& value) {
308 SetTruckRoadTypes(std::forward<TruckRoadTypesT>(value));
309 return *this;
310 }
311 template <typename TruckRoadTypesT = Aws::String>
312 RouteVehicleLegDetails& AddTruckRoadTypes(TruckRoadTypesT&& value) {
313 m_truckRoadTypesHasBeenSet = true;
314 m_truckRoadTypes.emplace_back(std::forward<TruckRoadTypesT>(value));
315 return *this;
316 }
318
320
326 inline const Aws::Vector<RouteZone>& GetZones() const { return m_zones; }
327 inline bool ZonesHasBeenSet() const { return m_zonesHasBeenSet; }
328 template <typename ZonesT = Aws::Vector<RouteZone>>
329 void SetZones(ZonesT&& value) {
330 m_zonesHasBeenSet = true;
331 m_zones = std::forward<ZonesT>(value);
332 }
333 template <typename ZonesT = Aws::Vector<RouteZone>>
335 SetZones(std::forward<ZonesT>(value));
336 return *this;
337 }
338 template <typename ZonesT = RouteZone>
340 m_zonesHasBeenSet = true;
341 m_zones.emplace_back(std::forward<ZonesT>(value));
342 return *this;
343 }
345 private:
346 RouteVehicleArrival m_arrival;
347
348 RouteVehicleDeparture m_departure;
349
351
353
354 Aws::Vector<RoutePassThroughWaypoint> m_passThroughWaypoints;
355
357
358 RouteVehicleSummary m_summary;
359
361
362 Aws::Vector<RouteTollSystem> m_tollSystems;
363
365
366 Aws::Vector<Aws::String> m_truckRoadTypes;
367
369 bool m_arrivalHasBeenSet = false;
370 bool m_departureHasBeenSet = false;
371 bool m_incidentsHasBeenSet = false;
372 bool m_noticesHasBeenSet = false;
373 bool m_passThroughWaypointsHasBeenSet = false;
374 bool m_spansHasBeenSet = false;
375 bool m_summaryHasBeenSet = false;
376 bool m_tollsHasBeenSet = false;
377 bool m_tollSystemsHasBeenSet = false;
378 bool m_travelStepsHasBeenSet = false;
379 bool m_truckRoadTypesHasBeenSet = false;
380 bool m_zonesHasBeenSet = false;
381};
382
383} // namespace Model
384} // namespace GeoRoutes
385} // namespace Aws
const Aws::Vector< RouteVehicleTravelStep > & GetTravelSteps() const
const Aws::Vector< RouteTollSystem > & GetTollSystems() const
RouteVehicleLegDetails & WithArrival(ArrivalT &&value)
RouteVehicleLegDetails & AddTolls(TollsT &&value)
const RouteVehicleArrival & GetArrival() const
RouteVehicleLegDetails & WithTruckRoadTypes(TruckRoadTypesT &&value)
AWS_GEOROUTES_API RouteVehicleLegDetails()=default
const Aws::Vector< Aws::String > & GetTruckRoadTypes() const
RouteVehicleLegDetails & AddPassThroughWaypoints(PassThroughWaypointsT &&value)
RouteVehicleLegDetails & WithSummary(SummaryT &&value)
RouteVehicleLegDetails & WithSpans(SpansT &&value)
RouteVehicleLegDetails & AddTollSystems(TollSystemsT &&value)
const RouteVehicleSummary & GetSummary() const
RouteVehicleLegDetails & AddZones(ZonesT &&value)
AWS_GEOROUTES_API RouteVehicleLegDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
RouteVehicleLegDetails & AddSpans(SpansT &&value)
RouteVehicleLegDetails & AddNotices(NoticesT &&value)
const Aws::Vector< RoutePassThroughWaypoint > & GetPassThroughWaypoints() const
RouteVehicleLegDetails & WithPassThroughWaypoints(PassThroughWaypointsT &&value)
RouteVehicleLegDetails & WithIncidents(IncidentsT &&value)
RouteVehicleLegDetails & WithZones(ZonesT &&value)
const Aws::Vector< RouteVehicleNotice > & GetNotices() const
RouteVehicleLegDetails & WithTravelSteps(TravelStepsT &&value)
RouteVehicleLegDetails & AddTruckRoadTypes(TruckRoadTypesT &&value)
RouteVehicleLegDetails & WithDeparture(DepartureT &&value)
const Aws::Vector< RouteZone > & GetZones() const
const Aws::Vector< RouteToll > & GetTolls() const
const Aws::Vector< RouteVehicleIncident > & GetIncidents() const
RouteVehicleLegDetails & WithTollSystems(TollSystemsT &&value)
RouteVehicleLegDetails & AddIncidents(IncidentsT &&value)
RouteVehicleLegDetails & AddTravelSteps(TravelStepsT &&value)
void SetPassThroughWaypoints(PassThroughWaypointsT &&value)
RouteVehicleLegDetails & WithTolls(TollsT &&value)
AWS_GEOROUTES_API RouteVehicleLegDetails(Aws::Utils::Json::JsonView jsonValue)
const RouteVehicleDeparture & GetDeparture() const
RouteVehicleLegDetails & WithNotices(NoticesT &&value)
const Aws::Vector< RouteVehicleSpan > & GetSpans() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue