1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/rekognition/Rekognition_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSVector.h> 9 #include <aws/rekognition/model/OrientationCorrection.h> 10 #include <aws/rekognition/model/Celebrity.h> 11 #include <aws/rekognition/model/ComparedFace.h> 12 #include <utility> 13 14 namespace Aws 15 { 16 template<typename RESULT_TYPE> 17 class AmazonWebServiceResult; 18 19 namespace Utils 20 { 21 namespace Json 22 { 23 class JsonValue; 24 } // namespace Json 25 } // namespace Utils 26 namespace Rekognition 27 { 28 namespace Model 29 { 30 class AWS_REKOGNITION_API RecognizeCelebritiesResult 31 { 32 public: 33 RecognizeCelebritiesResult(); 34 RecognizeCelebritiesResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result); 35 RecognizeCelebritiesResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result); 36 37 38 /** 39 * <p>Details about each celebrity found in the image. Amazon Rekognition can 40 * detect a maximum of 64 celebrities in an image. Each celebrity object includes 41 * the following attributes: <code>Face</code>, <code>Confidence</code>, 42 * <code>Emotions</code>, <code>Landmarks</code>, <code>Pose</code>, 43 * <code>Quality</code>, <code>Smile</code>, <code>Id</code>, 44 * <code>KnownGender</code>, <code>MatchConfidence</code>, <code>Name</code>, 45 * <code>Urls</code>.</p> 46 */ GetCelebrityFaces()47 inline const Aws::Vector<Celebrity>& GetCelebrityFaces() const{ return m_celebrityFaces; } 48 49 /** 50 * <p>Details about each celebrity found in the image. Amazon Rekognition can 51 * detect a maximum of 64 celebrities in an image. Each celebrity object includes 52 * the following attributes: <code>Face</code>, <code>Confidence</code>, 53 * <code>Emotions</code>, <code>Landmarks</code>, <code>Pose</code>, 54 * <code>Quality</code>, <code>Smile</code>, <code>Id</code>, 55 * <code>KnownGender</code>, <code>MatchConfidence</code>, <code>Name</code>, 56 * <code>Urls</code>.</p> 57 */ SetCelebrityFaces(const Aws::Vector<Celebrity> & value)58 inline void SetCelebrityFaces(const Aws::Vector<Celebrity>& value) { m_celebrityFaces = value; } 59 60 /** 61 * <p>Details about each celebrity found in the image. Amazon Rekognition can 62 * detect a maximum of 64 celebrities in an image. Each celebrity object includes 63 * the following attributes: <code>Face</code>, <code>Confidence</code>, 64 * <code>Emotions</code>, <code>Landmarks</code>, <code>Pose</code>, 65 * <code>Quality</code>, <code>Smile</code>, <code>Id</code>, 66 * <code>KnownGender</code>, <code>MatchConfidence</code>, <code>Name</code>, 67 * <code>Urls</code>.</p> 68 */ SetCelebrityFaces(Aws::Vector<Celebrity> && value)69 inline void SetCelebrityFaces(Aws::Vector<Celebrity>&& value) { m_celebrityFaces = std::move(value); } 70 71 /** 72 * <p>Details about each celebrity found in the image. Amazon Rekognition can 73 * detect a maximum of 64 celebrities in an image. Each celebrity object includes 74 * the following attributes: <code>Face</code>, <code>Confidence</code>, 75 * <code>Emotions</code>, <code>Landmarks</code>, <code>Pose</code>, 76 * <code>Quality</code>, <code>Smile</code>, <code>Id</code>, 77 * <code>KnownGender</code>, <code>MatchConfidence</code>, <code>Name</code>, 78 * <code>Urls</code>.</p> 79 */ WithCelebrityFaces(const Aws::Vector<Celebrity> & value)80 inline RecognizeCelebritiesResult& WithCelebrityFaces(const Aws::Vector<Celebrity>& value) { SetCelebrityFaces(value); return *this;} 81 82 /** 83 * <p>Details about each celebrity found in the image. Amazon Rekognition can 84 * detect a maximum of 64 celebrities in an image. Each celebrity object includes 85 * the following attributes: <code>Face</code>, <code>Confidence</code>, 86 * <code>Emotions</code>, <code>Landmarks</code>, <code>Pose</code>, 87 * <code>Quality</code>, <code>Smile</code>, <code>Id</code>, 88 * <code>KnownGender</code>, <code>MatchConfidence</code>, <code>Name</code>, 89 * <code>Urls</code>.</p> 90 */ WithCelebrityFaces(Aws::Vector<Celebrity> && value)91 inline RecognizeCelebritiesResult& WithCelebrityFaces(Aws::Vector<Celebrity>&& value) { SetCelebrityFaces(std::move(value)); return *this;} 92 93 /** 94 * <p>Details about each celebrity found in the image. Amazon Rekognition can 95 * detect a maximum of 64 celebrities in an image. Each celebrity object includes 96 * the following attributes: <code>Face</code>, <code>Confidence</code>, 97 * <code>Emotions</code>, <code>Landmarks</code>, <code>Pose</code>, 98 * <code>Quality</code>, <code>Smile</code>, <code>Id</code>, 99 * <code>KnownGender</code>, <code>MatchConfidence</code>, <code>Name</code>, 100 * <code>Urls</code>.</p> 101 */ AddCelebrityFaces(const Celebrity & value)102 inline RecognizeCelebritiesResult& AddCelebrityFaces(const Celebrity& value) { m_celebrityFaces.push_back(value); return *this; } 103 104 /** 105 * <p>Details about each celebrity found in the image. Amazon Rekognition can 106 * detect a maximum of 64 celebrities in an image. Each celebrity object includes 107 * the following attributes: <code>Face</code>, <code>Confidence</code>, 108 * <code>Emotions</code>, <code>Landmarks</code>, <code>Pose</code>, 109 * <code>Quality</code>, <code>Smile</code>, <code>Id</code>, 110 * <code>KnownGender</code>, <code>MatchConfidence</code>, <code>Name</code>, 111 * <code>Urls</code>.</p> 112 */ AddCelebrityFaces(Celebrity && value)113 inline RecognizeCelebritiesResult& AddCelebrityFaces(Celebrity&& value) { m_celebrityFaces.push_back(std::move(value)); return *this; } 114 115 116 /** 117 * <p>Details about each unrecognized face in the image.</p> 118 */ GetUnrecognizedFaces()119 inline const Aws::Vector<ComparedFace>& GetUnrecognizedFaces() const{ return m_unrecognizedFaces; } 120 121 /** 122 * <p>Details about each unrecognized face in the image.</p> 123 */ SetUnrecognizedFaces(const Aws::Vector<ComparedFace> & value)124 inline void SetUnrecognizedFaces(const Aws::Vector<ComparedFace>& value) { m_unrecognizedFaces = value; } 125 126 /** 127 * <p>Details about each unrecognized face in the image.</p> 128 */ SetUnrecognizedFaces(Aws::Vector<ComparedFace> && value)129 inline void SetUnrecognizedFaces(Aws::Vector<ComparedFace>&& value) { m_unrecognizedFaces = std::move(value); } 130 131 /** 132 * <p>Details about each unrecognized face in the image.</p> 133 */ WithUnrecognizedFaces(const Aws::Vector<ComparedFace> & value)134 inline RecognizeCelebritiesResult& WithUnrecognizedFaces(const Aws::Vector<ComparedFace>& value) { SetUnrecognizedFaces(value); return *this;} 135 136 /** 137 * <p>Details about each unrecognized face in the image.</p> 138 */ WithUnrecognizedFaces(Aws::Vector<ComparedFace> && value)139 inline RecognizeCelebritiesResult& WithUnrecognizedFaces(Aws::Vector<ComparedFace>&& value) { SetUnrecognizedFaces(std::move(value)); return *this;} 140 141 /** 142 * <p>Details about each unrecognized face in the image.</p> 143 */ AddUnrecognizedFaces(const ComparedFace & value)144 inline RecognizeCelebritiesResult& AddUnrecognizedFaces(const ComparedFace& value) { m_unrecognizedFaces.push_back(value); return *this; } 145 146 /** 147 * <p>Details about each unrecognized face in the image.</p> 148 */ AddUnrecognizedFaces(ComparedFace && value)149 inline RecognizeCelebritiesResult& AddUnrecognizedFaces(ComparedFace&& value) { m_unrecognizedFaces.push_back(std::move(value)); return *this; } 150 151 152 /** 153 * <p>Support for estimating image orientation using the the 154 * OrientationCorrection field has ceased as of August 2021. Any returned values 155 * for this field included in an API response will always be NULL.</p> 156 * <p>The orientation of the input image (counterclockwise direction). If your 157 * application displays the image, you can use this value to correct the 158 * orientation. The bounding box coordinates returned in 159 * <code>CelebrityFaces</code> and <code>UnrecognizedFaces</code> represent face 160 * locations before the image orientation is corrected. </p> <p>If the input 161 * image is in .jpeg format, it might contain exchangeable image (Exif) metadata 162 * that includes the image's orientation. If so, and the Exif metadata for the 163 * input image populates the orientation field, the value of 164 * <code>OrientationCorrection</code> is null. The <code>CelebrityFaces</code> and 165 * <code>UnrecognizedFaces</code> bounding box coordinates represent face locations 166 * after Exif metadata is used to correct the image orientation. Images in .png 167 * format don't contain Exif metadata. </p> 168 */ GetOrientationCorrection()169 inline const OrientationCorrection& GetOrientationCorrection() const{ return m_orientationCorrection; } 170 171 /** 172 * <p>Support for estimating image orientation using the the 173 * OrientationCorrection field has ceased as of August 2021. Any returned values 174 * for this field included in an API response will always be NULL.</p> 175 * <p>The orientation of the input image (counterclockwise direction). If your 176 * application displays the image, you can use this value to correct the 177 * orientation. The bounding box coordinates returned in 178 * <code>CelebrityFaces</code> and <code>UnrecognizedFaces</code> represent face 179 * locations before the image orientation is corrected. </p> <p>If the input 180 * image is in .jpeg format, it might contain exchangeable image (Exif) metadata 181 * that includes the image's orientation. If so, and the Exif metadata for the 182 * input image populates the orientation field, the value of 183 * <code>OrientationCorrection</code> is null. The <code>CelebrityFaces</code> and 184 * <code>UnrecognizedFaces</code> bounding box coordinates represent face locations 185 * after Exif metadata is used to correct the image orientation. Images in .png 186 * format don't contain Exif metadata. </p> 187 */ SetOrientationCorrection(const OrientationCorrection & value)188 inline void SetOrientationCorrection(const OrientationCorrection& value) { m_orientationCorrection = value; } 189 190 /** 191 * <p>Support for estimating image orientation using the the 192 * OrientationCorrection field has ceased as of August 2021. Any returned values 193 * for this field included in an API response will always be NULL.</p> 194 * <p>The orientation of the input image (counterclockwise direction). If your 195 * application displays the image, you can use this value to correct the 196 * orientation. The bounding box coordinates returned in 197 * <code>CelebrityFaces</code> and <code>UnrecognizedFaces</code> represent face 198 * locations before the image orientation is corrected. </p> <p>If the input 199 * image is in .jpeg format, it might contain exchangeable image (Exif) metadata 200 * that includes the image's orientation. If so, and the Exif metadata for the 201 * input image populates the orientation field, the value of 202 * <code>OrientationCorrection</code> is null. The <code>CelebrityFaces</code> and 203 * <code>UnrecognizedFaces</code> bounding box coordinates represent face locations 204 * after Exif metadata is used to correct the image orientation. Images in .png 205 * format don't contain Exif metadata. </p> 206 */ SetOrientationCorrection(OrientationCorrection && value)207 inline void SetOrientationCorrection(OrientationCorrection&& value) { m_orientationCorrection = std::move(value); } 208 209 /** 210 * <p>Support for estimating image orientation using the the 211 * OrientationCorrection field has ceased as of August 2021. Any returned values 212 * for this field included in an API response will always be NULL.</p> 213 * <p>The orientation of the input image (counterclockwise direction). If your 214 * application displays the image, you can use this value to correct the 215 * orientation. The bounding box coordinates returned in 216 * <code>CelebrityFaces</code> and <code>UnrecognizedFaces</code> represent face 217 * locations before the image orientation is corrected. </p> <p>If the input 218 * image is in .jpeg format, it might contain exchangeable image (Exif) metadata 219 * that includes the image's orientation. If so, and the Exif metadata for the 220 * input image populates the orientation field, the value of 221 * <code>OrientationCorrection</code> is null. The <code>CelebrityFaces</code> and 222 * <code>UnrecognizedFaces</code> bounding box coordinates represent face locations 223 * after Exif metadata is used to correct the image orientation. Images in .png 224 * format don't contain Exif metadata. </p> 225 */ WithOrientationCorrection(const OrientationCorrection & value)226 inline RecognizeCelebritiesResult& WithOrientationCorrection(const OrientationCorrection& value) { SetOrientationCorrection(value); return *this;} 227 228 /** 229 * <p>Support for estimating image orientation using the the 230 * OrientationCorrection field has ceased as of August 2021. Any returned values 231 * for this field included in an API response will always be NULL.</p> 232 * <p>The orientation of the input image (counterclockwise direction). If your 233 * application displays the image, you can use this value to correct the 234 * orientation. The bounding box coordinates returned in 235 * <code>CelebrityFaces</code> and <code>UnrecognizedFaces</code> represent face 236 * locations before the image orientation is corrected. </p> <p>If the input 237 * image is in .jpeg format, it might contain exchangeable image (Exif) metadata 238 * that includes the image's orientation. If so, and the Exif metadata for the 239 * input image populates the orientation field, the value of 240 * <code>OrientationCorrection</code> is null. The <code>CelebrityFaces</code> and 241 * <code>UnrecognizedFaces</code> bounding box coordinates represent face locations 242 * after Exif metadata is used to correct the image orientation. Images in .png 243 * format don't contain Exif metadata. </p> 244 */ WithOrientationCorrection(OrientationCorrection && value)245 inline RecognizeCelebritiesResult& WithOrientationCorrection(OrientationCorrection&& value) { SetOrientationCorrection(std::move(value)); return *this;} 246 247 private: 248 249 Aws::Vector<Celebrity> m_celebrityFaces; 250 251 Aws::Vector<ComparedFace> m_unrecognizedFaces; 252 253 OrientationCorrection m_orientationCorrection; 254 }; 255 256 } // namespace Model 257 } // namespace Rekognition 258 } // namespace Aws 259