AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
RouteVehicleLegDetails.h
1
6#pragma once
7#include <aws/geo-routes/GeoRoutes_EXPORTS.h>
8#include <aws/geo-routes/model/RouteVehicleArrival.h>
9#include <aws/geo-routes/model/RouteVehicleDeparture.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/geo-routes/model/RouteVehicleSummary.h>
12#include <aws/geo-routes/model/RouteVehicleIncident.h>
13#include <aws/geo-routes/model/RouteVehicleNotice.h>
14#include <aws/geo-routes/model/RoutePassThroughWaypoint.h>
15#include <aws/geo-routes/model/RouteVehicleSpan.h>
16#include <aws/geo-routes/model/RouteToll.h>
17#include <aws/geo-routes/model/RouteTollSystem.h>
18#include <aws/geo-routes/model/RouteVehicleTravelStep.h>
19#include <aws/core/utils/memory/stl/AWSString.h>
20#include <aws/geo-routes/model/RouteZone.h>
21#include <utility>
22
23namespace Aws
24{
25namespace Utils
26{
27namespace Json
28{
29 class JsonValue;
30 class JsonView;
31} // namespace Json
32} // namespace Utils
33namespace GeoRoutes
34{
35namespace Model
36{
37
45 {
46 public:
47 AWS_GEOROUTES_API RouteVehicleLegDetails() = default;
50 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
51
52
54
57 inline const RouteVehicleArrival& GetArrival() const { return m_arrival; }
58 inline bool ArrivalHasBeenSet() const { return m_arrivalHasBeenSet; }
59 template<typename ArrivalT = RouteVehicleArrival>
60 void SetArrival(ArrivalT&& value) { m_arrivalHasBeenSet = true; m_arrival = std::forward<ArrivalT>(value); }
61 template<typename ArrivalT = RouteVehicleArrival>
62 RouteVehicleLegDetails& WithArrival(ArrivalT&& value) { SetArrival(std::forward<ArrivalT>(value)); return *this;}
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) { m_departureHasBeenSet = true; m_departure = std::forward<DepartureT>(value); }
73 template<typename DepartureT = RouteVehicleDeparture>
74 RouteVehicleLegDetails& WithDeparture(DepartureT&& value) { SetDeparture(std::forward<DepartureT>(value)); return *this;}
76
78
81 inline const Aws::Vector<RouteVehicleIncident>& GetIncidents() const { return m_incidents; }
82 inline bool IncidentsHasBeenSet() const { return m_incidentsHasBeenSet; }
83 template<typename IncidentsT = Aws::Vector<RouteVehicleIncident>>
84 void SetIncidents(IncidentsT&& value) { m_incidentsHasBeenSet = true; m_incidents = std::forward<IncidentsT>(value); }
85 template<typename IncidentsT = Aws::Vector<RouteVehicleIncident>>
86 RouteVehicleLegDetails& WithIncidents(IncidentsT&& value) { SetIncidents(std::forward<IncidentsT>(value)); return *this;}
87 template<typename IncidentsT = RouteVehicleIncident>
88 RouteVehicleLegDetails& AddIncidents(IncidentsT&& value) { m_incidentsHasBeenSet = true; m_incidents.emplace_back(std::forward<IncidentsT>(value)); return *this; }
90
92
96 inline const Aws::Vector<RouteVehicleNotice>& GetNotices() const { return m_notices; }
97 inline bool NoticesHasBeenSet() const { return m_noticesHasBeenSet; }
98 template<typename NoticesT = Aws::Vector<RouteVehicleNotice>>
99 void SetNotices(NoticesT&& value) { m_noticesHasBeenSet = true; m_notices = std::forward<NoticesT>(value); }
100 template<typename NoticesT = Aws::Vector<RouteVehicleNotice>>
101 RouteVehicleLegDetails& WithNotices(NoticesT&& value) { SetNotices(std::forward<NoticesT>(value)); return *this;}
102 template<typename NoticesT = RouteVehicleNotice>
103 RouteVehicleLegDetails& AddNotices(NoticesT&& value) { m_noticesHasBeenSet = true; m_notices.emplace_back(std::forward<NoticesT>(value)); return *this; }
105
107
111 inline const Aws::Vector<RoutePassThroughWaypoint>& GetPassThroughWaypoints() const { return m_passThroughWaypoints; }
112 inline bool PassThroughWaypointsHasBeenSet() const { return m_passThroughWaypointsHasBeenSet; }
113 template<typename PassThroughWaypointsT = Aws::Vector<RoutePassThroughWaypoint>>
114 void SetPassThroughWaypoints(PassThroughWaypointsT&& value) { m_passThroughWaypointsHasBeenSet = true; m_passThroughWaypoints = std::forward<PassThroughWaypointsT>(value); }
115 template<typename PassThroughWaypointsT = Aws::Vector<RoutePassThroughWaypoint>>
116 RouteVehicleLegDetails& WithPassThroughWaypoints(PassThroughWaypointsT&& value) { SetPassThroughWaypoints(std::forward<PassThroughWaypointsT>(value)); return *this;}
117 template<typename PassThroughWaypointsT = RoutePassThroughWaypoint>
118 RouteVehicleLegDetails& AddPassThroughWaypoints(PassThroughWaypointsT&& value) { m_passThroughWaypointsHasBeenSet = true; m_passThroughWaypoints.emplace_back(std::forward<PassThroughWaypointsT>(value)); return *this; }
120
122
125 inline const Aws::Vector<RouteVehicleSpan>& GetSpans() const { return m_spans; }
126 inline bool SpansHasBeenSet() const { return m_spansHasBeenSet; }
127 template<typename SpansT = Aws::Vector<RouteVehicleSpan>>
128 void SetSpans(SpansT&& value) { m_spansHasBeenSet = true; m_spans = std::forward<SpansT>(value); }
129 template<typename SpansT = Aws::Vector<RouteVehicleSpan>>
130 RouteVehicleLegDetails& WithSpans(SpansT&& value) { SetSpans(std::forward<SpansT>(value)); return *this;}
131 template<typename SpansT = RouteVehicleSpan>
132 RouteVehicleLegDetails& AddSpans(SpansT&& value) { m_spansHasBeenSet = true; m_spans.emplace_back(std::forward<SpansT>(value)); return *this; }
134
136
139 inline const RouteVehicleSummary& GetSummary() const { return m_summary; }
140 inline bool SummaryHasBeenSet() const { return m_summaryHasBeenSet; }
141 template<typename SummaryT = RouteVehicleSummary>
142 void SetSummary(SummaryT&& value) { m_summaryHasBeenSet = true; m_summary = std::forward<SummaryT>(value); }
143 template<typename SummaryT = RouteVehicleSummary>
144 RouteVehicleLegDetails& WithSummary(SummaryT&& value) { SetSummary(std::forward<SummaryT>(value)); return *this;}
146
148
151 inline const Aws::Vector<RouteToll>& GetTolls() const { return m_tolls; }
152 inline bool TollsHasBeenSet() const { return m_tollsHasBeenSet; }
153 template<typename TollsT = Aws::Vector<RouteToll>>
154 void SetTolls(TollsT&& value) { m_tollsHasBeenSet = true; m_tolls = std::forward<TollsT>(value); }
155 template<typename TollsT = Aws::Vector<RouteToll>>
156 RouteVehicleLegDetails& WithTolls(TollsT&& value) { SetTolls(std::forward<TollsT>(value)); return *this;}
157 template<typename TollsT = RouteToll>
158 RouteVehicleLegDetails& AddTolls(TollsT&& value) { m_tollsHasBeenSet = true; m_tolls.emplace_back(std::forward<TollsT>(value)); return *this; }
160
162
165 inline const Aws::Vector<RouteTollSystem>& GetTollSystems() const { return m_tollSystems; }
166 inline bool TollSystemsHasBeenSet() const { return m_tollSystemsHasBeenSet; }
167 template<typename TollSystemsT = Aws::Vector<RouteTollSystem>>
168 void SetTollSystems(TollSystemsT&& value) { m_tollSystemsHasBeenSet = true; m_tollSystems = std::forward<TollSystemsT>(value); }
169 template<typename TollSystemsT = Aws::Vector<RouteTollSystem>>
170 RouteVehicleLegDetails& WithTollSystems(TollSystemsT&& value) { SetTollSystems(std::forward<TollSystemsT>(value)); return *this;}
171 template<typename TollSystemsT = RouteTollSystem>
172 RouteVehicleLegDetails& AddTollSystems(TollSystemsT&& value) { m_tollSystemsHasBeenSet = true; m_tollSystems.emplace_back(std::forward<TollSystemsT>(value)); return *this; }
174
176
180 inline const Aws::Vector<RouteVehicleTravelStep>& GetTravelSteps() const { return m_travelSteps; }
181 inline bool TravelStepsHasBeenSet() const { return m_travelStepsHasBeenSet; }
182 template<typename TravelStepsT = Aws::Vector<RouteVehicleTravelStep>>
183 void SetTravelSteps(TravelStepsT&& value) { m_travelStepsHasBeenSet = true; m_travelSteps = std::forward<TravelStepsT>(value); }
184 template<typename TravelStepsT = Aws::Vector<RouteVehicleTravelStep>>
185 RouteVehicleLegDetails& WithTravelSteps(TravelStepsT&& value) { SetTravelSteps(std::forward<TravelStepsT>(value)); return *this;}
186 template<typename TravelStepsT = RouteVehicleTravelStep>
187 RouteVehicleLegDetails& AddTravelSteps(TravelStepsT&& value) { m_travelStepsHasBeenSet = true; m_travelSteps.emplace_back(std::forward<TravelStepsT>(value)); return *this; }
189
191
197 inline const Aws::Vector<Aws::String>& GetTruckRoadTypes() const { return m_truckRoadTypes; }
198 inline bool TruckRoadTypesHasBeenSet() const { return m_truckRoadTypesHasBeenSet; }
199 template<typename TruckRoadTypesT = Aws::Vector<Aws::String>>
200 void SetTruckRoadTypes(TruckRoadTypesT&& value) { m_truckRoadTypesHasBeenSet = true; m_truckRoadTypes = std::forward<TruckRoadTypesT>(value); }
201 template<typename TruckRoadTypesT = Aws::Vector<Aws::String>>
202 RouteVehicleLegDetails& WithTruckRoadTypes(TruckRoadTypesT&& value) { SetTruckRoadTypes(std::forward<TruckRoadTypesT>(value)); return *this;}
203 template<typename TruckRoadTypesT = Aws::String>
204 RouteVehicleLegDetails& AddTruckRoadTypes(TruckRoadTypesT&& value) { m_truckRoadTypesHasBeenSet = true; m_truckRoadTypes.emplace_back(std::forward<TruckRoadTypesT>(value)); return *this; }
206
208
211 inline const Aws::Vector<RouteZone>& GetZones() const { return m_zones; }
212 inline bool ZonesHasBeenSet() const { return m_zonesHasBeenSet; }
213 template<typename ZonesT = Aws::Vector<RouteZone>>
214 void SetZones(ZonesT&& value) { m_zonesHasBeenSet = true; m_zones = std::forward<ZonesT>(value); }
215 template<typename ZonesT = Aws::Vector<RouteZone>>
216 RouteVehicleLegDetails& WithZones(ZonesT&& value) { SetZones(std::forward<ZonesT>(value)); return *this;}
217 template<typename ZonesT = RouteZone>
218 RouteVehicleLegDetails& AddZones(ZonesT&& value) { m_zonesHasBeenSet = true; m_zones.emplace_back(std::forward<ZonesT>(value)); return *this; }
220 private:
221
222 RouteVehicleArrival m_arrival;
223 bool m_arrivalHasBeenSet = false;
224
225 RouteVehicleDeparture m_departure;
226 bool m_departureHasBeenSet = false;
227
229 bool m_incidentsHasBeenSet = false;
230
232 bool m_noticesHasBeenSet = false;
233
234 Aws::Vector<RoutePassThroughWaypoint> m_passThroughWaypoints;
235 bool m_passThroughWaypointsHasBeenSet = false;
236
238 bool m_spansHasBeenSet = false;
239
240 RouteVehicleSummary m_summary;
241 bool m_summaryHasBeenSet = false;
242
244 bool m_tollsHasBeenSet = false;
245
246 Aws::Vector<RouteTollSystem> m_tollSystems;
247 bool m_tollSystemsHasBeenSet = false;
248
250 bool m_travelStepsHasBeenSet = false;
251
252 Aws::Vector<Aws::String> m_truckRoadTypes;
253 bool m_truckRoadTypesHasBeenSet = false;
254
256 bool m_zonesHasBeenSet = false;
257 };
258
259} // namespace Model
260} // namespace GeoRoutes
261} // 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