AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Geometry.h
1
6#pragma once
7#include <aws/textract/Textract_EXPORTS.h>
8#include <aws/textract/model/BoundingBox.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/textract/model/Point.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace Textract
24{
25namespace Model
26{
27
36 {
37 public:
38 AWS_TEXTRACT_API Geometry() = default;
39 AWS_TEXTRACT_API Geometry(Aws::Utils::Json::JsonView jsonValue);
40 AWS_TEXTRACT_API Geometry& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_TEXTRACT_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
49 inline const BoundingBox& GetBoundingBox() const { return m_boundingBox; }
50 inline bool BoundingBoxHasBeenSet() const { return m_boundingBoxHasBeenSet; }
51 template<typename BoundingBoxT = BoundingBox>
52 void SetBoundingBox(BoundingBoxT&& value) { m_boundingBoxHasBeenSet = true; m_boundingBox = std::forward<BoundingBoxT>(value); }
53 template<typename BoundingBoxT = BoundingBox>
54 Geometry& WithBoundingBox(BoundingBoxT&& value) { SetBoundingBox(std::forward<BoundingBoxT>(value)); return *this;}
56
58
62 inline const Aws::Vector<Point>& GetPolygon() const { return m_polygon; }
63 inline bool PolygonHasBeenSet() const { return m_polygonHasBeenSet; }
64 template<typename PolygonT = Aws::Vector<Point>>
65 void SetPolygon(PolygonT&& value) { m_polygonHasBeenSet = true; m_polygon = std::forward<PolygonT>(value); }
66 template<typename PolygonT = Aws::Vector<Point>>
67 Geometry& WithPolygon(PolygonT&& value) { SetPolygon(std::forward<PolygonT>(value)); return *this;}
68 template<typename PolygonT = Point>
69 Geometry& AddPolygon(PolygonT&& value) { m_polygonHasBeenSet = true; m_polygon.emplace_back(std::forward<PolygonT>(value)); return *this; }
71
73
76 inline double GetRotationAngle() const { return m_rotationAngle; }
77 inline bool RotationAngleHasBeenSet() const { return m_rotationAngleHasBeenSet; }
78 inline void SetRotationAngle(double value) { m_rotationAngleHasBeenSet = true; m_rotationAngle = value; }
79 inline Geometry& WithRotationAngle(double value) { SetRotationAngle(value); return *this;}
81 private:
82
83 BoundingBox m_boundingBox;
84 bool m_boundingBoxHasBeenSet = false;
85
86 Aws::Vector<Point> m_polygon;
87 bool m_polygonHasBeenSet = false;
88
89 double m_rotationAngle{0.0};
90 bool m_rotationAngleHasBeenSet = false;
91 };
92
93} // namespace Model
94} // namespace Textract
95} // namespace Aws
Geometry & WithRotationAngle(double value)
Definition Geometry.h:79
Geometry & WithPolygon(PolygonT &&value)
Definition Geometry.h:67
const BoundingBox & GetBoundingBox() const
Definition Geometry.h:49
bool RotationAngleHasBeenSet() const
Definition Geometry.h:77
AWS_TEXTRACT_API Aws::Utils::Json::JsonValue Jsonize() const
bool BoundingBoxHasBeenSet() const
Definition Geometry.h:50
Geometry & AddPolygon(PolygonT &&value)
Definition Geometry.h:69
AWS_TEXTRACT_API Geometry(Aws::Utils::Json::JsonView jsonValue)
void SetRotationAngle(double value)
Definition Geometry.h:78
AWS_TEXTRACT_API Geometry & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetBoundingBox(BoundingBoxT &&value)
Definition Geometry.h:52
void SetPolygon(PolygonT &&value)
Definition Geometry.h:65
double GetRotationAngle() const
Definition Geometry.h:76
Geometry & WithBoundingBox(BoundingBoxT &&value)
Definition Geometry.h:54
const Aws::Vector< Point > & GetPolygon() const
Definition Geometry.h:62
AWS_TEXTRACT_API Geometry()=default
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue