/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once /* Generic header includes */ #include #include #include #include #include #include #include #include #include /* End of generic header includes */ /* Service model headers required in RekognitionClient header */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include /* End of service model headers required in RekognitionClient header */ namespace Aws { namespace Http { class HttpClient; class HttpClientFactory; } // namespace Http namespace Utils { template< typename R, typename E> class Outcome; namespace Threading { class Executor; } // namespace Threading } // namespace Utils namespace Auth { class AWSCredentials; class AWSCredentialsProvider; } // namespace Auth namespace Client { class RetryStrategy; } // namespace Client namespace Rekognition { using RekognitionClientConfiguration = Aws::Client::GenericClientConfiguration; using RekognitionEndpointProviderBase = Aws::Rekognition::Endpoint::RekognitionEndpointProviderBase; using RekognitionEndpointProvider = Aws::Rekognition::Endpoint::RekognitionEndpointProvider; namespace Model { /* Service model forward declarations required in RekognitionClient header */ class AssociateFacesRequest; class CompareFacesRequest; class CopyProjectVersionRequest; class CreateCollectionRequest; class CreateDatasetRequest; class CreateFaceLivenessSessionRequest; class CreateProjectRequest; class CreateProjectVersionRequest; class CreateStreamProcessorRequest; class CreateUserRequest; class DeleteCollectionRequest; class DeleteDatasetRequest; class DeleteFacesRequest; class DeleteProjectRequest; class DeleteProjectPolicyRequest; class DeleteProjectVersionRequest; class DeleteStreamProcessorRequest; class DeleteUserRequest; class DescribeCollectionRequest; class DescribeDatasetRequest; class DescribeProjectVersionsRequest; class DescribeProjectsRequest; class DescribeStreamProcessorRequest; class DetectCustomLabelsRequest; class DetectFacesRequest; class DetectLabelsRequest; class DetectModerationLabelsRequest; class DetectProtectiveEquipmentRequest; class DetectTextRequest; class DisassociateFacesRequest; class DistributeDatasetEntriesRequest; class GetCelebrityInfoRequest; class GetCelebrityRecognitionRequest; class GetContentModerationRequest; class GetFaceDetectionRequest; class GetFaceLivenessSessionResultsRequest; class GetFaceSearchRequest; class GetLabelDetectionRequest; class GetPersonTrackingRequest; class GetSegmentDetectionRequest; class GetTextDetectionRequest; class IndexFacesRequest; class ListCollectionsRequest; class ListDatasetEntriesRequest; class ListDatasetLabelsRequest; class ListFacesRequest; class ListProjectPoliciesRequest; class ListStreamProcessorsRequest; class ListTagsForResourceRequest; class ListUsersRequest; class PutProjectPolicyRequest; class RecognizeCelebritiesRequest; class SearchFacesRequest; class SearchFacesByImageRequest; class SearchUsersRequest; class SearchUsersByImageRequest; class StartCelebrityRecognitionRequest; class StartContentModerationRequest; class StartFaceDetectionRequest; class StartFaceSearchRequest; class StartLabelDetectionRequest; class StartPersonTrackingRequest; class StartProjectVersionRequest; class StartSegmentDetectionRequest; class StartStreamProcessorRequest; class StartTextDetectionRequest; class StopProjectVersionRequest; class StopStreamProcessorRequest; class TagResourceRequest; class UntagResourceRequest; class UpdateDatasetEntriesRequest; class UpdateStreamProcessorRequest; /* End of service model forward declarations required in RekognitionClient header */ /* Service model Outcome class definitions */ typedef Aws::Utils::Outcome AssociateFacesOutcome; typedef Aws::Utils::Outcome CompareFacesOutcome; typedef Aws::Utils::Outcome CopyProjectVersionOutcome; typedef Aws::Utils::Outcome CreateCollectionOutcome; typedef Aws::Utils::Outcome CreateDatasetOutcome; typedef Aws::Utils::Outcome CreateFaceLivenessSessionOutcome; typedef Aws::Utils::Outcome CreateProjectOutcome; typedef Aws::Utils::Outcome CreateProjectVersionOutcome; typedef Aws::Utils::Outcome CreateStreamProcessorOutcome; typedef Aws::Utils::Outcome CreateUserOutcome; typedef Aws::Utils::Outcome DeleteCollectionOutcome; typedef Aws::Utils::Outcome DeleteDatasetOutcome; typedef Aws::Utils::Outcome DeleteFacesOutcome; typedef Aws::Utils::Outcome DeleteProjectOutcome; typedef Aws::Utils::Outcome DeleteProjectPolicyOutcome; typedef Aws::Utils::Outcome DeleteProjectVersionOutcome; typedef Aws::Utils::Outcome DeleteStreamProcessorOutcome; typedef Aws::Utils::Outcome DeleteUserOutcome; typedef Aws::Utils::Outcome DescribeCollectionOutcome; typedef Aws::Utils::Outcome DescribeDatasetOutcome; typedef Aws::Utils::Outcome DescribeProjectVersionsOutcome; typedef Aws::Utils::Outcome DescribeProjectsOutcome; typedef Aws::Utils::Outcome DescribeStreamProcessorOutcome; typedef Aws::Utils::Outcome DetectCustomLabelsOutcome; typedef Aws::Utils::Outcome DetectFacesOutcome; typedef Aws::Utils::Outcome DetectLabelsOutcome; typedef Aws::Utils::Outcome DetectModerationLabelsOutcome; typedef Aws::Utils::Outcome DetectProtectiveEquipmentOutcome; typedef Aws::Utils::Outcome DetectTextOutcome; typedef Aws::Utils::Outcome DisassociateFacesOutcome; typedef Aws::Utils::Outcome DistributeDatasetEntriesOutcome; typedef Aws::Utils::Outcome GetCelebrityInfoOutcome; typedef Aws::Utils::Outcome GetCelebrityRecognitionOutcome; typedef Aws::Utils::Outcome GetContentModerationOutcome; typedef Aws::Utils::Outcome GetFaceDetectionOutcome; typedef Aws::Utils::Outcome GetFaceLivenessSessionResultsOutcome; typedef Aws::Utils::Outcome GetFaceSearchOutcome; typedef Aws::Utils::Outcome GetLabelDetectionOutcome; typedef Aws::Utils::Outcome GetPersonTrackingOutcome; typedef Aws::Utils::Outcome GetSegmentDetectionOutcome; typedef Aws::Utils::Outcome GetTextDetectionOutcome; typedef Aws::Utils::Outcome IndexFacesOutcome; typedef Aws::Utils::Outcome ListCollectionsOutcome; typedef Aws::Utils::Outcome ListDatasetEntriesOutcome; typedef Aws::Utils::Outcome ListDatasetLabelsOutcome; typedef Aws::Utils::Outcome ListFacesOutcome; typedef Aws::Utils::Outcome ListProjectPoliciesOutcome; typedef Aws::Utils::Outcome ListStreamProcessorsOutcome; typedef Aws::Utils::Outcome ListTagsForResourceOutcome; typedef Aws::Utils::Outcome ListUsersOutcome; typedef Aws::Utils::Outcome PutProjectPolicyOutcome; typedef Aws::Utils::Outcome RecognizeCelebritiesOutcome; typedef Aws::Utils::Outcome SearchFacesOutcome; typedef Aws::Utils::Outcome SearchFacesByImageOutcome; typedef Aws::Utils::Outcome SearchUsersOutcome; typedef Aws::Utils::Outcome SearchUsersByImageOutcome; typedef Aws::Utils::Outcome StartCelebrityRecognitionOutcome; typedef Aws::Utils::Outcome StartContentModerationOutcome; typedef Aws::Utils::Outcome StartFaceDetectionOutcome; typedef Aws::Utils::Outcome StartFaceSearchOutcome; typedef Aws::Utils::Outcome StartLabelDetectionOutcome; typedef Aws::Utils::Outcome StartPersonTrackingOutcome; typedef Aws::Utils::Outcome StartProjectVersionOutcome; typedef Aws::Utils::Outcome StartSegmentDetectionOutcome; typedef Aws::Utils::Outcome StartStreamProcessorOutcome; typedef Aws::Utils::Outcome StartTextDetectionOutcome; typedef Aws::Utils::Outcome StopProjectVersionOutcome; typedef Aws::Utils::Outcome StopStreamProcessorOutcome; typedef Aws::Utils::Outcome TagResourceOutcome; typedef Aws::Utils::Outcome UntagResourceOutcome; typedef Aws::Utils::Outcome UpdateDatasetEntriesOutcome; typedef Aws::Utils::Outcome UpdateStreamProcessorOutcome; /* End of service model Outcome class definitions */ /* Service model Outcome callable definitions */ typedef std::future AssociateFacesOutcomeCallable; typedef std::future CompareFacesOutcomeCallable; typedef std::future CopyProjectVersionOutcomeCallable; typedef std::future CreateCollectionOutcomeCallable; typedef std::future CreateDatasetOutcomeCallable; typedef std::future CreateFaceLivenessSessionOutcomeCallable; typedef std::future CreateProjectOutcomeCallable; typedef std::future CreateProjectVersionOutcomeCallable; typedef std::future CreateStreamProcessorOutcomeCallable; typedef std::future CreateUserOutcomeCallable; typedef std::future DeleteCollectionOutcomeCallable; typedef std::future DeleteDatasetOutcomeCallable; typedef std::future DeleteFacesOutcomeCallable; typedef std::future DeleteProjectOutcomeCallable; typedef std::future DeleteProjectPolicyOutcomeCallable; typedef std::future DeleteProjectVersionOutcomeCallable; typedef std::future DeleteStreamProcessorOutcomeCallable; typedef std::future DeleteUserOutcomeCallable; typedef std::future DescribeCollectionOutcomeCallable; typedef std::future DescribeDatasetOutcomeCallable; typedef std::future DescribeProjectVersionsOutcomeCallable; typedef std::future DescribeProjectsOutcomeCallable; typedef std::future DescribeStreamProcessorOutcomeCallable; typedef std::future DetectCustomLabelsOutcomeCallable; typedef std::future DetectFacesOutcomeCallable; typedef std::future DetectLabelsOutcomeCallable; typedef std::future DetectModerationLabelsOutcomeCallable; typedef std::future DetectProtectiveEquipmentOutcomeCallable; typedef std::future DetectTextOutcomeCallable; typedef std::future DisassociateFacesOutcomeCallable; typedef std::future DistributeDatasetEntriesOutcomeCallable; typedef std::future GetCelebrityInfoOutcomeCallable; typedef std::future GetCelebrityRecognitionOutcomeCallable; typedef std::future GetContentModerationOutcomeCallable; typedef std::future GetFaceDetectionOutcomeCallable; typedef std::future GetFaceLivenessSessionResultsOutcomeCallable; typedef std::future GetFaceSearchOutcomeCallable; typedef std::future GetLabelDetectionOutcomeCallable; typedef std::future GetPersonTrackingOutcomeCallable; typedef std::future GetSegmentDetectionOutcomeCallable; typedef std::future GetTextDetectionOutcomeCallable; typedef std::future IndexFacesOutcomeCallable; typedef std::future ListCollectionsOutcomeCallable; typedef std::future ListDatasetEntriesOutcomeCallable; typedef std::future ListDatasetLabelsOutcomeCallable; typedef std::future ListFacesOutcomeCallable; typedef std::future ListProjectPoliciesOutcomeCallable; typedef std::future ListStreamProcessorsOutcomeCallable; typedef std::future ListTagsForResourceOutcomeCallable; typedef std::future ListUsersOutcomeCallable; typedef std::future PutProjectPolicyOutcomeCallable; typedef std::future RecognizeCelebritiesOutcomeCallable; typedef std::future SearchFacesOutcomeCallable; typedef std::future SearchFacesByImageOutcomeCallable; typedef std::future SearchUsersOutcomeCallable; typedef std::future SearchUsersByImageOutcomeCallable; typedef std::future StartCelebrityRecognitionOutcomeCallable; typedef std::future StartContentModerationOutcomeCallable; typedef std::future StartFaceDetectionOutcomeCallable; typedef std::future StartFaceSearchOutcomeCallable; typedef std::future StartLabelDetectionOutcomeCallable; typedef std::future StartPersonTrackingOutcomeCallable; typedef std::future StartProjectVersionOutcomeCallable; typedef std::future StartSegmentDetectionOutcomeCallable; typedef std::future StartStreamProcessorOutcomeCallable; typedef std::future StartTextDetectionOutcomeCallable; typedef std::future StopProjectVersionOutcomeCallable; typedef std::future StopStreamProcessorOutcomeCallable; typedef std::future TagResourceOutcomeCallable; typedef std::future UntagResourceOutcomeCallable; typedef std::future UpdateDatasetEntriesOutcomeCallable; typedef std::future UpdateStreamProcessorOutcomeCallable; /* End of service model Outcome callable definitions */ } // namespace Model class RekognitionClient; /* Service model async handlers definitions */ typedef std::function&) > AssociateFacesResponseReceivedHandler; typedef std::function&) > CompareFacesResponseReceivedHandler; typedef std::function&) > CopyProjectVersionResponseReceivedHandler; typedef std::function&) > CreateCollectionResponseReceivedHandler; typedef std::function&) > CreateDatasetResponseReceivedHandler; typedef std::function&) > CreateFaceLivenessSessionResponseReceivedHandler; typedef std::function&) > CreateProjectResponseReceivedHandler; typedef std::function&) > CreateProjectVersionResponseReceivedHandler; typedef std::function&) > CreateStreamProcessorResponseReceivedHandler; typedef std::function&) > CreateUserResponseReceivedHandler; typedef std::function&) > DeleteCollectionResponseReceivedHandler; typedef std::function&) > DeleteDatasetResponseReceivedHandler; typedef std::function&) > DeleteFacesResponseReceivedHandler; typedef std::function&) > DeleteProjectResponseReceivedHandler; typedef std::function&) > DeleteProjectPolicyResponseReceivedHandler; typedef std::function&) > DeleteProjectVersionResponseReceivedHandler; typedef std::function&) > DeleteStreamProcessorResponseReceivedHandler; typedef std::function&) > DeleteUserResponseReceivedHandler; typedef std::function&) > DescribeCollectionResponseReceivedHandler; typedef std::function&) > DescribeDatasetResponseReceivedHandler; typedef std::function&) > DescribeProjectVersionsResponseReceivedHandler; typedef std::function&) > DescribeProjectsResponseReceivedHandler; typedef std::function&) > DescribeStreamProcessorResponseReceivedHandler; typedef std::function&) > DetectCustomLabelsResponseReceivedHandler; typedef std::function&) > DetectFacesResponseReceivedHandler; typedef std::function&) > DetectLabelsResponseReceivedHandler; typedef std::function&) > DetectModerationLabelsResponseReceivedHandler; typedef std::function&) > DetectProtectiveEquipmentResponseReceivedHandler; typedef std::function&) > DetectTextResponseReceivedHandler; typedef std::function&) > DisassociateFacesResponseReceivedHandler; typedef std::function&) > DistributeDatasetEntriesResponseReceivedHandler; typedef std::function&) > GetCelebrityInfoResponseReceivedHandler; typedef std::function&) > GetCelebrityRecognitionResponseReceivedHandler; typedef std::function&) > GetContentModerationResponseReceivedHandler; typedef std::function&) > GetFaceDetectionResponseReceivedHandler; typedef std::function&) > GetFaceLivenessSessionResultsResponseReceivedHandler; typedef std::function&) > GetFaceSearchResponseReceivedHandler; typedef std::function&) > GetLabelDetectionResponseReceivedHandler; typedef std::function&) > GetPersonTrackingResponseReceivedHandler; typedef std::function&) > GetSegmentDetectionResponseReceivedHandler; typedef std::function&) > GetTextDetectionResponseReceivedHandler; typedef std::function&) > IndexFacesResponseReceivedHandler; typedef std::function&) > ListCollectionsResponseReceivedHandler; typedef std::function&) > ListDatasetEntriesResponseReceivedHandler; typedef std::function&) > ListDatasetLabelsResponseReceivedHandler; typedef std::function&) > ListFacesResponseReceivedHandler; typedef std::function&) > ListProjectPoliciesResponseReceivedHandler; typedef std::function&) > ListStreamProcessorsResponseReceivedHandler; typedef std::function&) > ListTagsForResourceResponseReceivedHandler; typedef std::function&) > ListUsersResponseReceivedHandler; typedef std::function&) > PutProjectPolicyResponseReceivedHandler; typedef std::function&) > RecognizeCelebritiesResponseReceivedHandler; typedef std::function&) > SearchFacesResponseReceivedHandler; typedef std::function&) > SearchFacesByImageResponseReceivedHandler; typedef std::function&) > SearchUsersResponseReceivedHandler; typedef std::function&) > SearchUsersByImageResponseReceivedHandler; typedef std::function&) > StartCelebrityRecognitionResponseReceivedHandler; typedef std::function&) > StartContentModerationResponseReceivedHandler; typedef std::function&) > StartFaceDetectionResponseReceivedHandler; typedef std::function&) > StartFaceSearchResponseReceivedHandler; typedef std::function&) > StartLabelDetectionResponseReceivedHandler; typedef std::function&) > StartPersonTrackingResponseReceivedHandler; typedef std::function&) > StartProjectVersionResponseReceivedHandler; typedef std::function&) > StartSegmentDetectionResponseReceivedHandler; typedef std::function&) > StartStreamProcessorResponseReceivedHandler; typedef std::function&) > StartTextDetectionResponseReceivedHandler; typedef std::function&) > StopProjectVersionResponseReceivedHandler; typedef std::function&) > StopStreamProcessorResponseReceivedHandler; typedef std::function&) > TagResourceResponseReceivedHandler; typedef std::function&) > UntagResourceResponseReceivedHandler; typedef std::function&) > UpdateDatasetEntriesResponseReceivedHandler; typedef std::function&) > UpdateStreamProcessorResponseReceivedHandler; /* End of service model async handlers definitions */ } // namespace Rekognition } // namespace Aws