AWS SDK for C++

AWS SDK for C++ Version 1.11.788

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
238 inline RouteMatrixTruckType GetTruckType() const { return m_truckType; }
239 inline bool TruckTypeHasBeenSet() const { return m_truckTypeHasBeenSet; }
241 m_truckTypeHasBeenSet = true;
242 m_truckType = value;
243 }
245 SetTruckType(value);
246 return *this;
247 }
249
251
265 inline const Aws::String& GetTunnelRestrictionCode() const { return m_tunnelRestrictionCode; }
266 inline bool TunnelRestrictionCodeHasBeenSet() const { return m_tunnelRestrictionCodeHasBeenSet; }
267 template <typename TunnelRestrictionCodeT = Aws::String>
268 void SetTunnelRestrictionCode(TunnelRestrictionCodeT&& value) {
269 m_tunnelRestrictionCodeHasBeenSet = true;
270 m_tunnelRestrictionCode = std::forward<TunnelRestrictionCodeT>(value);
271 }
272 template <typename TunnelRestrictionCodeT = Aws::String>
273 RouteMatrixTruckOptions& WithTunnelRestrictionCode(TunnelRestrictionCodeT&& value) {
274 SetTunnelRestrictionCode(std::forward<TunnelRestrictionCodeT>(value));
275 return *this;
276 }
278
280
285 inline long long GetWeightPerAxle() const { return m_weightPerAxle; }
286 inline bool WeightPerAxleHasBeenSet() const { return m_weightPerAxleHasBeenSet; }
287 inline void SetWeightPerAxle(long long value) {
288 m_weightPerAxleHasBeenSet = true;
289 m_weightPerAxle = value;
290 }
292 SetWeightPerAxle(value);
293 return *this;
294 }
296
298
302 inline const WeightPerAxleGroup& GetWeightPerAxleGroup() const { return m_weightPerAxleGroup; }
303 inline bool WeightPerAxleGroupHasBeenSet() const { return m_weightPerAxleGroupHasBeenSet; }
304 template <typename WeightPerAxleGroupT = WeightPerAxleGroup>
305 void SetWeightPerAxleGroup(WeightPerAxleGroupT&& value) {
306 m_weightPerAxleGroupHasBeenSet = true;
307 m_weightPerAxleGroup = std::forward<WeightPerAxleGroupT>(value);
308 }
309 template <typename WeightPerAxleGroupT = WeightPerAxleGroup>
310 RouteMatrixTruckOptions& WithWeightPerAxleGroup(WeightPerAxleGroupT&& value) {
311 SetWeightPerAxleGroup(std::forward<WeightPerAxleGroupT>(value));
312 return *this;
313 }
315
317
320 inline long long GetWidth() const { return m_width; }
321 inline bool WidthHasBeenSet() const { return m_widthHasBeenSet; }
322 inline void SetWidth(long long value) {
323 m_widthHasBeenSet = true;
324 m_width = value;
325 }
326 inline RouteMatrixTruckOptions& WithWidth(long long value) {
327 SetWidth(value);
328 return *this;
329 }
331 private:
332 int m_axleCount{0};
333
334 long long m_grossWeight{0};
335
337
338 long long m_height{0};
339
340 long long m_kpraLength{0};
341
342 long long m_length{0};
343
344 RouteMatrixVehicleLicensePlate m_licensePlate;
345
346 double m_maxSpeed{0.0};
347
348 int m_occupancy{0};
349
350 long long m_payloadCapacity{0};
351
352 RouteMatrixTrailerOptions m_trailer;
353
355
356 Aws::String m_tunnelRestrictionCode;
357
358 long long m_weightPerAxle{0};
359
360 WeightPerAxleGroup m_weightPerAxleGroup;
361
362 long long m_width{0};
363 bool m_axleCountHasBeenSet = false;
364 bool m_grossWeightHasBeenSet = false;
365 bool m_hazardousCargosHasBeenSet = false;
366 bool m_heightHasBeenSet = false;
367 bool m_kpraLengthHasBeenSet = false;
368 bool m_lengthHasBeenSet = false;
369 bool m_licensePlateHasBeenSet = false;
370 bool m_maxSpeedHasBeenSet = false;
371 bool m_occupancyHasBeenSet = false;
372 bool m_payloadCapacityHasBeenSet = false;
373 bool m_trailerHasBeenSet = false;
374 bool m_truckTypeHasBeenSet = false;
375 bool m_tunnelRestrictionCodeHasBeenSet = false;
376 bool m_weightPerAxleHasBeenSet = false;
377 bool m_weightPerAxleGroupHasBeenSet = false;
378 bool m_widthHasBeenSet = false;
379};
380
381} // namespace Model
382} // namespace GeoRoutes
383} // 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