7#include <aws/geo-routes/GeoRoutes_EXPORTS.h>
8#include <aws/geo-routes/model/RouteEngineType.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/geo-routes/model/RouteVehicleLicensePlate.h>
11#include <aws/geo-routes/model/RouteTrailerOptions.h>
12#include <aws/geo-routes/model/RouteTruckType.h>
13#include <aws/core/utils/memory/stl/AWSString.h>
14#include <aws/geo-routes/model/WeightPerAxleGroup.h>
15#include <aws/geo-routes/model/RouteHazardousCargoType.h>
54 inline void SetAxleCount(
int value) { m_axleCountHasBeenSet =
true; m_axleCount = value; }
75 inline void SetGrossWeight(
long long value) { m_grossWeightHasBeenSet =
true; m_grossWeight = value; }
85 template<
typename HazardousCargosT = Aws::Vector<RouteHazardousCargoType>>
86 void SetHazardousCargos(HazardousCargosT&& value) { m_hazardousCargosHasBeenSet =
true; m_hazardousCargos = std::forward<HazardousCargosT>(value); }
87 template<
typename HazardousCargosT = Aws::Vector<RouteHazardousCargoType>>
96 inline long long GetHeight()
const {
return m_height; }
98 inline void SetHeight(
long long value) { m_heightHasBeenSet =
true; m_height = value; }
109 inline void SetHeightAboveFirstAxle(
long long value) { m_heightAboveFirstAxleHasBeenSet =
true; m_heightAboveFirstAxle = value; }
120 inline void SetKpraLength(
long long value) { m_kpraLengthHasBeenSet =
true; m_kpraLength = value; }
130 inline void SetLength(
long long value) { m_lengthHasBeenSet =
true; m_length = value; }
140 template<
typename LicensePlateT = RouteVehicleLicensePlate>
141 void SetLicensePlate(LicensePlateT&& value) { m_licensePlateHasBeenSet =
true; m_licensePlate = std::forward<LicensePlateT>(value); }
142 template<
typename LicensePlateT = RouteVehicleLicensePlate>
152 inline void SetMaxSpeed(
double value) { m_maxSpeedHasBeenSet =
true; m_maxSpeed = value; }
163 inline void SetOccupancy(
int value) { m_occupancyHasBeenSet =
true; m_occupancy = value; }
174 inline void SetPayloadCapacity(
long long value) { m_payloadCapacityHasBeenSet =
true; m_payloadCapacity = value; }
184 inline void SetTireCount(
int value) { m_tireCountHasBeenSet =
true; m_tireCount = value; }
194 template<
typename TrailerT = RouteTrailerOptions>
195 void SetTrailer(TrailerT&& value) { m_trailerHasBeenSet =
true; m_trailer = std::forward<TrailerT>(value); }
196 template<
typename TrailerT = RouteTrailerOptions>
227 template<
typename TunnelRestrictionCodeT = Aws::String>
228 void SetTunnelRestrictionCode(TunnelRestrictionCodeT&& value) { m_tunnelRestrictionCodeHasBeenSet =
true; m_tunnelRestrictionCode = std::forward<TunnelRestrictionCodeT>(value); }
229 template<
typename TunnelRestrictionCodeT = Aws::String>
241 inline void SetWeightPerAxle(
long long value) { m_weightPerAxleHasBeenSet =
true; m_weightPerAxle = value; }
253 template<
typename WeightPerAxleGroupT = WeightPerAxleGroup>
254 void SetWeightPerAxleGroup(WeightPerAxleGroupT&& value) { m_weightPerAxleGroupHasBeenSet =
true; m_weightPerAxleGroup = std::forward<WeightPerAxleGroupT>(value); }
255 template<
typename WeightPerAxleGroupT = WeightPerAxleGroup>
263 inline long long GetWidth()
const {
return m_width; }
265 inline void SetWidth(
long long value) { m_widthHasBeenSet =
true; m_width = value; }
271 bool m_axleCountHasBeenSet =
false;
274 bool m_engineTypeHasBeenSet =
false;
276 long long m_grossWeight{0};
277 bool m_grossWeightHasBeenSet =
false;
280 bool m_hazardousCargosHasBeenSet =
false;
282 long long m_height{0};
283 bool m_heightHasBeenSet =
false;
285 long long m_heightAboveFirstAxle{0};
286 bool m_heightAboveFirstAxleHasBeenSet =
false;
288 long long m_kpraLength{0};
289 bool m_kpraLengthHasBeenSet =
false;
291 long long m_length{0};
292 bool m_lengthHasBeenSet =
false;
294 RouteVehicleLicensePlate m_licensePlate;
295 bool m_licensePlateHasBeenSet =
false;
297 double m_maxSpeed{0.0};
298 bool m_maxSpeedHasBeenSet =
false;
301 bool m_occupancyHasBeenSet =
false;
303 long long m_payloadCapacity{0};
304 bool m_payloadCapacityHasBeenSet =
false;
307 bool m_tireCountHasBeenSet =
false;
309 RouteTrailerOptions m_trailer;
310 bool m_trailerHasBeenSet =
false;
313 bool m_truckTypeHasBeenSet =
false;
316 bool m_tunnelRestrictionCodeHasBeenSet =
false;
318 long long m_weightPerAxle{0};
319 bool m_weightPerAxleHasBeenSet =
false;
321 WeightPerAxleGroup m_weightPerAxleGroup;
322 bool m_weightPerAxleGroupHasBeenSet =
false;
324 long long m_width{0};
325 bool m_widthHasBeenSet =
false;
RouteTruckOptions & WithGrossWeight(long long value)
void SetHazardousCargos(HazardousCargosT &&value)
void SetWeightPerAxle(long long value)
bool WidthHasBeenSet() const
RouteTruckOptions & WithMaxSpeed(double value)
long long GetWidth() const
RouteTruckOptions & WithWidth(long long value)
bool LengthHasBeenSet() const
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
void SetHeight(long long value)
bool TrailerHasBeenSet() const
void SetAxleCount(int value)
RouteTruckOptions & WithTrailer(TrailerT &&value)
const WeightPerAxleGroup & GetWeightPerAxleGroup() const
void SetOccupancy(int value)
long long GetWeightPerAxle() const
bool KpraLengthHasBeenSet() 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)
long long GetLength() const
void SetTrailer(TrailerT &&value)
long long GetKpraLength() const
bool WeightPerAxleHasBeenSet() const
bool HazardousCargosHasBeenSet() const
double GetMaxSpeed() const
void SetEngineType(RouteEngineType value)
bool GrossWeightHasBeenSet() const
void SetKpraLength(long long value)
RouteTruckType GetTruckType() const
bool HeightAboveFirstAxleHasBeenSet() const
bool PayloadCapacityHasBeenSet() const
RouteTruckOptions & WithEngineType(RouteEngineType value)
long long GetGrossWeight() const
void SetLength(long long value)
const RouteTrailerOptions & GetTrailer() const
RouteTruckOptions & WithHeightAboveFirstAxle(long long value)
void SetPayloadCapacity(long long value)
RouteTruckOptions & AddHazardousCargos(RouteHazardousCargoType value)
void SetLicensePlate(LicensePlateT &&value)
bool TruckTypeHasBeenSet() const
bool TireCountHasBeenSet() const
AWS_GEOROUTES_API RouteTruckOptions(Aws::Utils::Json::JsonView jsonValue)
RouteEngineType GetEngineType() const
RouteTruckOptions & WithWeightPerAxle(long long value)
bool HeightHasBeenSet() const
RouteTruckOptions & WithLicensePlate(LicensePlateT &&value)
long long GetHeight() const
void SetMaxSpeed(double value)
RouteTruckOptions & WithPayloadCapacity(long long value)
RouteTruckOptions & WithLength(long long value)
long long GetPayloadCapacity() const
bool TunnelRestrictionCodeHasBeenSet() const
RouteTruckOptions & WithTruckType(RouteTruckType value)
void SetGrossWeight(long long value)
bool OccupancyHasBeenSet() const
RouteTruckOptions & WithHazardousCargos(HazardousCargosT &&value)
bool WeightPerAxleGroupHasBeenSet() const
bool AxleCountHasBeenSet() const
bool LicensePlateHasBeenSet() const
void SetTireCount(int value)
RouteTruckOptions & WithWeightPerAxleGroup(WeightPerAxleGroupT &&value)
void SetWidth(long long value)
bool EngineTypeHasBeenSet() const
RouteTruckOptions & WithKpraLength(long long value)
const Aws::String & GetTunnelRestrictionCode() const
RouteTruckOptions & WithOccupancy(int value)
AWS_GEOROUTES_API RouteTruckOptions()=default
void SetTruckType(RouteTruckType value)
AWS_GEOROUTES_API RouteTruckOptions & operator=(Aws::Utils::Json::JsonView jsonValue)
long long GetHeightAboveFirstAxle() const
void SetHeightAboveFirstAxle(long long value)
bool MaxSpeedHasBeenSet() const
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