/** * 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 filters for the object labels returned by DetectLabels. Filters can * be inclusive, exclusive, or a combination of both and can be applied to * individual labels or entire label categories. To see a list of label categories, * see Detecting * Labels.

See Also:

AWS * API Reference

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

The labels that should be included in the return from DetectLabels.

*/ inline const Aws::Vector& GetLabelInclusionFilters() const{ return m_labelInclusionFilters; } /** *

The labels that should be included in the return from DetectLabels.

*/ inline bool LabelInclusionFiltersHasBeenSet() const { return m_labelInclusionFiltersHasBeenSet; } /** *

The labels that should be included in the return from DetectLabels.

*/ inline void SetLabelInclusionFilters(const Aws::Vector& value) { m_labelInclusionFiltersHasBeenSet = true; m_labelInclusionFilters = value; } /** *

The labels that should be included in the return from DetectLabels.

*/ inline void SetLabelInclusionFilters(Aws::Vector&& value) { m_labelInclusionFiltersHasBeenSet = true; m_labelInclusionFilters = std::move(value); } /** *

The labels that should be included in the return from DetectLabels.

*/ inline GeneralLabelsSettings& WithLabelInclusionFilters(const Aws::Vector& value) { SetLabelInclusionFilters(value); return *this;} /** *

The labels that should be included in the return from DetectLabels.

*/ inline GeneralLabelsSettings& WithLabelInclusionFilters(Aws::Vector&& value) { SetLabelInclusionFilters(std::move(value)); return *this;} /** *

The labels that should be included in the return from DetectLabels.

*/ inline GeneralLabelsSettings& AddLabelInclusionFilters(const Aws::String& value) { m_labelInclusionFiltersHasBeenSet = true; m_labelInclusionFilters.push_back(value); return *this; } /** *

The labels that should be included in the return from DetectLabels.

*/ inline GeneralLabelsSettings& AddLabelInclusionFilters(Aws::String&& value) { m_labelInclusionFiltersHasBeenSet = true; m_labelInclusionFilters.push_back(std::move(value)); return *this; } /** *

The labels that should be included in the return from DetectLabels.

*/ inline GeneralLabelsSettings& AddLabelInclusionFilters(const char* value) { m_labelInclusionFiltersHasBeenSet = true; m_labelInclusionFilters.push_back(value); return *this; } /** *

The labels that should be excluded from the return from DetectLabels.

*/ inline const Aws::Vector& GetLabelExclusionFilters() const{ return m_labelExclusionFilters; } /** *

The labels that should be excluded from the return from DetectLabels.

*/ inline bool LabelExclusionFiltersHasBeenSet() const { return m_labelExclusionFiltersHasBeenSet; } /** *

The labels that should be excluded from the return from DetectLabels.

*/ inline void SetLabelExclusionFilters(const Aws::Vector& value) { m_labelExclusionFiltersHasBeenSet = true; m_labelExclusionFilters = value; } /** *

The labels that should be excluded from the return from DetectLabels.

*/ inline void SetLabelExclusionFilters(Aws::Vector&& value) { m_labelExclusionFiltersHasBeenSet = true; m_labelExclusionFilters = std::move(value); } /** *

The labels that should be excluded from the return from DetectLabels.

*/ inline GeneralLabelsSettings& WithLabelExclusionFilters(const Aws::Vector& value) { SetLabelExclusionFilters(value); return *this;} /** *

The labels that should be excluded from the return from DetectLabels.

*/ inline GeneralLabelsSettings& WithLabelExclusionFilters(Aws::Vector&& value) { SetLabelExclusionFilters(std::move(value)); return *this;} /** *

The labels that should be excluded from the return from DetectLabels.

*/ inline GeneralLabelsSettings& AddLabelExclusionFilters(const Aws::String& value) { m_labelExclusionFiltersHasBeenSet = true; m_labelExclusionFilters.push_back(value); return *this; } /** *

The labels that should be excluded from the return from DetectLabels.

*/ inline GeneralLabelsSettings& AddLabelExclusionFilters(Aws::String&& value) { m_labelExclusionFiltersHasBeenSet = true; m_labelExclusionFilters.push_back(std::move(value)); return *this; } /** *

The labels that should be excluded from the return from DetectLabels.

*/ inline GeneralLabelsSettings& AddLabelExclusionFilters(const char* value) { m_labelExclusionFiltersHasBeenSet = true; m_labelExclusionFilters.push_back(value); return *this; } /** *

The label categories that should be included in the return from * DetectLabels.

*/ inline const Aws::Vector& GetLabelCategoryInclusionFilters() const{ return m_labelCategoryInclusionFilters; } /** *

The label categories that should be included in the return from * DetectLabels.

*/ inline bool LabelCategoryInclusionFiltersHasBeenSet() const { return m_labelCategoryInclusionFiltersHasBeenSet; } /** *

The label categories that should be included in the return from * DetectLabels.

*/ inline void SetLabelCategoryInclusionFilters(const Aws::Vector& value) { m_labelCategoryInclusionFiltersHasBeenSet = true; m_labelCategoryInclusionFilters = value; } /** *

The label categories that should be included in the return from * DetectLabels.

*/ inline void SetLabelCategoryInclusionFilters(Aws::Vector&& value) { m_labelCategoryInclusionFiltersHasBeenSet = true; m_labelCategoryInclusionFilters = std::move(value); } /** *

The label categories that should be included in the return from * DetectLabels.

*/ inline GeneralLabelsSettings& WithLabelCategoryInclusionFilters(const Aws::Vector& value) { SetLabelCategoryInclusionFilters(value); return *this;} /** *

The label categories that should be included in the return from * DetectLabels.

*/ inline GeneralLabelsSettings& WithLabelCategoryInclusionFilters(Aws::Vector&& value) { SetLabelCategoryInclusionFilters(std::move(value)); return *this;} /** *

The label categories that should be included in the return from * DetectLabels.

*/ inline GeneralLabelsSettings& AddLabelCategoryInclusionFilters(const Aws::String& value) { m_labelCategoryInclusionFiltersHasBeenSet = true; m_labelCategoryInclusionFilters.push_back(value); return *this; } /** *

The label categories that should be included in the return from * DetectLabels.

*/ inline GeneralLabelsSettings& AddLabelCategoryInclusionFilters(Aws::String&& value) { m_labelCategoryInclusionFiltersHasBeenSet = true; m_labelCategoryInclusionFilters.push_back(std::move(value)); return *this; } /** *

The label categories that should be included in the return from * DetectLabels.

*/ inline GeneralLabelsSettings& AddLabelCategoryInclusionFilters(const char* value) { m_labelCategoryInclusionFiltersHasBeenSet = true; m_labelCategoryInclusionFilters.push_back(value); return *this; } /** *

The label categories that should be excluded from the return from * DetectLabels.

*/ inline const Aws::Vector& GetLabelCategoryExclusionFilters() const{ return m_labelCategoryExclusionFilters; } /** *

The label categories that should be excluded from the return from * DetectLabels.

*/ inline bool LabelCategoryExclusionFiltersHasBeenSet() const { return m_labelCategoryExclusionFiltersHasBeenSet; } /** *

The label categories that should be excluded from the return from * DetectLabels.

*/ inline void SetLabelCategoryExclusionFilters(const Aws::Vector& value) { m_labelCategoryExclusionFiltersHasBeenSet = true; m_labelCategoryExclusionFilters = value; } /** *

The label categories that should be excluded from the return from * DetectLabels.

*/ inline void SetLabelCategoryExclusionFilters(Aws::Vector&& value) { m_labelCategoryExclusionFiltersHasBeenSet = true; m_labelCategoryExclusionFilters = std::move(value); } /** *

The label categories that should be excluded from the return from * DetectLabels.

*/ inline GeneralLabelsSettings& WithLabelCategoryExclusionFilters(const Aws::Vector& value) { SetLabelCategoryExclusionFilters(value); return *this;} /** *

The label categories that should be excluded from the return from * DetectLabels.

*/ inline GeneralLabelsSettings& WithLabelCategoryExclusionFilters(Aws::Vector&& value) { SetLabelCategoryExclusionFilters(std::move(value)); return *this;} /** *

The label categories that should be excluded from the return from * DetectLabels.

*/ inline GeneralLabelsSettings& AddLabelCategoryExclusionFilters(const Aws::String& value) { m_labelCategoryExclusionFiltersHasBeenSet = true; m_labelCategoryExclusionFilters.push_back(value); return *this; } /** *

The label categories that should be excluded from the return from * DetectLabels.

*/ inline GeneralLabelsSettings& AddLabelCategoryExclusionFilters(Aws::String&& value) { m_labelCategoryExclusionFiltersHasBeenSet = true; m_labelCategoryExclusionFilters.push_back(std::move(value)); return *this; } /** *

The label categories that should be excluded from the return from * DetectLabels.

*/ inline GeneralLabelsSettings& AddLabelCategoryExclusionFilters(const char* value) { m_labelCategoryExclusionFiltersHasBeenSet = true; m_labelCategoryExclusionFilters.push_back(value); return *this; } private: Aws::Vector m_labelInclusionFilters; bool m_labelInclusionFiltersHasBeenSet = false; Aws::Vector m_labelExclusionFilters; bool m_labelExclusionFiltersHasBeenSet = false; Aws::Vector m_labelCategoryInclusionFilters; bool m_labelCategoryInclusionFiltersHasBeenSet = false; Aws::Vector m_labelCategoryExclusionFilters; bool m_labelCategoryExclusionFiltersHasBeenSet = false; }; } // namespace Model } // namespace Rekognition } // namespace Aws