AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
FaceDetail.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/AgeRange.h>
10#include <aws/rekognition/model/Beard.h>
11#include <aws/rekognition/model/BoundingBox.h>
12#include <aws/rekognition/model/Emotion.h>
13#include <aws/rekognition/model/EyeDirection.h>
14#include <aws/rekognition/model/EyeOpen.h>
15#include <aws/rekognition/model/Eyeglasses.h>
16#include <aws/rekognition/model/FaceOccluded.h>
17#include <aws/rekognition/model/Gender.h>
18#include <aws/rekognition/model/ImageQuality.h>
19#include <aws/rekognition/model/Landmark.h>
20#include <aws/rekognition/model/MouthOpen.h>
21#include <aws/rekognition/model/Mustache.h>
22#include <aws/rekognition/model/Pose.h>
23#include <aws/rekognition/model/Smile.h>
24#include <aws/rekognition/model/Sunglasses.h>
25
26#include <utility>
27
28namespace Aws {
29namespace Utils {
30namespace Json {
31class JsonValue;
32class JsonView;
33} // namespace Json
34} // namespace Utils
35namespace Rekognition {
36namespace Model {
37
61 public:
62 AWS_REKOGNITION_API FaceDetail() = default;
63 AWS_REKOGNITION_API FaceDetail(Aws::Utils::Json::JsonView jsonValue);
64 AWS_REKOGNITION_API FaceDetail& operator=(Aws::Utils::Json::JsonView jsonValue);
65 AWS_REKOGNITION_API Aws::Utils::Json::JsonValue Jsonize() const;
66
68
71 inline const BoundingBox& GetBoundingBox() const { return m_boundingBox; }
72 inline bool BoundingBoxHasBeenSet() const { return m_boundingBoxHasBeenSet; }
73 template <typename BoundingBoxT = BoundingBox>
74 void SetBoundingBox(BoundingBoxT&& value) {
75 m_boundingBoxHasBeenSet = true;
76 m_boundingBox = std::forward<BoundingBoxT>(value);
77 }
78 template <typename BoundingBoxT = BoundingBox>
79 FaceDetail& WithBoundingBox(BoundingBoxT&& value) {
80 SetBoundingBox(std::forward<BoundingBoxT>(value));
81 return *this;
82 }
84
86
90 inline const AgeRange& GetAgeRange() const { return m_ageRange; }
91 inline bool AgeRangeHasBeenSet() const { return m_ageRangeHasBeenSet; }
92 template <typename AgeRangeT = AgeRange>
93 void SetAgeRange(AgeRangeT&& value) {
94 m_ageRangeHasBeenSet = true;
95 m_ageRange = std::forward<AgeRangeT>(value);
96 }
97 template <typename AgeRangeT = AgeRange>
98 FaceDetail& WithAgeRange(AgeRangeT&& value) {
99 SetAgeRange(std::forward<AgeRangeT>(value));
100 return *this;
101 }
103
105
109 inline const Smile& GetSmile() const { return m_smile; }
110 inline bool SmileHasBeenSet() const { return m_smileHasBeenSet; }
111 template <typename SmileT = Smile>
112 void SetSmile(SmileT&& value) {
113 m_smileHasBeenSet = true;
114 m_smile = std::forward<SmileT>(value);
115 }
116 template <typename SmileT = Smile>
117 FaceDetail& WithSmile(SmileT&& value) {
118 SetSmile(std::forward<SmileT>(value));
119 return *this;
120 }
122
124
128 inline const Eyeglasses& GetEyeglasses() const { return m_eyeglasses; }
129 inline bool EyeglassesHasBeenSet() const { return m_eyeglassesHasBeenSet; }
130 template <typename EyeglassesT = Eyeglasses>
131 void SetEyeglasses(EyeglassesT&& value) {
132 m_eyeglassesHasBeenSet = true;
133 m_eyeglasses = std::forward<EyeglassesT>(value);
134 }
135 template <typename EyeglassesT = Eyeglasses>
136 FaceDetail& WithEyeglasses(EyeglassesT&& value) {
137 SetEyeglasses(std::forward<EyeglassesT>(value));
138 return *this;
139 }
141
143
147 inline const Sunglasses& GetSunglasses() const { return m_sunglasses; }
148 inline bool SunglassesHasBeenSet() const { return m_sunglassesHasBeenSet; }
149 template <typename SunglassesT = Sunglasses>
150 void SetSunglasses(SunglassesT&& value) {
151 m_sunglassesHasBeenSet = true;
152 m_sunglasses = std::forward<SunglassesT>(value);
153 }
154 template <typename SunglassesT = Sunglasses>
155 FaceDetail& WithSunglasses(SunglassesT&& value) {
156 SetSunglasses(std::forward<SunglassesT>(value));
157 return *this;
158 }
160
162
165 inline const Gender& GetGender() const { return m_gender; }
166 inline bool GenderHasBeenSet() const { return m_genderHasBeenSet; }
167 template <typename GenderT = Gender>
168 void SetGender(GenderT&& value) {
169 m_genderHasBeenSet = true;
170 m_gender = std::forward<GenderT>(value);
171 }
172 template <typename GenderT = Gender>
173 FaceDetail& WithGender(GenderT&& value) {
174 SetGender(std::forward<GenderT>(value));
175 return *this;
176 }
178
180
184 inline const Beard& GetBeard() const { return m_beard; }
185 inline bool BeardHasBeenSet() const { return m_beardHasBeenSet; }
186 template <typename BeardT = Beard>
187 void SetBeard(BeardT&& value) {
188 m_beardHasBeenSet = true;
189 m_beard = std::forward<BeardT>(value);
190 }
191 template <typename BeardT = Beard>
192 FaceDetail& WithBeard(BeardT&& value) {
193 SetBeard(std::forward<BeardT>(value));
194 return *this;
195 }
197
199
203 inline const Mustache& GetMustache() const { return m_mustache; }
204 inline bool MustacheHasBeenSet() const { return m_mustacheHasBeenSet; }
205 template <typename MustacheT = Mustache>
206 void SetMustache(MustacheT&& value) {
207 m_mustacheHasBeenSet = true;
208 m_mustache = std::forward<MustacheT>(value);
209 }
210 template <typename MustacheT = Mustache>
211 FaceDetail& WithMustache(MustacheT&& value) {
212 SetMustache(std::forward<MustacheT>(value));
213 return *this;
214 }
216
218
222 inline const EyeOpen& GetEyesOpen() const { return m_eyesOpen; }
223 inline bool EyesOpenHasBeenSet() const { return m_eyesOpenHasBeenSet; }
224 template <typename EyesOpenT = EyeOpen>
225 void SetEyesOpen(EyesOpenT&& value) {
226 m_eyesOpenHasBeenSet = true;
227 m_eyesOpen = std::forward<EyesOpenT>(value);
228 }
229 template <typename EyesOpenT = EyeOpen>
230 FaceDetail& WithEyesOpen(EyesOpenT&& value) {
231 SetEyesOpen(std::forward<EyesOpenT>(value));
232 return *this;
233 }
235
237
241 inline const MouthOpen& GetMouthOpen() const { return m_mouthOpen; }
242 inline bool MouthOpenHasBeenSet() const { return m_mouthOpenHasBeenSet; }
243 template <typename MouthOpenT = MouthOpen>
244 void SetMouthOpen(MouthOpenT&& value) {
245 m_mouthOpenHasBeenSet = true;
246 m_mouthOpen = std::forward<MouthOpenT>(value);
247 }
248 template <typename MouthOpenT = MouthOpen>
249 FaceDetail& WithMouthOpen(MouthOpenT&& value) {
250 SetMouthOpen(std::forward<MouthOpenT>(value));
251 return *this;
252 }
254
256
264 inline const Aws::Vector<Emotion>& GetEmotions() const { return m_emotions; }
265 inline bool EmotionsHasBeenSet() const { return m_emotionsHasBeenSet; }
266 template <typename EmotionsT = Aws::Vector<Emotion>>
267 void SetEmotions(EmotionsT&& value) {
268 m_emotionsHasBeenSet = true;
269 m_emotions = std::forward<EmotionsT>(value);
270 }
271 template <typename EmotionsT = Aws::Vector<Emotion>>
272 FaceDetail& WithEmotions(EmotionsT&& value) {
273 SetEmotions(std::forward<EmotionsT>(value));
274 return *this;
275 }
276 template <typename EmotionsT = Emotion>
277 FaceDetail& AddEmotions(EmotionsT&& value) {
278 m_emotionsHasBeenSet = true;
279 m_emotions.emplace_back(std::forward<EmotionsT>(value));
280 return *this;
281 }
283
285
288 inline const Aws::Vector<Landmark>& GetLandmarks() const { return m_landmarks; }
289 inline bool LandmarksHasBeenSet() const { return m_landmarksHasBeenSet; }
290 template <typename LandmarksT = Aws::Vector<Landmark>>
291 void SetLandmarks(LandmarksT&& value) {
292 m_landmarksHasBeenSet = true;
293 m_landmarks = std::forward<LandmarksT>(value);
294 }
295 template <typename LandmarksT = Aws::Vector<Landmark>>
296 FaceDetail& WithLandmarks(LandmarksT&& value) {
297 SetLandmarks(std::forward<LandmarksT>(value));
298 return *this;
299 }
300 template <typename LandmarksT = Landmark>
301 FaceDetail& AddLandmarks(LandmarksT&& value) {
302 m_landmarksHasBeenSet = true;
303 m_landmarks.emplace_back(std::forward<LandmarksT>(value));
304 return *this;
305 }
307
309
313 inline const Pose& GetPose() const { return m_pose; }
314 inline bool PoseHasBeenSet() const { return m_poseHasBeenSet; }
315 template <typename PoseT = Pose>
316 void SetPose(PoseT&& value) {
317 m_poseHasBeenSet = true;
318 m_pose = std::forward<PoseT>(value);
319 }
320 template <typename PoseT = Pose>
321 FaceDetail& WithPose(PoseT&& value) {
322 SetPose(std::forward<PoseT>(value));
323 return *this;
324 }
326
328
331 inline const ImageQuality& GetQuality() const { return m_quality; }
332 inline bool QualityHasBeenSet() const { return m_qualityHasBeenSet; }
333 template <typename QualityT = ImageQuality>
334 void SetQuality(QualityT&& value) {
335 m_qualityHasBeenSet = true;
336 m_quality = std::forward<QualityT>(value);
337 }
338 template <typename QualityT = ImageQuality>
339 FaceDetail& WithQuality(QualityT&& value) {
340 SetQuality(std::forward<QualityT>(value));
341 return *this;
342 }
344
346
350 inline double GetConfidence() const { return m_confidence; }
351 inline bool ConfidenceHasBeenSet() const { return m_confidenceHasBeenSet; }
352 inline void SetConfidence(double value) {
353 m_confidenceHasBeenSet = true;
354 m_confidence = value;
355 }
356 inline FaceDetail& WithConfidence(double value) {
357 SetConfidence(value);
358 return *this;
359 }
361
363
371 inline const FaceOccluded& GetFaceOccluded() const { return m_faceOccluded; }
372 inline bool FaceOccludedHasBeenSet() const { return m_faceOccludedHasBeenSet; }
373 template <typename FaceOccludedT = FaceOccluded>
374 void SetFaceOccluded(FaceOccludedT&& value) {
375 m_faceOccludedHasBeenSet = true;
376 m_faceOccluded = std::forward<FaceOccludedT>(value);
377 }
378 template <typename FaceOccludedT = FaceOccluded>
379 FaceDetail& WithFaceOccluded(FaceOccludedT&& value) {
380 SetFaceOccluded(std::forward<FaceOccludedT>(value));
381 return *this;
382 }
384
386
390 inline const EyeDirection& GetEyeDirection() const { return m_eyeDirection; }
391 inline bool EyeDirectionHasBeenSet() const { return m_eyeDirectionHasBeenSet; }
392 template <typename EyeDirectionT = EyeDirection>
393 void SetEyeDirection(EyeDirectionT&& value) {
394 m_eyeDirectionHasBeenSet = true;
395 m_eyeDirection = std::forward<EyeDirectionT>(value);
396 }
397 template <typename EyeDirectionT = EyeDirection>
398 FaceDetail& WithEyeDirection(EyeDirectionT&& value) {
399 SetEyeDirection(std::forward<EyeDirectionT>(value));
400 return *this;
401 }
403 private:
404 BoundingBox m_boundingBox;
405
406 AgeRange m_ageRange;
407
408 Smile m_smile;
409
410 Eyeglasses m_eyeglasses;
411
412 Sunglasses m_sunglasses;
413
414 Gender m_gender;
415
416 Beard m_beard;
417
418 Mustache m_mustache;
419
420 EyeOpen m_eyesOpen;
421
422 MouthOpen m_mouthOpen;
423
424 Aws::Vector<Emotion> m_emotions;
425
426 Aws::Vector<Landmark> m_landmarks;
427
428 Pose m_pose;
429
430 ImageQuality m_quality;
431
432 double m_confidence{0.0};
433
434 FaceOccluded m_faceOccluded;
435
436 EyeDirection m_eyeDirection;
437 bool m_boundingBoxHasBeenSet = false;
438 bool m_ageRangeHasBeenSet = false;
439 bool m_smileHasBeenSet = false;
440 bool m_eyeglassesHasBeenSet = false;
441 bool m_sunglassesHasBeenSet = false;
442 bool m_genderHasBeenSet = false;
443 bool m_beardHasBeenSet = false;
444 bool m_mustacheHasBeenSet = false;
445 bool m_eyesOpenHasBeenSet = false;
446 bool m_mouthOpenHasBeenSet = false;
447 bool m_emotionsHasBeenSet = false;
448 bool m_landmarksHasBeenSet = false;
449 bool m_poseHasBeenSet = false;
450 bool m_qualityHasBeenSet = false;
451 bool m_confidenceHasBeenSet = false;
452 bool m_faceOccludedHasBeenSet = false;
453 bool m_eyeDirectionHasBeenSet = false;
454};
455
456} // namespace Model
457} // namespace Rekognition
458} // namespace Aws
void SetGender(GenderT &&value)
Definition FaceDetail.h:168
FaceDetail & WithLandmarks(LandmarksT &&value)
Definition FaceDetail.h:296
void SetAgeRange(AgeRangeT &&value)
Definition FaceDetail.h:93
const Gender & GetGender() const
Definition FaceDetail.h:165
const ImageQuality & GetQuality() const
Definition FaceDetail.h:331
FaceDetail & WithEyeDirection(EyeDirectionT &&value)
Definition FaceDetail.h:398
FaceDetail & WithBeard(BeardT &&value)
Definition FaceDetail.h:192
FaceDetail & WithBoundingBox(BoundingBoxT &&value)
Definition FaceDetail.h:79
void SetQuality(QualityT &&value)
Definition FaceDetail.h:334
const FaceOccluded & GetFaceOccluded() const
Definition FaceDetail.h:371
void SetFaceOccluded(FaceOccludedT &&value)
Definition FaceDetail.h:374
FaceDetail & WithGender(GenderT &&value)
Definition FaceDetail.h:173
const BoundingBox & GetBoundingBox() const
Definition FaceDetail.h:71
const Beard & GetBeard() const
Definition FaceDetail.h:184
void SetEmotions(EmotionsT &&value)
Definition FaceDetail.h:267
const Aws::Vector< Emotion > & GetEmotions() const
Definition FaceDetail.h:264
const EyeDirection & GetEyeDirection() const
Definition FaceDetail.h:390
void SetSunglasses(SunglassesT &&value)
Definition FaceDetail.h:150
const AgeRange & GetAgeRange() const
Definition FaceDetail.h:90
FaceDetail & AddEmotions(EmotionsT &&value)
Definition FaceDetail.h:277
FaceDetail & WithEyesOpen(EyesOpenT &&value)
Definition FaceDetail.h:230
FaceDetail & WithMouthOpen(MouthOpenT &&value)
Definition FaceDetail.h:249
const Aws::Vector< Landmark > & GetLandmarks() const
Definition FaceDetail.h:288
FaceDetail & WithPose(PoseT &&value)
Definition FaceDetail.h:321
void SetEyesOpen(EyesOpenT &&value)
Definition FaceDetail.h:225
void SetEyeglasses(EyeglassesT &&value)
Definition FaceDetail.h:131
void SetEyeDirection(EyeDirectionT &&value)
Definition FaceDetail.h:393
AWS_REKOGNITION_API FaceDetail(Aws::Utils::Json::JsonView jsonValue)
const Smile & GetSmile() const
Definition FaceDetail.h:109
void SetMustache(MustacheT &&value)
Definition FaceDetail.h:206
const EyeOpen & GetEyesOpen() const
Definition FaceDetail.h:222
AWS_REKOGNITION_API Aws::Utils::Json::JsonValue Jsonize() const
FaceDetail & AddLandmarks(LandmarksT &&value)
Definition FaceDetail.h:301
AWS_REKOGNITION_API FaceDetail()=default
FaceDetail & WithEyeglasses(EyeglassesT &&value)
Definition FaceDetail.h:136
FaceDetail & WithSunglasses(SunglassesT &&value)
Definition FaceDetail.h:155
FaceDetail & WithConfidence(double value)
Definition FaceDetail.h:356
FaceDetail & WithSmile(SmileT &&value)
Definition FaceDetail.h:117
FaceDetail & WithMustache(MustacheT &&value)
Definition FaceDetail.h:211
FaceDetail & WithFaceOccluded(FaceOccludedT &&value)
Definition FaceDetail.h:379
AWS_REKOGNITION_API FaceDetail & operator=(Aws::Utils::Json::JsonView jsonValue)
const MouthOpen & GetMouthOpen() const
Definition FaceDetail.h:241
FaceDetail & WithEmotions(EmotionsT &&value)
Definition FaceDetail.h:272
const Sunglasses & GetSunglasses() const
Definition FaceDetail.h:147
FaceDetail & WithAgeRange(AgeRangeT &&value)
Definition FaceDetail.h:98
void SetLandmarks(LandmarksT &&value)
Definition FaceDetail.h:291
void SetMouthOpen(MouthOpenT &&value)
Definition FaceDetail.h:244
const Eyeglasses & GetEyeglasses() const
Definition FaceDetail.h:128
FaceDetail & WithQuality(QualityT &&value)
Definition FaceDetail.h:339
const Mustache & GetMustache() const
Definition FaceDetail.h:203
void SetBoundingBox(BoundingBoxT &&value)
Definition FaceDetail.h:74
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue