AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
RouteMatrixAvoidanceAreaGeometry.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/core/utils/memory/stl/AWSString.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace GeoRoutes
23{
24namespace Model
25{
26
33 {
34 public:
35 AWS_GEOROUTES_API RouteMatrixAvoidanceAreaGeometry() = default;
38 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
39
40
42
48 inline const Aws::Vector<double>& GetBoundingBox() const { return m_boundingBox; }
49 inline bool BoundingBoxHasBeenSet() const { return m_boundingBoxHasBeenSet; }
50 template<typename BoundingBoxT = Aws::Vector<double>>
51 void SetBoundingBox(BoundingBoxT&& value) { m_boundingBoxHasBeenSet = true; m_boundingBox = std::forward<BoundingBoxT>(value); }
52 template<typename BoundingBoxT = Aws::Vector<double>>
53 RouteMatrixAvoidanceAreaGeometry& WithBoundingBox(BoundingBoxT&& value) { SetBoundingBox(std::forward<BoundingBoxT>(value)); return *this;}
54 inline RouteMatrixAvoidanceAreaGeometry& AddBoundingBox(double value) { m_boundingBoxHasBeenSet = true; m_boundingBox.push_back(value); return *this; }
56
58
61 inline const Aws::Vector<Aws::Vector<Aws::Vector<double>>>& GetPolygon() const { return m_polygon; }
62 inline bool PolygonHasBeenSet() const { return m_polygonHasBeenSet; }
63 template<typename PolygonT = Aws::Vector<Aws::Vector<Aws::Vector<double>>>>
64 void SetPolygon(PolygonT&& value) { m_polygonHasBeenSet = true; m_polygon = std::forward<PolygonT>(value); }
65 template<typename PolygonT = Aws::Vector<Aws::Vector<Aws::Vector<double>>>>
66 RouteMatrixAvoidanceAreaGeometry& WithPolygon(PolygonT&& value) { SetPolygon(std::forward<PolygonT>(value)); return *this;}
67 template<typename PolygonT = Aws::Vector<Aws::Vector<double>>>
68 RouteMatrixAvoidanceAreaGeometry& AddPolygon(PolygonT&& value) { m_polygonHasBeenSet = true; m_polygon.emplace_back(std::forward<PolygonT>(value)); return *this; }
70
72
79 inline const Aws::Vector<Aws::String>& GetPolylinePolygon() const { return m_polylinePolygon; }
80 inline bool PolylinePolygonHasBeenSet() const { return m_polylinePolygonHasBeenSet; }
81 template<typename PolylinePolygonT = Aws::Vector<Aws::String>>
82 void SetPolylinePolygon(PolylinePolygonT&& value) { m_polylinePolygonHasBeenSet = true; m_polylinePolygon = std::forward<PolylinePolygonT>(value); }
83 template<typename PolylinePolygonT = Aws::Vector<Aws::String>>
84 RouteMatrixAvoidanceAreaGeometry& WithPolylinePolygon(PolylinePolygonT&& value) { SetPolylinePolygon(std::forward<PolylinePolygonT>(value)); return *this;}
85 template<typename PolylinePolygonT = Aws::String>
86 RouteMatrixAvoidanceAreaGeometry& AddPolylinePolygon(PolylinePolygonT&& value) { m_polylinePolygonHasBeenSet = true; m_polylinePolygon.emplace_back(std::forward<PolylinePolygonT>(value)); return *this; }
88 private:
89
90 Aws::Vector<double> m_boundingBox;
91 bool m_boundingBoxHasBeenSet = false;
92
94 bool m_polygonHasBeenSet = false;
95
96 Aws::Vector<Aws::String> m_polylinePolygon;
97 bool m_polylinePolygonHasBeenSet = false;
98 };
99
100} // namespace Model
101} // namespace GeoRoutes
102} // namespace Aws
RouteMatrixAvoidanceAreaGeometry & AddPolygon(PolygonT &&value)
AWS_GEOROUTES_API RouteMatrixAvoidanceAreaGeometry()=default
RouteMatrixAvoidanceAreaGeometry & WithPolylinePolygon(PolylinePolygonT &&value)
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
RouteMatrixAvoidanceAreaGeometry & AddBoundingBox(double value)
RouteMatrixAvoidanceAreaGeometry & WithPolygon(PolygonT &&value)
AWS_GEOROUTES_API RouteMatrixAvoidanceAreaGeometry & operator=(Aws::Utils::Json::JsonView jsonValue)
RouteMatrixAvoidanceAreaGeometry & WithBoundingBox(BoundingBoxT &&value)
AWS_GEOROUTES_API RouteMatrixAvoidanceAreaGeometry(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::Vector< Aws::Vector< double > > > & GetPolygon() const
RouteMatrixAvoidanceAreaGeometry & AddPolylinePolygon(PolylinePolygonT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue