AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
RegionOfInterest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/rekognition/Rekognition_EXPORTS.h>
9#include <aws/rekognition/model/BoundingBox.h>
10#include <aws/rekognition/model/Point.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace Rekognition {
22namespace Model {
23
36 public:
37 AWS_REKOGNITION_API RegionOfInterest() = default;
38 AWS_REKOGNITION_API RegionOfInterest(Aws::Utils::Json::JsonView jsonValue);
39 AWS_REKOGNITION_API RegionOfInterest& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_REKOGNITION_API Aws::Utils::Json::JsonValue Jsonize() const;
41
43
46 inline const BoundingBox& GetBoundingBox() const { return m_boundingBox; }
47 inline bool BoundingBoxHasBeenSet() const { return m_boundingBoxHasBeenSet; }
48 template <typename BoundingBoxT = BoundingBox>
49 void SetBoundingBox(BoundingBoxT&& value) {
50 m_boundingBoxHasBeenSet = true;
51 m_boundingBox = std::forward<BoundingBoxT>(value);
52 }
53 template <typename BoundingBoxT = BoundingBox>
54 RegionOfInterest& WithBoundingBox(BoundingBoxT&& value) {
55 SetBoundingBox(std::forward<BoundingBoxT>(value));
56 return *this;
57 }
59
61
65 inline const Aws::Vector<Point>& GetPolygon() const { return m_polygon; }
66 inline bool PolygonHasBeenSet() const { return m_polygonHasBeenSet; }
67 template <typename PolygonT = Aws::Vector<Point>>
68 void SetPolygon(PolygonT&& value) {
69 m_polygonHasBeenSet = true;
70 m_polygon = std::forward<PolygonT>(value);
71 }
72 template <typename PolygonT = Aws::Vector<Point>>
73 RegionOfInterest& WithPolygon(PolygonT&& value) {
74 SetPolygon(std::forward<PolygonT>(value));
75 return *this;
76 }
77 template <typename PolygonT = Point>
78 RegionOfInterest& AddPolygon(PolygonT&& value) {
79 m_polygonHasBeenSet = true;
80 m_polygon.emplace_back(std::forward<PolygonT>(value));
81 return *this;
82 }
84 private:
85 BoundingBox m_boundingBox;
86
87 Aws::Vector<Point> m_polygon;
88 bool m_boundingBoxHasBeenSet = false;
89 bool m_polygonHasBeenSet = false;
90};
91
92} // namespace Model
93} // namespace Rekognition
94} // namespace Aws
const Aws::Vector< Point > & GetPolygon() const
AWS_REKOGNITION_API RegionOfInterest()=default
AWS_REKOGNITION_API Aws::Utils::Json::JsonValue Jsonize() const
RegionOfInterest & WithBoundingBox(BoundingBoxT &&value)
RegionOfInterest & AddPolygon(PolygonT &&value)
AWS_REKOGNITION_API RegionOfInterest & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetBoundingBox(BoundingBoxT &&value)
const BoundingBox & GetBoundingBox() const
AWS_REKOGNITION_API RegionOfInterest(Aws::Utils::Json::JsonView jsonValue)
RegionOfInterest & WithPolygon(PolygonT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue