7#include <aws/location/LocationService_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/location/model/Circle.h>
10#include <aws/core/utils/Array.h>
23namespace LocationService
77 template<
typename PolygonT = Aws::Vector<Aws::Vector<Aws::Vector<
double>>>>
78 void SetPolygon(PolygonT&& value) { m_polygonHasBeenSet =
true; m_polygon = std::forward<PolygonT>(value); }
79 template<
typename PolygonT = Aws::Vector<Aws::Vector<Aws::Vector<
double>>>>
81 template<
typename PolygonT = Aws::Vector<Aws::Vector<
double>>>
82 GeofenceGeometry&
AddPolygon(PolygonT&& value) { m_polygonHasBeenSet =
true; m_polygon.emplace_back(std::forward<PolygonT>(value));
return *
this; }
91 template<
typename CircleT = Circle>
92 void SetCircle(CircleT&& value) { m_circleHasBeenSet =
true; m_circle = std::forward<CircleT>(value); }
93 template<
typename CircleT = Circle>
119 template<
typename GeobufT = Aws::Utils::CryptoBuffer>
120 void SetGeobuf(GeobufT&& value) { m_geobufHasBeenSet =
true; m_geobuf = std::forward<GeobufT>(value); }
121 template<
typename GeobufT = Aws::Utils::CryptoBuffer>
150 template<
typename MultiPolygonT = Aws::Vector<Aws::Vector<Aws::Vector<Aws::Vector<
double>>>>>
151 void SetMultiPolygon(MultiPolygonT&& value) { m_multiPolygonHasBeenSet =
true; m_multiPolygon = std::forward<MultiPolygonT>(value); }
152 template<
typename MultiPolygonT = Aws::Vector<Aws::Vector<Aws::Vector<Aws::Vector<
double>>>>>
154 template<
typename MultiPolygonT = Aws::Vector<Aws::Vector<Aws::Vector<
double>>>>
155 GeofenceGeometry&
AddMultiPolygon(MultiPolygonT&& value) { m_multiPolygonHasBeenSet =
true; m_multiPolygon.emplace_back(std::forward<MultiPolygonT>(value));
return *
this; }
160 bool m_polygonHasBeenSet =
false;
163 bool m_circleHasBeenSet =
false;
166 bool m_geobufHasBeenSet =
false;
169 bool m_multiPolygonHasBeenSet =
false;
bool MultiPolygonHasBeenSet() const
bool PolygonHasBeenSet() const
GeofenceGeometry & WithGeobuf(GeobufT &&value)
GeofenceGeometry & AddPolygon(PolygonT &&value)
AWS_LOCATIONSERVICE_API GeofenceGeometry & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_LOCATIONSERVICE_API GeofenceGeometry(Aws::Utils::Json::JsonView jsonValue)
AWS_LOCATIONSERVICE_API GeofenceGeometry()=default
const Aws::Utils::CryptoBuffer & GetGeobuf() const
void SetMultiPolygon(MultiPolygonT &&value)
GeofenceGeometry & WithCircle(CircleT &&value)
bool CircleHasBeenSet() const
void SetPolygon(PolygonT &&value)
const Aws::Vector< Aws::Vector< Aws::Vector< double > > > & GetPolygon() const
bool GeobufHasBeenSet() const
const Circle & GetCircle() const
GeofenceGeometry & WithPolygon(PolygonT &&value)
const Aws::Vector< Aws::Vector< Aws::Vector< Aws::Vector< double > > > > & GetMultiPolygon() const
GeofenceGeometry & WithMultiPolygon(MultiPolygonT &&value)
void SetCircle(CircleT &&value)
GeofenceGeometry & AddMultiPolygon(MultiPolygonT &&value)
AWS_LOCATIONSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const
void SetGeobuf(GeobufT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue