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/core/utils/memory/stl/AWSVector.h>
11#include <aws/ec2/model/EnaSupport.h>
12#include <aws/ec2/model/EfaInfo.h>
13#include <aws/ec2/model/FlexibleEnaQueuesSupport.h>
14#include <aws/ec2/model/NetworkCardInfo.h>
15#include <aws/ec2/model/BandwidthWeightingType.h>
55 template<
typename NetworkPerformanceT = Aws::String>
56 void SetNetworkPerformance(NetworkPerformanceT&& value) { m_networkPerformanceHasBeenSet =
true; m_networkPerformance = std::forward<NetworkPerformanceT>(value); }
57 template<
typename NetworkPerformanceT = Aws::String>
78 inline void SetMaximumNetworkCards(
int value) { m_maximumNetworkCardsHasBeenSet =
true; m_maximumNetworkCards = value; }
98 template<
typename NetworkCardsT = Aws::Vector<NetworkCardInfo>>
99 void SetNetworkCards(NetworkCardsT&& value) { m_networkCardsHasBeenSet =
true; m_networkCards = std::forward<NetworkCardsT>(value); }
100 template<
typename NetworkCardsT = Aws::Vector<NetworkCardInfo>>
102 template<
typename NetworkCardsT = NetworkCardInfo>
103 NetworkInfo&
AddNetworkCards(NetworkCardsT&& value) { m_networkCardsHasBeenSet =
true; m_networkCards.emplace_back(std::forward<NetworkCardsT>(value));
return *
this; }
132 inline void SetIpv6Supported(
bool value) { m_ipv6SupportedHasBeenSet =
true; m_ipv6Supported = value; }
152 inline void SetEfaSupported(
bool value) { m_efaSupportedHasBeenSet =
true; m_efaSupported = value; }
162 template<
typename EfaInfoT = EfaInfo>
163 void SetEfaInfo(EfaInfoT&& value) { m_efaInfoHasBeenSet =
true; m_efaInfo = std::forward<EfaInfoT>(value); }
164 template<
typename EfaInfoT = EfaInfo>
188 inline void SetEnaSrdSupported(
bool value) { m_enaSrdSupportedHasBeenSet =
true; m_enaSrdSupported = value; }
199 template<
typename Bandw
idthWeightingsT = Aws::Vector<Bandw
idthWeightingType>>
200 void SetBandwidthWeightings(BandwidthWeightingsT&& value) { m_bandwidthWeightingsHasBeenSet =
true; m_bandwidthWeightings = std::forward<BandwidthWeightingsT>(value); }
201 template<
typename Bandw
idthWeightingsT = Aws::Vector<Bandw
idthWeightingType>>
218 bool m_networkPerformanceHasBeenSet =
false;
220 int m_maximumNetworkInterfaces{0};
221 bool m_maximumNetworkInterfacesHasBeenSet =
false;
223 int m_maximumNetworkCards{0};
224 bool m_maximumNetworkCardsHasBeenSet =
false;
226 int m_defaultNetworkCardIndex{0};
227 bool m_defaultNetworkCardIndexHasBeenSet =
false;
230 bool m_networkCardsHasBeenSet =
false;
232 int m_ipv4AddressesPerInterface{0};
233 bool m_ipv4AddressesPerInterfaceHasBeenSet =
false;
235 int m_ipv6AddressesPerInterface{0};
236 bool m_ipv6AddressesPerInterfaceHasBeenSet =
false;
238 bool m_ipv6Supported{
false};
239 bool m_ipv6SupportedHasBeenSet =
false;
242 bool m_enaSupportHasBeenSet =
false;
244 bool m_efaSupported{
false};
245 bool m_efaSupportedHasBeenSet =
false;
248 bool m_efaInfoHasBeenSet =
false;
250 bool m_encryptionInTransitSupported{
false};
251 bool m_encryptionInTransitSupportedHasBeenSet =
false;
253 bool m_enaSrdSupported{
false};
254 bool m_enaSrdSupportedHasBeenSet =
false;
257 bool m_bandwidthWeightingsHasBeenSet =
false;
260 bool m_flexibleEnaQueuesSupportHasBeenSet =
false;
NetworkInfo & WithIpv6AddressesPerInterface(int value)
void SetBandwidthWeightings(BandwidthWeightingsT &&value)
NetworkInfo & WithEfaSupported(bool value)
void SetEfaSupported(bool value)
FlexibleEnaQueuesSupport GetFlexibleEnaQueuesSupport() const
bool MaximumNetworkInterfacesHasBeenSet() const
void SetMaximumNetworkCards(int value)
void SetFlexibleEnaQueuesSupport(FlexibleEnaQueuesSupport value)
bool MaximumNetworkCardsHasBeenSet() const
int GetMaximumNetworkInterfaces() const
bool EfaSupportedHasBeenSet() const
int GetDefaultNetworkCardIndex() const
NetworkInfo & WithFlexibleEnaQueuesSupport(FlexibleEnaQueuesSupport value)
AWS_EC2_API NetworkInfo(const Aws::Utils::Xml::XmlNode &xmlNode)
bool NetworkPerformanceHasBeenSet() const
NetworkInfo & WithNetworkPerformance(NetworkPerformanceT &&value)
int GetIpv6AddressesPerInterface() const
NetworkInfo & WithIpv6Supported(bool value)
bool NetworkCardsHasBeenSet() const
NetworkInfo & WithEfaInfo(EfaInfoT &&value)
int GetMaximumNetworkCards() const
NetworkInfo & AddNetworkCards(NetworkCardsT &&value)
bool GetEfaSupported() const
bool GetIpv6Supported() const
void SetEncryptionInTransitSupported(bool value)
bool Ipv4AddressesPerInterfaceHasBeenSet() const
bool Ipv6AddressesPerInterfaceHasBeenSet() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetIpv4AddressesPerInterface(int value)
AWS_EC2_API NetworkInfo & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetEnaSupport(EnaSupport value)
NetworkInfo & WithMaximumNetworkInterfaces(int value)
bool DefaultNetworkCardIndexHasBeenSet() const
NetworkInfo & WithMaximumNetworkCards(int value)
void SetIpv6AddressesPerInterface(int value)
bool EncryptionInTransitSupportedHasBeenSet() const
bool EfaInfoHasBeenSet() const
NetworkInfo & WithEnaSrdSupported(bool value)
void SetMaximumNetworkInterfaces(int value)
AWS_EC2_API NetworkInfo()=default
bool FlexibleEnaQueuesSupportHasBeenSet() const
NetworkInfo & AddBandwidthWeightings(BandwidthWeightingType value)
NetworkInfo & WithNetworkCards(NetworkCardsT &&value)
bool GetEncryptionInTransitSupported() const
NetworkInfo & WithIpv4AddressesPerInterface(int value)
NetworkInfo & WithDefaultNetworkCardIndex(int value)
const Aws::Vector< BandwidthWeightingType > & GetBandwidthWeightings() const
void SetEnaSrdSupported(bool value)
bool Ipv6SupportedHasBeenSet() const
void SetEfaInfo(EfaInfoT &&value)
bool BandwidthWeightingsHasBeenSet() const
NetworkInfo & WithBandwidthWeightings(BandwidthWeightingsT &&value)
void SetNetworkCards(NetworkCardsT &&value)
EnaSupport GetEnaSupport() const
bool EnaSupportHasBeenSet() const
const EfaInfo & GetEfaInfo() const
const Aws::Vector< NetworkCardInfo > & GetNetworkCards() const
void SetDefaultNetworkCardIndex(int value)
bool EnaSrdSupportedHasBeenSet() const
bool GetEnaSrdSupported() const
NetworkInfo & WithEnaSupport(EnaSupport value)
const Aws::String & GetNetworkPerformance() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
int GetIpv4AddressesPerInterface() const
void SetIpv6Supported(bool value)
void SetNetworkPerformance(NetworkPerformanceT &&value)
NetworkInfo & WithEncryptionInTransitSupported(bool value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream