/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The structure representing input configuration of ZonalStatistics
* operation.See Also:
AWS
* API Reference
List of zonal statistics to compute.
*/ inline const Aws::VectorList of zonal statistics to compute.
*/ inline bool StatisticsHasBeenSet() const { return m_statisticsHasBeenSet; } /** *List of zonal statistics to compute.
*/ inline void SetStatistics(const Aws::VectorList of zonal statistics to compute.
*/ inline void SetStatistics(Aws::VectorList of zonal statistics to compute.
*/ inline ZonalStatisticsConfigInput& WithStatistics(const Aws::VectorList of zonal statistics to compute.
*/ inline ZonalStatisticsConfigInput& WithStatistics(Aws::VectorList of zonal statistics to compute.
*/ inline ZonalStatisticsConfigInput& AddStatistics(const ZonalStatistics& value) { m_statisticsHasBeenSet = true; m_statistics.push_back(value); return *this; } /** *List of zonal statistics to compute.
*/ inline ZonalStatisticsConfigInput& AddStatistics(ZonalStatistics&& value) { m_statisticsHasBeenSet = true; m_statistics.push_back(std::move(value)); return *this; } /** *Bands used in the operation. If no target bands are specified, it uses all * bands available input.
*/ inline const Aws::VectorBands used in the operation. If no target bands are specified, it uses all * bands available input.
*/ inline bool TargetBandsHasBeenSet() const { return m_targetBandsHasBeenSet; } /** *Bands used in the operation. If no target bands are specified, it uses all * bands available input.
*/ inline void SetTargetBands(const Aws::VectorBands used in the operation. If no target bands are specified, it uses all * bands available input.
*/ inline void SetTargetBands(Aws::VectorBands used in the operation. If no target bands are specified, it uses all * bands available input.
*/ inline ZonalStatisticsConfigInput& WithTargetBands(const Aws::VectorBands used in the operation. If no target bands are specified, it uses all * bands available input.
*/ inline ZonalStatisticsConfigInput& WithTargetBands(Aws::VectorBands used in the operation. If no target bands are specified, it uses all * bands available input.
*/ inline ZonalStatisticsConfigInput& AddTargetBands(const Aws::String& value) { m_targetBandsHasBeenSet = true; m_targetBands.push_back(value); return *this; } /** *Bands used in the operation. If no target bands are specified, it uses all * bands available input.
*/ inline ZonalStatisticsConfigInput& AddTargetBands(Aws::String&& value) { m_targetBandsHasBeenSet = true; m_targetBands.push_back(std::move(value)); return *this; } /** *Bands used in the operation. If no target bands are specified, it uses all * bands available input.
*/ inline ZonalStatisticsConfigInput& AddTargetBands(const char* value) { m_targetBandsHasBeenSet = true; m_targetBands.push_back(value); return *this; } /** *The Amazon S3 path pointing to the GeoJSON containing the polygonal * zones.
*/ inline const Aws::String& GetZoneS3Path() const{ return m_zoneS3Path; } /** *The Amazon S3 path pointing to the GeoJSON containing the polygonal * zones.
*/ inline bool ZoneS3PathHasBeenSet() const { return m_zoneS3PathHasBeenSet; } /** *The Amazon S3 path pointing to the GeoJSON containing the polygonal * zones.
*/ inline void SetZoneS3Path(const Aws::String& value) { m_zoneS3PathHasBeenSet = true; m_zoneS3Path = value; } /** *The Amazon S3 path pointing to the GeoJSON containing the polygonal * zones.
*/ inline void SetZoneS3Path(Aws::String&& value) { m_zoneS3PathHasBeenSet = true; m_zoneS3Path = std::move(value); } /** *The Amazon S3 path pointing to the GeoJSON containing the polygonal * zones.
*/ inline void SetZoneS3Path(const char* value) { m_zoneS3PathHasBeenSet = true; m_zoneS3Path.assign(value); } /** *The Amazon S3 path pointing to the GeoJSON containing the polygonal * zones.
*/ inline ZonalStatisticsConfigInput& WithZoneS3Path(const Aws::String& value) { SetZoneS3Path(value); return *this;} /** *The Amazon S3 path pointing to the GeoJSON containing the polygonal * zones.
*/ inline ZonalStatisticsConfigInput& WithZoneS3Path(Aws::String&& value) { SetZoneS3Path(std::move(value)); return *this;} /** *The Amazon S3 path pointing to the GeoJSON containing the polygonal * zones.
*/ inline ZonalStatisticsConfigInput& WithZoneS3Path(const char* value) { SetZoneS3Path(value); return *this;} /** *The Amazon Resource Name (ARN) or an ID of a Amazon Web Services Key
* Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to
* decrypt your output artifacts with Amazon S3 server-side encryption. The
* SageMaker execution role must have kms:GenerateDataKey
* permission.
The KmsKeyId
can be any of the following
* formats:
// KMS Key ID
* "1234abcd-12ab-34cd-56ef-1234567890ab"
// Amazon * Resource Name (ARN) of a KMS Key
* "arn:aws:kms:<region>:<account>:key/<key-id-12ab-34cd-56ef-1234567890ab>"
*
For more information about key identifiers, see Key * identifiers (KeyID) in the Amazon Web Services Key Management Service * (Amazon Web Services KMS) documentation.
*/ inline const Aws::String& GetZoneS3PathKmsKeyId() const{ return m_zoneS3PathKmsKeyId; } /** *The Amazon Resource Name (ARN) or an ID of a Amazon Web Services Key
* Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to
* decrypt your output artifacts with Amazon S3 server-side encryption. The
* SageMaker execution role must have kms:GenerateDataKey
* permission.
The KmsKeyId
can be any of the following
* formats:
// KMS Key ID
* "1234abcd-12ab-34cd-56ef-1234567890ab"
// Amazon * Resource Name (ARN) of a KMS Key
* "arn:aws:kms:<region>:<account>:key/<key-id-12ab-34cd-56ef-1234567890ab>"
*
For more information about key identifiers, see Key * identifiers (KeyID) in the Amazon Web Services Key Management Service * (Amazon Web Services KMS) documentation.
*/ inline bool ZoneS3PathKmsKeyIdHasBeenSet() const { return m_zoneS3PathKmsKeyIdHasBeenSet; } /** *The Amazon Resource Name (ARN) or an ID of a Amazon Web Services Key
* Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to
* decrypt your output artifacts with Amazon S3 server-side encryption. The
* SageMaker execution role must have kms:GenerateDataKey
* permission.
The KmsKeyId
can be any of the following
* formats:
// KMS Key ID
* "1234abcd-12ab-34cd-56ef-1234567890ab"
// Amazon * Resource Name (ARN) of a KMS Key
* "arn:aws:kms:<region>:<account>:key/<key-id-12ab-34cd-56ef-1234567890ab>"
*
For more information about key identifiers, see Key * identifiers (KeyID) in the Amazon Web Services Key Management Service * (Amazon Web Services KMS) documentation.
*/ inline void SetZoneS3PathKmsKeyId(const Aws::String& value) { m_zoneS3PathKmsKeyIdHasBeenSet = true; m_zoneS3PathKmsKeyId = value; } /** *The Amazon Resource Name (ARN) or an ID of a Amazon Web Services Key
* Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to
* decrypt your output artifacts with Amazon S3 server-side encryption. The
* SageMaker execution role must have kms:GenerateDataKey
* permission.
The KmsKeyId
can be any of the following
* formats:
// KMS Key ID
* "1234abcd-12ab-34cd-56ef-1234567890ab"
// Amazon * Resource Name (ARN) of a KMS Key
* "arn:aws:kms:<region>:<account>:key/<key-id-12ab-34cd-56ef-1234567890ab>"
*
For more information about key identifiers, see Key * identifiers (KeyID) in the Amazon Web Services Key Management Service * (Amazon Web Services KMS) documentation.
*/ inline void SetZoneS3PathKmsKeyId(Aws::String&& value) { m_zoneS3PathKmsKeyIdHasBeenSet = true; m_zoneS3PathKmsKeyId = std::move(value); } /** *The Amazon Resource Name (ARN) or an ID of a Amazon Web Services Key
* Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to
* decrypt your output artifacts with Amazon S3 server-side encryption. The
* SageMaker execution role must have kms:GenerateDataKey
* permission.
The KmsKeyId
can be any of the following
* formats:
// KMS Key ID
* "1234abcd-12ab-34cd-56ef-1234567890ab"
// Amazon * Resource Name (ARN) of a KMS Key
* "arn:aws:kms:<region>:<account>:key/<key-id-12ab-34cd-56ef-1234567890ab>"
*
For more information about key identifiers, see Key * identifiers (KeyID) in the Amazon Web Services Key Management Service * (Amazon Web Services KMS) documentation.
*/ inline void SetZoneS3PathKmsKeyId(const char* value) { m_zoneS3PathKmsKeyIdHasBeenSet = true; m_zoneS3PathKmsKeyId.assign(value); } /** *The Amazon Resource Name (ARN) or an ID of a Amazon Web Services Key
* Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to
* decrypt your output artifacts with Amazon S3 server-side encryption. The
* SageMaker execution role must have kms:GenerateDataKey
* permission.
The KmsKeyId
can be any of the following
* formats:
// KMS Key ID
* "1234abcd-12ab-34cd-56ef-1234567890ab"
// Amazon * Resource Name (ARN) of a KMS Key
* "arn:aws:kms:<region>:<account>:key/<key-id-12ab-34cd-56ef-1234567890ab>"
*
For more information about key identifiers, see Key * identifiers (KeyID) in the Amazon Web Services Key Management Service * (Amazon Web Services KMS) documentation.
*/ inline ZonalStatisticsConfigInput& WithZoneS3PathKmsKeyId(const Aws::String& value) { SetZoneS3PathKmsKeyId(value); return *this;} /** *The Amazon Resource Name (ARN) or an ID of a Amazon Web Services Key
* Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to
* decrypt your output artifacts with Amazon S3 server-side encryption. The
* SageMaker execution role must have kms:GenerateDataKey
* permission.
The KmsKeyId
can be any of the following
* formats:
// KMS Key ID
* "1234abcd-12ab-34cd-56ef-1234567890ab"
// Amazon * Resource Name (ARN) of a KMS Key
* "arn:aws:kms:<region>:<account>:key/<key-id-12ab-34cd-56ef-1234567890ab>"
*
For more information about key identifiers, see Key * identifiers (KeyID) in the Amazon Web Services Key Management Service * (Amazon Web Services KMS) documentation.
*/ inline ZonalStatisticsConfigInput& WithZoneS3PathKmsKeyId(Aws::String&& value) { SetZoneS3PathKmsKeyId(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) or an ID of a Amazon Web Services Key
* Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to
* decrypt your output artifacts with Amazon S3 server-side encryption. The
* SageMaker execution role must have kms:GenerateDataKey
* permission.
The KmsKeyId
can be any of the following
* formats:
// KMS Key ID
* "1234abcd-12ab-34cd-56ef-1234567890ab"
// Amazon * Resource Name (ARN) of a KMS Key
* "arn:aws:kms:<region>:<account>:key/<key-id-12ab-34cd-56ef-1234567890ab>"
*
For more information about key identifiers, see Key * identifiers (KeyID) in the Amazon Web Services Key Management Service * (Amazon Web Services KMS) documentation.
*/ inline ZonalStatisticsConfigInput& WithZoneS3PathKmsKeyId(const char* value) { SetZoneS3PathKmsKeyId(value); return *this;} private: Aws::Vector