7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/BandwidthWeightingType.h>
12#include <aws/ec2/model/DefaultConnectionTrackingConfiguration.h>
13#include <aws/ec2/model/EfaInfo.h>
14#include <aws/ec2/model/EnaSupport.h>
15#include <aws/ec2/model/FlexibleEnaQueuesSupport.h>
16#include <aws/ec2/model/NetworkCardInfo.h>
50 template <
typename NetworkPerformanceT = Aws::String>
52 m_networkPerformanceHasBeenSet =
true;
53 m_networkPerformance = std::forward<NetworkPerformanceT>(value);
55 template <
typename NetworkPerformanceT = Aws::String>
69 m_maximumNetworkInterfacesHasBeenSet =
true;
70 m_maximumNetworkInterfaces = value;
86 m_maximumNetworkCardsHasBeenSet =
true;
87 m_maximumNetworkCards = value;
102 m_defaultNetworkCardIndexHasBeenSet =
true;
103 m_defaultNetworkCardIndex = value;
117 template <
typename NetworkCardsT = Aws::Vector<NetworkCardInfo>>
119 m_networkCardsHasBeenSet =
true;
120 m_networkCards = std::forward<NetworkCardsT>(value);
122 template <
typename NetworkCardsT = Aws::Vector<NetworkCardInfo>>
127 template <
typename NetworkCardsT = NetworkCardInfo>
129 m_networkCardsHasBeenSet =
true;
130 m_networkCards.emplace_back(std::forward<NetworkCardsT>(value));
142 m_ipv4AddressesPerInterfaceHasBeenSet =
true;
143 m_ipv4AddressesPerInterface = value;
158 m_ipv6AddressesPerInterfaceHasBeenSet =
true;
159 m_ipv6AddressesPerInterface = value;
174 m_ipv6SupportedHasBeenSet =
true;
175 m_ipv6Supported = value;
190 m_enaSupportHasBeenSet =
true;
191 m_enaSupport = value;
206 m_efaSupportedHasBeenSet =
true;
207 m_efaSupported = value;
221 template <
typename EfaInfoT = EfaInfo>
223 m_efaInfoHasBeenSet =
true;
224 m_efaInfo = std::forward<EfaInfoT>(value);
226 template <
typename EfaInfoT = EfaInfo>
241 m_encryptionInTransitSupportedHasBeenSet =
true;
242 m_encryptionInTransitSupported = value;
260 m_enaSrdSupportedHasBeenSet =
true;
261 m_enaSrdSupported = value;
276 template <
typename Bandw
idthWeightingsT = Aws::Vector<Bandw
idthWeightingType>>
278 m_bandwidthWeightingsHasBeenSet =
true;
279 m_bandwidthWeightings = std::forward<BandwidthWeightingsT>(value);
281 template <
typename Bandw
idthWeightingsT = Aws::Vector<Bandw
idthWeightingType>>
287 m_bandwidthWeightingsHasBeenSet =
true;
288 m_bandwidthWeightings.push_back(value);
300 m_flexibleEnaQueuesSupportHasBeenSet =
true;
301 m_flexibleEnaQueuesSupport = value;
314 return m_connectionTrackingConfiguration;
317 template <
typename ConnectionTrackingConfigurationT = DefaultConnectionTrackingConfiguration>
319 m_connectionTrackingConfigurationHasBeenSet =
true;
320 m_connectionTrackingConfiguration = std::forward<ConnectionTrackingConfigurationT>(value);
322 template <
typename ConnectionTrackingConfigurationT = DefaultConnectionTrackingConfiguration>
337 m_secondaryNetworkSupportedHasBeenSet =
true;
338 m_secondaryNetworkSupported = value;
353 m_maximumSecondaryNetworkInterfacesHasBeenSet =
true;
354 m_maximumSecondaryNetworkInterfaces = value;
369 m_ipv4AddressesPerSecondaryInterfaceHasBeenSet =
true;
370 m_ipv4AddressesPerSecondaryInterface = value;
380 int m_maximumNetworkInterfaces{0};
382 int m_maximumNetworkCards{0};
384 int m_defaultNetworkCardIndex{0};
388 int m_ipv4AddressesPerInterface{0};
390 int m_ipv6AddressesPerInterface{0};
392 bool m_ipv6Supported{
false};
396 bool m_efaSupported{
false};
400 bool m_encryptionInTransitSupported{
false};
402 bool m_enaSrdSupported{
false};
408 DefaultConnectionTrackingConfiguration m_connectionTrackingConfiguration;
410 bool m_secondaryNetworkSupported{
false};
412 int m_maximumSecondaryNetworkInterfaces{0};
414 int m_ipv4AddressesPerSecondaryInterface{0};
415 bool m_networkPerformanceHasBeenSet =
false;
416 bool m_maximumNetworkInterfacesHasBeenSet =
false;
417 bool m_maximumNetworkCardsHasBeenSet =
false;
418 bool m_defaultNetworkCardIndexHasBeenSet =
false;
419 bool m_networkCardsHasBeenSet =
false;
420 bool m_ipv4AddressesPerInterfaceHasBeenSet =
false;
421 bool m_ipv6AddressesPerInterfaceHasBeenSet =
false;
422 bool m_ipv6SupportedHasBeenSet =
false;
423 bool m_enaSupportHasBeenSet =
false;
424 bool m_efaSupportedHasBeenSet =
false;
425 bool m_efaInfoHasBeenSet =
false;
426 bool m_encryptionInTransitSupportedHasBeenSet =
false;
427 bool m_enaSrdSupportedHasBeenSet =
false;
428 bool m_bandwidthWeightingsHasBeenSet =
false;
429 bool m_flexibleEnaQueuesSupportHasBeenSet =
false;
430 bool m_connectionTrackingConfigurationHasBeenSet =
false;
431 bool m_secondaryNetworkSupportedHasBeenSet =
false;
432 bool m_maximumSecondaryNetworkInterfacesHasBeenSet =
false;
433 bool m_ipv4AddressesPerSecondaryInterfaceHasBeenSet =
false;
NetworkInfo & WithIpv6AddressesPerInterface(int value)
int GetMaximumSecondaryNetworkInterfaces() const
bool ConnectionTrackingConfigurationHasBeenSet() const
NetworkInfo & WithIpv4AddressesPerSecondaryInterface(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)
void SetConnectionTrackingConfiguration(ConnectionTrackingConfigurationT &&value)
void SetSecondaryNetworkSupported(bool 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
bool MaximumSecondaryNetworkInterfacesHasBeenSet() 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 & WithMaximumSecondaryNetworkInterfaces(int value)
bool SecondaryNetworkSupportedHasBeenSet() const
NetworkInfo & WithEnaSrdSupported(bool value)
void SetMaximumNetworkInterfaces(int value)
void SetMaximumSecondaryNetworkInterfaces(int value)
AWS_EC2_API NetworkInfo()=default
void SetIpv4AddressesPerSecondaryInterface(int value)
bool FlexibleEnaQueuesSupportHasBeenSet() const
NetworkInfo & AddBandwidthWeightings(BandwidthWeightingType value)
bool Ipv4AddressesPerSecondaryInterfaceHasBeenSet() const
NetworkInfo & WithConnectionTrackingConfiguration(ConnectionTrackingConfigurationT &&value)
NetworkInfo & WithNetworkCards(NetworkCardsT &&value)
bool GetEncryptionInTransitSupported() const
NetworkInfo & WithIpv4AddressesPerInterface(int value)
NetworkInfo & WithDefaultNetworkCardIndex(int value)
const Aws::Vector< BandwidthWeightingType > & GetBandwidthWeightings() const
int GetIpv4AddressesPerSecondaryInterface() 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
const DefaultConnectionTrackingConfiguration & GetConnectionTrackingConfiguration() const
NetworkInfo & WithSecondaryNetworkSupported(bool value)
void SetIpv6Supported(bool value)
void SetNetworkPerformance(NetworkPerformanceT &&value)
NetworkInfo & WithEncryptionInTransitSupported(bool value)
bool GetSecondaryNetworkSupported() const
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