AWS SDK for C++

AWS SDK for C++ Version 1.11.832

Loading...
Searching...
No Matches
RouteTransitIntermediateStop.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/RouteTransitDeparture.h>
10#include <aws/geo-routes/model/RouteTransitIntermediateStopAttribute.h>
11#include <aws/geo-routes/model/RouteTransitTransportModeDetails.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 RouteTransitIntermediateStop() = default;
36 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline const Aws::Vector<RouteTransitIntermediateStopAttribute>& GetAttributes() const { return m_attributes; }
43 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
44 template <typename AttributesT = Aws::Vector<RouteTransitIntermediateStopAttribute>>
45 void SetAttributes(AttributesT&& value) {
46 m_attributesHasBeenSet = true;
47 m_attributes = std::forward<AttributesT>(value);
48 }
49 template <typename AttributesT = Aws::Vector<RouteTransitIntermediateStopAttribute>>
51 SetAttributes(std::forward<AttributesT>(value));
52 return *this;
53 }
55 m_attributesHasBeenSet = true;
56 m_attributes.push_back(value);
57 return *this;
58 }
60
62
65 inline const RouteTransitDeparture& GetDeparture() const { return m_departure; }
66 inline bool DepartureHasBeenSet() const { return m_departureHasBeenSet; }
67 template <typename DepartureT = RouteTransitDeparture>
68 void SetDeparture(DepartureT&& value) {
69 m_departureHasBeenSet = true;
70 m_departure = std::forward<DepartureT>(value);
71 }
72 template <typename DepartureT = RouteTransitDeparture>
74 SetDeparture(std::forward<DepartureT>(value));
75 return *this;
76 }
78
80
83 inline long long GetDuration() const { return m_duration; }
84 inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; }
85 inline void SetDuration(long long value) {
86 m_durationHasBeenSet = true;
87 m_duration = value;
88 }
89 inline RouteTransitIntermediateStop& WithDuration(long long value) {
90 SetDuration(value);
91 return *this;
92 }
94
96
99 inline int GetGeometryOffset() const { return m_geometryOffset; }
100 inline bool GeometryOffsetHasBeenSet() const { return m_geometryOffsetHasBeenSet; }
101 inline void SetGeometryOffset(int value) {
102 m_geometryOffsetHasBeenSet = true;
103 m_geometryOffset = value;
104 }
106 SetGeometryOffset(value);
107 return *this;
108 }
110
112
115 inline const RouteTransitTransportModeDetails& GetTransport() const { return m_transport; }
116 inline bool TransportHasBeenSet() const { return m_transportHasBeenSet; }
117 template <typename TransportT = RouteTransitTransportModeDetails>
118 void SetTransport(TransportT&& value) {
119 m_transportHasBeenSet = true;
120 m_transport = std::forward<TransportT>(value);
121 }
122 template <typename TransportT = RouteTransitTransportModeDetails>
124 SetTransport(std::forward<TransportT>(value));
125 return *this;
126 }
128 private:
130
131 RouteTransitDeparture m_departure;
132
133 long long m_duration{0};
134
135 int m_geometryOffset{0};
136
137 RouteTransitTransportModeDetails m_transport;
138 bool m_attributesHasBeenSet = false;
139 bool m_departureHasBeenSet = false;
140 bool m_durationHasBeenSet = false;
141 bool m_geometryOffsetHasBeenSet = false;
142 bool m_transportHasBeenSet = false;
143};
144
145} // namespace Model
146} // namespace GeoRoutes
147} // namespace Aws
RouteTransitIntermediateStop & WithDuration(long long value)
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_GEOROUTES_API RouteTransitIntermediateStop(Aws::Utils::Json::JsonView jsonValue)
RouteTransitIntermediateStop & WithGeometryOffset(int value)
AWS_GEOROUTES_API RouteTransitIntermediateStop()=default
AWS_GEOROUTES_API RouteTransitIntermediateStop & operator=(Aws::Utils::Json::JsonView jsonValue)
RouteTransitIntermediateStop & WithTransport(TransportT &&value)
const RouteTransitTransportModeDetails & GetTransport() const
RouteTransitIntermediateStop & AddAttributes(RouteTransitIntermediateStopAttribute value)
RouteTransitIntermediateStop & WithAttributes(AttributesT &&value)
RouteTransitIntermediateStop & WithDeparture(DepartureT &&value)
const Aws::Vector< RouteTransitIntermediateStopAttribute > & GetAttributes() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue