7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/location/LocationServiceRequest.h>
11#include <aws/location/LocationService_EXPORTS.h>
12#include <aws/location/model/CalculateRouteCarModeOptions.h>
13#include <aws/location/model/CalculateRouteTruckModeOptions.h>
14#include <aws/location/model/DistanceUnit.h>
15#include <aws/location/model/OptimizationMode.h>
16#include <aws/location/model/TravelMode.h>
24namespace LocationService {
50 template <
typename CalculatorNameT = Aws::String>
52 m_calculatorNameHasBeenSet =
true;
53 m_calculatorName = std::forward<CalculatorNameT>(value);
55 template <
typename CalculatorNameT = Aws::String>
78 template <
typename DeparturePositionT = Aws::Vector<
double>>
80 m_departurePositionHasBeenSet =
true;
81 m_departurePosition = std::forward<DeparturePositionT>(value);
83 template <
typename DeparturePositionT = Aws::Vector<
double>>
89 m_departurePositionHasBeenSet =
true;
90 m_departurePosition.push_back(value);
109 template <
typename DestinationPositionT = Aws::Vector<
double>>
111 m_destinationPositionHasBeenSet =
true;
112 m_destinationPosition = std::forward<DestinationPositionT>(value);
114 template <
typename DestinationPositionT = Aws::Vector<
double>>
120 m_destinationPositionHasBeenSet =
true;
121 m_destinationPosition.push_back(value);
144 template <
typename Waypo
intPositionsT = Aws::Vector<Aws::Vector<
double>>>
146 m_waypointPositionsHasBeenSet =
true;
147 m_waypointPositions = std::forward<WaypointPositionsT>(value);
149 template <
typename Waypo
intPositionsT = Aws::Vector<Aws::Vector<
double>>>
154 template <
typename Waypo
intPositionsT = Aws::Vector<
double>>
156 m_waypointPositionsHasBeenSet =
true;
157 m_waypointPositions.emplace_back(std::forward<WaypointPositionsT>(value));
183 m_travelModeHasBeenSet =
true;
184 m_travelMode = value;
203 template <
typename DepartureTimeT = Aws::Utils::DateTime>
205 m_departureTimeHasBeenSet =
true;
206 m_departureTime = std::forward<DepartureTimeT>(value);
208 template <
typename DepartureTimeT = Aws::Utils::DateTime>
226 m_departNowHasBeenSet =
true;
243 m_distanceUnitHasBeenSet =
true;
244 m_distanceUnit = value;
261 m_includeLegGeometryHasBeenSet =
true;
262 m_includeLegGeometry = value;
278 template <
typename CarModeOptionsT = CalculateRouteCarModeOptions>
280 m_carModeOptionsHasBeenSet =
true;
281 m_carModeOptions = std::forward<CarModeOptionsT>(value);
283 template <
typename CarModeOptionsT = CalculateRouteCarModeOptions>
299 template <
typename TruckModeOptionsT = CalculateRouteTruckModeOptions>
301 m_truckModeOptionsHasBeenSet =
true;
302 m_truckModeOptions = std::forward<TruckModeOptionsT>(value);
304 template <
typename TruckModeOptionsT = CalculateRouteTruckModeOptions>
320 template <
typename ArrivalTimeT = Aws::Utils::DateTime>
322 m_arrivalTimeHasBeenSet =
true;
323 m_arrivalTime = std::forward<ArrivalTimeT>(value);
325 template <
typename ArrivalTimeT = Aws::Utils::DateTime>
339 m_optimizeForHasBeenSet =
true;
340 m_optimizeFor = value;
356 template <
typename KeyT = Aws::String>
358 m_keyHasBeenSet =
true;
359 m_key = std::forward<KeyT>(value);
361 template <
typename KeyT = Aws::String>
363 SetKey(std::forward<KeyT>(value));
380 bool m_departNow{
false};
384 bool m_includeLegGeometry{
false};
386 CalculateRouteCarModeOptions m_carModeOptions;
388 CalculateRouteTruckModeOptions m_truckModeOptions;
395 bool m_calculatorNameHasBeenSet =
false;
396 bool m_departurePositionHasBeenSet =
false;
397 bool m_destinationPositionHasBeenSet =
false;
398 bool m_waypointPositionsHasBeenSet =
false;
399 bool m_travelModeHasBeenSet =
false;
400 bool m_departureTimeHasBeenSet =
false;
401 bool m_departNowHasBeenSet =
false;
402 bool m_distanceUnitHasBeenSet =
false;
403 bool m_includeLegGeometryHasBeenSet =
false;
404 bool m_carModeOptionsHasBeenSet =
false;
405 bool m_truckModeOptionsHasBeenSet =
false;
406 bool m_arrivalTimeHasBeenSet =
false;
407 bool m_optimizeForHasBeenSet =
false;
408 bool m_keyHasBeenSet =
false;
DistanceUnit GetDistanceUnit() const
CalculateRouteRequest & WithTravelMode(TravelMode value)
const CalculateRouteCarModeOptions & GetCarModeOptions() const
const Aws::String & GetKey() const
void SetKey(KeyT &&value)
CalculateRouteRequest & WithCarModeOptions(CarModeOptionsT &&value)
CalculateRouteRequest & WithDepartNow(bool value)
bool GetIncludeLegGeometry() const
CalculateRouteRequest & WithArrivalTime(ArrivalTimeT &&value)
void SetDeparturePosition(DeparturePositionT &&value)
bool TruckModeOptionsHasBeenSet() const
bool GetDepartNow() const
CalculateRouteRequest & WithTruckModeOptions(TruckModeOptionsT &&value)
CalculateRouteRequest & AddWaypointPositions(WaypointPositionsT &&value)
const Aws::Vector< double > & GetDeparturePosition() const
void SetTruckModeOptions(TruckModeOptionsT &&value)
const Aws::Vector< Aws::Vector< double > > & GetWaypointPositions() const
CalculateRouteRequest & WithIncludeLegGeometry(bool value)
CalculateRouteRequest & WithCalculatorName(CalculatorNameT &&value)
bool DeparturePositionHasBeenSet() const
bool DepartNowHasBeenSet() const
bool KeyHasBeenSet() const
bool CarModeOptionsHasBeenSet() const
const CalculateRouteTruckModeOptions & GetTruckModeOptions() const
void SetOptimizeFor(OptimizationMode value)
bool DistanceUnitHasBeenSet() const
CalculateRouteRequest & AddDestinationPosition(double value)
bool ArrivalTimeHasBeenSet() const
CalculateRouteRequest & WithKey(KeyT &&value)
void SetDepartNow(bool value)
const Aws::Vector< double > & GetDestinationPosition() const
virtual const char * GetServiceRequestName() const override
CalculateRouteRequest & WithDepartureTime(DepartureTimeT &&value)
CalculateRouteRequest & AddDeparturePosition(double value)
bool DestinationPositionHasBeenSet() const
CalculateRouteRequest & WithDestinationPosition(DestinationPositionT &&value)
void SetCarModeOptions(CarModeOptionsT &&value)
bool OptimizeForHasBeenSet() const
void SetDepartureTime(DepartureTimeT &&value)
CalculateRouteRequest & WithDistanceUnit(DistanceUnit value)
AWS_LOCATIONSERVICE_API Aws::String SerializePayload() const override
void SetCalculatorName(CalculatorNameT &&value)
bool IncludeLegGeometryHasBeenSet() const
OptimizationMode GetOptimizeFor() const
CalculateRouteRequest & WithOptimizeFor(OptimizationMode value)
const Aws::String & GetCalculatorName() const
bool WaypointPositionsHasBeenSet() const
const Aws::Utils::DateTime & GetDepartureTime() const
CalculateRouteRequest & WithWaypointPositions(WaypointPositionsT &&value)
bool CalculatorNameHasBeenSet() const
AWS_LOCATIONSERVICE_API CalculateRouteRequest()=default
bool TravelModeHasBeenSet() const
CalculateRouteRequest & WithDeparturePosition(DeparturePositionT &&value)
void SetDestinationPosition(DestinationPositionT &&value)
TravelMode GetTravelMode() const
void SetTravelMode(TravelMode value)
void SetDistanceUnit(DistanceUnit value)
void SetIncludeLegGeometry(bool value)
bool DepartureTimeHasBeenSet() const
void SetWaypointPositions(WaypointPositionsT &&value)
const Aws::Utils::DateTime & GetArrivalTime() const
void SetArrivalTime(ArrivalTimeT &&value)
AWS_LOCATIONSERVICE_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector