/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include 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 Textract { namespace Model { class AnalyzeDocumentRequest; class DetectDocumentTextRequest; class GetDocumentAnalysisRequest; class GetDocumentTextDetectionRequest; class StartDocumentAnalysisRequest; class StartDocumentTextDetectionRequest; typedef Aws::Utils::Outcome AnalyzeDocumentOutcome; typedef Aws::Utils::Outcome DetectDocumentTextOutcome; typedef Aws::Utils::Outcome GetDocumentAnalysisOutcome; typedef Aws::Utils::Outcome GetDocumentTextDetectionOutcome; typedef Aws::Utils::Outcome StartDocumentAnalysisOutcome; typedef Aws::Utils::Outcome StartDocumentTextDetectionOutcome; typedef std::future AnalyzeDocumentOutcomeCallable; typedef std::future DetectDocumentTextOutcomeCallable; typedef std::future GetDocumentAnalysisOutcomeCallable; typedef std::future GetDocumentTextDetectionOutcomeCallable; typedef std::future StartDocumentAnalysisOutcomeCallable; typedef std::future StartDocumentTextDetectionOutcomeCallable; } // namespace Model class TextractClient; typedef std::function&) > AnalyzeDocumentResponseReceivedHandler; typedef std::function&) > DetectDocumentTextResponseReceivedHandler; typedef std::function&) > GetDocumentAnalysisResponseReceivedHandler; typedef std::function&) > GetDocumentTextDetectionResponseReceivedHandler; typedef std::function&) > StartDocumentAnalysisResponseReceivedHandler; typedef std::function&) > StartDocumentTextDetectionResponseReceivedHandler; /** *

Amazon Textract detects and analyzes text in documents and converts it into * machine-readable text. This is the API reference documentation for Amazon * Textract.

*/ class AWS_TEXTRACT_API TextractClient : public Aws::Client::AWSJsonClient { public: typedef Aws::Client::AWSJsonClient BASECLASS; /** * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ TextractClient(const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); /** * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ TextractClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); /** * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, * the default http client factory will be used */ TextractClient(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); virtual ~TextractClient(); /** *

Analyzes an input document for relationships between detected items.

*

The types of information returned are as follows:

  • Form data * (key-value pairs). The related information is returned in two Block * objects, each of type KEY_VALUE_SET: a KEY Block * object and a VALUE Block object. For example, Name: Ana Silva * Carolina contains a key and value. Name: is the key. Ana Silva * Carolina is the value.

  • Table and table cell data. A TABLE * Block object contains information about a detected table. A CELL * Block object is returned for each cell in a table.

  • *

    Lines and words of text. A LINE Block object contains one or * more WORD Block objects. All lines and words that are detected in * the document are returned (including text that doesn't have a relationship with * the value of FeatureTypes).

Selection elements * such as check boxes and option buttons (radio buttons) can be detected in form * data and in tables. A SELECTION_ELEMENT Block object contains * information about a selection element, including the selection status.

*

You can choose which type of analysis to perform by specifying the * FeatureTypes list.

The output is returned in a list of * Block objects.

AnalyzeDocument is a * synchronous operation. To analyze documents asynchronously, use * StartDocumentAnalysis.

For more information, see Document * Text Analysis.

See Also:

AWS * API Reference

*/ virtual Model::AnalyzeDocumentOutcome AnalyzeDocument(const Model::AnalyzeDocumentRequest& request) const; /** *

Analyzes an input document for relationships between detected items.

*

The types of information returned are as follows:

  • Form data * (key-value pairs). The related information is returned in two Block * objects, each of type KEY_VALUE_SET: a KEY Block * object and a VALUE Block object. For example, Name: Ana Silva * Carolina contains a key and value. Name: is the key. Ana Silva * Carolina is the value.

  • Table and table cell data. A TABLE * Block object contains information about a detected table. A CELL * Block object is returned for each cell in a table.

  • *

    Lines and words of text. A LINE Block object contains one or * more WORD Block objects. All lines and words that are detected in * the document are returned (including text that doesn't have a relationship with * the value of FeatureTypes).

Selection elements * such as check boxes and option buttons (radio buttons) can be detected in form * data and in tables. A SELECTION_ELEMENT Block object contains * information about a selection element, including the selection status.

*

You can choose which type of analysis to perform by specifying the * FeatureTypes list.

The output is returned in a list of * Block objects.

AnalyzeDocument is a * synchronous operation. To analyze documents asynchronously, use * StartDocumentAnalysis.

For more information, see Document * Text Analysis.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AnalyzeDocumentOutcomeCallable AnalyzeDocumentCallable(const Model::AnalyzeDocumentRequest& request) const; /** *

Analyzes an input document for relationships between detected items.

*

The types of information returned are as follows:

  • Form data * (key-value pairs). The related information is returned in two Block * objects, each of type KEY_VALUE_SET: a KEY Block * object and a VALUE Block object. For example, Name: Ana Silva * Carolina contains a key and value. Name: is the key. Ana Silva * Carolina is the value.

  • Table and table cell data. A TABLE * Block object contains information about a detected table. A CELL * Block object is returned for each cell in a table.

  • *

    Lines and words of text. A LINE Block object contains one or * more WORD Block objects. All lines and words that are detected in * the document are returned (including text that doesn't have a relationship with * the value of FeatureTypes).

Selection elements * such as check boxes and option buttons (radio buttons) can be detected in form * data and in tables. A SELECTION_ELEMENT Block object contains * information about a selection element, including the selection status.

*

You can choose which type of analysis to perform by specifying the * FeatureTypes list.

The output is returned in a list of * Block objects.

AnalyzeDocument is a * synchronous operation. To analyze documents asynchronously, use * StartDocumentAnalysis.

For more information, see Document * Text Analysis.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AnalyzeDocumentAsync(const Model::AnalyzeDocumentRequest& request, const AnalyzeDocumentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Detects text in the input document. Amazon Textract can detect lines of text * and the words that make up a line of text. The input document must be an image * in JPEG or PNG format. DetectDocumentText returns the detected text * in an array of Block objects.

Each document page has as an * associated Block of type PAGE. Each PAGE Block object * is the parent of LINE Block objects that represent the lines of * detected text on a page. A LINE Block object is a parent for each * word that makes up the line. Words are represented by Block objects * of type WORD.

DetectDocumentText is a synchronous * operation. To analyze documents asynchronously, use * StartDocumentTextDetection.

For more information, see Document * Text Detection.

See Also:

AWS * API Reference

*/ virtual Model::DetectDocumentTextOutcome DetectDocumentText(const Model::DetectDocumentTextRequest& request) const; /** *

Detects text in the input document. Amazon Textract can detect lines of text * and the words that make up a line of text. The input document must be an image * in JPEG or PNG format. DetectDocumentText returns the detected text * in an array of Block objects.

Each document page has as an * associated Block of type PAGE. Each PAGE Block object * is the parent of LINE Block objects that represent the lines of * detected text on a page. A LINE Block object is a parent for each * word that makes up the line. Words are represented by Block objects * of type WORD.

DetectDocumentText is a synchronous * operation. To analyze documents asynchronously, use * StartDocumentTextDetection.

For more information, see Document * Text Detection.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DetectDocumentTextOutcomeCallable DetectDocumentTextCallable(const Model::DetectDocumentTextRequest& request) const; /** *

Detects text in the input document. Amazon Textract can detect lines of text * and the words that make up a line of text. The input document must be an image * in JPEG or PNG format. DetectDocumentText returns the detected text * in an array of Block objects.

Each document page has as an * associated Block of type PAGE. Each PAGE Block object * is the parent of LINE Block objects that represent the lines of * detected text on a page. A LINE Block object is a parent for each * word that makes up the line. Words are represented by Block objects * of type WORD.

DetectDocumentText is a synchronous * operation. To analyze documents asynchronously, use * StartDocumentTextDetection.

For more information, see Document * Text Detection.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DetectDocumentTextAsync(const Model::DetectDocumentTextRequest& request, const DetectDocumentTextResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets the results for an Amazon Textract asynchronous operation that analyzes * text in a document.

You start asynchronous text analysis by calling * StartDocumentAnalysis, which returns a job identifier * (JobId). When the text analysis operation finishes, Amazon Textract * publishes a completion status to the Amazon Simple Notification Service (Amazon * SNS) topic that's registered in the initial call to * StartDocumentAnalysis. To get the results of the text-detection * operation, first check that the status value published to the Amazon SNS topic * is SUCCEEDED. If so, call GetDocumentAnalysis, and * pass the job identifier (JobId) from the initial call to * StartDocumentAnalysis.

GetDocumentAnalysis * returns an array of Block objects. The following types of information are * returned:

  • Form data (key-value pairs). The related information * is returned in two Block objects, each of type * KEY_VALUE_SET: a KEY Block object and a VALUE * Block object. For example, Name: Ana Silva Carolina contains * a key and value. Name: is the key. Ana Silva Carolina is the * value.

  • Table and table cell data. A TABLE Block * object contains information about a detected table. A CELL Block * object is returned for each cell in a table.

  • Lines and words * of text. A LINE Block object contains one or more WORD * Block objects. All lines and words that are detected in the * document are returned (including text that doesn't have a relationship with the * value of the StartDocumentAnalysis FeatureTypes input * parameter).

Selection elements such as check boxes and * option buttons (radio buttons) can be detected in form data and in tables. A * SELECTION_ELEMENT Block object contains information about a * selection element, including the selection status.

Use the * MaxResults parameter to limit the number of blocks that are * returned. If there are more results than specified in MaxResults, * the value of NextToken in the operation response contains a * pagination token for getting the next set of results. To get the next page of * results, call GetDocumentAnalysis, and populate the * NextToken request parameter with the token value that's returned * from the previous call to GetDocumentAnalysis.

For more * information, see Document * Text Analysis.

See Also:

AWS * API Reference

*/ virtual Model::GetDocumentAnalysisOutcome GetDocumentAnalysis(const Model::GetDocumentAnalysisRequest& request) const; /** *

Gets the results for an Amazon Textract asynchronous operation that analyzes * text in a document.

You start asynchronous text analysis by calling * StartDocumentAnalysis, which returns a job identifier * (JobId). When the text analysis operation finishes, Amazon Textract * publishes a completion status to the Amazon Simple Notification Service (Amazon * SNS) topic that's registered in the initial call to * StartDocumentAnalysis. To get the results of the text-detection * operation, first check that the status value published to the Amazon SNS topic * is SUCCEEDED. If so, call GetDocumentAnalysis, and * pass the job identifier (JobId) from the initial call to * StartDocumentAnalysis.

GetDocumentAnalysis * returns an array of Block objects. The following types of information are * returned:

  • Form data (key-value pairs). The related information * is returned in two Block objects, each of type * KEY_VALUE_SET: a KEY Block object and a VALUE * Block object. For example, Name: Ana Silva Carolina contains * a key and value. Name: is the key. Ana Silva Carolina is the * value.

  • Table and table cell data. A TABLE Block * object contains information about a detected table. A CELL Block * object is returned for each cell in a table.

  • Lines and words * of text. A LINE Block object contains one or more WORD * Block objects. All lines and words that are detected in the * document are returned (including text that doesn't have a relationship with the * value of the StartDocumentAnalysis FeatureTypes input * parameter).

Selection elements such as check boxes and * option buttons (radio buttons) can be detected in form data and in tables. A * SELECTION_ELEMENT Block object contains information about a * selection element, including the selection status.

Use the * MaxResults parameter to limit the number of blocks that are * returned. If there are more results than specified in MaxResults, * the value of NextToken in the operation response contains a * pagination token for getting the next set of results. To get the next page of * results, call GetDocumentAnalysis, and populate the * NextToken request parameter with the token value that's returned * from the previous call to GetDocumentAnalysis.

For more * information, see Document * Text Analysis.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetDocumentAnalysisOutcomeCallable GetDocumentAnalysisCallable(const Model::GetDocumentAnalysisRequest& request) const; /** *

Gets the results for an Amazon Textract asynchronous operation that analyzes * text in a document.

You start asynchronous text analysis by calling * StartDocumentAnalysis, which returns a job identifier * (JobId). When the text analysis operation finishes, Amazon Textract * publishes a completion status to the Amazon Simple Notification Service (Amazon * SNS) topic that's registered in the initial call to * StartDocumentAnalysis. To get the results of the text-detection * operation, first check that the status value published to the Amazon SNS topic * is SUCCEEDED. If so, call GetDocumentAnalysis, and * pass the job identifier (JobId) from the initial call to * StartDocumentAnalysis.

GetDocumentAnalysis * returns an array of Block objects. The following types of information are * returned:

  • Form data (key-value pairs). The related information * is returned in two Block objects, each of type * KEY_VALUE_SET: a KEY Block object and a VALUE * Block object. For example, Name: Ana Silva Carolina contains * a key and value. Name: is the key. Ana Silva Carolina is the * value.

  • Table and table cell data. A TABLE Block * object contains information about a detected table. A CELL Block * object is returned for each cell in a table.

  • Lines and words * of text. A LINE Block object contains one or more WORD * Block objects. All lines and words that are detected in the * document are returned (including text that doesn't have a relationship with the * value of the StartDocumentAnalysis FeatureTypes input * parameter).

Selection elements such as check boxes and * option buttons (radio buttons) can be detected in form data and in tables. A * SELECTION_ELEMENT Block object contains information about a * selection element, including the selection status.

Use the * MaxResults parameter to limit the number of blocks that are * returned. If there are more results than specified in MaxResults, * the value of NextToken in the operation response contains a * pagination token for getting the next set of results. To get the next page of * results, call GetDocumentAnalysis, and populate the * NextToken request parameter with the token value that's returned * from the previous call to GetDocumentAnalysis.

For more * information, see Document * Text Analysis.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetDocumentAnalysisAsync(const Model::GetDocumentAnalysisRequest& request, const GetDocumentAnalysisResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets the results for an Amazon Textract asynchronous operation that detects * text in a document. Amazon Textract can detect lines of text and the words that * make up a line of text.

You start asynchronous text detection by calling * StartDocumentTextDetection, which returns a job identifier * (JobId). When the text detection operation finishes, Amazon * Textract publishes a completion status to the Amazon Simple Notification Service * (Amazon SNS) topic that's registered in the initial call to * StartDocumentTextDetection. To get the results of the * text-detection operation, first check that the status value published to the * Amazon SNS topic is SUCCEEDED. If so, call * GetDocumentTextDetection, and pass the job identifier * (JobId) from the initial call to * StartDocumentTextDetection.

* GetDocumentTextDetection returns an array of Block objects. *

Each document page has as an associated Block of type PAGE. * Each PAGE Block object is the parent of LINE Block * objects that represent the lines of detected text on a page. A LINE * Block object is a parent for each word that makes up the line. * Words are represented by Block objects of type WORD.

Use the * MaxResults parameter to limit the number of blocks that are returned. If there * are more results than specified in MaxResults, the value of * NextToken in the operation response contains a pagination token for * getting the next set of results. To get the next page of results, call * GetDocumentTextDetection, and populate the NextToken * request parameter with the token value that's returned from the previous call to * GetDocumentTextDetection.

For more information, see Document * Text Detection.

See Also:

AWS * API Reference

*/ virtual Model::GetDocumentTextDetectionOutcome GetDocumentTextDetection(const Model::GetDocumentTextDetectionRequest& request) const; /** *

Gets the results for an Amazon Textract asynchronous operation that detects * text in a document. Amazon Textract can detect lines of text and the words that * make up a line of text.

You start asynchronous text detection by calling * StartDocumentTextDetection, which returns a job identifier * (JobId). When the text detection operation finishes, Amazon * Textract publishes a completion status to the Amazon Simple Notification Service * (Amazon SNS) topic that's registered in the initial call to * StartDocumentTextDetection. To get the results of the * text-detection operation, first check that the status value published to the * Amazon SNS topic is SUCCEEDED. If so, call * GetDocumentTextDetection, and pass the job identifier * (JobId) from the initial call to * StartDocumentTextDetection.

* GetDocumentTextDetection returns an array of Block objects. *

Each document page has as an associated Block of type PAGE. * Each PAGE Block object is the parent of LINE Block * objects that represent the lines of detected text on a page. A LINE * Block object is a parent for each word that makes up the line. * Words are represented by Block objects of type WORD.

Use the * MaxResults parameter to limit the number of blocks that are returned. If there * are more results than specified in MaxResults, the value of * NextToken in the operation response contains a pagination token for * getting the next set of results. To get the next page of results, call * GetDocumentTextDetection, and populate the NextToken * request parameter with the token value that's returned from the previous call to * GetDocumentTextDetection.

For more information, see Document * Text Detection.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetDocumentTextDetectionOutcomeCallable GetDocumentTextDetectionCallable(const Model::GetDocumentTextDetectionRequest& request) const; /** *

Gets the results for an Amazon Textract asynchronous operation that detects * text in a document. Amazon Textract can detect lines of text and the words that * make up a line of text.

You start asynchronous text detection by calling * StartDocumentTextDetection, which returns a job identifier * (JobId). When the text detection operation finishes, Amazon * Textract publishes a completion status to the Amazon Simple Notification Service * (Amazon SNS) topic that's registered in the initial call to * StartDocumentTextDetection. To get the results of the * text-detection operation, first check that the status value published to the * Amazon SNS topic is SUCCEEDED. If so, call * GetDocumentTextDetection, and pass the job identifier * (JobId) from the initial call to * StartDocumentTextDetection.

* GetDocumentTextDetection returns an array of Block objects. *

Each document page has as an associated Block of type PAGE. * Each PAGE Block object is the parent of LINE Block * objects that represent the lines of detected text on a page. A LINE * Block object is a parent for each word that makes up the line. * Words are represented by Block objects of type WORD.

Use the * MaxResults parameter to limit the number of blocks that are returned. If there * are more results than specified in MaxResults, the value of * NextToken in the operation response contains a pagination token for * getting the next set of results. To get the next page of results, call * GetDocumentTextDetection, and populate the NextToken * request parameter with the token value that's returned from the previous call to * GetDocumentTextDetection.

For more information, see Document * Text Detection.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetDocumentTextDetectionAsync(const Model::GetDocumentTextDetectionRequest& request, const GetDocumentTextDetectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Starts the asynchronous analysis of an input document for relationships * between detected items such as key-value pairs, tables, and selection * elements.

StartDocumentAnalysis can analyze text in * documents that are in JPEG, PNG, and PDF format. The documents are stored in an * Amazon S3 bucket. Use DocumentLocation to specify the bucket name and * file name of the document.

StartDocumentAnalysis returns a * job identifier (JobId) that you use to get the results of the * operation. When text analysis is finished, Amazon Textract publishes a * completion status to the Amazon Simple Notification Service (Amazon SNS) topic * that you specify in NotificationChannel. To get the results of the * text analysis operation, first check that the status value published to the * Amazon SNS topic is SUCCEEDED. If so, call * GetDocumentAnalysis, and pass the job identifier (JobId) * from the initial call to StartDocumentAnalysis.

For more * information, see Document * Text Analysis.

See Also:

AWS * API Reference

*/ virtual Model::StartDocumentAnalysisOutcome StartDocumentAnalysis(const Model::StartDocumentAnalysisRequest& request) const; /** *

Starts the asynchronous analysis of an input document for relationships * between detected items such as key-value pairs, tables, and selection * elements.

StartDocumentAnalysis can analyze text in * documents that are in JPEG, PNG, and PDF format. The documents are stored in an * Amazon S3 bucket. Use DocumentLocation to specify the bucket name and * file name of the document.

StartDocumentAnalysis returns a * job identifier (JobId) that you use to get the results of the * operation. When text analysis is finished, Amazon Textract publishes a * completion status to the Amazon Simple Notification Service (Amazon SNS) topic * that you specify in NotificationChannel. To get the results of the * text analysis operation, first check that the status value published to the * Amazon SNS topic is SUCCEEDED. If so, call * GetDocumentAnalysis, and pass the job identifier (JobId) * from the initial call to StartDocumentAnalysis.

For more * information, see Document * Text Analysis.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::StartDocumentAnalysisOutcomeCallable StartDocumentAnalysisCallable(const Model::StartDocumentAnalysisRequest& request) const; /** *

Starts the asynchronous analysis of an input document for relationships * between detected items such as key-value pairs, tables, and selection * elements.

StartDocumentAnalysis can analyze text in * documents that are in JPEG, PNG, and PDF format. The documents are stored in an * Amazon S3 bucket. Use DocumentLocation to specify the bucket name and * file name of the document.

StartDocumentAnalysis returns a * job identifier (JobId) that you use to get the results of the * operation. When text analysis is finished, Amazon Textract publishes a * completion status to the Amazon Simple Notification Service (Amazon SNS) topic * that you specify in NotificationChannel. To get the results of the * text analysis operation, first check that the status value published to the * Amazon SNS topic is SUCCEEDED. If so, call * GetDocumentAnalysis, and pass the job identifier (JobId) * from the initial call to StartDocumentAnalysis.

For more * information, see Document * Text Analysis.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void StartDocumentAnalysisAsync(const Model::StartDocumentAnalysisRequest& request, const StartDocumentAnalysisResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Starts the asynchronous detection of text in a document. Amazon Textract can * detect lines of text and the words that make up a line of text.

* StartDocumentTextDetection can analyze text in documents that are * in JPEG, PNG, and PDF format. The documents are stored in an Amazon S3 bucket. * Use DocumentLocation to specify the bucket name and file name of the * document.

StartTextDetection returns a job identifier * (JobId) that you use to get the results of the operation. When text * detection is finished, Amazon Textract publishes a completion status to the * Amazon Simple Notification Service (Amazon SNS) topic that you specify in * NotificationChannel. To get the results of the text detection * operation, first check that the status value published to the Amazon SNS topic * is SUCCEEDED. If so, call GetDocumentTextDetection, and pass * the job identifier (JobId) from the initial call to * StartDocumentTextDetection.

For more information, see Document * Text Detection.

See Also:

AWS * API Reference

*/ virtual Model::StartDocumentTextDetectionOutcome StartDocumentTextDetection(const Model::StartDocumentTextDetectionRequest& request) const; /** *

Starts the asynchronous detection of text in a document. Amazon Textract can * detect lines of text and the words that make up a line of text.

* StartDocumentTextDetection can analyze text in documents that are * in JPEG, PNG, and PDF format. The documents are stored in an Amazon S3 bucket. * Use DocumentLocation to specify the bucket name and file name of the * document.

StartTextDetection returns a job identifier * (JobId) that you use to get the results of the operation. When text * detection is finished, Amazon Textract publishes a completion status to the * Amazon Simple Notification Service (Amazon SNS) topic that you specify in * NotificationChannel. To get the results of the text detection * operation, first check that the status value published to the Amazon SNS topic * is SUCCEEDED. If so, call GetDocumentTextDetection, and pass * the job identifier (JobId) from the initial call to * StartDocumentTextDetection.

For more information, see Document * Text Detection.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::StartDocumentTextDetectionOutcomeCallable StartDocumentTextDetectionCallable(const Model::StartDocumentTextDetectionRequest& request) const; /** *

Starts the asynchronous detection of text in a document. Amazon Textract can * detect lines of text and the words that make up a line of text.

* StartDocumentTextDetection can analyze text in documents that are * in JPEG, PNG, and PDF format. The documents are stored in an Amazon S3 bucket. * Use DocumentLocation to specify the bucket name and file name of the * document.

StartTextDetection returns a job identifier * (JobId) that you use to get the results of the operation. When text * detection is finished, Amazon Textract publishes a completion status to the * Amazon Simple Notification Service (Amazon SNS) topic that you specify in * NotificationChannel. To get the results of the text detection * operation, first check that the status value published to the Amazon SNS topic * is SUCCEEDED. If so, call GetDocumentTextDetection, and pass * the job identifier (JobId) from the initial call to * StartDocumentTextDetection.

For more information, see Document * Text Detection.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void StartDocumentTextDetectionAsync(const Model::StartDocumentTextDetectionRequest& request, const StartDocumentTextDetectionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; void OverrideEndpoint(const Aws::String& endpoint); private: void init(const Aws::Client::ClientConfiguration& clientConfiguration); void AnalyzeDocumentAsyncHelper(const Model::AnalyzeDocumentRequest& request, const AnalyzeDocumentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DetectDocumentTextAsyncHelper(const Model::DetectDocumentTextRequest& request, const DetectDocumentTextResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetDocumentAnalysisAsyncHelper(const Model::GetDocumentAnalysisRequest& request, const GetDocumentAnalysisResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetDocumentTextDetectionAsyncHelper(const Model::GetDocumentTextDetectionRequest& request, const GetDocumentTextDetectionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void StartDocumentAnalysisAsyncHelper(const Model::StartDocumentAnalysisRequest& request, const StartDocumentAnalysisResponseReceivedHandler& handler, const std::shared_ptr& context) const; void StartDocumentTextDetectionAsyncHelper(const Model::StartDocumentTextDetectionRequest& request, const StartDocumentTextDetectionResponseReceivedHandler& handler, const std::shared_ptr& context) const; Aws::String m_uri; Aws::String m_configScheme; std::shared_ptr m_executor; }; } // namespace Textract } // namespace Aws