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/TravelMode.h>
23namespace LocationService {
49 template <
typename CalculatorNameT = Aws::String>
51 m_calculatorNameHasBeenSet =
true;
52 m_calculatorName = std::forward<CalculatorNameT>(value);
54 template <
typename CalculatorNameT = Aws::String>
82 template <
typename DeparturePositionsT = Aws::Vector<Aws::Vector<
double>>>
84 m_departurePositionsHasBeenSet =
true;
85 m_departurePositions = std::forward<DeparturePositionsT>(value);
87 template <
typename DeparturePositionsT = Aws::Vector<Aws::Vector<
double>>>
92 template <
typename DeparturePositionsT = Aws::Vector<
double>>
94 m_departurePositionsHasBeenSet =
true;
95 m_departurePositions.emplace_back(std::forward<DeparturePositionsT>(value));
121 template <
typename DestinationPositionsT = Aws::Vector<Aws::Vector<
double>>>
123 m_destinationPositionsHasBeenSet =
true;
124 m_destinationPositions = std::forward<DestinationPositionsT>(value);
126 template <
typename DestinationPositionsT = Aws::Vector<Aws::Vector<
double>>>
131 template <
typename DestinationPositionsT = Aws::Vector<
double>>
133 m_destinationPositionsHasBeenSet =
true;
134 m_destinationPositions.emplace_back(std::forward<DestinationPositionsT>(value));
158 m_travelModeHasBeenSet =
true;
159 m_travelMode = value;
181 template <
typename DepartureTimeT = Aws::Utils::DateTime>
183 m_departureTimeHasBeenSet =
true;
184 m_departureTime = std::forward<DepartureTimeT>(value);
186 template <
typename DepartureTimeT = Aws::Utils::DateTime>
205 m_departNowHasBeenSet =
true;
222 m_distanceUnitHasBeenSet =
true;
223 m_distanceUnit = value;
239 template <
typename CarModeOptionsT = CalculateRouteCarModeOptions>
241 m_carModeOptionsHasBeenSet =
true;
242 m_carModeOptions = std::forward<CarModeOptionsT>(value);
244 template <
typename CarModeOptionsT = CalculateRouteCarModeOptions>
260 template <
typename TruckModeOptionsT = CalculateRouteTruckModeOptions>
262 m_truckModeOptionsHasBeenSet =
true;
263 m_truckModeOptions = std::forward<TruckModeOptionsT>(value);
265 template <
typename TruckModeOptionsT = CalculateRouteTruckModeOptions>
280 template <
typename KeyT = Aws::String>
282 m_keyHasBeenSet =
true;
283 m_key = std::forward<KeyT>(value);
285 template <
typename KeyT = Aws::String>
287 SetKey(std::forward<KeyT>(value));
302 bool m_departNow{
false};
306 CalculateRouteCarModeOptions m_carModeOptions;
308 CalculateRouteTruckModeOptions m_truckModeOptions;
311 bool m_calculatorNameHasBeenSet =
false;
312 bool m_departurePositionsHasBeenSet =
false;
313 bool m_destinationPositionsHasBeenSet =
false;
314 bool m_travelModeHasBeenSet =
false;
315 bool m_departureTimeHasBeenSet =
false;
316 bool m_departNowHasBeenSet =
false;
317 bool m_distanceUnitHasBeenSet =
false;
318 bool m_carModeOptionsHasBeenSet =
false;
319 bool m_truckModeOptionsHasBeenSet =
false;
320 bool m_keyHasBeenSet =
false;
CalculateRouteMatrixRequest & WithDepartureTime(DepartureTimeT &&value)
bool DestinationPositionsHasBeenSet() const
bool TruckModeOptionsHasBeenSet() const
const Aws::Vector< Aws::Vector< double > > & GetDeparturePositions() const
void SetCarModeOptions(CarModeOptionsT &&value)
virtual const char * GetServiceRequestName() const override
bool CarModeOptionsHasBeenSet() const
bool TravelModeHasBeenSet() const
DistanceUnit GetDistanceUnit() const
void SetDepartureTime(DepartureTimeT &&value)
void SetDistanceUnit(DistanceUnit value)
const Aws::Vector< Aws::Vector< double > > & GetDestinationPositions() const
const Aws::String & GetKey() const
bool CalculatorNameHasBeenSet() const
void SetCalculatorName(CalculatorNameT &&value)
CalculateRouteMatrixRequest & WithTruckModeOptions(TruckModeOptionsT &&value)
CalculateRouteMatrixRequest & WithTravelMode(TravelMode value)
void SetTravelMode(TravelMode value)
CalculateRouteMatrixRequest & AddDeparturePositions(DeparturePositionsT &&value)
CalculateRouteMatrixRequest & WithDepartNow(bool value)
AWS_LOCATIONSERVICE_API CalculateRouteMatrixRequest()=default
void SetDepartNow(bool value)
AWS_LOCATIONSERVICE_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
const CalculateRouteCarModeOptions & GetCarModeOptions() const
CalculateRouteMatrixRequest & WithDistanceUnit(DistanceUnit value)
const Aws::String & GetCalculatorName() const
CalculateRouteMatrixRequest & WithCarModeOptions(CarModeOptionsT &&value)
TravelMode GetTravelMode() const
void SetDeparturePositions(DeparturePositionsT &&value)
CalculateRouteMatrixRequest & WithDeparturePositions(DeparturePositionsT &&value)
const Aws::Utils::DateTime & GetDepartureTime() const
bool KeyHasBeenSet() const
bool DepartureTimeHasBeenSet() const
bool GetDepartNow() const
bool DepartNowHasBeenSet() const
CalculateRouteMatrixRequest & WithDestinationPositions(DestinationPositionsT &&value)
CalculateRouteMatrixRequest & WithCalculatorName(CalculatorNameT &&value)
void SetDestinationPositions(DestinationPositionsT &&value)
CalculateRouteMatrixRequest & WithKey(KeyT &&value)
void SetTruckModeOptions(TruckModeOptionsT &&value)
const CalculateRouteTruckModeOptions & GetTruckModeOptions() const
AWS_LOCATIONSERVICE_API Aws::String SerializePayload() const override
bool DeparturePositionsHasBeenSet() const
CalculateRouteMatrixRequest & AddDestinationPositions(DestinationPositionsT &&value)
void SetKey(KeyT &&value)
bool DistanceUnitHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector