AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
CalculateRouteMatrixRequest.h
1
6#pragma once
7#include <aws/location/LocationService_EXPORTS.h>
8#include <aws/location/LocationServiceRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/location/model/TravelMode.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/location/model/DistanceUnit.h>
14#include <aws/location/model/CalculateRouteCarModeOptions.h>
15#include <aws/location/model/CalculateRouteTruckModeOptions.h>
16#include <utility>
17
18namespace Aws
19{
20namespace Http
21{
22 class URI;
23} //namespace Http
24namespace LocationService
25{
26namespace Model
27{
28
32 {
33 public:
34 AWS_LOCATIONSERVICE_API CalculateRouteMatrixRequest() = default;
35
36 // Service request name is the Operation name which will send this request out,
37 // each operation should has unique request name, so that we can get operation's name from this request.
38 // Note: this is not true for response, multiple operations may have the same response name,
39 // so we can not get operation's name from response.
40 inline virtual const char* GetServiceRequestName() const override { return "CalculateRouteMatrix"; }
41
42 AWS_LOCATIONSERVICE_API Aws::String SerializePayload() const override;
43
44 AWS_LOCATIONSERVICE_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
45
46
48
52 inline const Aws::String& GetCalculatorName() const { return m_calculatorName; }
53 inline bool CalculatorNameHasBeenSet() const { return m_calculatorNameHasBeenSet; }
54 template<typename CalculatorNameT = Aws::String>
55 void SetCalculatorName(CalculatorNameT&& value) { m_calculatorNameHasBeenSet = true; m_calculatorName = std::forward<CalculatorNameT>(value); }
56 template<typename CalculatorNameT = Aws::String>
57 CalculateRouteMatrixRequest& WithCalculatorName(CalculatorNameT&& value) { SetCalculatorName(std::forward<CalculatorNameT>(value)); return *this;}
59
61
79 inline const Aws::Vector<Aws::Vector<double>>& GetDeparturePositions() const { return m_departurePositions; }
80 inline bool DeparturePositionsHasBeenSet() const { return m_departurePositionsHasBeenSet; }
81 template<typename DeparturePositionsT = Aws::Vector<Aws::Vector<double>>>
82 void SetDeparturePositions(DeparturePositionsT&& value) { m_departurePositionsHasBeenSet = true; m_departurePositions = std::forward<DeparturePositionsT>(value); }
83 template<typename DeparturePositionsT = Aws::Vector<Aws::Vector<double>>>
84 CalculateRouteMatrixRequest& WithDeparturePositions(DeparturePositionsT&& value) { SetDeparturePositions(std::forward<DeparturePositionsT>(value)); return *this;}
85 template<typename DeparturePositionsT = Aws::Vector<double>>
86 CalculateRouteMatrixRequest& AddDeparturePositions(DeparturePositionsT&& value) { m_departurePositionsHasBeenSet = true; m_departurePositions.emplace_back(std::forward<DeparturePositionsT>(value)); return *this; }
88
90
108 inline const Aws::Vector<Aws::Vector<double>>& GetDestinationPositions() const { return m_destinationPositions; }
109 inline bool DestinationPositionsHasBeenSet() const { return m_destinationPositionsHasBeenSet; }
110 template<typename DestinationPositionsT = Aws::Vector<Aws::Vector<double>>>
111 void SetDestinationPositions(DestinationPositionsT&& value) { m_destinationPositionsHasBeenSet = true; m_destinationPositions = std::forward<DestinationPositionsT>(value); }
112 template<typename DestinationPositionsT = Aws::Vector<Aws::Vector<double>>>
113 CalculateRouteMatrixRequest& WithDestinationPositions(DestinationPositionsT&& value) { SetDestinationPositions(std::forward<DestinationPositionsT>(value)); return *this;}
114 template<typename DestinationPositionsT = Aws::Vector<double>>
115 CalculateRouteMatrixRequest& AddDestinationPositions(DestinationPositionsT&& value) { m_destinationPositionsHasBeenSet = true; m_destinationPositions.emplace_back(std::forward<DestinationPositionsT>(value)); return *this; }
117
119
134 inline TravelMode GetTravelMode() const { return m_travelMode; }
135 inline bool TravelModeHasBeenSet() const { return m_travelModeHasBeenSet; }
136 inline void SetTravelMode(TravelMode value) { m_travelModeHasBeenSet = true; m_travelMode = value; }
139
141
152 inline const Aws::Utils::DateTime& GetDepartureTime() const { return m_departureTime; }
153 inline bool DepartureTimeHasBeenSet() const { return m_departureTimeHasBeenSet; }
154 template<typename DepartureTimeT = Aws::Utils::DateTime>
155 void SetDepartureTime(DepartureTimeT&& value) { m_departureTimeHasBeenSet = true; m_departureTime = std::forward<DepartureTimeT>(value); }
156 template<typename DepartureTimeT = Aws::Utils::DateTime>
157 CalculateRouteMatrixRequest& WithDepartureTime(DepartureTimeT&& value) { SetDepartureTime(std::forward<DepartureTimeT>(value)); return *this;}
159
161
169 inline bool GetDepartNow() const { return m_departNow; }
170 inline bool DepartNowHasBeenSet() const { return m_departNowHasBeenSet; }
171 inline void SetDepartNow(bool value) { m_departNowHasBeenSet = true; m_departNow = value; }
172 inline CalculateRouteMatrixRequest& WithDepartNow(bool value) { SetDepartNow(value); return *this;}
174
176
180 inline DistanceUnit GetDistanceUnit() const { return m_distanceUnit; }
181 inline bool DistanceUnitHasBeenSet() const { return m_distanceUnitHasBeenSet; }
182 inline void SetDistanceUnit(DistanceUnit value) { m_distanceUnitHasBeenSet = true; m_distanceUnit = value; }
185
187
192 inline const CalculateRouteCarModeOptions& GetCarModeOptions() const { return m_carModeOptions; }
193 inline bool CarModeOptionsHasBeenSet() const { return m_carModeOptionsHasBeenSet; }
194 template<typename CarModeOptionsT = CalculateRouteCarModeOptions>
195 void SetCarModeOptions(CarModeOptionsT&& value) { m_carModeOptionsHasBeenSet = true; m_carModeOptions = std::forward<CarModeOptionsT>(value); }
196 template<typename CarModeOptionsT = CalculateRouteCarModeOptions>
197 CalculateRouteMatrixRequest& WithCarModeOptions(CarModeOptionsT&& value) { SetCarModeOptions(std::forward<CarModeOptionsT>(value)); return *this;}
199
201
207 inline const CalculateRouteTruckModeOptions& GetTruckModeOptions() const { return m_truckModeOptions; }
208 inline bool TruckModeOptionsHasBeenSet() const { return m_truckModeOptionsHasBeenSet; }
209 template<typename TruckModeOptionsT = CalculateRouteTruckModeOptions>
210 void SetTruckModeOptions(TruckModeOptionsT&& value) { m_truckModeOptionsHasBeenSet = true; m_truckModeOptions = std::forward<TruckModeOptionsT>(value); }
211 template<typename TruckModeOptionsT = CalculateRouteTruckModeOptions>
212 CalculateRouteMatrixRequest& WithTruckModeOptions(TruckModeOptionsT&& value) { SetTruckModeOptions(std::forward<TruckModeOptionsT>(value)); return *this;}
214
216
221 inline const Aws::String& GetKey() const { return m_key; }
222 inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
223 template<typename KeyT = Aws::String>
224 void SetKey(KeyT&& value) { m_keyHasBeenSet = true; m_key = std::forward<KeyT>(value); }
225 template<typename KeyT = Aws::String>
226 CalculateRouteMatrixRequest& WithKey(KeyT&& value) { SetKey(std::forward<KeyT>(value)); return *this;}
228 private:
229
230 Aws::String m_calculatorName;
231 bool m_calculatorNameHasBeenSet = false;
232
233 Aws::Vector<Aws::Vector<double>> m_departurePositions;
234 bool m_departurePositionsHasBeenSet = false;
235
236 Aws::Vector<Aws::Vector<double>> m_destinationPositions;
237 bool m_destinationPositionsHasBeenSet = false;
238
239 TravelMode m_travelMode{TravelMode::NOT_SET};
240 bool m_travelModeHasBeenSet = false;
241
242 Aws::Utils::DateTime m_departureTime{};
243 bool m_departureTimeHasBeenSet = false;
244
245 bool m_departNow{false};
246 bool m_departNowHasBeenSet = false;
247
248 DistanceUnit m_distanceUnit{DistanceUnit::NOT_SET};
249 bool m_distanceUnitHasBeenSet = false;
250
251 CalculateRouteCarModeOptions m_carModeOptions;
252 bool m_carModeOptionsHasBeenSet = false;
253
254 CalculateRouteTruckModeOptions m_truckModeOptions;
255 bool m_truckModeOptionsHasBeenSet = false;
256
257 Aws::String m_key;
258 bool m_keyHasBeenSet = false;
259 };
260
261} // namespace Model
262} // namespace LocationService
263} // namespace Aws
CalculateRouteMatrixRequest & WithDepartureTime(DepartureTimeT &&value)
const Aws::Vector< Aws::Vector< double > > & GetDeparturePositions() const
const Aws::Vector< Aws::Vector< double > > & GetDestinationPositions() const
CalculateRouteMatrixRequest & WithTruckModeOptions(TruckModeOptionsT &&value)
CalculateRouteMatrixRequest & WithTravelMode(TravelMode value)
CalculateRouteMatrixRequest & AddDeparturePositions(DeparturePositionsT &&value)
AWS_LOCATIONSERVICE_API CalculateRouteMatrixRequest()=default
AWS_LOCATIONSERVICE_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
const CalculateRouteCarModeOptions & GetCarModeOptions() const
CalculateRouteMatrixRequest & WithDistanceUnit(DistanceUnit value)
CalculateRouteMatrixRequest & WithCarModeOptions(CarModeOptionsT &&value)
CalculateRouteMatrixRequest & WithDeparturePositions(DeparturePositionsT &&value)
CalculateRouteMatrixRequest & WithDestinationPositions(DestinationPositionsT &&value)
CalculateRouteMatrixRequest & WithCalculatorName(CalculatorNameT &&value)
const CalculateRouteTruckModeOptions & GetTruckModeOptions() const
AWS_LOCATIONSERVICE_API Aws::String SerializePayload() const override
CalculateRouteMatrixRequest & AddDestinationPositions(DestinationPositionsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector