AWS SDK for C++

AWS SDK for C++ Version 1.11.771

Loading...
Searching...
No Matches
RouteMatrixTruckOptions.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/geo-routes/GeoRoutes_EXPORTS.h>
10#include <aws/geo-routes/model/RouteMatrixHazardousCargoType.h>
11#include <aws/geo-routes/model/RouteMatrixTrailerOptions.h>
12#include <aws/geo-routes/model/RouteMatrixTruckType.h>
13#include <aws/geo-routes/model/RouteMatrixVehicleLicensePlate.h>
14#include <aws/geo-routes/model/WeightPerAxleGroup.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace GeoRoutes {
26namespace Model {
27
35 public:
36 AWS_GEOROUTES_API RouteMatrixTruckOptions() = default;
39 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
40
42
45 inline int GetAxleCount() const { return m_axleCount; }
46 inline bool AxleCountHasBeenSet() const { return m_axleCountHasBeenSet; }
47 inline void SetAxleCount(int value) {
48 m_axleCountHasBeenSet = true;
49 m_axleCount = value;
50 }
52 SetAxleCount(value);
53 return *this;
54 }
56
58
62 inline long long GetGrossWeight() const { return m_grossWeight; }
63 inline bool GrossWeightHasBeenSet() const { return m_grossWeightHasBeenSet; }
64 inline void SetGrossWeight(long long value) {
65 m_grossWeightHasBeenSet = true;
66 m_grossWeight = value;
67 }
68 inline RouteMatrixTruckOptions& WithGrossWeight(long long value) {
69 SetGrossWeight(value);
70 return *this;
71 }
73
75
78 inline const Aws::Vector<RouteMatrixHazardousCargoType>& GetHazardousCargos() const { return m_hazardousCargos; }
79 inline bool HazardousCargosHasBeenSet() const { return m_hazardousCargosHasBeenSet; }
80 template <typename HazardousCargosT = Aws::Vector<RouteMatrixHazardousCargoType>>
81 void SetHazardousCargos(HazardousCargosT&& value) {
82 m_hazardousCargosHasBeenSet = true;
83 m_hazardousCargos = std::forward<HazardousCargosT>(value);
84 }
85 template <typename HazardousCargosT = Aws::Vector<RouteMatrixHazardousCargoType>>
86 RouteMatrixTruckOptions& WithHazardousCargos(HazardousCargosT&& value) {
87 SetHazardousCargos(std::forward<HazardousCargosT>(value));
88 return *this;
89 }
91 m_hazardousCargosHasBeenSet = true;
92 m_hazardousCargos.push_back(value);
93 return *this;
94 }
96
98
101 inline long long GetHeight() const { return m_height; }
102 inline bool HeightHasBeenSet() const { return m_heightHasBeenSet; }
103 inline void SetHeight(long long value) {
104 m_heightHasBeenSet = true;
105 m_height = value;
106 }
107 inline RouteMatrixTruckOptions& WithHeight(long long value) {
108 SetHeight(value);
109 return *this;
110 }
112
114
118 inline long long GetKpraLength() const { return m_kpraLength; }
119 inline bool KpraLengthHasBeenSet() const { return m_kpraLengthHasBeenSet; }
120 inline void SetKpraLength(long long value) {
121 m_kpraLengthHasBeenSet = true;
122 m_kpraLength = value;
123 }
124 inline RouteMatrixTruckOptions& WithKpraLength(long long value) {
125 SetKpraLength(value);
126 return *this;
127 }
129
131
134 inline long long GetLength() const { return m_length; }
135 inline bool LengthHasBeenSet() const { return m_lengthHasBeenSet; }
136 inline void SetLength(long long value) {
137 m_lengthHasBeenSet = true;
138 m_length = value;
139 }
140 inline RouteMatrixTruckOptions& WithLength(long long value) {
141 SetLength(value);
142 return *this;
143 }
145
147
150 inline const RouteMatrixVehicleLicensePlate& GetLicensePlate() const { return m_licensePlate; }
151 inline bool LicensePlateHasBeenSet() const { return m_licensePlateHasBeenSet; }
152 template <typename LicensePlateT = RouteMatrixVehicleLicensePlate>
153 void SetLicensePlate(LicensePlateT&& value) {
154 m_licensePlateHasBeenSet = true;
155 m_licensePlate = std::forward<LicensePlateT>(value);
156 }
157 template <typename LicensePlateT = RouteMatrixVehicleLicensePlate>
159 SetLicensePlate(std::forward<LicensePlateT>(value));
160 return *this;
161 }
163
165
168 inline double GetMaxSpeed() const { return m_maxSpeed; }
169 inline bool MaxSpeedHasBeenSet() const { return m_maxSpeedHasBeenSet; }
170 inline void SetMaxSpeed(double value) {
171 m_maxSpeedHasBeenSet = true;
172 m_maxSpeed = value;
173 }
174 inline RouteMatrixTruckOptions& WithMaxSpeed(double value) {
175 SetMaxSpeed(value);
176 return *this;
177 }
179
181
185 inline int GetOccupancy() const { return m_occupancy; }
186 inline bool OccupancyHasBeenSet() const { return m_occupancyHasBeenSet; }
187 inline void SetOccupancy(int value) {
188 m_occupancyHasBeenSet = true;
189 m_occupancy = value;
190 }
192 SetOccupancy(value);
193 return *this;
194 }
196
198
202 inline long long GetPayloadCapacity() const { return m_payloadCapacity; }
203 inline bool PayloadCapacityHasBeenSet() const { return m_payloadCapacityHasBeenSet; }
204 inline void SetPayloadCapacity(long long value) {
205 m_payloadCapacityHasBeenSet = true;
206 m_payloadCapacity = value;
207 }
209 SetPayloadCapacity(value);
210 return *this;
211 }
213
215
218 inline const RouteMatrixTrailerOptions& GetTrailer() const { return m_trailer; }
219 inline bool TrailerHasBeenSet() const { return m_trailerHasBeenSet; }
220 template <typename TrailerT = RouteMatrixTrailerOptions>
221 void SetTrailer(TrailerT&& value) {
222 m_trailerHasBeenSet = true;
223 m_trailer = std::forward<TrailerT>(value);
224 }
225 template <typename TrailerT = RouteMatrixTrailerOptions>
227 SetTrailer(std::forward<TrailerT>(value));
228 return *this;
229 }
231
233
236 inline RouteMatrixTruckType GetTruckType() const { return m_truckType; }
237 inline bool TruckTypeHasBeenSet() const { return m_truckTypeHasBeenSet; }
239 m_truckTypeHasBeenSet = true;
240 m_truckType = value;
241 }
243 SetTruckType(value);
244 return *this;
245 }
247
249
263 inline const Aws::String& GetTunnelRestrictionCode() const { return m_tunnelRestrictionCode; }
264 inline bool TunnelRestrictionCodeHasBeenSet() const { return m_tunnelRestrictionCodeHasBeenSet; }
265 template <typename TunnelRestrictionCodeT = Aws::String>
266 void SetTunnelRestrictionCode(TunnelRestrictionCodeT&& value) {
267 m_tunnelRestrictionCodeHasBeenSet = true;
268 m_tunnelRestrictionCode = std::forward<TunnelRestrictionCodeT>(value);
269 }
270 template <typename TunnelRestrictionCodeT = Aws::String>
271 RouteMatrixTruckOptions& WithTunnelRestrictionCode(TunnelRestrictionCodeT&& value) {
272 SetTunnelRestrictionCode(std::forward<TunnelRestrictionCodeT>(value));
273 return *this;
274 }
276
278
283 inline long long GetWeightPerAxle() const { return m_weightPerAxle; }
284 inline bool WeightPerAxleHasBeenSet() const { return m_weightPerAxleHasBeenSet; }
285 inline void SetWeightPerAxle(long long value) {
286 m_weightPerAxleHasBeenSet = true;
287 m_weightPerAxle = value;
288 }
290 SetWeightPerAxle(value);
291 return *this;
292 }
294
296
300 inline const WeightPerAxleGroup& GetWeightPerAxleGroup() const { return m_weightPerAxleGroup; }
301 inline bool WeightPerAxleGroupHasBeenSet() const { return m_weightPerAxleGroupHasBeenSet; }
302 template <typename WeightPerAxleGroupT = WeightPerAxleGroup>
303 void SetWeightPerAxleGroup(WeightPerAxleGroupT&& value) {
304 m_weightPerAxleGroupHasBeenSet = true;
305 m_weightPerAxleGroup = std::forward<WeightPerAxleGroupT>(value);
306 }
307 template <typename WeightPerAxleGroupT = WeightPerAxleGroup>
308 RouteMatrixTruckOptions& WithWeightPerAxleGroup(WeightPerAxleGroupT&& value) {
309 SetWeightPerAxleGroup(std::forward<WeightPerAxleGroupT>(value));
310 return *this;
311 }
313
315
318 inline long long GetWidth() const { return m_width; }
319 inline bool WidthHasBeenSet() const { return m_widthHasBeenSet; }
320 inline void SetWidth(long long value) {
321 m_widthHasBeenSet = true;
322 m_width = value;
323 }
324 inline RouteMatrixTruckOptions& WithWidth(long long value) {
325 SetWidth(value);
326 return *this;
327 }
329 private:
330 int m_axleCount{0};
331
332 long long m_grossWeight{0};
333
335
336 long long m_height{0};
337
338 long long m_kpraLength{0};
339
340 long long m_length{0};
341
342 RouteMatrixVehicleLicensePlate m_licensePlate;
343
344 double m_maxSpeed{0.0};
345
346 int m_occupancy{0};
347
348 long long m_payloadCapacity{0};
349
350 RouteMatrixTrailerOptions m_trailer;
351
353
354 Aws::String m_tunnelRestrictionCode;
355
356 long long m_weightPerAxle{0};
357
358 WeightPerAxleGroup m_weightPerAxleGroup;
359
360 long long m_width{0};
361 bool m_axleCountHasBeenSet = false;
362 bool m_grossWeightHasBeenSet = false;
363 bool m_hazardousCargosHasBeenSet = false;
364 bool m_heightHasBeenSet = false;
365 bool m_kpraLengthHasBeenSet = false;
366 bool m_lengthHasBeenSet = false;
367 bool m_licensePlateHasBeenSet = false;
368 bool m_maxSpeedHasBeenSet = false;
369 bool m_occupancyHasBeenSet = false;
370 bool m_payloadCapacityHasBeenSet = false;
371 bool m_trailerHasBeenSet = false;
372 bool m_truckTypeHasBeenSet = false;
373 bool m_tunnelRestrictionCodeHasBeenSet = false;
374 bool m_weightPerAxleHasBeenSet = false;
375 bool m_weightPerAxleGroupHasBeenSet = false;
376 bool m_widthHasBeenSet = false;
377};
378
379} // namespace Model
380} // namespace GeoRoutes
381} // namespace Aws
RouteMatrixTruckOptions & WithLength(long long value)
RouteMatrixTruckOptions & WithWeightPerAxle(long long value)
RouteMatrixTruckOptions & WithWeightPerAxleGroup(WeightPerAxleGroupT &&value)
const Aws::Vector< RouteMatrixHazardousCargoType > & GetHazardousCargos() const
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
RouteMatrixTruckOptions & WithOccupancy(int value)
const WeightPerAxleGroup & GetWeightPerAxleGroup() const
RouteMatrixTruckOptions & WithHazardousCargos(HazardousCargosT &&value)
RouteMatrixTruckOptions & WithKpraLength(long long value)
AWS_GEOROUTES_API RouteMatrixTruckOptions(Aws::Utils::Json::JsonView jsonValue)
AWS_GEOROUTES_API RouteMatrixTruckOptions & operator=(Aws::Utils::Json::JsonView jsonValue)
const RouteMatrixVehicleLicensePlate & GetLicensePlate() const
RouteMatrixTruckOptions & WithTrailer(TrailerT &&value)
void SetTunnelRestrictionCode(TunnelRestrictionCodeT &&value)
const RouteMatrixTrailerOptions & GetTrailer() const
RouteMatrixTruckOptions & WithAxleCount(int value)
RouteMatrixTruckOptions & WithLicensePlate(LicensePlateT &&value)
RouteMatrixTruckOptions & WithGrossWeight(long long value)
RouteMatrixTruckOptions & WithPayloadCapacity(long long value)
RouteMatrixTruckOptions & WithMaxSpeed(double value)
RouteMatrixTruckOptions & WithTunnelRestrictionCode(TunnelRestrictionCodeT &&value)
void SetWeightPerAxleGroup(WeightPerAxleGroupT &&value)
RouteMatrixTruckOptions & AddHazardousCargos(RouteMatrixHazardousCargoType value)
AWS_GEOROUTES_API RouteMatrixTruckOptions()=default
RouteMatrixTruckOptions & WithTruckType(RouteMatrixTruckType value)
RouteMatrixTruckOptions & WithWidth(long long value)
RouteMatrixTruckOptions & WithHeight(long long value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue