AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
NeuronDeviceInfo.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ec2/model/NeuronDeviceCoreInfo.h>
11#include <aws/ec2/model/NeuronDeviceMemoryInfo.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Xml
19{
20 class XmlNode;
21} // namespace Xml
22} // namespace Utils
23namespace EC2
24{
25namespace Model
26{
27
35 {
36 public:
37 AWS_EC2_API NeuronDeviceInfo() = default;
38 AWS_EC2_API NeuronDeviceInfo(const Aws::Utils::Xml::XmlNode& xmlNode);
40
41 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
42 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
43
44
46
49 inline int GetCount() const { return m_count; }
50 inline bool CountHasBeenSet() const { return m_countHasBeenSet; }
51 inline void SetCount(int value) { m_countHasBeenSet = true; m_count = value; }
52 inline NeuronDeviceInfo& WithCount(int value) { SetCount(value); return *this;}
54
56
59 inline const Aws::String& GetName() const { return m_name; }
60 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
61 template<typename NameT = Aws::String>
62 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
63 template<typename NameT = Aws::String>
64 NeuronDeviceInfo& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
66
68
71 inline const NeuronDeviceCoreInfo& GetCoreInfo() const { return m_coreInfo; }
72 inline bool CoreInfoHasBeenSet() const { return m_coreInfoHasBeenSet; }
73 template<typename CoreInfoT = NeuronDeviceCoreInfo>
74 void SetCoreInfo(CoreInfoT&& value) { m_coreInfoHasBeenSet = true; m_coreInfo = std::forward<CoreInfoT>(value); }
75 template<typename CoreInfoT = NeuronDeviceCoreInfo>
76 NeuronDeviceInfo& WithCoreInfo(CoreInfoT&& value) { SetCoreInfo(std::forward<CoreInfoT>(value)); return *this;}
78
80
83 inline const NeuronDeviceMemoryInfo& GetMemoryInfo() const { return m_memoryInfo; }
84 inline bool MemoryInfoHasBeenSet() const { return m_memoryInfoHasBeenSet; }
85 template<typename MemoryInfoT = NeuronDeviceMemoryInfo>
86 void SetMemoryInfo(MemoryInfoT&& value) { m_memoryInfoHasBeenSet = true; m_memoryInfo = std::forward<MemoryInfoT>(value); }
87 template<typename MemoryInfoT = NeuronDeviceMemoryInfo>
88 NeuronDeviceInfo& WithMemoryInfo(MemoryInfoT&& value) { SetMemoryInfo(std::forward<MemoryInfoT>(value)); return *this;}
90 private:
91
92 int m_count{0};
93 bool m_countHasBeenSet = false;
94
95 Aws::String m_name;
96 bool m_nameHasBeenSet = false;
97
98 NeuronDeviceCoreInfo m_coreInfo;
99 bool m_coreInfoHasBeenSet = false;
100
101 NeuronDeviceMemoryInfo m_memoryInfo;
102 bool m_memoryInfoHasBeenSet = false;
103 };
104
105} // namespace Model
106} // namespace EC2
107} // namespace Aws
NeuronDeviceInfo & WithName(NameT &&value)
NeuronDeviceInfo & WithMemoryInfo(MemoryInfoT &&value)
const NeuronDeviceMemoryInfo & GetMemoryInfo() const
AWS_EC2_API NeuronDeviceInfo & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetCoreInfo(CoreInfoT &&value)
NeuronDeviceInfo & WithCount(int value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const NeuronDeviceCoreInfo & GetCoreInfo() const
NeuronDeviceInfo & WithCoreInfo(CoreInfoT &&value)
const Aws::String & GetName() const
AWS_EC2_API NeuronDeviceInfo()=default
AWS_EC2_API NeuronDeviceInfo(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetMemoryInfo(MemoryInfoT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream