/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes the configuration of an Amazon Elastic Block Store (Amazon EBS)
* volume.See Also:
AWS
* API Reference
The volume type.
This can be gp2
for General Purpose SSD,
* io1
or io2
for Provisioned IOPS SSD, st1
* for Throughput Optimized HDD, sc1
for Cold HDD, or
* standard
for Magnetic volumes.
The volume type.
This can be gp2
for General Purpose SSD,
* io1
or io2
for Provisioned IOPS SSD, st1
* for Throughput Optimized HDD, sc1
for Cold HDD, or
* standard
for Magnetic volumes.
The volume type.
This can be gp2
for General Purpose SSD,
* io1
or io2
for Provisioned IOPS SSD, st1
* for Throughput Optimized HDD, sc1
for Cold HDD, or
* standard
for Magnetic volumes.
The volume type.
This can be gp2
for General Purpose SSD,
* io1
or io2
for Provisioned IOPS SSD, st1
* for Throughput Optimized HDD, sc1
for Cold HDD, or
* standard
for Magnetic volumes.
The volume type.
This can be gp2
for General Purpose SSD,
* io1
or io2
for Provisioned IOPS SSD, st1
* for Throughput Optimized HDD, sc1
for Cold HDD, or
* standard
for Magnetic volumes.
The volume type.
This can be gp2
for General Purpose SSD,
* io1
or io2
for Provisioned IOPS SSD, st1
* for Throughput Optimized HDD, sc1
for Cold HDD, or
* standard
for Magnetic volumes.
The volume type.
This can be gp2
for General Purpose SSD,
* io1
or io2
for Provisioned IOPS SSD, st1
* for Throughput Optimized HDD, sc1
for Cold HDD, or
* standard
for Magnetic volumes.
The volume type.
This can be gp2
for General Purpose SSD,
* io1
or io2
for Provisioned IOPS SSD, st1
* for Throughput Optimized HDD, sc1
for Cold HDD, or
* standard
for Magnetic volumes.
The size of the volume, in GiB.
*/ inline int GetVolumeSize() const{ return m_volumeSize; } /** *The size of the volume, in GiB.
*/ inline bool VolumeSizeHasBeenSet() const { return m_volumeSizeHasBeenSet; } /** *The size of the volume, in GiB.
*/ inline void SetVolumeSize(int value) { m_volumeSizeHasBeenSet = true; m_volumeSize = value; } /** *The size of the volume, in GiB.
*/ inline VolumeConfiguration& WithVolumeSize(int value) { SetVolumeSize(value); return *this;} /** *The baseline IOPS of the volume.
*/ inline int GetVolumeBaselineIOPS() const{ return m_volumeBaselineIOPS; } /** *The baseline IOPS of the volume.
*/ inline bool VolumeBaselineIOPSHasBeenSet() const { return m_volumeBaselineIOPSHasBeenSet; } /** *The baseline IOPS of the volume.
*/ inline void SetVolumeBaselineIOPS(int value) { m_volumeBaselineIOPSHasBeenSet = true; m_volumeBaselineIOPS = value; } /** *The baseline IOPS of the volume.
*/ inline VolumeConfiguration& WithVolumeBaselineIOPS(int value) { SetVolumeBaselineIOPS(value); return *this;} /** *The burst IOPS of the volume.
*/ inline int GetVolumeBurstIOPS() const{ return m_volumeBurstIOPS; } /** *The burst IOPS of the volume.
*/ inline bool VolumeBurstIOPSHasBeenSet() const { return m_volumeBurstIOPSHasBeenSet; } /** *The burst IOPS of the volume.
*/ inline void SetVolumeBurstIOPS(int value) { m_volumeBurstIOPSHasBeenSet = true; m_volumeBurstIOPS = value; } /** *The burst IOPS of the volume.
*/ inline VolumeConfiguration& WithVolumeBurstIOPS(int value) { SetVolumeBurstIOPS(value); return *this;} /** *The baseline throughput of the volume.
*/ inline int GetVolumeBaselineThroughput() const{ return m_volumeBaselineThroughput; } /** *The baseline throughput of the volume.
*/ inline bool VolumeBaselineThroughputHasBeenSet() const { return m_volumeBaselineThroughputHasBeenSet; } /** *The baseline throughput of the volume.
*/ inline void SetVolumeBaselineThroughput(int value) { m_volumeBaselineThroughputHasBeenSet = true; m_volumeBaselineThroughput = value; } /** *The baseline throughput of the volume.
*/ inline VolumeConfiguration& WithVolumeBaselineThroughput(int value) { SetVolumeBaselineThroughput(value); return *this;} /** *The burst throughput of the volume.
*/ inline int GetVolumeBurstThroughput() const{ return m_volumeBurstThroughput; } /** *The burst throughput of the volume.
*/ inline bool VolumeBurstThroughputHasBeenSet() const { return m_volumeBurstThroughputHasBeenSet; } /** *The burst throughput of the volume.
*/ inline void SetVolumeBurstThroughput(int value) { m_volumeBurstThroughputHasBeenSet = true; m_volumeBurstThroughput = value; } /** *The burst throughput of the volume.
*/ inline VolumeConfiguration& WithVolumeBurstThroughput(int value) { SetVolumeBurstThroughput(value); return *this;} /** *Contains the image used to boot the instance during launch.
*/ inline bool GetRootVolume() const{ return m_rootVolume; } /** *Contains the image used to boot the instance during launch.
*/ inline bool RootVolumeHasBeenSet() const { return m_rootVolumeHasBeenSet; } /** *Contains the image used to boot the instance during launch.
*/ inline void SetRootVolume(bool value) { m_rootVolumeHasBeenSet = true; m_rootVolume = value; } /** *Contains the image used to boot the instance during launch.
*/ inline VolumeConfiguration& WithRootVolume(bool value) { SetRootVolume(value); return *this;} private: Aws::String m_volumeType; bool m_volumeTypeHasBeenSet = false; int m_volumeSize; bool m_volumeSizeHasBeenSet = false; int m_volumeBaselineIOPS; bool m_volumeBaselineIOPSHasBeenSet = false; int m_volumeBurstIOPS; bool m_volumeBurstIOPSHasBeenSet = false; int m_volumeBaselineThroughput; bool m_volumeBaselineThroughputHasBeenSet = false; int m_volumeBurstThroughput; bool m_volumeBurstThroughputHasBeenSet = false; bool m_rootVolume; bool m_rootVolumeHasBeenSet = false; }; } // namespace Model } // namespace ComputeOptimizer } // namespace Aws