AWS SDK for C++

AWS SDK for C++ Version 1.11.772

Loading...
Searching...
No Matches
RoadSnapTruckOptions.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/RoadSnapHazardousCargoType.h>
11#include <aws/geo-routes/model/RoadSnapTrailerOptions.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace GeoRoutes {
23namespace Model {
24
32 public:
33 AWS_GEOROUTES_API RoadSnapTruckOptions() = default;
36 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
43 inline long long GetGrossWeight() const { return m_grossWeight; }
44 inline bool GrossWeightHasBeenSet() const { return m_grossWeightHasBeenSet; }
45 inline void SetGrossWeight(long long value) {
46 m_grossWeightHasBeenSet = true;
47 m_grossWeight = value;
48 }
49 inline RoadSnapTruckOptions& WithGrossWeight(long long value) {
50 SetGrossWeight(value);
51 return *this;
52 }
54
56
59 inline const Aws::Vector<RoadSnapHazardousCargoType>& GetHazardousCargos() const { return m_hazardousCargos; }
60 inline bool HazardousCargosHasBeenSet() const { return m_hazardousCargosHasBeenSet; }
61 template <typename HazardousCargosT = Aws::Vector<RoadSnapHazardousCargoType>>
62 void SetHazardousCargos(HazardousCargosT&& value) {
63 m_hazardousCargosHasBeenSet = true;
64 m_hazardousCargos = std::forward<HazardousCargosT>(value);
65 }
66 template <typename HazardousCargosT = Aws::Vector<RoadSnapHazardousCargoType>>
67 RoadSnapTruckOptions& WithHazardousCargos(HazardousCargosT&& value) {
68 SetHazardousCargos(std::forward<HazardousCargosT>(value));
69 return *this;
70 }
72 m_hazardousCargosHasBeenSet = true;
73 m_hazardousCargos.push_back(value);
74 return *this;
75 }
77
79
82 inline long long GetHeight() const { return m_height; }
83 inline bool HeightHasBeenSet() const { return m_heightHasBeenSet; }
84 inline void SetHeight(long long value) {
85 m_heightHasBeenSet = true;
86 m_height = value;
87 }
88 inline RoadSnapTruckOptions& WithHeight(long long value) {
89 SetHeight(value);
90 return *this;
91 }
93
95
98 inline long long GetLength() const { return m_length; }
99 inline bool LengthHasBeenSet() const { return m_lengthHasBeenSet; }
100 inline void SetLength(long long value) {
101 m_lengthHasBeenSet = true;
102 m_length = value;
103 }
104 inline RoadSnapTruckOptions& WithLength(long long value) {
105 SetLength(value);
106 return *this;
107 }
109
111
114 inline const RoadSnapTrailerOptions& GetTrailer() const { return m_trailer; }
115 inline bool TrailerHasBeenSet() const { return m_trailerHasBeenSet; }
116 template <typename TrailerT = RoadSnapTrailerOptions>
117 void SetTrailer(TrailerT&& value) {
118 m_trailerHasBeenSet = true;
119 m_trailer = std::forward<TrailerT>(value);
120 }
121 template <typename TrailerT = RoadSnapTrailerOptions>
123 SetTrailer(std::forward<TrailerT>(value));
124 return *this;
125 }
127
129
143 inline const Aws::String& GetTunnelRestrictionCode() const { return m_tunnelRestrictionCode; }
144 inline bool TunnelRestrictionCodeHasBeenSet() const { return m_tunnelRestrictionCodeHasBeenSet; }
145 template <typename TunnelRestrictionCodeT = Aws::String>
146 void SetTunnelRestrictionCode(TunnelRestrictionCodeT&& value) {
147 m_tunnelRestrictionCodeHasBeenSet = true;
148 m_tunnelRestrictionCode = std::forward<TunnelRestrictionCodeT>(value);
149 }
150 template <typename TunnelRestrictionCodeT = Aws::String>
151 RoadSnapTruckOptions& WithTunnelRestrictionCode(TunnelRestrictionCodeT&& value) {
152 SetTunnelRestrictionCode(std::forward<TunnelRestrictionCodeT>(value));
153 return *this;
154 }
156
158
161 inline long long GetWidth() const { return m_width; }
162 inline bool WidthHasBeenSet() const { return m_widthHasBeenSet; }
163 inline void SetWidth(long long value) {
164 m_widthHasBeenSet = true;
165 m_width = value;
166 }
167 inline RoadSnapTruckOptions& WithWidth(long long value) {
168 SetWidth(value);
169 return *this;
170 }
172 private:
173 long long m_grossWeight{0};
174
176
177 long long m_height{0};
178
179 long long m_length{0};
180
181 RoadSnapTrailerOptions m_trailer;
182
183 Aws::String m_tunnelRestrictionCode;
184
185 long long m_width{0};
186 bool m_grossWeightHasBeenSet = false;
187 bool m_hazardousCargosHasBeenSet = false;
188 bool m_heightHasBeenSet = false;
189 bool m_lengthHasBeenSet = false;
190 bool m_trailerHasBeenSet = false;
191 bool m_tunnelRestrictionCodeHasBeenSet = false;
192 bool m_widthHasBeenSet = false;
193};
194
195} // namespace Model
196} // namespace GeoRoutes
197} // namespace Aws
AWS_GEOROUTES_API RoadSnapTruckOptions()=default
RoadSnapTruckOptions & WithHeight(long long value)
RoadSnapTruckOptions & WithWidth(long long value)
RoadSnapTruckOptions & WithTunnelRestrictionCode(TunnelRestrictionCodeT &&value)
void SetHazardousCargos(HazardousCargosT &&value)
AWS_GEOROUTES_API RoadSnapTruckOptions(Aws::Utils::Json::JsonView jsonValue)
AWS_GEOROUTES_API RoadSnapTruckOptions & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetTunnelRestrictionCode(TunnelRestrictionCodeT &&value)
RoadSnapTruckOptions & WithHazardousCargos(HazardousCargosT &&value)
RoadSnapTruckOptions & AddHazardousCargos(RoadSnapHazardousCargoType value)
RoadSnapTruckOptions & WithGrossWeight(long long value)
const RoadSnapTrailerOptions & GetTrailer() const
const Aws::Vector< RoadSnapHazardousCargoType > & GetHazardousCargos() const
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
RoadSnapTruckOptions & WithLength(long long value)
RoadSnapTruckOptions & WithTrailer(TrailerT &&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