/** * 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 namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Textract { namespace Model { /** *

A Block represents items that are recognized in a document * within a group of pixels close to each other. The information returned in a * Block object depends on the type of operation. In text detection * for documents (for example DetectDocumentText), you get information about * the detected words and lines of text. In text analysis (for example * AnalyzeDocument), you can also get information about the fields, tables, * and selection elements that are detected in the document.

An array of * Block objects is returned by both synchronous and asynchronous * operations. In synchronous operations, such as DetectDocumentText, the * array of Block objects is the entire set of results. In * asynchronous operations, such as GetDocumentAnalysis, the array is * returned over one or more responses.

For more information, see How * Amazon Textract Works.

See Also:

AWS API * Reference

*/ class AWS_TEXTRACT_API Block { public: Block(); Block(Aws::Utils::Json::JsonView jsonValue); Block& operator=(Aws::Utils::Json::JsonView jsonValue); Aws::Utils::Json::JsonValue Jsonize() const; /** *

The type of text item that's recognized. In operations for text detection, * the following types are returned:

  • PAGE - Contains a * list of the LINE Block objects that are detected on a document * page.

  • WORD - A word detected on a document page. A * word is one or more ISO basic Latin script characters that aren't separated by * spaces.

  • LINE - A string of tab-delimited, contiguous * words that are detected on a document page.

In text analysis * operations, the following types are returned:

  • PAGE - * Contains a list of child Block objects that are detected on a * document page.

  • KEY_VALUE_SET - Stores the KEY and * VALUE Block objects for linked text that's detected on a document * page. Use the EntityType field to determine if a KEY_VALUE_SET * object is a KEY Block object or a VALUE Block object. *

  • WORD - A word that's detected on a document page. A * word is one or more ISO basic Latin script characters that aren't separated by * spaces.

  • LINE - A string of tab-delimited, contiguous * words that are detected on a document page.

  • TABLE - A * table that's detected on a document page. A table is grid-based information with * two or more rows or columns, with a cell span of one row and one column each. *

  • CELL - A cell within a detected table. The cell is * the parent of the block that contains the text in the cell.

  • * SELECTION_ELEMENT - A selection element such as an option button (radio * button) or a check box that's detected on a document page. Use the value of * SelectionStatus to determine the status of the selection * element.

*/ inline const BlockType& GetBlockType() const{ return m_blockType; } /** *

The type of text item that's recognized. In operations for text detection, * the following types are returned:

  • PAGE - Contains a * list of the LINE Block objects that are detected on a document * page.

  • WORD - A word detected on a document page. A * word is one or more ISO basic Latin script characters that aren't separated by * spaces.

  • LINE - A string of tab-delimited, contiguous * words that are detected on a document page.

In text analysis * operations, the following types are returned:

  • PAGE - * Contains a list of child Block objects that are detected on a * document page.

  • KEY_VALUE_SET - Stores the KEY and * VALUE Block objects for linked text that's detected on a document * page. Use the EntityType field to determine if a KEY_VALUE_SET * object is a KEY Block object or a VALUE Block object. *

  • WORD - A word that's detected on a document page. A * word is one or more ISO basic Latin script characters that aren't separated by * spaces.

  • LINE - A string of tab-delimited, contiguous * words that are detected on a document page.

  • TABLE - A * table that's detected on a document page. A table is grid-based information with * two or more rows or columns, with a cell span of one row and one column each. *

  • CELL - A cell within a detected table. The cell is * the parent of the block that contains the text in the cell.

  • * SELECTION_ELEMENT - A selection element such as an option button (radio * button) or a check box that's detected on a document page. Use the value of * SelectionStatus to determine the status of the selection * element.

*/ inline bool BlockTypeHasBeenSet() const { return m_blockTypeHasBeenSet; } /** *

The type of text item that's recognized. In operations for text detection, * the following types are returned:

  • PAGE - Contains a * list of the LINE Block objects that are detected on a document * page.

  • WORD - A word detected on a document page. A * word is one or more ISO basic Latin script characters that aren't separated by * spaces.

  • LINE - A string of tab-delimited, contiguous * words that are detected on a document page.

In text analysis * operations, the following types are returned:

  • PAGE - * Contains a list of child Block objects that are detected on a * document page.

  • KEY_VALUE_SET - Stores the KEY and * VALUE Block objects for linked text that's detected on a document * page. Use the EntityType field to determine if a KEY_VALUE_SET * object is a KEY Block object or a VALUE Block object. *

  • WORD - A word that's detected on a document page. A * word is one or more ISO basic Latin script characters that aren't separated by * spaces.

  • LINE - A string of tab-delimited, contiguous * words that are detected on a document page.

  • TABLE - A * table that's detected on a document page. A table is grid-based information with * two or more rows or columns, with a cell span of one row and one column each. *

  • CELL - A cell within a detected table. The cell is * the parent of the block that contains the text in the cell.

  • * SELECTION_ELEMENT - A selection element such as an option button (radio * button) or a check box that's detected on a document page. Use the value of * SelectionStatus to determine the status of the selection * element.

*/ inline void SetBlockType(const BlockType& value) { m_blockTypeHasBeenSet = true; m_blockType = value; } /** *

The type of text item that's recognized. In operations for text detection, * the following types are returned:

  • PAGE - Contains a * list of the LINE Block objects that are detected on a document * page.

  • WORD - A word detected on a document page. A * word is one or more ISO basic Latin script characters that aren't separated by * spaces.

  • LINE - A string of tab-delimited, contiguous * words that are detected on a document page.

In text analysis * operations, the following types are returned:

  • PAGE - * Contains a list of child Block objects that are detected on a * document page.

  • KEY_VALUE_SET - Stores the KEY and * VALUE Block objects for linked text that's detected on a document * page. Use the EntityType field to determine if a KEY_VALUE_SET * object is a KEY Block object or a VALUE Block object. *

  • WORD - A word that's detected on a document page. A * word is one or more ISO basic Latin script characters that aren't separated by * spaces.

  • LINE - A string of tab-delimited, contiguous * words that are detected on a document page.

  • TABLE - A * table that's detected on a document page. A table is grid-based information with * two or more rows or columns, with a cell span of one row and one column each. *

  • CELL - A cell within a detected table. The cell is * the parent of the block that contains the text in the cell.

  • * SELECTION_ELEMENT - A selection element such as an option button (radio * button) or a check box that's detected on a document page. Use the value of * SelectionStatus to determine the status of the selection * element.

*/ inline void SetBlockType(BlockType&& value) { m_blockTypeHasBeenSet = true; m_blockType = std::move(value); } /** *

The type of text item that's recognized. In operations for text detection, * the following types are returned:

  • PAGE - Contains a * list of the LINE Block objects that are detected on a document * page.

  • WORD - A word detected on a document page. A * word is one or more ISO basic Latin script characters that aren't separated by * spaces.

  • LINE - A string of tab-delimited, contiguous * words that are detected on a document page.

In text analysis * operations, the following types are returned:

  • PAGE - * Contains a list of child Block objects that are detected on a * document page.

  • KEY_VALUE_SET - Stores the KEY and * VALUE Block objects for linked text that's detected on a document * page. Use the EntityType field to determine if a KEY_VALUE_SET * object is a KEY Block object or a VALUE Block object. *

  • WORD - A word that's detected on a document page. A * word is one or more ISO basic Latin script characters that aren't separated by * spaces.

  • LINE - A string of tab-delimited, contiguous * words that are detected on a document page.

  • TABLE - A * table that's detected on a document page. A table is grid-based information with * two or more rows or columns, with a cell span of one row and one column each. *

  • CELL - A cell within a detected table. The cell is * the parent of the block that contains the text in the cell.

  • * SELECTION_ELEMENT - A selection element such as an option button (radio * button) or a check box that's detected on a document page. Use the value of * SelectionStatus to determine the status of the selection * element.

*/ inline Block& WithBlockType(const BlockType& value) { SetBlockType(value); return *this;} /** *

The type of text item that's recognized. In operations for text detection, * the following types are returned:

  • PAGE - Contains a * list of the LINE Block objects that are detected on a document * page.

  • WORD - A word detected on a document page. A * word is one or more ISO basic Latin script characters that aren't separated by * spaces.

  • LINE - A string of tab-delimited, contiguous * words that are detected on a document page.

In text analysis * operations, the following types are returned:

  • PAGE - * Contains a list of child Block objects that are detected on a * document page.

  • KEY_VALUE_SET - Stores the KEY and * VALUE Block objects for linked text that's detected on a document * page. Use the EntityType field to determine if a KEY_VALUE_SET * object is a KEY Block object or a VALUE Block object. *

  • WORD - A word that's detected on a document page. A * word is one or more ISO basic Latin script characters that aren't separated by * spaces.

  • LINE - A string of tab-delimited, contiguous * words that are detected on a document page.

  • TABLE - A * table that's detected on a document page. A table is grid-based information with * two or more rows or columns, with a cell span of one row and one column each. *

  • CELL - A cell within a detected table. The cell is * the parent of the block that contains the text in the cell.

  • * SELECTION_ELEMENT - A selection element such as an option button (radio * button) or a check box that's detected on a document page. Use the value of * SelectionStatus to determine the status of the selection * element.

*/ inline Block& WithBlockType(BlockType&& value) { SetBlockType(std::move(value)); return *this;} /** *

The confidence score that Amazon Textract has in the accuracy of the * recognized text and the accuracy of the geometry points around the recognized * text.

*/ inline double GetConfidence() const{ return m_confidence; } /** *

The confidence score that Amazon Textract has in the accuracy of the * recognized text and the accuracy of the geometry points around the recognized * text.

*/ inline bool ConfidenceHasBeenSet() const { return m_confidenceHasBeenSet; } /** *

The confidence score that Amazon Textract has in the accuracy of the * recognized text and the accuracy of the geometry points around the recognized * text.

*/ inline void SetConfidence(double value) { m_confidenceHasBeenSet = true; m_confidence = value; } /** *

The confidence score that Amazon Textract has in the accuracy of the * recognized text and the accuracy of the geometry points around the recognized * text.

*/ inline Block& WithConfidence(double value) { SetConfidence(value); return *this;} /** *

The word or line of text that's recognized by Amazon Textract.

*/ inline const Aws::String& GetText() const{ return m_text; } /** *

The word or line of text that's recognized by Amazon Textract.

*/ inline bool TextHasBeenSet() const { return m_textHasBeenSet; } /** *

The word or line of text that's recognized by Amazon Textract.

*/ inline void SetText(const Aws::String& value) { m_textHasBeenSet = true; m_text = value; } /** *

The word or line of text that's recognized by Amazon Textract.

*/ inline void SetText(Aws::String&& value) { m_textHasBeenSet = true; m_text = std::move(value); } /** *

The word or line of text that's recognized by Amazon Textract.

*/ inline void SetText(const char* value) { m_textHasBeenSet = true; m_text.assign(value); } /** *

The word or line of text that's recognized by Amazon Textract.

*/ inline Block& WithText(const Aws::String& value) { SetText(value); return *this;} /** *

The word or line of text that's recognized by Amazon Textract.

*/ inline Block& WithText(Aws::String&& value) { SetText(std::move(value)); return *this;} /** *

The word or line of text that's recognized by Amazon Textract.

*/ inline Block& WithText(const char* value) { SetText(value); return *this;} /** *

The row in which a table cell is located. The first row position is 1. * RowIndex isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline int GetRowIndex() const{ return m_rowIndex; } /** *

The row in which a table cell is located. The first row position is 1. * RowIndex isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline bool RowIndexHasBeenSet() const { return m_rowIndexHasBeenSet; } /** *

The row in which a table cell is located. The first row position is 1. * RowIndex isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline void SetRowIndex(int value) { m_rowIndexHasBeenSet = true; m_rowIndex = value; } /** *

The row in which a table cell is located. The first row position is 1. * RowIndex isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline Block& WithRowIndex(int value) { SetRowIndex(value); return *this;} /** *

The column in which a table cell appears. The first column position is 1. * ColumnIndex isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline int GetColumnIndex() const{ return m_columnIndex; } /** *

The column in which a table cell appears. The first column position is 1. * ColumnIndex isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline bool ColumnIndexHasBeenSet() const { return m_columnIndexHasBeenSet; } /** *

The column in which a table cell appears. The first column position is 1. * ColumnIndex isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline void SetColumnIndex(int value) { m_columnIndexHasBeenSet = true; m_columnIndex = value; } /** *

The column in which a table cell appears. The first column position is 1. * ColumnIndex isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline Block& WithColumnIndex(int value) { SetColumnIndex(value); return *this;} /** *

The number of rows that a table cell spans. Currently this value is always 1, * even if the number of rows spanned is greater than 1. RowSpan isn't * returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline int GetRowSpan() const{ return m_rowSpan; } /** *

The number of rows that a table cell spans. Currently this value is always 1, * even if the number of rows spanned is greater than 1. RowSpan isn't * returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline bool RowSpanHasBeenSet() const { return m_rowSpanHasBeenSet; } /** *

The number of rows that a table cell spans. Currently this value is always 1, * even if the number of rows spanned is greater than 1. RowSpan isn't * returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline void SetRowSpan(int value) { m_rowSpanHasBeenSet = true; m_rowSpan = value; } /** *

The number of rows that a table cell spans. Currently this value is always 1, * even if the number of rows spanned is greater than 1. RowSpan isn't * returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline Block& WithRowSpan(int value) { SetRowSpan(value); return *this;} /** *

The number of columns that a table cell spans. Currently this value is always * 1, even if the number of columns spanned is greater than 1. * ColumnSpan isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline int GetColumnSpan() const{ return m_columnSpan; } /** *

The number of columns that a table cell spans. Currently this value is always * 1, even if the number of columns spanned is greater than 1. * ColumnSpan isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline bool ColumnSpanHasBeenSet() const { return m_columnSpanHasBeenSet; } /** *

The number of columns that a table cell spans. Currently this value is always * 1, even if the number of columns spanned is greater than 1. * ColumnSpan isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline void SetColumnSpan(int value) { m_columnSpanHasBeenSet = true; m_columnSpan = value; } /** *

The number of columns that a table cell spans. Currently this value is always * 1, even if the number of columns spanned is greater than 1. * ColumnSpan isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline Block& WithColumnSpan(int value) { SetColumnSpan(value); return *this;} /** *

The location of the recognized text on the image. It includes an * axis-aligned, coarse bounding box that surrounds the text, and a finer-grain * polygon for more accurate spatial information.

*/ inline const Geometry& GetGeometry() const{ return m_geometry; } /** *

The location of the recognized text on the image. It includes an * axis-aligned, coarse bounding box that surrounds the text, and a finer-grain * polygon for more accurate spatial information.

*/ inline bool GeometryHasBeenSet() const { return m_geometryHasBeenSet; } /** *

The location of the recognized text on the image. It includes an * axis-aligned, coarse bounding box that surrounds the text, and a finer-grain * polygon for more accurate spatial information.

*/ inline void SetGeometry(const Geometry& value) { m_geometryHasBeenSet = true; m_geometry = value; } /** *

The location of the recognized text on the image. It includes an * axis-aligned, coarse bounding box that surrounds the text, and a finer-grain * polygon for more accurate spatial information.

*/ inline void SetGeometry(Geometry&& value) { m_geometryHasBeenSet = true; m_geometry = std::move(value); } /** *

The location of the recognized text on the image. It includes an * axis-aligned, coarse bounding box that surrounds the text, and a finer-grain * polygon for more accurate spatial information.

*/ inline Block& WithGeometry(const Geometry& value) { SetGeometry(value); return *this;} /** *

The location of the recognized text on the image. It includes an * axis-aligned, coarse bounding box that surrounds the text, and a finer-grain * polygon for more accurate spatial information.

*/ inline Block& WithGeometry(Geometry&& value) { SetGeometry(std::move(value)); return *this;} /** *

The identifier for the recognized text. The identifier is only unique for a * single operation.

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

The identifier for the recognized text. The identifier is only unique for a * single operation.

*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *

The identifier for the recognized text. The identifier is only unique for a * single operation.

*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *

The identifier for the recognized text. The identifier is only unique for a * single operation.

*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *

The identifier for the recognized text. The identifier is only unique for a * single operation.

*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *

The identifier for the recognized text. The identifier is only unique for a * single operation.

*/ inline Block& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

The identifier for the recognized text. The identifier is only unique for a * single operation.

*/ inline Block& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

The identifier for the recognized text. The identifier is only unique for a * single operation.

*/ inline Block& WithId(const char* value) { SetId(value); return *this;} /** *

A list of child blocks of the current block. For example, a LINE object has * child blocks for each WORD block that's part of the line of text. There aren't * Relationship objects in the list for relationships that don't exist, such as * when the current block has no child blocks. The list size can be the * following:

  • 0 - The block has no child blocks.

  • *

    1 - The block has child blocks.

*/ inline const Aws::Vector& GetRelationships() const{ return m_relationships; } /** *

A list of child blocks of the current block. For example, a LINE object has * child blocks for each WORD block that's part of the line of text. There aren't * Relationship objects in the list for relationships that don't exist, such as * when the current block has no child blocks. The list size can be the * following:

  • 0 - The block has no child blocks.

  • *

    1 - The block has child blocks.

*/ inline bool RelationshipsHasBeenSet() const { return m_relationshipsHasBeenSet; } /** *

A list of child blocks of the current block. For example, a LINE object has * child blocks for each WORD block that's part of the line of text. There aren't * Relationship objects in the list for relationships that don't exist, such as * when the current block has no child blocks. The list size can be the * following:

  • 0 - The block has no child blocks.

  • *

    1 - The block has child blocks.

*/ inline void SetRelationships(const Aws::Vector& value) { m_relationshipsHasBeenSet = true; m_relationships = value; } /** *

A list of child blocks of the current block. For example, a LINE object has * child blocks for each WORD block that's part of the line of text. There aren't * Relationship objects in the list for relationships that don't exist, such as * when the current block has no child blocks. The list size can be the * following:

  • 0 - The block has no child blocks.

  • *

    1 - The block has child blocks.

*/ inline void SetRelationships(Aws::Vector&& value) { m_relationshipsHasBeenSet = true; m_relationships = std::move(value); } /** *

A list of child blocks of the current block. For example, a LINE object has * child blocks for each WORD block that's part of the line of text. There aren't * Relationship objects in the list for relationships that don't exist, such as * when the current block has no child blocks. The list size can be the * following:

  • 0 - The block has no child blocks.

  • *

    1 - The block has child blocks.

*/ inline Block& WithRelationships(const Aws::Vector& value) { SetRelationships(value); return *this;} /** *

A list of child blocks of the current block. For example, a LINE object has * child blocks for each WORD block that's part of the line of text. There aren't * Relationship objects in the list for relationships that don't exist, such as * when the current block has no child blocks. The list size can be the * following:

  • 0 - The block has no child blocks.

  • *

    1 - The block has child blocks.

*/ inline Block& WithRelationships(Aws::Vector&& value) { SetRelationships(std::move(value)); return *this;} /** *

A list of child blocks of the current block. For example, a LINE object has * child blocks for each WORD block that's part of the line of text. There aren't * Relationship objects in the list for relationships that don't exist, such as * when the current block has no child blocks. The list size can be the * following:

  • 0 - The block has no child blocks.

  • *

    1 - The block has child blocks.

*/ inline Block& AddRelationships(const Relationship& value) { m_relationshipsHasBeenSet = true; m_relationships.push_back(value); return *this; } /** *

A list of child blocks of the current block. For example, a LINE object has * child blocks for each WORD block that's part of the line of text. There aren't * Relationship objects in the list for relationships that don't exist, such as * when the current block has no child blocks. The list size can be the * following:

  • 0 - The block has no child blocks.

  • *

    1 - The block has child blocks.

*/ inline Block& AddRelationships(Relationship&& value) { m_relationshipsHasBeenSet = true; m_relationships.push_back(std::move(value)); return *this; } /** *

The type of entity. The following can be returned:

  • * KEY - An identifier for a field on the document.

  • * VALUE - The field text.

EntityTypes * isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline const Aws::Vector& GetEntityTypes() const{ return m_entityTypes; } /** *

The type of entity. The following can be returned:

  • * KEY - An identifier for a field on the document.

  • * VALUE - The field text.

EntityTypes * isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline bool EntityTypesHasBeenSet() const { return m_entityTypesHasBeenSet; } /** *

The type of entity. The following can be returned:

  • * KEY - An identifier for a field on the document.

  • * VALUE - The field text.

EntityTypes * isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline void SetEntityTypes(const Aws::Vector& value) { m_entityTypesHasBeenSet = true; m_entityTypes = value; } /** *

The type of entity. The following can be returned:

  • * KEY - An identifier for a field on the document.

  • * VALUE - The field text.

EntityTypes * isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline void SetEntityTypes(Aws::Vector&& value) { m_entityTypesHasBeenSet = true; m_entityTypes = std::move(value); } /** *

The type of entity. The following can be returned:

  • * KEY - An identifier for a field on the document.

  • * VALUE - The field text.

EntityTypes * isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline Block& WithEntityTypes(const Aws::Vector& value) { SetEntityTypes(value); return *this;} /** *

The type of entity. The following can be returned:

  • * KEY - An identifier for a field on the document.

  • * VALUE - The field text.

EntityTypes * isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline Block& WithEntityTypes(Aws::Vector&& value) { SetEntityTypes(std::move(value)); return *this;} /** *

The type of entity. The following can be returned:

  • * KEY - An identifier for a field on the document.

  • * VALUE - The field text.

EntityTypes * isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline Block& AddEntityTypes(const EntityType& value) { m_entityTypesHasBeenSet = true; m_entityTypes.push_back(value); return *this; } /** *

The type of entity. The following can be returned:

  • * KEY - An identifier for a field on the document.

  • * VALUE - The field text.

EntityTypes * isn't returned by DetectDocumentText and * GetDocumentTextDetection.

*/ inline Block& AddEntityTypes(EntityType&& value) { m_entityTypesHasBeenSet = true; m_entityTypes.push_back(std::move(value)); return *this; } /** *

The selection status of a selection element, such as an option button or * check box.

*/ inline const SelectionStatus& GetSelectionStatus() const{ return m_selectionStatus; } /** *

The selection status of a selection element, such as an option button or * check box.

*/ inline bool SelectionStatusHasBeenSet() const { return m_selectionStatusHasBeenSet; } /** *

The selection status of a selection element, such as an option button or * check box.

*/ inline void SetSelectionStatus(const SelectionStatus& value) { m_selectionStatusHasBeenSet = true; m_selectionStatus = value; } /** *

The selection status of a selection element, such as an option button or * check box.

*/ inline void SetSelectionStatus(SelectionStatus&& value) { m_selectionStatusHasBeenSet = true; m_selectionStatus = std::move(value); } /** *

The selection status of a selection element, such as an option button or * check box.

*/ inline Block& WithSelectionStatus(const SelectionStatus& value) { SetSelectionStatus(value); return *this;} /** *

The selection status of a selection element, such as an option button or * check box.

*/ inline Block& WithSelectionStatus(SelectionStatus&& value) { SetSelectionStatus(std::move(value)); return *this;} /** *

The page on which a block was detected. Page is returned by * asynchronous operations. Page values greater than 1 are only returned for * multipage documents that are in PDF format. A scanned image (JPEG/PNG), even if * it contains multiple document pages, is considered to be a single-page document. * The value of Page is always 1. Synchronous operations don't return * Page because every input document is considered to be a single-page * document.

*/ inline int GetPage() const{ return m_page; } /** *

The page on which a block was detected. Page is returned by * asynchronous operations. Page values greater than 1 are only returned for * multipage documents that are in PDF format. A scanned image (JPEG/PNG), even if * it contains multiple document pages, is considered to be a single-page document. * The value of Page is always 1. Synchronous operations don't return * Page because every input document is considered to be a single-page * document.

*/ inline bool PageHasBeenSet() const { return m_pageHasBeenSet; } /** *

The page on which a block was detected. Page is returned by * asynchronous operations. Page values greater than 1 are only returned for * multipage documents that are in PDF format. A scanned image (JPEG/PNG), even if * it contains multiple document pages, is considered to be a single-page document. * The value of Page is always 1. Synchronous operations don't return * Page because every input document is considered to be a single-page * document.

*/ inline void SetPage(int value) { m_pageHasBeenSet = true; m_page = value; } /** *

The page on which a block was detected. Page is returned by * asynchronous operations. Page values greater than 1 are only returned for * multipage documents that are in PDF format. A scanned image (JPEG/PNG), even if * it contains multiple document pages, is considered to be a single-page document. * The value of Page is always 1. Synchronous operations don't return * Page because every input document is considered to be a single-page * document.

*/ inline Block& WithPage(int value) { SetPage(value); return *this;} private: BlockType m_blockType; bool m_blockTypeHasBeenSet; double m_confidence; bool m_confidenceHasBeenSet; Aws::String m_text; bool m_textHasBeenSet; int m_rowIndex; bool m_rowIndexHasBeenSet; int m_columnIndex; bool m_columnIndexHasBeenSet; int m_rowSpan; bool m_rowSpanHasBeenSet; int m_columnSpan; bool m_columnSpanHasBeenSet; Geometry m_geometry; bool m_geometryHasBeenSet; Aws::String m_id; bool m_idHasBeenSet; Aws::Vector m_relationships; bool m_relationshipsHasBeenSet; Aws::Vector m_entityTypes; bool m_entityTypesHasBeenSet; SelectionStatus m_selectionStatus; bool m_selectionStatusHasBeenSet; int m_page; bool m_pageHasBeenSet; }; } // namespace Model } // namespace Textract } // namespace Aws