AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
RouteAvoidanceOptions.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/RouteAvoidanceArea.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/geo-routes/model/RouteAvoidanceZoneCategory.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace GeoRoutes
25{
26namespace Model
27{
28
35 {
36 public:
37 AWS_GEOROUTES_API RouteAvoidanceOptions();
40 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline const Aws::Vector<RouteAvoidanceArea>& GetAreas() const{ return m_areas; }
48 inline bool AreasHasBeenSet() const { return m_areasHasBeenSet; }
49 inline void SetAreas(const Aws::Vector<RouteAvoidanceArea>& value) { m_areasHasBeenSet = true; m_areas = value; }
50 inline void SetAreas(Aws::Vector<RouteAvoidanceArea>&& value) { m_areasHasBeenSet = true; m_areas = std::move(value); }
51 inline RouteAvoidanceOptions& WithAreas(const Aws::Vector<RouteAvoidanceArea>& value) { SetAreas(value); return *this;}
52 inline RouteAvoidanceOptions& WithAreas(Aws::Vector<RouteAvoidanceArea>&& value) { SetAreas(std::move(value)); return *this;}
53 inline RouteAvoidanceOptions& AddAreas(const RouteAvoidanceArea& value) { m_areasHasBeenSet = true; m_areas.push_back(value); return *this; }
54 inline RouteAvoidanceOptions& AddAreas(RouteAvoidanceArea&& value) { m_areasHasBeenSet = true; m_areas.push_back(std::move(value)); return *this; }
56
58
61 inline bool GetCarShuttleTrains() const{ return m_carShuttleTrains; }
62 inline bool CarShuttleTrainsHasBeenSet() const { return m_carShuttleTrainsHasBeenSet; }
63 inline void SetCarShuttleTrains(bool value) { m_carShuttleTrainsHasBeenSet = true; m_carShuttleTrains = value; }
64 inline RouteAvoidanceOptions& WithCarShuttleTrains(bool value) { SetCarShuttleTrains(value); return *this;}
66
68
71 inline bool GetControlledAccessHighways() const{ return m_controlledAccessHighways; }
72 inline bool ControlledAccessHighwaysHasBeenSet() const { return m_controlledAccessHighwaysHasBeenSet; }
73 inline void SetControlledAccessHighways(bool value) { m_controlledAccessHighwaysHasBeenSet = true; m_controlledAccessHighways = value; }
76
78
81 inline bool GetDirtRoads() const{ return m_dirtRoads; }
82 inline bool DirtRoadsHasBeenSet() const { return m_dirtRoadsHasBeenSet; }
83 inline void SetDirtRoads(bool value) { m_dirtRoadsHasBeenSet = true; m_dirtRoads = value; }
84 inline RouteAvoidanceOptions& WithDirtRoads(bool value) { SetDirtRoads(value); return *this;}
86
88
91 inline bool GetFerries() const{ return m_ferries; }
92 inline bool FerriesHasBeenSet() const { return m_ferriesHasBeenSet; }
93 inline void SetFerries(bool value) { m_ferriesHasBeenSet = true; m_ferries = value; }
94 inline RouteAvoidanceOptions& WithFerries(bool value) { SetFerries(value); return *this;}
96
98
101 inline bool GetSeasonalClosure() const{ return m_seasonalClosure; }
102 inline bool SeasonalClosureHasBeenSet() const { return m_seasonalClosureHasBeenSet; }
103 inline void SetSeasonalClosure(bool value) { m_seasonalClosureHasBeenSet = true; m_seasonalClosure = value; }
104 inline RouteAvoidanceOptions& WithSeasonalClosure(bool value) { SetSeasonalClosure(value); return *this;}
106
108
112 inline bool GetTollRoads() const{ return m_tollRoads; }
113 inline bool TollRoadsHasBeenSet() const { return m_tollRoadsHasBeenSet; }
114 inline void SetTollRoads(bool value) { m_tollRoadsHasBeenSet = true; m_tollRoads = value; }
115 inline RouteAvoidanceOptions& WithTollRoads(bool value) { SetTollRoads(value); return *this;}
117
119
123 inline bool GetTollTransponders() const{ return m_tollTransponders; }
124 inline bool TollTranspondersHasBeenSet() const { return m_tollTranspondersHasBeenSet; }
125 inline void SetTollTransponders(bool value) { m_tollTranspondersHasBeenSet = true; m_tollTransponders = value; }
126 inline RouteAvoidanceOptions& WithTollTransponders(bool value) { SetTollTransponders(value); return *this;}
128
130
136 inline const Aws::Vector<Aws::String>& GetTruckRoadTypes() const{ return m_truckRoadTypes; }
137 inline bool TruckRoadTypesHasBeenSet() const { return m_truckRoadTypesHasBeenSet; }
138 inline void SetTruckRoadTypes(const Aws::Vector<Aws::String>& value) { m_truckRoadTypesHasBeenSet = true; m_truckRoadTypes = value; }
139 inline void SetTruckRoadTypes(Aws::Vector<Aws::String>&& value) { m_truckRoadTypesHasBeenSet = true; m_truckRoadTypes = std::move(value); }
141 inline RouteAvoidanceOptions& WithTruckRoadTypes(Aws::Vector<Aws::String>&& value) { SetTruckRoadTypes(std::move(value)); return *this;}
142 inline RouteAvoidanceOptions& AddTruckRoadTypes(const Aws::String& value) { m_truckRoadTypesHasBeenSet = true; m_truckRoadTypes.push_back(value); return *this; }
143 inline RouteAvoidanceOptions& AddTruckRoadTypes(Aws::String&& value) { m_truckRoadTypesHasBeenSet = true; m_truckRoadTypes.push_back(std::move(value)); return *this; }
144 inline RouteAvoidanceOptions& AddTruckRoadTypes(const char* value) { m_truckRoadTypesHasBeenSet = true; m_truckRoadTypes.push_back(value); return *this; }
146
148
151 inline bool GetTunnels() const{ return m_tunnels; }
152 inline bool TunnelsHasBeenSet() const { return m_tunnelsHasBeenSet; }
153 inline void SetTunnels(bool value) { m_tunnelsHasBeenSet = true; m_tunnels = value; }
154 inline RouteAvoidanceOptions& WithTunnels(bool value) { SetTunnels(value); return *this;}
156
158
161 inline bool GetUTurns() const{ return m_uTurns; }
162 inline bool UTurnsHasBeenSet() const { return m_uTurnsHasBeenSet; }
163 inline void SetUTurns(bool value) { m_uTurnsHasBeenSet = true; m_uTurns = value; }
164 inline RouteAvoidanceOptions& WithUTurns(bool value) { SetUTurns(value); return *this;}
166
168
171 inline const Aws::Vector<RouteAvoidanceZoneCategory>& GetZoneCategories() const{ return m_zoneCategories; }
172 inline bool ZoneCategoriesHasBeenSet() const { return m_zoneCategoriesHasBeenSet; }
173 inline void SetZoneCategories(const Aws::Vector<RouteAvoidanceZoneCategory>& value) { m_zoneCategoriesHasBeenSet = true; m_zoneCategories = value; }
174 inline void SetZoneCategories(Aws::Vector<RouteAvoidanceZoneCategory>&& value) { m_zoneCategoriesHasBeenSet = true; m_zoneCategories = std::move(value); }
177 inline RouteAvoidanceOptions& AddZoneCategories(const RouteAvoidanceZoneCategory& value) { m_zoneCategoriesHasBeenSet = true; m_zoneCategories.push_back(value); return *this; }
178 inline RouteAvoidanceOptions& AddZoneCategories(RouteAvoidanceZoneCategory&& value) { m_zoneCategoriesHasBeenSet = true; m_zoneCategories.push_back(std::move(value)); return *this; }
180 private:
181
183 bool m_areasHasBeenSet = false;
184
185 bool m_carShuttleTrains;
186 bool m_carShuttleTrainsHasBeenSet = false;
187
188 bool m_controlledAccessHighways;
189 bool m_controlledAccessHighwaysHasBeenSet = false;
190
191 bool m_dirtRoads;
192 bool m_dirtRoadsHasBeenSet = false;
193
194 bool m_ferries;
195 bool m_ferriesHasBeenSet = false;
196
197 bool m_seasonalClosure;
198 bool m_seasonalClosureHasBeenSet = false;
199
200 bool m_tollRoads;
201 bool m_tollRoadsHasBeenSet = false;
202
203 bool m_tollTransponders;
204 bool m_tollTranspondersHasBeenSet = false;
205
206 Aws::Vector<Aws::String> m_truckRoadTypes;
207 bool m_truckRoadTypesHasBeenSet = false;
208
209 bool m_tunnels;
210 bool m_tunnelsHasBeenSet = false;
211
212 bool m_uTurns;
213 bool m_uTurnsHasBeenSet = false;
214
216 bool m_zoneCategoriesHasBeenSet = false;
217 };
218
219} // namespace Model
220} // namespace GeoRoutes
221} // namespace Aws
void SetAreas(const Aws::Vector< RouteAvoidanceArea > &value)
RouteAvoidanceOptions & WithZoneCategories(const Aws::Vector< RouteAvoidanceZoneCategory > &value)
void SetTruckRoadTypes(Aws::Vector< Aws::String > &&value)
RouteAvoidanceOptions & WithTruckRoadTypes(const Aws::Vector< Aws::String > &value)
RouteAvoidanceOptions & WithControlledAccessHighways(bool value)
void SetTruckRoadTypes(const Aws::Vector< Aws::String > &value)
RouteAvoidanceOptions & AddZoneCategories(RouteAvoidanceZoneCategory &&value)
RouteAvoidanceOptions & WithTollRoads(bool value)
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_GEOROUTES_API RouteAvoidanceOptions & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetZoneCategories(Aws::Vector< RouteAvoidanceZoneCategory > &&value)
void SetAreas(Aws::Vector< RouteAvoidanceArea > &&value)
RouteAvoidanceOptions & WithTunnels(bool value)
RouteAvoidanceOptions & AddTruckRoadTypes(const Aws::String &value)
AWS_GEOROUTES_API RouteAvoidanceOptions(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< RouteAvoidanceArea > & GetAreas() const
RouteAvoidanceOptions & WithAreas(const Aws::Vector< RouteAvoidanceArea > &value)
RouteAvoidanceOptions & AddZoneCategories(const RouteAvoidanceZoneCategory &value)
RouteAvoidanceOptions & WithTollTransponders(bool value)
RouteAvoidanceOptions & WithAreas(Aws::Vector< RouteAvoidanceArea > &&value)
RouteAvoidanceOptions & WithDirtRoads(bool value)
RouteAvoidanceOptions & AddAreas(RouteAvoidanceArea &&value)
RouteAvoidanceOptions & AddAreas(const RouteAvoidanceArea &value)
RouteAvoidanceOptions & WithZoneCategories(Aws::Vector< RouteAvoidanceZoneCategory > &&value)
RouteAvoidanceOptions & AddTruckRoadTypes(Aws::String &&value)
RouteAvoidanceOptions & WithFerries(bool value)
RouteAvoidanceOptions & WithSeasonalClosure(bool value)
RouteAvoidanceOptions & WithCarShuttleTrains(bool value)
const Aws::Vector< RouteAvoidanceZoneCategory > & GetZoneCategories() const
RouteAvoidanceOptions & AddTruckRoadTypes(const char *value)
void SetZoneCategories(const Aws::Vector< RouteAvoidanceZoneCategory > &value)
RouteAvoidanceOptions & WithUTurns(bool value)
const Aws::Vector< Aws::String > & GetTruckRoadTypes() const
RouteAvoidanceOptions & WithTruckRoadTypes(Aws::Vector< Aws::String > &&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