AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
ExpenseField.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/textract/Textract_EXPORTS.h>
9#include <aws/textract/model/ExpenseCurrency.h>
10#include <aws/textract/model/ExpenseDetection.h>
11#include <aws/textract/model/ExpenseGroupProperty.h>
12#include <aws/textract/model/ExpenseType.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace Textract {
24namespace Model {
25
33 public:
34 AWS_TEXTRACT_API ExpenseField() = default;
35 AWS_TEXTRACT_API ExpenseField(Aws::Utils::Json::JsonView jsonValue);
37 AWS_TEXTRACT_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
44 inline const ExpenseType& GetType() const { return m_type; }
45 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
46 template <typename TypeT = ExpenseType>
47 void SetType(TypeT&& value) {
48 m_typeHasBeenSet = true;
49 m_type = std::forward<TypeT>(value);
50 }
51 template <typename TypeT = ExpenseType>
52 ExpenseField& WithType(TypeT&& value) {
53 SetType(std::forward<TypeT>(value));
54 return *this;
55 }
57
59
62 inline const ExpenseDetection& GetLabelDetection() const { return m_labelDetection; }
63 inline bool LabelDetectionHasBeenSet() const { return m_labelDetectionHasBeenSet; }
64 template <typename LabelDetectionT = ExpenseDetection>
65 void SetLabelDetection(LabelDetectionT&& value) {
66 m_labelDetectionHasBeenSet = true;
67 m_labelDetection = std::forward<LabelDetectionT>(value);
68 }
69 template <typename LabelDetectionT = ExpenseDetection>
70 ExpenseField& WithLabelDetection(LabelDetectionT&& value) {
71 SetLabelDetection(std::forward<LabelDetectionT>(value));
72 return *this;
73 }
75
77
81 inline const ExpenseDetection& GetValueDetection() const { return m_valueDetection; }
82 inline bool ValueDetectionHasBeenSet() const { return m_valueDetectionHasBeenSet; }
83 template <typename ValueDetectionT = ExpenseDetection>
84 void SetValueDetection(ValueDetectionT&& value) {
85 m_valueDetectionHasBeenSet = true;
86 m_valueDetection = std::forward<ValueDetectionT>(value);
87 }
88 template <typename ValueDetectionT = ExpenseDetection>
89 ExpenseField& WithValueDetection(ValueDetectionT&& value) {
90 SetValueDetection(std::forward<ValueDetectionT>(value));
91 return *this;
92 }
94
96
99 inline int GetPageNumber() const { return m_pageNumber; }
100 inline bool PageNumberHasBeenSet() const { return m_pageNumberHasBeenSet; }
101 inline void SetPageNumber(int value) {
102 m_pageNumberHasBeenSet = true;
103 m_pageNumber = value;
104 }
105 inline ExpenseField& WithPageNumber(int value) {
106 SetPageNumber(value);
107 return *this;
108 }
110
112
116 inline const ExpenseCurrency& GetCurrency() const { return m_currency; }
117 inline bool CurrencyHasBeenSet() const { return m_currencyHasBeenSet; }
118 template <typename CurrencyT = ExpenseCurrency>
119 void SetCurrency(CurrencyT&& value) {
120 m_currencyHasBeenSet = true;
121 m_currency = std::forward<CurrencyT>(value);
122 }
123 template <typename CurrencyT = ExpenseCurrency>
124 ExpenseField& WithCurrency(CurrencyT&& value) {
125 SetCurrency(std::forward<CurrencyT>(value));
126 return *this;
127 }
129
131
135 inline const Aws::Vector<ExpenseGroupProperty>& GetGroupProperties() const { return m_groupProperties; }
136 inline bool GroupPropertiesHasBeenSet() const { return m_groupPropertiesHasBeenSet; }
137 template <typename GroupPropertiesT = Aws::Vector<ExpenseGroupProperty>>
138 void SetGroupProperties(GroupPropertiesT&& value) {
139 m_groupPropertiesHasBeenSet = true;
140 m_groupProperties = std::forward<GroupPropertiesT>(value);
141 }
142 template <typename GroupPropertiesT = Aws::Vector<ExpenseGroupProperty>>
143 ExpenseField& WithGroupProperties(GroupPropertiesT&& value) {
144 SetGroupProperties(std::forward<GroupPropertiesT>(value));
145 return *this;
146 }
147 template <typename GroupPropertiesT = ExpenseGroupProperty>
148 ExpenseField& AddGroupProperties(GroupPropertiesT&& value) {
149 m_groupPropertiesHasBeenSet = true;
150 m_groupProperties.emplace_back(std::forward<GroupPropertiesT>(value));
151 return *this;
152 }
154 private:
155 ExpenseType m_type;
156
157 ExpenseDetection m_labelDetection;
158
159 ExpenseDetection m_valueDetection;
160
161 int m_pageNumber{0};
162
163 ExpenseCurrency m_currency;
164
165 Aws::Vector<ExpenseGroupProperty> m_groupProperties;
166 bool m_typeHasBeenSet = false;
167 bool m_labelDetectionHasBeenSet = false;
168 bool m_valueDetectionHasBeenSet = false;
169 bool m_pageNumberHasBeenSet = false;
170 bool m_currencyHasBeenSet = false;
171 bool m_groupPropertiesHasBeenSet = false;
172};
173
174} // namespace Model
175} // namespace Textract
176} // namespace Aws
ExpenseField & WithCurrency(CurrencyT &&value)
ExpenseField & WithLabelDetection(LabelDetectionT &&value)
const ExpenseDetection & GetValueDetection() const
ExpenseField & AddGroupProperties(GroupPropertiesT &&value)
void SetLabelDetection(LabelDetectionT &&value)
void SetValueDetection(ValueDetectionT &&value)
const ExpenseDetection & GetLabelDetection() const
void SetGroupProperties(GroupPropertiesT &&value)
void SetCurrency(CurrencyT &&value)
ExpenseField & WithPageNumber(int value)
const ExpenseCurrency & GetCurrency() const
AWS_TEXTRACT_API ExpenseField(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< ExpenseGroupProperty > & GetGroupProperties() const
AWS_TEXTRACT_API ExpenseField & operator=(Aws::Utils::Json::JsonView jsonValue)
ExpenseField & WithType(TypeT &&value)
const ExpenseType & GetType() const
AWS_TEXTRACT_API Aws::Utils::Json::JsonValue Jsonize() const
ExpenseField & WithValueDetection(ValueDetectionT &&value)
ExpenseField & WithGroupProperties(GroupPropertiesT &&value)
AWS_TEXTRACT_API ExpenseField()=default
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue