AWS SDK for C++

AWS SDK for C++ Version 1.11.812

Loading...
Searching...
No Matches
UtilizationPreference.h
1
6#pragma once
7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/compute-optimizer/model/CustomizableMetricName.h>
9#include <aws/compute-optimizer/model/CustomizableMetricParameters.h>
10#include <aws/crt/cbor/Cbor.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Cbor {
17class CborValue;
18} // namespace Cbor
19} // namespace Utils
20namespace ComputeOptimizer {
21namespace Model {
22
32 public:
33 AWS_COMPUTEOPTIMIZER_API UtilizationPreference() = default;
34 AWS_COMPUTEOPTIMIZER_API UtilizationPreference(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
35 AWS_COMPUTEOPTIMIZER_API UtilizationPreference& operator=(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
36 AWS_COMPUTEOPTIMIZER_API void CborEncode(Aws::Crt::Cbor::CborEncoder& encoder) const;
37
39
42 inline CustomizableMetricName GetMetricName() const { return m_metricName; }
43 inline bool MetricNameHasBeenSet() const { return m_metricNameHasBeenSet; }
45 m_metricNameHasBeenSet = true;
46 m_metricName = value;
47 }
49 SetMetricName(value);
50 return *this;
51 }
53
55
59 inline const CustomizableMetricParameters& GetMetricParameters() const { return m_metricParameters; }
60 inline bool MetricParametersHasBeenSet() const { return m_metricParametersHasBeenSet; }
61 template <typename MetricParametersT = CustomizableMetricParameters>
62 void SetMetricParameters(MetricParametersT&& value) {
63 m_metricParametersHasBeenSet = true;
64 m_metricParameters = std::forward<MetricParametersT>(value);
65 }
66 template <typename MetricParametersT = CustomizableMetricParameters>
67 UtilizationPreference& WithMetricParameters(MetricParametersT&& value) {
68 SetMetricParameters(std::forward<MetricParametersT>(value));
69 return *this;
70 }
72 private:
74
75 CustomizableMetricParameters m_metricParameters;
76 bool m_metricNameHasBeenSet = false;
77 bool m_metricParametersHasBeenSet = false;
78};
79
80} // namespace Model
81} // namespace ComputeOptimizer
82} // namespace Aws
const CustomizableMetricParameters & GetMetricParameters() const
AWS_COMPUTEOPTIMIZER_API UtilizationPreference & operator=(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
UtilizationPreference & WithMetricName(CustomizableMetricName value)
AWS_COMPUTEOPTIMIZER_API UtilizationPreference()=default
UtilizationPreference & WithMetricParameters(MetricParametersT &&value)
AWS_COMPUTEOPTIMIZER_API void CborEncode(Aws::Crt::Cbor::CborEncoder &encoder) const
AWS_COMPUTEOPTIMIZER_API UtilizationPreference(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)