AWS SDK for C++

AWS SDK for C++ Version 1.11.776

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
87 inline const Aws::Vector<RouteVehicleIncident>& GetIncidents() const { return m_incidents; }
88 inline bool IncidentsHasBeenSet() const { return m_incidentsHasBeenSet; }
89 template <typename IncidentsT = Aws::Vector<RouteVehicleIncident>>
90 void SetIncidents(IncidentsT&& value) {
91 m_incidentsHasBeenSet = true;
92 m_incidents = std::forward<IncidentsT>(value);
93 }
94 template <typename IncidentsT = Aws::Vector<RouteVehicleIncident>>
96 SetIncidents(std::forward<IncidentsT>(value));
97 return *this;
98 }
99 template <typename IncidentsT = RouteVehicleIncident>
101 m_incidentsHasBeenSet = true;
102 m_incidents.emplace_back(std::forward<IncidentsT>(value));
103 return *this;
104 }
106
108
112 inline const Aws::Vector<RouteVehicleNotice>& GetNotices() const { return m_notices; }
113 inline bool NoticesHasBeenSet() const { return m_noticesHasBeenSet; }
114 template <typename NoticesT = Aws::Vector<RouteVehicleNotice>>
115 void SetNotices(NoticesT&& value) {
116 m_noticesHasBeenSet = true;
117 m_notices = std::forward<NoticesT>(value);
118 }
119 template <typename NoticesT = Aws::Vector<RouteVehicleNotice>>
121 SetNotices(std::forward<NoticesT>(value));
122 return *this;
123 }
124 template <typename NoticesT = RouteVehicleNotice>
126 m_noticesHasBeenSet = true;
127 m_notices.emplace_back(std::forward<NoticesT>(value));
128 return *this;
129 }
131
133
137 inline const Aws::Vector<RoutePassThroughWaypoint>& GetPassThroughWaypoints() const { return m_passThroughWaypoints; }
138 inline bool PassThroughWaypointsHasBeenSet() const { return m_passThroughWaypointsHasBeenSet; }
139 template <typename PassThroughWaypointsT = Aws::Vector<RoutePassThroughWaypoint>>
140 void SetPassThroughWaypoints(PassThroughWaypointsT&& value) {
141 m_passThroughWaypointsHasBeenSet = true;
142 m_passThroughWaypoints = std::forward<PassThroughWaypointsT>(value);
143 }
144 template <typename PassThroughWaypointsT = Aws::Vector<RoutePassThroughWaypoint>>
145 RouteVehicleLegDetails& WithPassThroughWaypoints(PassThroughWaypointsT&& value) {
146 SetPassThroughWaypoints(std::forward<PassThroughWaypointsT>(value));
147 return *this;
148 }
149 template <typename PassThroughWaypointsT = RoutePassThroughWaypoint>
150 RouteVehicleLegDetails& AddPassThroughWaypoints(PassThroughWaypointsT&& value) {
151 m_passThroughWaypointsHasBeenSet = true;
152 m_passThroughWaypoints.emplace_back(std::forward<PassThroughWaypointsT>(value));
153 return *this;
154 }
156
158
161 inline const Aws::Vector<RouteVehicleSpan>& GetSpans() const { return m_spans; }
162 inline bool SpansHasBeenSet() const { return m_spansHasBeenSet; }
163 template <typename SpansT = Aws::Vector<RouteVehicleSpan>>
164 void SetSpans(SpansT&& value) {
165 m_spansHasBeenSet = true;
166 m_spans = std::forward<SpansT>(value);
167 }
168 template <typename SpansT = Aws::Vector<RouteVehicleSpan>>
170 SetSpans(std::forward<SpansT>(value));
171 return *this;
172 }
173 template <typename SpansT = RouteVehicleSpan>
175 m_spansHasBeenSet = true;
176 m_spans.emplace_back(std::forward<SpansT>(value));
177 return *this;
178 }
180
182
185 inline const RouteVehicleSummary& GetSummary() const { return m_summary; }
186 inline bool SummaryHasBeenSet() const { return m_summaryHasBeenSet; }
187 template <typename SummaryT = RouteVehicleSummary>
188 void SetSummary(SummaryT&& value) {
189 m_summaryHasBeenSet = true;
190 m_summary = std::forward<SummaryT>(value);
191 }
192 template <typename SummaryT = RouteVehicleSummary>
194 SetSummary(std::forward<SummaryT>(value));
195 return *this;
196 }
198
200
203 inline const Aws::Vector<RouteToll>& GetTolls() const { return m_tolls; }
204 inline bool TollsHasBeenSet() const { return m_tollsHasBeenSet; }
205 template <typename TollsT = Aws::Vector<RouteToll>>
206 void SetTolls(TollsT&& value) {
207 m_tollsHasBeenSet = true;
208 m_tolls = std::forward<TollsT>(value);
209 }
210 template <typename TollsT = Aws::Vector<RouteToll>>
212 SetTolls(std::forward<TollsT>(value));
213 return *this;
214 }
215 template <typename TollsT = RouteToll>
217 m_tollsHasBeenSet = true;
218 m_tolls.emplace_back(std::forward<TollsT>(value));
219 return *this;
220 }
222
224
227 inline const Aws::Vector<RouteTollSystem>& GetTollSystems() const { return m_tollSystems; }
228 inline bool TollSystemsHasBeenSet() const { return m_tollSystemsHasBeenSet; }
229 template <typename TollSystemsT = Aws::Vector<RouteTollSystem>>
230 void SetTollSystems(TollSystemsT&& value) {
231 m_tollSystemsHasBeenSet = true;
232 m_tollSystems = std::forward<TollSystemsT>(value);
233 }
234 template <typename TollSystemsT = Aws::Vector<RouteTollSystem>>
236 SetTollSystems(std::forward<TollSystemsT>(value));
237 return *this;
238 }
239 template <typename TollSystemsT = RouteTollSystem>
240 RouteVehicleLegDetails& AddTollSystems(TollSystemsT&& value) {
241 m_tollSystemsHasBeenSet = true;
242 m_tollSystems.emplace_back(std::forward<TollSystemsT>(value));
243 return *this;
244 }
246
248
252 inline const Aws::Vector<RouteVehicleTravelStep>& GetTravelSteps() const { return m_travelSteps; }
253 inline bool TravelStepsHasBeenSet() const { return m_travelStepsHasBeenSet; }
254 template <typename TravelStepsT = Aws::Vector<RouteVehicleTravelStep>>
255 void SetTravelSteps(TravelStepsT&& value) {
256 m_travelStepsHasBeenSet = true;
257 m_travelSteps = std::forward<TravelStepsT>(value);
258 }
259 template <typename TravelStepsT = Aws::Vector<RouteVehicleTravelStep>>
261 SetTravelSteps(std::forward<TravelStepsT>(value));
262 return *this;
263 }
264 template <typename TravelStepsT = RouteVehicleTravelStep>
265 RouteVehicleLegDetails& AddTravelSteps(TravelStepsT&& value) {
266 m_travelStepsHasBeenSet = true;
267 m_travelSteps.emplace_back(std::forward<TravelStepsT>(value));
268 return *this;
269 }
271
273
279 inline const Aws::Vector<Aws::String>& GetTruckRoadTypes() const { return m_truckRoadTypes; }
280 inline bool TruckRoadTypesHasBeenSet() const { return m_truckRoadTypesHasBeenSet; }
281 template <typename TruckRoadTypesT = Aws::Vector<Aws::String>>
282 void SetTruckRoadTypes(TruckRoadTypesT&& value) {
283 m_truckRoadTypesHasBeenSet = true;
284 m_truckRoadTypes = std::forward<TruckRoadTypesT>(value);
285 }
286 template <typename TruckRoadTypesT = Aws::Vector<Aws::String>>
287 RouteVehicleLegDetails& WithTruckRoadTypes(TruckRoadTypesT&& value) {
288 SetTruckRoadTypes(std::forward<TruckRoadTypesT>(value));
289 return *this;
290 }
291 template <typename TruckRoadTypesT = Aws::String>
292 RouteVehicleLegDetails& AddTruckRoadTypes(TruckRoadTypesT&& value) {
293 m_truckRoadTypesHasBeenSet = true;
294 m_truckRoadTypes.emplace_back(std::forward<TruckRoadTypesT>(value));
295 return *this;
296 }
298
300
303 inline const Aws::Vector<RouteZone>& GetZones() const { return m_zones; }
304 inline bool ZonesHasBeenSet() const { return m_zonesHasBeenSet; }
305 template <typename ZonesT = Aws::Vector<RouteZone>>
306 void SetZones(ZonesT&& value) {
307 m_zonesHasBeenSet = true;
308 m_zones = std::forward<ZonesT>(value);
309 }
310 template <typename ZonesT = Aws::Vector<RouteZone>>
312 SetZones(std::forward<ZonesT>(value));
313 return *this;
314 }
315 template <typename ZonesT = RouteZone>
317 m_zonesHasBeenSet = true;
318 m_zones.emplace_back(std::forward<ZonesT>(value));
319 return *this;
320 }
322 private:
323 RouteVehicleArrival m_arrival;
324
325 RouteVehicleDeparture m_departure;
326
328
330
331 Aws::Vector<RoutePassThroughWaypoint> m_passThroughWaypoints;
332
334
335 RouteVehicleSummary m_summary;
336
338
339 Aws::Vector<RouteTollSystem> m_tollSystems;
340
342
343 Aws::Vector<Aws::String> m_truckRoadTypes;
344
346 bool m_arrivalHasBeenSet = false;
347 bool m_departureHasBeenSet = false;
348 bool m_incidentsHasBeenSet = false;
349 bool m_noticesHasBeenSet = false;
350 bool m_passThroughWaypointsHasBeenSet = false;
351 bool m_spansHasBeenSet = false;
352 bool m_summaryHasBeenSet = false;
353 bool m_tollsHasBeenSet = false;
354 bool m_tollSystemsHasBeenSet = false;
355 bool m_travelStepsHasBeenSet = false;
356 bool m_truckRoadTypesHasBeenSet = false;
357 bool m_zonesHasBeenSet = false;
358};
359
360} // namespace Model
361} // namespace GeoRoutes
362} // 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