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

The processing configuration for the given metric property. You can configure * metrics to be computed at the edge or in the Amazon Web Services Cloud. By * default, metrics are forwarded to the cloud.

See Also:

AWS * API Reference

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

The compute location for the given metric property.

*/ inline const ComputeLocation& GetComputeLocation() const{ return m_computeLocation; } /** *

The compute location for the given metric property.

*/ inline bool ComputeLocationHasBeenSet() const { return m_computeLocationHasBeenSet; } /** *

The compute location for the given metric property.

*/ inline void SetComputeLocation(const ComputeLocation& value) { m_computeLocationHasBeenSet = true; m_computeLocation = value; } /** *

The compute location for the given metric property.

*/ inline void SetComputeLocation(ComputeLocation&& value) { m_computeLocationHasBeenSet = true; m_computeLocation = std::move(value); } /** *

The compute location for the given metric property.

*/ inline MetricProcessingConfig& WithComputeLocation(const ComputeLocation& value) { SetComputeLocation(value); return *this;} /** *

The compute location for the given metric property.

*/ inline MetricProcessingConfig& WithComputeLocation(ComputeLocation&& value) { SetComputeLocation(std::move(value)); return *this;} private: ComputeLocation m_computeLocation; bool m_computeLocationHasBeenSet = false; }; } // namespace Model } // namespace IoTSiteWise } // namespace Aws