/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Rekognition { namespace Model { /** *

Contains metadata about a label detection request, including the SortBy and * AggregateBy options.

See Also:

AWS * API Reference

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

The sorting method chosen for a GetLabelDetection request.

*/ inline const LabelDetectionSortBy& GetSortBy() const{ return m_sortBy; } /** *

The sorting method chosen for a GetLabelDetection request.

*/ inline bool SortByHasBeenSet() const { return m_sortByHasBeenSet; } /** *

The sorting method chosen for a GetLabelDetection request.

*/ inline void SetSortBy(const LabelDetectionSortBy& value) { m_sortByHasBeenSet = true; m_sortBy = value; } /** *

The sorting method chosen for a GetLabelDetection request.

*/ inline void SetSortBy(LabelDetectionSortBy&& value) { m_sortByHasBeenSet = true; m_sortBy = std::move(value); } /** *

The sorting method chosen for a GetLabelDetection request.

*/ inline GetLabelDetectionRequestMetadata& WithSortBy(const LabelDetectionSortBy& value) { SetSortBy(value); return *this;} /** *

The sorting method chosen for a GetLabelDetection request.

*/ inline GetLabelDetectionRequestMetadata& WithSortBy(LabelDetectionSortBy&& value) { SetSortBy(std::move(value)); return *this;} /** *

The aggregation method chosen for a GetLabelDetection request.

*/ inline const LabelDetectionAggregateBy& GetAggregateBy() const{ return m_aggregateBy; } /** *

The aggregation method chosen for a GetLabelDetection request.

*/ inline bool AggregateByHasBeenSet() const { return m_aggregateByHasBeenSet; } /** *

The aggregation method chosen for a GetLabelDetection request.

*/ inline void SetAggregateBy(const LabelDetectionAggregateBy& value) { m_aggregateByHasBeenSet = true; m_aggregateBy = value; } /** *

The aggregation method chosen for a GetLabelDetection request.

*/ inline void SetAggregateBy(LabelDetectionAggregateBy&& value) { m_aggregateByHasBeenSet = true; m_aggregateBy = std::move(value); } /** *

The aggregation method chosen for a GetLabelDetection request.

*/ inline GetLabelDetectionRequestMetadata& WithAggregateBy(const LabelDetectionAggregateBy& value) { SetAggregateBy(value); return *this;} /** *

The aggregation method chosen for a GetLabelDetection request.

*/ inline GetLabelDetectionRequestMetadata& WithAggregateBy(LabelDetectionAggregateBy&& value) { SetAggregateBy(std::move(value)); return *this;} private: LabelDetectionSortBy m_sortBy; bool m_sortByHasBeenSet = false; LabelDetectionAggregateBy m_aggregateBy; bool m_aggregateByHasBeenSet = false; }; } // namespace Model } // namespace Rekognition } // namespace Aws