AWS SDK for C++  1.9.67
AWS SDK for C++
InstanceStorageInfo.h
Go to the documentation of this file.
1 
6 #pragma once
7 #include <aws/ec2/EC2_EXPORTS.h>
11 #include <aws/ec2/model/DiskInfo.h>
12 #include <utility>
13 
14 namespace Aws
15 {
16 namespace Utils
17 {
18 namespace Xml
19 {
20  class XmlNode;
21 } // namespace Xml
22 } // namespace Utils
23 namespace EC2
24 {
25 namespace Model
26 {
27 
35  {
36  public:
40 
41  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
42  void OutputToStream(Aws::OStream& oStream, const char* location) const;
43 
44 
48  inline long long GetTotalSizeInGB() const{ return m_totalSizeInGB; }
49 
53  inline bool TotalSizeInGBHasBeenSet() const { return m_totalSizeInGBHasBeenSet; }
54 
58  inline void SetTotalSizeInGB(long long value) { m_totalSizeInGBHasBeenSet = true; m_totalSizeInGB = value; }
59 
63  inline InstanceStorageInfo& WithTotalSizeInGB(long long value) { SetTotalSizeInGB(value); return *this;}
64 
65 
69  inline const Aws::Vector<DiskInfo>& GetDisks() const{ return m_disks; }
70 
74  inline bool DisksHasBeenSet() const { return m_disksHasBeenSet; }
75 
79  inline void SetDisks(const Aws::Vector<DiskInfo>& value) { m_disksHasBeenSet = true; m_disks = value; }
80 
84  inline void SetDisks(Aws::Vector<DiskInfo>&& value) { m_disksHasBeenSet = true; m_disks = std::move(value); }
85 
89  inline InstanceStorageInfo& WithDisks(const Aws::Vector<DiskInfo>& value) { SetDisks(value); return *this;}
90 
94  inline InstanceStorageInfo& WithDisks(Aws::Vector<DiskInfo>&& value) { SetDisks(std::move(value)); return *this;}
95 
99  inline InstanceStorageInfo& AddDisks(const DiskInfo& value) { m_disksHasBeenSet = true; m_disks.push_back(value); return *this; }
100 
104  inline InstanceStorageInfo& AddDisks(DiskInfo&& value) { m_disksHasBeenSet = true; m_disks.push_back(std::move(value)); return *this; }
105 
106 
111  inline const EphemeralNvmeSupport& GetNvmeSupport() const{ return m_nvmeSupport; }
112 
117  inline bool NvmeSupportHasBeenSet() const { return m_nvmeSupportHasBeenSet; }
118 
123  inline void SetNvmeSupport(const EphemeralNvmeSupport& value) { m_nvmeSupportHasBeenSet = true; m_nvmeSupport = value; }
124 
129  inline void SetNvmeSupport(EphemeralNvmeSupport&& value) { m_nvmeSupportHasBeenSet = true; m_nvmeSupport = std::move(value); }
130 
135  inline InstanceStorageInfo& WithNvmeSupport(const EphemeralNvmeSupport& value) { SetNvmeSupport(value); return *this;}
136 
141  inline InstanceStorageInfo& WithNvmeSupport(EphemeralNvmeSupport&& value) { SetNvmeSupport(std::move(value)); return *this;}
142 
143  private:
144 
145  long long m_totalSizeInGB;
146  bool m_totalSizeInGBHasBeenSet;
147 
148  Aws::Vector<DiskInfo> m_disks;
149  bool m_disksHasBeenSet;
150 
151  EphemeralNvmeSupport m_nvmeSupport;
152  bool m_nvmeSupportHasBeenSet;
153  };
154 
155 } // namespace Model
156 } // namespace EC2
157 } // namespace Aws
Aws::EC2::Model::InstanceStorageInfo
Definition: InstanceStorageInfo.h:35
Aws::EC2::Model::InstanceStorageInfo::OutputToStream
void OutputToStream(Aws::OStream &oStream, const char *location) const
Aws::EC2::Model::InstanceStorageInfo::InstanceStorageInfo
InstanceStorageInfo(const Aws::Utils::Xml::XmlNode &xmlNode)
Aws::EC2::Model::InstanceStorageInfo::SetNvmeSupport
void SetNvmeSupport(const EphemeralNvmeSupport &value)
Definition: InstanceStorageInfo.h:123
Aws::EC2::Model::InstanceStorageInfo::WithDisks
InstanceStorageInfo & WithDisks(Aws::Vector< DiskInfo > &&value)
Definition: InstanceStorageInfo.h:94
Aws::EC2::Model::InstanceStorageInfo::AddDisks
InstanceStorageInfo & AddDisks(DiskInfo &&value)
Definition: InstanceStorageInfo.h:104
AWS_EC2_API
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:28
Aws::EC2::Model::InstanceStorageInfo::SetTotalSizeInGB
void SetTotalSizeInGB(long long value)
Definition: InstanceStorageInfo.h:58
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
AWSStreamFwd.h
Aws::EC2::Model::EphemeralNvmeSupport
EphemeralNvmeSupport
Definition: EphemeralNvmeSupport.h:17
Aws::EC2::Model::InstanceStorageInfo::SetNvmeSupport
void SetNvmeSupport(EphemeralNvmeSupport &&value)
Definition: InstanceStorageInfo.h:129
DiskInfo.h
AWSVector.h
Aws::EC2::Model::InstanceStorageInfo::WithNvmeSupport
InstanceStorageInfo & WithNvmeSupport(EphemeralNvmeSupport &&value)
Definition: InstanceStorageInfo.h:141
Aws::EC2::Model::DiskInfo
Definition: DiskInfo.h:32
Aws::EC2::Model::InstanceStorageInfo::WithTotalSizeInGB
InstanceStorageInfo & WithTotalSizeInGB(long long value)
Definition: InstanceStorageInfo.h:63
Aws::EC2::Model::InstanceStorageInfo::SetDisks
void SetDisks(Aws::Vector< DiskInfo > &&value)
Definition: InstanceStorageInfo.h:84
Aws::EC2::Model::InstanceStorageInfo::GetTotalSizeInGB
long long GetTotalSizeInGB() const
Definition: InstanceStorageInfo.h:48
Aws::OStream
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:21
Aws::EC2::Model::InstanceStorageInfo::DisksHasBeenSet
bool DisksHasBeenSet() const
Definition: InstanceStorageInfo.h:74
Aws::Utils::Xml::XmlNode
Definition: XmlSerializer.h:53
Aws::EC2::Model::InstanceStorageInfo::operator=
InstanceStorageInfo & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Aws::EC2::Model::InstanceStorageInfo::AddDisks
InstanceStorageInfo & AddDisks(const DiskInfo &value)
Definition: InstanceStorageInfo.h:99
Aws::EC2::Model::InstanceStorageInfo::OutputToStream
void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
Aws::EC2::Model::InstanceStorageInfo::InstanceStorageInfo
InstanceStorageInfo()
Aws::EC2::Model::InstanceStorageInfo::NvmeSupportHasBeenSet
bool NvmeSupportHasBeenSet() const
Definition: InstanceStorageInfo.h:117
Aws::EC2::Model::InstanceStorageInfo::WithDisks
InstanceStorageInfo & WithDisks(const Aws::Vector< DiskInfo > &value)
Definition: InstanceStorageInfo.h:89
Aws::EC2::Model::InstanceStorageInfo::TotalSizeInGBHasBeenSet
bool TotalSizeInGBHasBeenSet() const
Definition: InstanceStorageInfo.h:53
Aws
Definition: AccessManagementClient.h:15
Aws::EC2::Model::InstanceStorageInfo::GetNvmeSupport
const EphemeralNvmeSupport & GetNvmeSupport() const
Definition: InstanceStorageInfo.h:111
EphemeralNvmeSupport.h
index
int index
Definition: cJSON.h:181
Aws::EC2::Model::InstanceStorageInfo::GetDisks
const Aws::Vector< DiskInfo > & GetDisks() const
Definition: InstanceStorageInfo.h:69
Aws::EC2::Model::InstanceStorageInfo::SetDisks
void SetDisks(const Aws::Vector< DiskInfo > &value)
Definition: InstanceStorageInfo.h:79
EC2_EXPORTS.h
Aws::EC2::Model::InstanceStorageInfo::WithNvmeSupport
InstanceStorageInfo & WithNvmeSupport(const EphemeralNvmeSupport &value)
Definition: InstanceStorageInfo.h:135