/** * 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 QuickSight { namespace Model { /** *

Provides the forecast to meet the target for a particular date * range.

See Also:

AWS * API Reference

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

The start date in the date range that you need the forecast results for.

*/ inline const Aws::Utils::DateTime& GetStartDate() const{ return m_startDate; } /** *

The start date in the date range that you need the forecast results for.

*/ inline bool StartDateHasBeenSet() const { return m_startDateHasBeenSet; } /** *

The start date in the date range that you need the forecast results for.

*/ inline void SetStartDate(const Aws::Utils::DateTime& value) { m_startDateHasBeenSet = true; m_startDate = value; } /** *

The start date in the date range that you need the forecast results for.

*/ inline void SetStartDate(Aws::Utils::DateTime&& value) { m_startDateHasBeenSet = true; m_startDate = std::move(value); } /** *

The start date in the date range that you need the forecast results for.

*/ inline WhatIfRangeScenario& WithStartDate(const Aws::Utils::DateTime& value) { SetStartDate(value); return *this;} /** *

The start date in the date range that you need the forecast results for.

*/ inline WhatIfRangeScenario& WithStartDate(Aws::Utils::DateTime&& value) { SetStartDate(std::move(value)); return *this;} /** *

The end date in the date range that you need the forecast results for.

*/ inline const Aws::Utils::DateTime& GetEndDate() const{ return m_endDate; } /** *

The end date in the date range that you need the forecast results for.

*/ inline bool EndDateHasBeenSet() const { return m_endDateHasBeenSet; } /** *

The end date in the date range that you need the forecast results for.

*/ inline void SetEndDate(const Aws::Utils::DateTime& value) { m_endDateHasBeenSet = true; m_endDate = value; } /** *

The end date in the date range that you need the forecast results for.

*/ inline void SetEndDate(Aws::Utils::DateTime&& value) { m_endDateHasBeenSet = true; m_endDate = std::move(value); } /** *

The end date in the date range that you need the forecast results for.

*/ inline WhatIfRangeScenario& WithEndDate(const Aws::Utils::DateTime& value) { SetEndDate(value); return *this;} /** *

The end date in the date range that you need the forecast results for.

*/ inline WhatIfRangeScenario& WithEndDate(Aws::Utils::DateTime&& value) { SetEndDate(std::move(value)); return *this;} /** *

The target value that you want to meet for the provided date range.

*/ inline double GetValue() const{ return m_value; } /** *

The target value that you want to meet for the provided date range.

*/ inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; } /** *

The target value that you want to meet for the provided date range.

*/ inline void SetValue(double value) { m_valueHasBeenSet = true; m_value = value; } /** *

The target value that you want to meet for the provided date range.

*/ inline WhatIfRangeScenario& WithValue(double value) { SetValue(value); return *this;} private: Aws::Utils::DateTime m_startDate; bool m_startDateHasBeenSet = false; Aws::Utils::DateTime m_endDate; bool m_endDateHasBeenSet = false; double m_value; bool m_valueHasBeenSet = false; }; } // namespace Model } // namespace QuickSight } // namespace Aws