AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
EstimateByTime.h
1
6#pragma once
7#include <aws/lightsail/Lightsail_EXPORTS.h>
8#include <aws/lightsail/model/PricingUnit.h>
9#include <aws/lightsail/model/Currency.h>
10#include <aws/lightsail/model/TimePeriod.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace Lightsail
24{
25namespace Model
26{
27
35 {
36 public:
37 AWS_LIGHTSAIL_API EstimateByTime() = default;
38 AWS_LIGHTSAIL_API EstimateByTime(Aws::Utils::Json::JsonView jsonValue);
40 AWS_LIGHTSAIL_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline double GetUsageCost() const { return m_usageCost; }
48 inline bool UsageCostHasBeenSet() const { return m_usageCostHasBeenSet; }
49 inline void SetUsageCost(double value) { m_usageCostHasBeenSet = true; m_usageCost = value; }
50 inline EstimateByTime& WithUsageCost(double value) { SetUsageCost(value); return *this;}
52
54
57 inline PricingUnit GetPricingUnit() const { return m_pricingUnit; }
58 inline bool PricingUnitHasBeenSet() const { return m_pricingUnitHasBeenSet; }
59 inline void SetPricingUnit(PricingUnit value) { m_pricingUnitHasBeenSet = true; m_pricingUnit = value; }
60 inline EstimateByTime& WithPricingUnit(PricingUnit value) { SetPricingUnit(value); return *this;}
62
64
68 inline double GetUnit() const { return m_unit; }
69 inline bool UnitHasBeenSet() const { return m_unitHasBeenSet; }
70 inline void SetUnit(double value) { m_unitHasBeenSet = true; m_unit = value; }
71 inline EstimateByTime& WithUnit(double value) { SetUnit(value); return *this;}
73
75
78 inline Currency GetCurrency() const { return m_currency; }
79 inline bool CurrencyHasBeenSet() const { return m_currencyHasBeenSet; }
80 inline void SetCurrency(Currency value) { m_currencyHasBeenSet = true; m_currency = value; }
81 inline EstimateByTime& WithCurrency(Currency value) { SetCurrency(value); return *this;}
83
85
89 inline const TimePeriod& GetTimePeriod() const { return m_timePeriod; }
90 inline bool TimePeriodHasBeenSet() const { return m_timePeriodHasBeenSet; }
91 template<typename TimePeriodT = TimePeriod>
92 void SetTimePeriod(TimePeriodT&& value) { m_timePeriodHasBeenSet = true; m_timePeriod = std::forward<TimePeriodT>(value); }
93 template<typename TimePeriodT = TimePeriod>
94 EstimateByTime& WithTimePeriod(TimePeriodT&& value) { SetTimePeriod(std::forward<TimePeriodT>(value)); return *this;}
96 private:
97
98 double m_usageCost{0.0};
99 bool m_usageCostHasBeenSet = false;
100
101 PricingUnit m_pricingUnit{PricingUnit::NOT_SET};
102 bool m_pricingUnitHasBeenSet = false;
103
104 double m_unit{0.0};
105 bool m_unitHasBeenSet = false;
106
107 Currency m_currency{Currency::NOT_SET};
108 bool m_currencyHasBeenSet = false;
109
110 TimePeriod m_timePeriod;
111 bool m_timePeriodHasBeenSet = false;
112 };
113
114} // namespace Model
115} // namespace Lightsail
116} // namespace Aws
EstimateByTime & WithTimePeriod(TimePeriodT &&value)
EstimateByTime & WithUnit(double value)
AWS_LIGHTSAIL_API EstimateByTime(Aws::Utils::Json::JsonView jsonValue)
AWS_LIGHTSAIL_API EstimateByTime & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_LIGHTSAIL_API Aws::Utils::Json::JsonValue Jsonize() const
void SetTimePeriod(TimePeriodT &&value)
EstimateByTime & WithCurrency(Currency value)
AWS_LIGHTSAIL_API EstimateByTime()=default
EstimateByTime & WithPricingUnit(PricingUnit value)
EstimateByTime & WithUsageCost(double value)
const TimePeriod & GetTimePeriod() const
void SetPricingUnit(PricingUnit value)
Aws::Utils::Json::JsonValue JsonValue