7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/compute-optimizer/model/GpuInfo.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/compute-optimizer/model/SavingsOpportunity.h>
12#include <aws/compute-optimizer/model/InstanceSavingsOpportunityAfterDiscounts.h>
13#include <aws/compute-optimizer/model/MigrationEffort.h>
14#include <aws/compute-optimizer/model/UtilizationMetric.h>
15#include <aws/compute-optimizer/model/PlatformDifference.h>
28namespace ComputeOptimizer
56 inline void SetInstanceType(
const char* value) { m_instanceTypeHasBeenSet =
true; m_instanceType.assign(value); }
215 inline void SetPerformanceRisk(
double value) { m_performanceRiskHasBeenSet =
true; m_performanceRisk = value; }
226 inline void SetRank(
int value) { m_rankHasBeenSet =
true; m_rank = value; }
280 bool m_instanceTypeHasBeenSet =
false;
283 bool m_instanceGpuInfoHasBeenSet =
false;
286 bool m_projectedUtilizationMetricsHasBeenSet =
false;
289 bool m_platformDifferencesHasBeenSet =
false;
291 double m_performanceRisk;
292 bool m_performanceRiskHasBeenSet =
false;
295 bool m_rankHasBeenSet =
false;
298 bool m_savingsOpportunityHasBeenSet =
false;
301 bool m_savingsOpportunityAfterDiscountsHasBeenSet =
false;
304 bool m_migrationEffortHasBeenSet =
false;
InstanceRecommendationOption & AddProjectedUtilizationMetrics(const UtilizationMetric &value)
AWS_COMPUTEOPTIMIZER_API InstanceRecommendationOption(Aws::Utils::Json::JsonView jsonValue)
bool SavingsOpportunityAfterDiscountsHasBeenSet() const
bool ProjectedUtilizationMetricsHasBeenSet() const
void SetSavingsOpportunity(const SavingsOpportunity &value)
void SetInstanceType(const Aws::String &value)
AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const
InstanceRecommendationOption & WithSavingsOpportunityAfterDiscounts(InstanceSavingsOpportunityAfterDiscounts &&value)
bool PerformanceRiskHasBeenSet() const
InstanceRecommendationOption & WithSavingsOpportunityAfterDiscounts(const InstanceSavingsOpportunityAfterDiscounts &value)
const InstanceSavingsOpportunityAfterDiscounts & GetSavingsOpportunityAfterDiscounts() const
InstanceRecommendationOption & WithPerformanceRisk(double value)
bool RankHasBeenSet() const
InstanceRecommendationOption & WithProjectedUtilizationMetrics(Aws::Vector< UtilizationMetric > &&value)
void SetMigrationEffort(const MigrationEffort &value)
void SetProjectedUtilizationMetrics(Aws::Vector< UtilizationMetric > &&value)
void SetPlatformDifferences(const Aws::Vector< PlatformDifference > &value)
InstanceRecommendationOption & AddPlatformDifferences(const PlatformDifference &value)
void SetMigrationEffort(MigrationEffort &&value)
bool MigrationEffortHasBeenSet() const
InstanceRecommendationOption & WithPlatformDifferences(const Aws::Vector< PlatformDifference > &value)
bool PlatformDifferencesHasBeenSet() const
const Aws::Vector< UtilizationMetric > & GetProjectedUtilizationMetrics() const
InstanceRecommendationOption & WithSavingsOpportunity(const SavingsOpportunity &value)
void SetSavingsOpportunityAfterDiscounts(InstanceSavingsOpportunityAfterDiscounts &&value)
void SetProjectedUtilizationMetrics(const Aws::Vector< UtilizationMetric > &value)
void SetSavingsOpportunity(SavingsOpportunity &&value)
AWS_COMPUTEOPTIMIZER_API InstanceRecommendationOption()
void SetPerformanceRisk(double value)
void SetInstanceGpuInfo(const GpuInfo &value)
InstanceRecommendationOption & WithSavingsOpportunity(SavingsOpportunity &&value)
bool SavingsOpportunityHasBeenSet() const
void SetInstanceGpuInfo(GpuInfo &&value)
InstanceRecommendationOption & WithInstanceGpuInfo(GpuInfo &&value)
InstanceRecommendationOption & AddProjectedUtilizationMetrics(UtilizationMetric &&value)
double GetPerformanceRisk() const
InstanceRecommendationOption & WithMigrationEffort(MigrationEffort &&value)
const SavingsOpportunity & GetSavingsOpportunity() const
InstanceRecommendationOption & WithInstanceType(Aws::String &&value)
void SetInstanceType(const char *value)
void SetPlatformDifferences(Aws::Vector< PlatformDifference > &&value)
InstanceRecommendationOption & AddPlatformDifferences(PlatformDifference &&value)
bool InstanceTypeHasBeenSet() const
InstanceRecommendationOption & WithInstanceType(const char *value)
InstanceRecommendationOption & WithInstanceType(const Aws::String &value)
InstanceRecommendationOption & WithProjectedUtilizationMetrics(const Aws::Vector< UtilizationMetric > &value)
InstanceRecommendationOption & WithInstanceGpuInfo(const GpuInfo &value)
AWS_COMPUTEOPTIMIZER_API InstanceRecommendationOption & operator=(Aws::Utils::Json::JsonView jsonValue)
const GpuInfo & GetInstanceGpuInfo() const
const Aws::String & GetInstanceType() const
InstanceRecommendationOption & WithRank(int value)
bool InstanceGpuInfoHasBeenSet() const
const MigrationEffort & GetMigrationEffort() const
InstanceRecommendationOption & WithMigrationEffort(const MigrationEffort &value)
InstanceRecommendationOption & WithPlatformDifferences(Aws::Vector< PlatformDifference > &&value)
void SetSavingsOpportunityAfterDiscounts(const InstanceSavingsOpportunityAfterDiscounts &value)
const Aws::Vector< PlatformDifference > & GetPlatformDifferences() const
void SetInstanceType(Aws::String &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue