AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
WaypointOptimizationTruckOptions.h
1
6#pragma once
7#include <aws/geo-routes/GeoRoutes_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/geo-routes/model/WaypointOptimizationTrailerOptions.h>
10#include <aws/geo-routes/model/WaypointOptimizationTruckType.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/geo-routes/model/WaypointOptimizationHazardousCargoType.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace GeoRoutes
26{
27namespace Model
28{
29
37 {
38 public:
39 AWS_GEOROUTES_API WaypointOptimizationTruckOptions() = default;
42 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
50 inline long long GetGrossWeight() const { return m_grossWeight; }
51 inline bool GrossWeightHasBeenSet() const { return m_grossWeightHasBeenSet; }
52 inline void SetGrossWeight(long long value) { m_grossWeightHasBeenSet = true; m_grossWeight = value; }
53 inline WaypointOptimizationTruckOptions& WithGrossWeight(long long value) { SetGrossWeight(value); return *this;}
55
57
60 inline const Aws::Vector<WaypointOptimizationHazardousCargoType>& GetHazardousCargos() const { return m_hazardousCargos; }
61 inline bool HazardousCargosHasBeenSet() const { return m_hazardousCargosHasBeenSet; }
62 template<typename HazardousCargosT = Aws::Vector<WaypointOptimizationHazardousCargoType>>
63 void SetHazardousCargos(HazardousCargosT&& value) { m_hazardousCargosHasBeenSet = true; m_hazardousCargos = std::forward<HazardousCargosT>(value); }
64 template<typename HazardousCargosT = Aws::Vector<WaypointOptimizationHazardousCargoType>>
65 WaypointOptimizationTruckOptions& WithHazardousCargos(HazardousCargosT&& value) { SetHazardousCargos(std::forward<HazardousCargosT>(value)); return *this;}
66 inline WaypointOptimizationTruckOptions& AddHazardousCargos(WaypointOptimizationHazardousCargoType value) { m_hazardousCargosHasBeenSet = true; m_hazardousCargos.push_back(value); return *this; }
68
70
73 inline long long GetHeight() const { return m_height; }
74 inline bool HeightHasBeenSet() const { return m_heightHasBeenSet; }
75 inline void SetHeight(long long value) { m_heightHasBeenSet = true; m_height = value; }
76 inline WaypointOptimizationTruckOptions& WithHeight(long long value) { SetHeight(value); return *this;}
78
80
83 inline long long GetLength() const { return m_length; }
84 inline bool LengthHasBeenSet() const { return m_lengthHasBeenSet; }
85 inline void SetLength(long long value) { m_lengthHasBeenSet = true; m_length = value; }
86 inline WaypointOptimizationTruckOptions& WithLength(long long value) { SetLength(value); return *this;}
88
90
93 inline const WaypointOptimizationTrailerOptions& GetTrailer() const { return m_trailer; }
94 inline bool TrailerHasBeenSet() const { return m_trailerHasBeenSet; }
95 template<typename TrailerT = WaypointOptimizationTrailerOptions>
96 void SetTrailer(TrailerT&& value) { m_trailerHasBeenSet = true; m_trailer = std::forward<TrailerT>(value); }
97 template<typename TrailerT = WaypointOptimizationTrailerOptions>
98 WaypointOptimizationTruckOptions& WithTrailer(TrailerT&& value) { SetTrailer(std::forward<TrailerT>(value)); return *this;}
100
102
105 inline WaypointOptimizationTruckType GetTruckType() const { return m_truckType; }
106 inline bool TruckTypeHasBeenSet() const { return m_truckTypeHasBeenSet; }
107 inline void SetTruckType(WaypointOptimizationTruckType value) { m_truckTypeHasBeenSet = true; m_truckType = value; }
110
112
126 inline const Aws::String& GetTunnelRestrictionCode() const { return m_tunnelRestrictionCode; }
127 inline bool TunnelRestrictionCodeHasBeenSet() const { return m_tunnelRestrictionCodeHasBeenSet; }
128 template<typename TunnelRestrictionCodeT = Aws::String>
129 void SetTunnelRestrictionCode(TunnelRestrictionCodeT&& value) { m_tunnelRestrictionCodeHasBeenSet = true; m_tunnelRestrictionCode = std::forward<TunnelRestrictionCodeT>(value); }
130 template<typename TunnelRestrictionCodeT = Aws::String>
131 WaypointOptimizationTruckOptions& WithTunnelRestrictionCode(TunnelRestrictionCodeT&& value) { SetTunnelRestrictionCode(std::forward<TunnelRestrictionCodeT>(value)); return *this;}
133
135
140 inline long long GetWeightPerAxle() const { return m_weightPerAxle; }
141 inline bool WeightPerAxleHasBeenSet() const { return m_weightPerAxleHasBeenSet; }
142 inline void SetWeightPerAxle(long long value) { m_weightPerAxleHasBeenSet = true; m_weightPerAxle = value; }
143 inline WaypointOptimizationTruckOptions& WithWeightPerAxle(long long value) { SetWeightPerAxle(value); return *this;}
145
147
150 inline long long GetWidth() const { return m_width; }
151 inline bool WidthHasBeenSet() const { return m_widthHasBeenSet; }
152 inline void SetWidth(long long value) { m_widthHasBeenSet = true; m_width = value; }
153 inline WaypointOptimizationTruckOptions& WithWidth(long long value) { SetWidth(value); return *this;}
155 private:
156
157 long long m_grossWeight{0};
158 bool m_grossWeightHasBeenSet = false;
159
161 bool m_hazardousCargosHasBeenSet = false;
162
163 long long m_height{0};
164 bool m_heightHasBeenSet = false;
165
166 long long m_length{0};
167 bool m_lengthHasBeenSet = false;
168
169 WaypointOptimizationTrailerOptions m_trailer;
170 bool m_trailerHasBeenSet = false;
171
173 bool m_truckTypeHasBeenSet = false;
174
175 Aws::String m_tunnelRestrictionCode;
176 bool m_tunnelRestrictionCodeHasBeenSet = false;
177
178 long long m_weightPerAxle{0};
179 bool m_weightPerAxleHasBeenSet = false;
180
181 long long m_width{0};
182 bool m_widthHasBeenSet = false;
183 };
184
185} // namespace Model
186} // namespace GeoRoutes
187} // namespace Aws
WaypointOptimizationTruckOptions & WithHazardousCargos(HazardousCargosT &&value)
WaypointOptimizationTruckOptions & WithTunnelRestrictionCode(TunnelRestrictionCodeT &&value)
WaypointOptimizationTruckOptions & WithTruckType(WaypointOptimizationTruckType value)
AWS_GEOROUTES_API WaypointOptimizationTruckOptions & operator=(Aws::Utils::Json::JsonView jsonValue)
WaypointOptimizationTruckOptions & WithWeightPerAxle(long long value)
const Aws::Vector< WaypointOptimizationHazardousCargoType > & GetHazardousCargos() const
WaypointOptimizationTruckOptions & WithWidth(long long value)
const WaypointOptimizationTrailerOptions & GetTrailer() const
WaypointOptimizationTruckOptions & WithTrailer(TrailerT &&value)
WaypointOptimizationTruckOptions & WithLength(long long value)
AWS_GEOROUTES_API WaypointOptimizationTruckOptions(Aws::Utils::Json::JsonView jsonValue)
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
WaypointOptimizationTruckOptions & AddHazardousCargos(WaypointOptimizationHazardousCargoType value)
WaypointOptimizationTruckOptions & WithGrossWeight(long long value)
WaypointOptimizationTruckOptions & WithHeight(long long value)
AWS_GEOROUTES_API WaypointOptimizationTruckOptions()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue