AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
MediaAcceleratorInfo.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ec2/EC2_EXPORTS.h>
10#include <aws/ec2/model/MediaDeviceInfo.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Xml {
17class XmlNode;
18} // namespace Xml
19} // namespace Utils
20namespace EC2 {
21namespace Model {
22
30 public:
31 AWS_EC2_API MediaAcceleratorInfo() = default;
34
35 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
36 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
37
39
42 inline const Aws::Vector<MediaDeviceInfo>& GetAccelerators() const { return m_accelerators; }
43 inline bool AcceleratorsHasBeenSet() const { return m_acceleratorsHasBeenSet; }
44 template <typename AcceleratorsT = Aws::Vector<MediaDeviceInfo>>
45 void SetAccelerators(AcceleratorsT&& value) {
46 m_acceleratorsHasBeenSet = true;
47 m_accelerators = std::forward<AcceleratorsT>(value);
48 }
49 template <typename AcceleratorsT = Aws::Vector<MediaDeviceInfo>>
50 MediaAcceleratorInfo& WithAccelerators(AcceleratorsT&& value) {
51 SetAccelerators(std::forward<AcceleratorsT>(value));
52 return *this;
53 }
54 template <typename AcceleratorsT = MediaDeviceInfo>
55 MediaAcceleratorInfo& AddAccelerators(AcceleratorsT&& value) {
56 m_acceleratorsHasBeenSet = true;
57 m_accelerators.emplace_back(std::forward<AcceleratorsT>(value));
58 return *this;
59 }
61
63
67 inline int GetTotalMediaMemoryInMiB() const { return m_totalMediaMemoryInMiB; }
68 inline bool TotalMediaMemoryInMiBHasBeenSet() const { return m_totalMediaMemoryInMiBHasBeenSet; }
69 inline void SetTotalMediaMemoryInMiB(int value) {
70 m_totalMediaMemoryInMiBHasBeenSet = true;
71 m_totalMediaMemoryInMiB = value;
72 }
75 return *this;
76 }
78 private:
79 Aws::Vector<MediaDeviceInfo> m_accelerators;
80
81 int m_totalMediaMemoryInMiB{0};
82 bool m_acceleratorsHasBeenSet = false;
83 bool m_totalMediaMemoryInMiBHasBeenSet = false;
84};
85
86} // namespace Model
87} // namespace EC2
88} // namespace Aws
MediaAcceleratorInfo & WithTotalMediaMemoryInMiB(int value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
MediaAcceleratorInfo & WithAccelerators(AcceleratorsT &&value)
MediaAcceleratorInfo & AddAccelerators(AcceleratorsT &&value)
AWS_EC2_API MediaAcceleratorInfo & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetAccelerators(AcceleratorsT &&value)
AWS_EC2_API MediaAcceleratorInfo()=default
AWS_EC2_API MediaAcceleratorInfo(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::Vector< MediaDeviceInfo > & GetAccelerators() const
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream