AWS SDK for C++

AWS SDK for C++ Version 1.11.832

Loading...
Searching...
No Matches
RouteIntermodalOptions.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/geo-routes/GeoRoutes_EXPORTS.h>
9#include <aws/geo-routes/model/RouteAccessibilityAttribute.h>
10#include <aws/geo-routes/model/RouteIntermodalPedestrianOptions.h>
11#include <aws/geo-routes/model/RouteIntermodalRentalOptions.h>
12#include <aws/geo-routes/model/RouteIntermodalTaxiOptions.h>
13#include <aws/geo-routes/model/RouteIntermodalTransitOptions.h>
14#include <aws/geo-routes/model/RouteIntermodalVehicleOptions.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
37 public:
38 AWS_GEOROUTES_API RouteIntermodalOptions() = default;
41 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
42
44
47 inline const Aws::Vector<RouteAccessibilityAttribute>& GetAccessibilityAttributes() const { return m_accessibilityAttributes; }
48 inline bool AccessibilityAttributesHasBeenSet() const { return m_accessibilityAttributesHasBeenSet; }
49 template <typename AccessibilityAttributesT = Aws::Vector<RouteAccessibilityAttribute>>
50 void SetAccessibilityAttributes(AccessibilityAttributesT&& value) {
51 m_accessibilityAttributesHasBeenSet = true;
52 m_accessibilityAttributes = std::forward<AccessibilityAttributesT>(value);
53 }
54 template <typename AccessibilityAttributesT = Aws::Vector<RouteAccessibilityAttribute>>
55 RouteIntermodalOptions& WithAccessibilityAttributes(AccessibilityAttributesT&& value) {
56 SetAccessibilityAttributes(std::forward<AccessibilityAttributesT>(value));
57 return *this;
58 }
60 m_accessibilityAttributesHasBeenSet = true;
61 m_accessibilityAttributes.push_back(value);
62 return *this;
63 }
65
67
70 inline int GetMaxTransfers() const { return m_maxTransfers; }
71 inline bool MaxTransfersHasBeenSet() const { return m_maxTransfersHasBeenSet; }
72 inline void SetMaxTransfers(int value) {
73 m_maxTransfersHasBeenSet = true;
74 m_maxTransfers = value;
75 }
77 SetMaxTransfers(value);
78 return *this;
79 }
81
83
86 inline const RouteIntermodalPedestrianOptions& GetPedestrian() const { return m_pedestrian; }
87 inline bool PedestrianHasBeenSet() const { return m_pedestrianHasBeenSet; }
88 template <typename PedestrianT = RouteIntermodalPedestrianOptions>
89 void SetPedestrian(PedestrianT&& value) {
90 m_pedestrianHasBeenSet = true;
91 m_pedestrian = std::forward<PedestrianT>(value);
92 }
93 template <typename PedestrianT = RouteIntermodalPedestrianOptions>
94 RouteIntermodalOptions& WithPedestrian(PedestrianT&& value) {
95 SetPedestrian(std::forward<PedestrianT>(value));
96 return *this;
97 }
99
101
104 inline const RouteIntermodalRentalOptions& GetRental() const { return m_rental; }
105 inline bool RentalHasBeenSet() const { return m_rentalHasBeenSet; }
106 template <typename RentalT = RouteIntermodalRentalOptions>
107 void SetRental(RentalT&& value) {
108 m_rentalHasBeenSet = true;
109 m_rental = std::forward<RentalT>(value);
110 }
111 template <typename RentalT = RouteIntermodalRentalOptions>
113 SetRental(std::forward<RentalT>(value));
114 return *this;
115 }
117
119
122 inline const RouteIntermodalTaxiOptions& GetTaxi() const { return m_taxi; }
123 inline bool TaxiHasBeenSet() const { return m_taxiHasBeenSet; }
124 template <typename TaxiT = RouteIntermodalTaxiOptions>
125 void SetTaxi(TaxiT&& value) {
126 m_taxiHasBeenSet = true;
127 m_taxi = std::forward<TaxiT>(value);
128 }
129 template <typename TaxiT = RouteIntermodalTaxiOptions>
131 SetTaxi(std::forward<TaxiT>(value));
132 return *this;
133 }
135
137
140 inline const RouteIntermodalTransitOptions& GetTransit() const { return m_transit; }
141 inline bool TransitHasBeenSet() const { return m_transitHasBeenSet; }
142 template <typename TransitT = RouteIntermodalTransitOptions>
143 void SetTransit(TransitT&& value) {
144 m_transitHasBeenSet = true;
145 m_transit = std::forward<TransitT>(value);
146 }
147 template <typename TransitT = RouteIntermodalTransitOptions>
149 SetTransit(std::forward<TransitT>(value));
150 return *this;
151 }
153
155
158 inline const RouteIntermodalVehicleOptions& GetVehicle() const { return m_vehicle; }
159 inline bool VehicleHasBeenSet() const { return m_vehicleHasBeenSet; }
160 template <typename VehicleT = RouteIntermodalVehicleOptions>
161 void SetVehicle(VehicleT&& value) {
162 m_vehicleHasBeenSet = true;
163 m_vehicle = std::forward<VehicleT>(value);
164 }
165 template <typename VehicleT = RouteIntermodalVehicleOptions>
167 SetVehicle(std::forward<VehicleT>(value));
168 return *this;
169 }
171 private:
172 Aws::Vector<RouteAccessibilityAttribute> m_accessibilityAttributes;
173
174 int m_maxTransfers{0};
175
176 RouteIntermodalPedestrianOptions m_pedestrian;
177
178 RouteIntermodalRentalOptions m_rental;
179
180 RouteIntermodalTaxiOptions m_taxi;
181
182 RouteIntermodalTransitOptions m_transit;
183
184 RouteIntermodalVehicleOptions m_vehicle;
185 bool m_accessibilityAttributesHasBeenSet = false;
186 bool m_maxTransfersHasBeenSet = false;
187 bool m_pedestrianHasBeenSet = false;
188 bool m_rentalHasBeenSet = false;
189 bool m_taxiHasBeenSet = false;
190 bool m_transitHasBeenSet = false;
191 bool m_vehicleHasBeenSet = false;
192};
193
194} // namespace Model
195} // namespace GeoRoutes
196} // namespace Aws
RouteIntermodalOptions & WithVehicle(VehicleT &&value)
void SetAccessibilityAttributes(AccessibilityAttributesT &&value)
RouteIntermodalOptions & WithTaxi(TaxiT &&value)
const RouteIntermodalRentalOptions & GetRental() const
RouteIntermodalOptions & WithPedestrian(PedestrianT &&value)
RouteIntermodalOptions & WithRental(RentalT &&value)
RouteIntermodalOptions & WithMaxTransfers(int value)
const RouteIntermodalTransitOptions & GetTransit() const
const RouteIntermodalTaxiOptions & GetTaxi() const
RouteIntermodalOptions & WithTransit(TransitT &&value)
AWS_GEOROUTES_API RouteIntermodalOptions & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< RouteAccessibilityAttribute > & GetAccessibilityAttributes() const
const RouteIntermodalPedestrianOptions & GetPedestrian() const
RouteIntermodalOptions & AddAccessibilityAttributes(RouteAccessibilityAttribute value)
RouteIntermodalOptions & WithAccessibilityAttributes(AccessibilityAttributesT &&value)
AWS_GEOROUTES_API RouteIntermodalOptions()=default
const RouteIntermodalVehicleOptions & GetVehicle() const
AWS_GEOROUTES_API RouteIntermodalOptions(Aws::Utils::Json::JsonView jsonValue)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue