7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/geo-routes/GeoRoutesRequest.h>
10#include <aws/geo-routes/GeoRoutes_EXPORTS.h>
11#include <aws/geo-routes/model/GeometryFormat.h>
12#include <aws/geo-routes/model/MeasurementSystem.h>
13#include <aws/geo-routes/model/RouteAllowOptions.h>
14#include <aws/geo-routes/model/RouteAvoidanceOptions.h>
15#include <aws/geo-routes/model/RouteDestinationOptions.h>
16#include <aws/geo-routes/model/RouteDriverOptions.h>
17#include <aws/geo-routes/model/RouteExclusionOptions.h>
18#include <aws/geo-routes/model/RouteLegAdditionalFeature.h>
19#include <aws/geo-routes/model/RouteOriginOptions.h>
20#include <aws/geo-routes/model/RouteSpanAdditionalFeature.h>
21#include <aws/geo-routes/model/RouteTollOptions.h>
22#include <aws/geo-routes/model/RouteTrafficOptions.h>
23#include <aws/geo-routes/model/RouteTravelMode.h>
24#include <aws/geo-routes/model/RouteTravelModeOptions.h>
25#include <aws/geo-routes/model/RouteTravelStepType.h>
26#include <aws/geo-routes/model/RouteWaypoint.h>
27#include <aws/geo-routes/model/RoutingObjective.h>
60 template <
typename AllowT = RouteAllowOptions>
62 m_allowHasBeenSet =
true;
63 m_allow = std::forward<AllowT>(value);
65 template <
typename AllowT = RouteAllowOptions>
67 SetAllow(std::forward<AllowT>(value));
81 template <
typename ArrivalTimeT = Aws::String>
83 m_arrivalTimeHasBeenSet =
true;
84 m_arrivalTime = std::forward<ArrivalTimeT>(value);
86 template <
typename ArrivalTimeT = Aws::String>
102 template <
typename A
voidT = RouteA
voidanceOptions>
104 m_avoidHasBeenSet =
true;
105 m_avoid = std::forward<AvoidT>(value);
107 template <
typename A
voidT = RouteA
voidanceOptions>
109 SetAvoid(std::forward<AvoidT>(value));
121 m_departNowHasBeenSet =
true;
139 template <
typename DepartureTimeT = Aws::String>
141 m_departureTimeHasBeenSet =
true;
142 m_departureTime = std::forward<DepartureTimeT>(value);
144 template <
typename DepartureTimeT = Aws::String>
158 template <
typename DestinationT = Aws::Vector<
double>>
160 m_destinationHasBeenSet =
true;
161 m_destination = std::forward<DestinationT>(value);
163 template <
typename DestinationT = Aws::Vector<
double>>
169 m_destinationHasBeenSet =
true;
170 m_destination.push_back(value);
181 template <
typename DestinationOptionsT = RouteDestinationOptions>
183 m_destinationOptionsHasBeenSet =
true;
184 m_destinationOptions = std::forward<DestinationOptionsT>(value);
186 template <
typename DestinationOptionsT = RouteDestinationOptions>
199 template <
typename DriverT = RouteDriverOptions>
201 m_driverHasBeenSet =
true;
202 m_driver = std::forward<DriverT>(value);
204 template <
typename DriverT = RouteDriverOptions>
217 template <
typename ExcludeT = RouteExclusionOptions>
219 m_excludeHasBeenSet =
true;
220 m_exclude = std::forward<ExcludeT>(value);
222 template <
typename ExcludeT = RouteExclusionOptions>
237 m_instructionsMeasurementSystemHasBeenSet =
true;
238 m_instructionsMeasurementSystem = value;
253 template <
typename KeyT = Aws::String>
255 m_keyHasBeenSet =
true;
256 m_key = std::forward<KeyT>(value);
258 template <
typename KeyT = Aws::String>
260 SetKey(std::forward<KeyT>(value));
273 template <
typename LanguagesT = Aws::Vector<Aws::String>>
275 m_languagesHasBeenSet =
true;
276 m_languages = std::forward<LanguagesT>(value);
278 template <
typename LanguagesT = Aws::Vector<Aws::String>>
283 template <
typename LanguagesT = Aws::String>
285 m_languagesHasBeenSet =
true;
286 m_languages.emplace_back(std::forward<LanguagesT>(value));
310 template <
typename LegAdditionalFeaturesT = Aws::Vector<RouteLegAdditionalFeature>>
312 m_legAdditionalFeaturesHasBeenSet =
true;
313 m_legAdditionalFeatures = std::forward<LegAdditionalFeaturesT>(value);
315 template <
typename LegAdditionalFeaturesT = Aws::Vector<RouteLegAdditionalFeature>>
321 m_legAdditionalFeaturesHasBeenSet =
true;
322 m_legAdditionalFeatures.push_back(value);
341 m_legGeometryFormatHasBeenSet =
true;
342 m_legGeometryFormat = value;
358 m_maxAlternativesHasBeenSet =
true;
359 m_maxAlternatives = value;
375 m_optimizeRoutingForHasBeenSet =
true;
376 m_optimizeRoutingFor = value;
390 template <
typename OriginT = Aws::Vector<
double>>
392 m_originHasBeenSet =
true;
393 m_origin = std::forward<OriginT>(value);
395 template <
typename OriginT = Aws::Vector<
double>>
401 m_originHasBeenSet =
true;
402 m_origin.push_back(value);
413 template <
typename OriginOptionsT = RouteOriginOptions>
415 m_originOptionsHasBeenSet =
true;
416 m_originOptions = std::forward<OriginOptionsT>(value);
418 template <
typename OriginOptionsT = RouteOriginOptions>
433 template <
typename SpanAdditionalFeaturesT = Aws::Vector<RouteSpanAdditionalFeature>>
435 m_spanAdditionalFeaturesHasBeenSet =
true;
436 m_spanAdditionalFeatures = std::forward<SpanAdditionalFeaturesT>(value);
438 template <
typename SpanAdditionalFeaturesT = Aws::Vector<RouteSpanAdditionalFeature>>
444 m_spanAdditionalFeaturesHasBeenSet =
true;
445 m_spanAdditionalFeatures.push_back(value);
456 template <
typename TollsT = RouteTollOptions>
458 m_tollsHasBeenSet =
true;
459 m_tolls = std::forward<TollsT>(value);
461 template <
typename TollsT = RouteTollOptions>
463 SetTolls(std::forward<TollsT>(value));
474 template <
typename TrafficT = RouteTrafficOptions>
476 m_trafficHasBeenSet =
true;
477 m_traffic = std::forward<TrafficT>(value);
479 template <
typename TrafficT = RouteTrafficOptions>
495 m_travelModeHasBeenSet =
true;
496 m_travelMode = value;
510 template <
typename TravelModeOptionsT = RouteTravelModeOptions>
512 m_travelModeOptionsHasBeenSet =
true;
513 m_travelModeOptions = std::forward<TravelModeOptionsT>(value);
515 template <
typename TravelModeOptionsT = RouteTravelModeOptions>
531 m_travelStepTypeHasBeenSet =
true;
532 m_travelStepType = value;
546 template <
typename Waypo
intsT = Aws::Vector<RouteWaypo
int>>
548 m_waypointsHasBeenSet =
true;
549 m_waypoints = std::forward<WaypointsT>(value);
551 template <
typename Waypo
intsT = Aws::Vector<RouteWaypo
int>>
556 template <
typename Waypo
intsT = RouteWaypo
int>
558 m_waypointsHasBeenSet =
true;
559 m_waypoints.emplace_back(std::forward<WaypointsT>(value));
565 bool m_allowHasBeenSet =
false;
568 bool m_arrivalTimeHasBeenSet =
false;
571 bool m_avoidHasBeenSet =
false;
573 bool m_departNow{
false};
574 bool m_departNowHasBeenSet =
false;
577 bool m_departureTimeHasBeenSet =
false;
580 bool m_destinationHasBeenSet =
false;
582 RouteDestinationOptions m_destinationOptions;
583 bool m_destinationOptionsHasBeenSet =
false;
585 RouteDriverOptions m_driver;
586 bool m_driverHasBeenSet =
false;
588 RouteExclusionOptions m_exclude;
589 bool m_excludeHasBeenSet =
false;
592 bool m_instructionsMeasurementSystemHasBeenSet =
false;
595 bool m_keyHasBeenSet =
false;
598 bool m_languagesHasBeenSet =
false;
601 bool m_legAdditionalFeaturesHasBeenSet =
false;
604 bool m_legGeometryFormatHasBeenSet =
false;
606 int m_maxAlternatives{0};
607 bool m_maxAlternativesHasBeenSet =
false;
610 bool m_optimizeRoutingForHasBeenSet =
false;
613 bool m_originHasBeenSet =
false;
615 RouteOriginOptions m_originOptions;
616 bool m_originOptionsHasBeenSet =
false;
619 bool m_spanAdditionalFeaturesHasBeenSet =
false;
621 RouteTollOptions m_tolls;
622 bool m_tollsHasBeenSet =
false;
624 RouteTrafficOptions m_traffic;
625 bool m_trafficHasBeenSet =
false;
628 bool m_travelModeHasBeenSet =
false;
630 RouteTravelModeOptions m_travelModeOptions;
631 bool m_travelModeOptionsHasBeenSet =
false;
634 bool m_travelStepTypeHasBeenSet =
false;
637 bool m_waypointsHasBeenSet =
false;
const Aws::String & GetDepartureTime() const
void SetSpanAdditionalFeatures(SpanAdditionalFeaturesT &&value)
int GetMaxAlternatives() const
bool TravelStepTypeHasBeenSet() const
const Aws::Vector< RouteSpanAdditionalFeature > & GetSpanAdditionalFeatures() const
CalculateRoutesRequest & WithTravelModeOptions(TravelModeOptionsT &&value)
CalculateRoutesRequest & WithOptimizeRoutingFor(RoutingObjective value)
void SetDestinationOptions(DestinationOptionsT &&value)
void SetAvoid(AvoidT &&value)
const Aws::Vector< Aws::String > & GetLanguages() const
RouteTravelStepType GetTravelStepType() const
CalculateRoutesRequest & WithExclude(ExcludeT &&value)
const RouteExclusionOptions & GetExclude() const
void SetKey(KeyT &&value)
CalculateRoutesRequest & WithWaypoints(WaypointsT &&value)
bool TrafficHasBeenSet() const
CalculateRoutesRequest & WithTolls(TollsT &&value)
const Aws::Vector< double > & GetDestination() const
CalculateRoutesRequest & AddWaypoints(WaypointsT &&value)
CalculateRoutesRequest & AddSpanAdditionalFeatures(RouteSpanAdditionalFeature value)
CalculateRoutesRequest & WithKey(KeyT &&value)
const Aws::Vector< RouteLegAdditionalFeature > & GetLegAdditionalFeatures() const
bool TravelModeOptionsHasBeenSet() const
const RouteAvoidanceOptions & GetAvoid() const
bool InstructionsMeasurementSystemHasBeenSet() const
void SetLanguages(LanguagesT &&value)
bool ExcludeHasBeenSet() const
const RouteAllowOptions & GetAllow() const
CalculateRoutesRequest & WithTravelStepType(RouteTravelStepType value)
AWS_GEOROUTES_API CalculateRoutesRequest()=default
CalculateRoutesRequest & WithDestination(DestinationT &&value)
CalculateRoutesRequest & WithSpanAdditionalFeatures(SpanAdditionalFeaturesT &&value)
void SetLegAdditionalFeatures(LegAdditionalFeaturesT &&value)
CalculateRoutesRequest & WithLegAdditionalFeatures(LegAdditionalFeaturesT &&value)
CalculateRoutesRequest & WithInstructionsMeasurementSystem(MeasurementSystem value)
void SetMaxAlternatives(int value)
virtual const char * GetServiceRequestName() const override
void SetTravelModeOptions(TravelModeOptionsT &&value)
RouteTravelMode GetTravelMode() const
void SetTravelStepType(RouteTravelStepType value)
bool AvoidHasBeenSet() const
void SetExclude(ExcludeT &&value)
void SetWaypoints(WaypointsT &&value)
void SetDepartureTime(DepartureTimeT &&value)
void SetAllow(AllowT &&value)
const Aws::String & GetArrivalTime() const
const RouteDestinationOptions & GetDestinationOptions() const
void SetOriginOptions(OriginOptionsT &&value)
void SetTravelMode(RouteTravelMode value)
CalculateRoutesRequest & WithDestinationOptions(DestinationOptionsT &&value)
const RouteDriverOptions & GetDriver() const
bool KeyHasBeenSet() const
GeometryFormat GetLegGeometryFormat() const
const RouteTollOptions & GetTolls() const
void SetArrivalTime(ArrivalTimeT &&value)
void SetDriver(DriverT &&value)
void SetDepartNow(bool value)
CalculateRoutesRequest & WithOrigin(OriginT &&value)
CalculateRoutesRequest & WithDriver(DriverT &&value)
AWS_GEOROUTES_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
bool OriginOptionsHasBeenSet() const
CalculateRoutesRequest & WithDepartNow(bool value)
bool ArrivalTimeHasBeenSet() const
CalculateRoutesRequest & AddDestination(double value)
CalculateRoutesRequest & WithArrivalTime(ArrivalTimeT &&value)
bool OriginHasBeenSet() const
CalculateRoutesRequest & WithLanguages(LanguagesT &&value)
const Aws::Vector< RouteWaypoint > & GetWaypoints() const
void SetTraffic(TrafficT &&value)
bool GetDepartNow() const
const Aws::String & GetKey() const
CalculateRoutesRequest & AddLanguages(LanguagesT &&value)
void SetLegGeometryFormat(GeometryFormat value)
bool TollsHasBeenSet() const
void SetOptimizeRoutingFor(RoutingObjective value)
bool DepartureTimeHasBeenSet() const
CalculateRoutesRequest & WithAllow(AllowT &&value)
bool DestinationOptionsHasBeenSet() const
bool TravelModeHasBeenSet() const
CalculateRoutesRequest & WithDepartureTime(DepartureTimeT &&value)
bool DestinationHasBeenSet() const
CalculateRoutesRequest & WithAvoid(AvoidT &&value)
bool DepartNowHasBeenSet() const
bool LanguagesHasBeenSet() const
void SetInstructionsMeasurementSystem(MeasurementSystem value)
void SetDestination(DestinationT &&value)
CalculateRoutesRequest & AddLegAdditionalFeatures(RouteLegAdditionalFeature value)
bool DriverHasBeenSet() const
CalculateRoutesRequest & WithLegGeometryFormat(GeometryFormat value)
void SetOrigin(OriginT &&value)
bool MaxAlternativesHasBeenSet() const
void SetTolls(TollsT &&value)
RoutingObjective GetOptimizeRoutingFor() const
const RouteTrafficOptions & GetTraffic() const
bool AllowHasBeenSet() const
CalculateRoutesRequest & AddOrigin(double value)
bool LegGeometryFormatHasBeenSet() const
CalculateRoutesRequest & WithTraffic(TrafficT &&value)
const Aws::Vector< double > & GetOrigin() const
CalculateRoutesRequest & WithMaxAlternatives(int value)
bool OptimizeRoutingForHasBeenSet() const
bool WaypointsHasBeenSet() const
CalculateRoutesRequest & WithOriginOptions(OriginOptionsT &&value)
CalculateRoutesRequest & WithTravelMode(RouteTravelMode value)
const RouteTravelModeOptions & GetTravelModeOptions() const
AWS_GEOROUTES_API Aws::String SerializePayload() const override
MeasurementSystem GetInstructionsMeasurementSystem() const
bool SpanAdditionalFeaturesHasBeenSet() const
bool LegAdditionalFeaturesHasBeenSet() const
const RouteOriginOptions & GetOriginOptions() const
RouteSpanAdditionalFeature
RouteLegAdditionalFeature
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector