AWS SDK for C++

AWS SDK for C++ Version 1.11.768

Loading...
Searching...
No Matches
RouteMatrixBoundaryGeometry.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/Circle.h>
10#include <aws/geo-routes/model/RouteMatrixAutoCircle.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace GeoRoutes {
22namespace Model {
23
30 public:
31 AWS_GEOROUTES_API RouteMatrixBoundaryGeometry() = default;
34 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
40 inline const RouteMatrixAutoCircle& GetAutoCircle() const { return m_autoCircle; }
41 inline bool AutoCircleHasBeenSet() const { return m_autoCircleHasBeenSet; }
42 template <typename AutoCircleT = RouteMatrixAutoCircle>
43 void SetAutoCircle(AutoCircleT&& value) {
44 m_autoCircleHasBeenSet = true;
45 m_autoCircle = std::forward<AutoCircleT>(value);
46 }
47 template <typename AutoCircleT = RouteMatrixAutoCircle>
49 SetAutoCircle(std::forward<AutoCircleT>(value));
50 return *this;
51 }
53
55
60 inline const Circle& GetCircle() const { return m_circle; }
61 inline bool CircleHasBeenSet() const { return m_circleHasBeenSet; }
62 template <typename CircleT = Circle>
63 void SetCircle(CircleT&& value) {
64 m_circleHasBeenSet = true;
65 m_circle = std::forward<CircleT>(value);
66 }
67 template <typename CircleT = Circle>
69 SetCircle(std::forward<CircleT>(value));
70 return *this;
71 }
73
75
81 inline const Aws::Vector<double>& GetBoundingBox() const { return m_boundingBox; }
82 inline bool BoundingBoxHasBeenSet() const { return m_boundingBoxHasBeenSet; }
83 template <typename BoundingBoxT = Aws::Vector<double>>
84 void SetBoundingBox(BoundingBoxT&& value) {
85 m_boundingBoxHasBeenSet = true;
86 m_boundingBox = std::forward<BoundingBoxT>(value);
87 }
88 template <typename BoundingBoxT = Aws::Vector<double>>
90 SetBoundingBox(std::forward<BoundingBoxT>(value));
91 return *this;
92 }
94 m_boundingBoxHasBeenSet = true;
95 m_boundingBox.push_back(value);
96 return *this;
97 }
99
101
104 inline const Aws::Vector<Aws::Vector<Aws::Vector<double>>>& GetPolygon() const { return m_polygon; }
105 inline bool PolygonHasBeenSet() const { return m_polygonHasBeenSet; }
106 template <typename PolygonT = Aws::Vector<Aws::Vector<Aws::Vector<double>>>>
107 void SetPolygon(PolygonT&& value) {
108 m_polygonHasBeenSet = true;
109 m_polygon = std::forward<PolygonT>(value);
110 }
111 template <typename PolygonT = Aws::Vector<Aws::Vector<Aws::Vector<double>>>>
113 SetPolygon(std::forward<PolygonT>(value));
114 return *this;
115 }
116 template <typename PolygonT = Aws::Vector<Aws::Vector<double>>>
118 m_polygonHasBeenSet = true;
119 m_polygon.emplace_back(std::forward<PolygonT>(value));
120 return *this;
121 }
123 private:
124 RouteMatrixAutoCircle m_autoCircle;
125
126 Circle m_circle;
127
128 Aws::Vector<double> m_boundingBox;
129
131 bool m_autoCircleHasBeenSet = false;
132 bool m_circleHasBeenSet = false;
133 bool m_boundingBoxHasBeenSet = false;
134 bool m_polygonHasBeenSet = false;
135};
136
137} // namespace Model
138} // namespace GeoRoutes
139} // namespace Aws
AWS_GEOROUTES_API RouteMatrixBoundaryGeometry & operator=(Aws::Utils::Json::JsonView jsonValue)
RouteMatrixBoundaryGeometry & WithCircle(CircleT &&value)
RouteMatrixBoundaryGeometry & WithBoundingBox(BoundingBoxT &&value)
RouteMatrixBoundaryGeometry & AddBoundingBox(double value)
RouteMatrixBoundaryGeometry & WithAutoCircle(AutoCircleT &&value)
AWS_GEOROUTES_API RouteMatrixBoundaryGeometry(Aws::Utils::Json::JsonView jsonValue)
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
RouteMatrixBoundaryGeometry & AddPolygon(PolygonT &&value)
RouteMatrixBoundaryGeometry & WithPolygon(PolygonT &&value)
const Aws::Vector< Aws::Vector< Aws::Vector< double > > > & GetPolygon() const
AWS_GEOROUTES_API RouteMatrixBoundaryGeometry()=default
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue