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

Specifies the CPU options for an Amazon EC2 instance. For more information, * see Optimize * CPU options in the Amazon Elastic Compute Cloud User Guide. *

See Also:

AWS * API Reference

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

The number of CPU cores for the instance.

*/ inline int GetCoreCount() const{ return m_coreCount; } /** *

The number of CPU cores for the instance.

*/ inline bool CoreCountHasBeenSet() const { return m_coreCountHasBeenSet; } /** *

The number of CPU cores for the instance.

*/ inline void SetCoreCount(int value) { m_coreCountHasBeenSet = true; m_coreCount = value; } /** *

The number of CPU cores for the instance.

*/ inline AwsEc2LaunchTemplateDataCpuOptionsDetails& WithCoreCount(int value) { SetCoreCount(value); return *this;} /** *

The number of threads per CPU core. A value of 1 disables * multithreading for the instance, The default value is 2.

*/ inline int GetThreadsPerCore() const{ return m_threadsPerCore; } /** *

The number of threads per CPU core. A value of 1 disables * multithreading for the instance, The default value is 2.

*/ inline bool ThreadsPerCoreHasBeenSet() const { return m_threadsPerCoreHasBeenSet; } /** *

The number of threads per CPU core. A value of 1 disables * multithreading for the instance, The default value is 2.

*/ inline void SetThreadsPerCore(int value) { m_threadsPerCoreHasBeenSet = true; m_threadsPerCore = value; } /** *

The number of threads per CPU core. A value of 1 disables * multithreading for the instance, The default value is 2.

*/ inline AwsEc2LaunchTemplateDataCpuOptionsDetails& WithThreadsPerCore(int value) { SetThreadsPerCore(value); return *this;} private: int m_coreCount; bool m_coreCountHasBeenSet = false; int m_threadsPerCore; bool m_threadsPerCoreHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws