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

The weighted loss value for a quantile. This object is part of the * Metrics object.

See Also:

AWS * API Reference

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

The quantile. Quantiles divide a probability distribution into regions of * equal probability. For example, if the distribution was divided into 5 regions * of equal probability, the quantiles would be 0.2, 0.4, 0.6, and 0.8.

*/ inline double GetQuantile() const{ return m_quantile; } /** *

The quantile. Quantiles divide a probability distribution into regions of * equal probability. For example, if the distribution was divided into 5 regions * of equal probability, the quantiles would be 0.2, 0.4, 0.6, and 0.8.

*/ inline bool QuantileHasBeenSet() const { return m_quantileHasBeenSet; } /** *

The quantile. Quantiles divide a probability distribution into regions of * equal probability. For example, if the distribution was divided into 5 regions * of equal probability, the quantiles would be 0.2, 0.4, 0.6, and 0.8.

*/ inline void SetQuantile(double value) { m_quantileHasBeenSet = true; m_quantile = value; } /** *

The quantile. Quantiles divide a probability distribution into regions of * equal probability. For example, if the distribution was divided into 5 regions * of equal probability, the quantiles would be 0.2, 0.4, 0.6, and 0.8.

*/ inline WeightedQuantileLoss& WithQuantile(double value) { SetQuantile(value); return *this;} /** *

The difference between the predicted value and the actual value over the * quantile, weighted (normalized) by dividing by the sum over all quantiles.

*/ inline double GetLossValue() const{ return m_lossValue; } /** *

The difference between the predicted value and the actual value over the * quantile, weighted (normalized) by dividing by the sum over all quantiles.

*/ inline bool LossValueHasBeenSet() const { return m_lossValueHasBeenSet; } /** *

The difference between the predicted value and the actual value over the * quantile, weighted (normalized) by dividing by the sum over all quantiles.

*/ inline void SetLossValue(double value) { m_lossValueHasBeenSet = true; m_lossValue = value; } /** *

The difference between the predicted value and the actual value over the * quantile, weighted (normalized) by dividing by the sum over all quantiles.

*/ inline WeightedQuantileLoss& WithLossValue(double value) { SetLossValue(value); return *this;} private: double m_quantile; bool m_quantileHasBeenSet = false; double m_lossValue; bool m_lossValueHasBeenSet = false; }; } // namespace Model } // namespace ForecastService } // namespace Aws