AWS SDK for C++

AWS SDK for C++ Version 1.11.784

Loading...
Searching...
No Matches
RouteTruckOptions.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/RouteEngineType.h>
11#include <aws/geo-routes/model/RouteHazardousCargoType.h>
12#include <aws/geo-routes/model/RouteTrailerOptions.h>
13#include <aws/geo-routes/model/RouteTruckType.h>
14#include <aws/geo-routes/model/RouteVehicleLicensePlate.h>
15#include <aws/geo-routes/model/WeightPerAxleGroup.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Json {
22class JsonValue;
23class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace GeoRoutes {
27namespace Model {
28
39 public:
40 AWS_GEOROUTES_API RouteTruckOptions() = default;
41 AWS_GEOROUTES_API RouteTruckOptions(Aws::Utils::Json::JsonView jsonValue);
43 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
44
46
49 inline int GetAxleCount() const { return m_axleCount; }
50 inline bool AxleCountHasBeenSet() const { return m_axleCountHasBeenSet; }
51 inline void SetAxleCount(int value) {
52 m_axleCountHasBeenSet = true;
53 m_axleCount = value;
54 }
55 inline RouteTruckOptions& WithAxleCount(int value) {
56 SetAxleCount(value);
57 return *this;
58 }
60
62
65 inline RouteEngineType GetEngineType() const { return m_engineType; }
66 inline bool EngineTypeHasBeenSet() const { return m_engineTypeHasBeenSet; }
67 inline void SetEngineType(RouteEngineType value) {
68 m_engineTypeHasBeenSet = true;
69 m_engineType = value;
70 }
72 SetEngineType(value);
73 return *this;
74 }
76
78
82 inline long long GetGrossWeight() const { return m_grossWeight; }
83 inline bool GrossWeightHasBeenSet() const { return m_grossWeightHasBeenSet; }
84 inline void SetGrossWeight(long long value) {
85 m_grossWeightHasBeenSet = true;
86 m_grossWeight = value;
87 }
88 inline RouteTruckOptions& WithGrossWeight(long long value) {
89 SetGrossWeight(value);
90 return *this;
91 }
93
95
98 inline const Aws::Vector<RouteHazardousCargoType>& GetHazardousCargos() const { return m_hazardousCargos; }
99 inline bool HazardousCargosHasBeenSet() const { return m_hazardousCargosHasBeenSet; }
100 template <typename HazardousCargosT = Aws::Vector<RouteHazardousCargoType>>
101 void SetHazardousCargos(HazardousCargosT&& value) {
102 m_hazardousCargosHasBeenSet = true;
103 m_hazardousCargos = std::forward<HazardousCargosT>(value);
104 }
105 template <typename HazardousCargosT = Aws::Vector<RouteHazardousCargoType>>
106 RouteTruckOptions& WithHazardousCargos(HazardousCargosT&& value) {
107 SetHazardousCargos(std::forward<HazardousCargosT>(value));
108 return *this;
109 }
111 m_hazardousCargosHasBeenSet = true;
112 m_hazardousCargos.push_back(value);
113 return *this;
114 }
116
118
121 inline long long GetHeight() const { return m_height; }
122 inline bool HeightHasBeenSet() const { return m_heightHasBeenSet; }
123 inline void SetHeight(long long value) {
124 m_heightHasBeenSet = true;
125 m_height = value;
126 }
127 inline RouteTruckOptions& WithHeight(long long value) {
128 SetHeight(value);
129 return *this;
130 }
132
134
138 inline long long GetHeightAboveFirstAxle() const { return m_heightAboveFirstAxle; }
139 inline bool HeightAboveFirstAxleHasBeenSet() const { return m_heightAboveFirstAxleHasBeenSet; }
140 inline void SetHeightAboveFirstAxle(long long value) {
141 m_heightAboveFirstAxleHasBeenSet = true;
142 m_heightAboveFirstAxle = value;
143 }
146 return *this;
147 }
149
151
155 inline long long GetKpraLength() const { return m_kpraLength; }
156 inline bool KpraLengthHasBeenSet() const { return m_kpraLengthHasBeenSet; }
157 inline void SetKpraLength(long long value) {
158 m_kpraLengthHasBeenSet = true;
159 m_kpraLength = value;
160 }
161 inline RouteTruckOptions& WithKpraLength(long long value) {
162 SetKpraLength(value);
163 return *this;
164 }
166
168
171 inline long long GetLength() const { return m_length; }
172 inline bool LengthHasBeenSet() const { return m_lengthHasBeenSet; }
173 inline void SetLength(long long value) {
174 m_lengthHasBeenSet = true;
175 m_length = value;
176 }
177 inline RouteTruckOptions& WithLength(long long value) {
178 SetLength(value);
179 return *this;
180 }
182
184
187 inline const RouteVehicleLicensePlate& GetLicensePlate() const { return m_licensePlate; }
188 inline bool LicensePlateHasBeenSet() const { return m_licensePlateHasBeenSet; }
189 template <typename LicensePlateT = RouteVehicleLicensePlate>
190 void SetLicensePlate(LicensePlateT&& value) {
191 m_licensePlateHasBeenSet = true;
192 m_licensePlate = std::forward<LicensePlateT>(value);
193 }
194 template <typename LicensePlateT = RouteVehicleLicensePlate>
195 RouteTruckOptions& WithLicensePlate(LicensePlateT&& value) {
196 SetLicensePlate(std::forward<LicensePlateT>(value));
197 return *this;
198 }
200
202
205 inline double GetMaxSpeed() const { return m_maxSpeed; }
206 inline bool MaxSpeedHasBeenSet() const { return m_maxSpeedHasBeenSet; }
207 inline void SetMaxSpeed(double value) {
208 m_maxSpeedHasBeenSet = true;
209 m_maxSpeed = value;
210 }
211 inline RouteTruckOptions& WithMaxSpeed(double value) {
212 SetMaxSpeed(value);
213 return *this;
214 }
216
218
222 inline int GetOccupancy() const { return m_occupancy; }
223 inline bool OccupancyHasBeenSet() const { return m_occupancyHasBeenSet; }
224 inline void SetOccupancy(int value) {
225 m_occupancyHasBeenSet = true;
226 m_occupancy = value;
227 }
228 inline RouteTruckOptions& WithOccupancy(int value) {
229 SetOccupancy(value);
230 return *this;
231 }
233
235
239 inline long long GetPayloadCapacity() const { return m_payloadCapacity; }
240 inline bool PayloadCapacityHasBeenSet() const { return m_payloadCapacityHasBeenSet; }
241 inline void SetPayloadCapacity(long long value) {
242 m_payloadCapacityHasBeenSet = true;
243 m_payloadCapacity = value;
244 }
245 inline RouteTruckOptions& WithPayloadCapacity(long long value) {
246 SetPayloadCapacity(value);
247 return *this;
248 }
250
252
255 inline int GetTireCount() const { return m_tireCount; }
256 inline bool TireCountHasBeenSet() const { return m_tireCountHasBeenSet; }
257 inline void SetTireCount(int value) {
258 m_tireCountHasBeenSet = true;
259 m_tireCount = value;
260 }
261 inline RouteTruckOptions& WithTireCount(int value) {
262 SetTireCount(value);
263 return *this;
264 }
266
268
271 inline const RouteTrailerOptions& GetTrailer() const { return m_trailer; }
272 inline bool TrailerHasBeenSet() const { return m_trailerHasBeenSet; }
273 template <typename TrailerT = RouteTrailerOptions>
274 void SetTrailer(TrailerT&& value) {
275 m_trailerHasBeenSet = true;
276 m_trailer = std::forward<TrailerT>(value);
277 }
278 template <typename TrailerT = RouteTrailerOptions>
279 RouteTruckOptions& WithTrailer(TrailerT&& value) {
280 SetTrailer(std::forward<TrailerT>(value));
281 return *this;
282 }
284
286
291 inline RouteTruckType GetTruckType() const { return m_truckType; }
292 inline bool TruckTypeHasBeenSet() const { return m_truckTypeHasBeenSet; }
293 inline void SetTruckType(RouteTruckType value) {
294 m_truckTypeHasBeenSet = true;
295 m_truckType = value;
296 }
298 SetTruckType(value);
299 return *this;
300 }
302
304
318 inline const Aws::String& GetTunnelRestrictionCode() const { return m_tunnelRestrictionCode; }
319 inline bool TunnelRestrictionCodeHasBeenSet() const { return m_tunnelRestrictionCodeHasBeenSet; }
320 template <typename TunnelRestrictionCodeT = Aws::String>
321 void SetTunnelRestrictionCode(TunnelRestrictionCodeT&& value) {
322 m_tunnelRestrictionCodeHasBeenSet = true;
323 m_tunnelRestrictionCode = std::forward<TunnelRestrictionCodeT>(value);
324 }
325 template <typename TunnelRestrictionCodeT = Aws::String>
326 RouteTruckOptions& WithTunnelRestrictionCode(TunnelRestrictionCodeT&& value) {
327 SetTunnelRestrictionCode(std::forward<TunnelRestrictionCodeT>(value));
328 return *this;
329 }
331
333
338 inline long long GetWeightPerAxle() const { return m_weightPerAxle; }
339 inline bool WeightPerAxleHasBeenSet() const { return m_weightPerAxleHasBeenSet; }
340 inline void SetWeightPerAxle(long long value) {
341 m_weightPerAxleHasBeenSet = true;
342 m_weightPerAxle = value;
343 }
344 inline RouteTruckOptions& WithWeightPerAxle(long long value) {
345 SetWeightPerAxle(value);
346 return *this;
347 }
349
351
356 inline const WeightPerAxleGroup& GetWeightPerAxleGroup() const { return m_weightPerAxleGroup; }
357 inline bool WeightPerAxleGroupHasBeenSet() const { return m_weightPerAxleGroupHasBeenSet; }
358 template <typename WeightPerAxleGroupT = WeightPerAxleGroup>
359 void SetWeightPerAxleGroup(WeightPerAxleGroupT&& value) {
360 m_weightPerAxleGroupHasBeenSet = true;
361 m_weightPerAxleGroup = std::forward<WeightPerAxleGroupT>(value);
362 }
363 template <typename WeightPerAxleGroupT = WeightPerAxleGroup>
364 RouteTruckOptions& WithWeightPerAxleGroup(WeightPerAxleGroupT&& value) {
365 SetWeightPerAxleGroup(std::forward<WeightPerAxleGroupT>(value));
366 return *this;
367 }
369
371
374 inline long long GetWidth() const { return m_width; }
375 inline bool WidthHasBeenSet() const { return m_widthHasBeenSet; }
376 inline void SetWidth(long long value) {
377 m_widthHasBeenSet = true;
378 m_width = value;
379 }
380 inline RouteTruckOptions& WithWidth(long long value) {
381 SetWidth(value);
382 return *this;
383 }
385 private:
386 int m_axleCount{0};
387
389
390 long long m_grossWeight{0};
391
392 Aws::Vector<RouteHazardousCargoType> m_hazardousCargos;
393
394 long long m_height{0};
395
396 long long m_heightAboveFirstAxle{0};
397
398 long long m_kpraLength{0};
399
400 long long m_length{0};
401
402 RouteVehicleLicensePlate m_licensePlate;
403
404 double m_maxSpeed{0.0};
405
406 int m_occupancy{0};
407
408 long long m_payloadCapacity{0};
409
410 int m_tireCount{0};
411
412 RouteTrailerOptions m_trailer;
413
415
416 Aws::String m_tunnelRestrictionCode;
417
418 long long m_weightPerAxle{0};
419
420 WeightPerAxleGroup m_weightPerAxleGroup;
421
422 long long m_width{0};
423 bool m_axleCountHasBeenSet = false;
424 bool m_engineTypeHasBeenSet = false;
425 bool m_grossWeightHasBeenSet = false;
426 bool m_hazardousCargosHasBeenSet = false;
427 bool m_heightHasBeenSet = false;
428 bool m_heightAboveFirstAxleHasBeenSet = false;
429 bool m_kpraLengthHasBeenSet = false;
430 bool m_lengthHasBeenSet = false;
431 bool m_licensePlateHasBeenSet = false;
432 bool m_maxSpeedHasBeenSet = false;
433 bool m_occupancyHasBeenSet = false;
434 bool m_payloadCapacityHasBeenSet = false;
435 bool m_tireCountHasBeenSet = false;
436 bool m_trailerHasBeenSet = false;
437 bool m_truckTypeHasBeenSet = false;
438 bool m_tunnelRestrictionCodeHasBeenSet = false;
439 bool m_weightPerAxleHasBeenSet = false;
440 bool m_weightPerAxleGroupHasBeenSet = false;
441 bool m_widthHasBeenSet = false;
442};
443
444} // namespace Model
445} // namespace GeoRoutes
446} // namespace Aws
RouteTruckOptions & WithGrossWeight(long long value)
void SetHazardousCargos(HazardousCargosT &&value)
RouteTruckOptions & WithMaxSpeed(double value)
RouteTruckOptions & WithWidth(long long value)
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
RouteTruckOptions & WithTrailer(TrailerT &&value)
const WeightPerAxleGroup & GetWeightPerAxleGroup() const
RouteTruckOptions & WithTunnelRestrictionCode(TunnelRestrictionCodeT &&value)
RouteTruckOptions & WithHeight(long long value)
void SetTunnelRestrictionCode(TunnelRestrictionCodeT &&value)
void SetWeightPerAxleGroup(WeightPerAxleGroupT &&value)
RouteTruckOptions & WithAxleCount(int value)
const RouteVehicleLicensePlate & GetLicensePlate() const
RouteTruckOptions & WithTireCount(int value)
void SetEngineType(RouteEngineType value)
RouteTruckOptions & WithEngineType(RouteEngineType value)
const RouteTrailerOptions & GetTrailer() const
RouteTruckOptions & WithHeightAboveFirstAxle(long long value)
RouteTruckOptions & AddHazardousCargos(RouteHazardousCargoType value)
void SetLicensePlate(LicensePlateT &&value)
AWS_GEOROUTES_API RouteTruckOptions(Aws::Utils::Json::JsonView jsonValue)
RouteTruckOptions & WithWeightPerAxle(long long value)
RouteTruckOptions & WithLicensePlate(LicensePlateT &&value)
RouteTruckOptions & WithPayloadCapacity(long long value)
RouteTruckOptions & WithLength(long long value)
RouteTruckOptions & WithTruckType(RouteTruckType value)
RouteTruckOptions & WithHazardousCargos(HazardousCargosT &&value)
RouteTruckOptions & WithWeightPerAxleGroup(WeightPerAxleGroupT &&value)
RouteTruckOptions & WithKpraLength(long long value)
const Aws::String & GetTunnelRestrictionCode() const
RouteTruckOptions & WithOccupancy(int value)
AWS_GEOROUTES_API RouteTruckOptions()=default
AWS_GEOROUTES_API RouteTruckOptions & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< RouteHazardousCargoType > & GetHazardousCargos() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue