7#include <aws/deadline/Deadline_EXPORTS.h>
8#include <aws/deadline/model/VCpuCountRange.h>
9#include <aws/deadline/model/MemoryMiBRange.h>
10#include <aws/deadline/model/ServiceManagedFleetOperatingSystemFamily.h>
11#include <aws/deadline/model/CpuArchitectureType.h>
12#include <aws/deadline/model/Ec2EbsVolume.h>
13#include <aws/deadline/model/AcceleratorCapabilities.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15#include <aws/core/utils/memory/stl/AWSString.h>
16#include <aws/deadline/model/FleetAmountCapability.h>
17#include <aws/deadline/model/FleetAttributeCapability.h>
55 template<
typename VCpuCountT = VCpuCountRange>
56 void SetVCpuCount(VCpuCountT&& value) { m_vCpuCountHasBeenSet =
true; m_vCpuCount = std::forward<VCpuCountT>(value); }
57 template<
typename VCpuCountT = VCpuCountRange>
67 template<
typename MemoryMiBT = MemoryMiBRange>
68 void SetMemoryMiB(MemoryMiBT&& value) { m_memoryMiBHasBeenSet =
true; m_memoryMiB = std::forward<MemoryMiBT>(value); }
69 template<
typename MemoryMiBT = MemoryMiBRange>
99 template<
typename RootEbsVolumeT = Ec2EbsVolume>
100 void SetRootEbsVolume(RootEbsVolumeT&& value) { m_rootEbsVolumeHasBeenSet =
true; m_rootEbsVolume = std::forward<RootEbsVolumeT>(value); }
101 template<
typename RootEbsVolumeT = Ec2EbsVolume>
112 template<
typename AcceleratorCapabilitiesT = AcceleratorCapabilities>
113 void SetAcceleratorCapabilities(AcceleratorCapabilitiesT&& value) { m_acceleratorCapabilitiesHasBeenSet =
true; m_acceleratorCapabilities = std::forward<AcceleratorCapabilitiesT>(value); }
114 template<
typename AcceleratorCapabilitiesT = AcceleratorCapabilities>
124 template<
typename AllowedInstanceTypesT = Aws::Vector<Aws::String>>
125 void SetAllowedInstanceTypes(AllowedInstanceTypesT&& value) { m_allowedInstanceTypesHasBeenSet =
true; m_allowedInstanceTypes = std::forward<AllowedInstanceTypesT>(value); }
126 template<
typename AllowedInstanceTypesT = Aws::Vector<Aws::String>>
128 template<
typename AllowedInstanceTypesT = Aws::String>
138 template<
typename ExcludedInstanceTypesT = Aws::Vector<Aws::String>>
139 void SetExcludedInstanceTypes(ExcludedInstanceTypesT&& value) { m_excludedInstanceTypesHasBeenSet =
true; m_excludedInstanceTypes = std::forward<ExcludedInstanceTypesT>(value); }
140 template<
typename ExcludedInstanceTypesT = Aws::Vector<Aws::String>>
142 template<
typename ExcludedInstanceTypesT = Aws::String>
152 template<
typename CustomAmountsT = Aws::Vector<FleetAmountCapability>>
153 void SetCustomAmounts(CustomAmountsT&& value) { m_customAmountsHasBeenSet =
true; m_customAmounts = std::forward<CustomAmountsT>(value); }
154 template<
typename CustomAmountsT = Aws::Vector<FleetAmountCapability>>
156 template<
typename CustomAmountsT = FleetAmountCapability>
166 template<
typename CustomAttributesT = Aws::Vector<FleetAttributeCapability>>
167 void SetCustomAttributes(CustomAttributesT&& value) { m_customAttributesHasBeenSet =
true; m_customAttributes = std::forward<CustomAttributesT>(value); }
168 template<
typename CustomAttributesT = Aws::Vector<FleetAttributeCapability>>
170 template<
typename CustomAttributesT = FleetAttributeCapability>
176 bool m_vCpuCountHasBeenSet =
false;
179 bool m_memoryMiBHasBeenSet =
false;
182 bool m_osFamilyHasBeenSet =
false;
185 bool m_cpuArchitectureTypeHasBeenSet =
false;
187 Ec2EbsVolume m_rootEbsVolume;
188 bool m_rootEbsVolumeHasBeenSet =
false;
190 AcceleratorCapabilities m_acceleratorCapabilities;
191 bool m_acceleratorCapabilitiesHasBeenSet =
false;
194 bool m_allowedInstanceTypesHasBeenSet =
false;
197 bool m_excludedInstanceTypesHasBeenSet =
false;
200 bool m_customAmountsHasBeenSet =
false;
203 bool m_customAttributesHasBeenSet =
false;
void SetRootEbsVolume(RootEbsVolumeT &&value)
bool VCpuCountHasBeenSet() const
bool AllowedInstanceTypesHasBeenSet() const
void SetCustomAmounts(CustomAmountsT &&value)
bool CustomAttributesHasBeenSet() const
const AcceleratorCapabilities & GetAcceleratorCapabilities() const
ServiceManagedEc2InstanceCapabilities & WithAllowedInstanceTypes(AllowedInstanceTypesT &&value)
bool AcceleratorCapabilitiesHasBeenSet() const
ServiceManagedFleetOperatingSystemFamily GetOsFamily() const
const Aws::Vector< Aws::String > & GetExcludedInstanceTypes() const
ServiceManagedEc2InstanceCapabilities & AddCustomAmounts(CustomAmountsT &&value)
ServiceManagedEc2InstanceCapabilities & AddExcludedInstanceTypes(ExcludedInstanceTypesT &&value)
void SetCustomAttributes(CustomAttributesT &&value)
AWS_DEADLINE_API ServiceManagedEc2InstanceCapabilities & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetMemoryMiB(MemoryMiBT &&value)
ServiceManagedEc2InstanceCapabilities & WithCustomAttributes(CustomAttributesT &&value)
void SetAcceleratorCapabilities(AcceleratorCapabilitiesT &&value)
const MemoryMiBRange & GetMemoryMiB() const
void SetVCpuCount(VCpuCountT &&value)
void SetOsFamily(ServiceManagedFleetOperatingSystemFamily value)
const VCpuCountRange & GetVCpuCount() const
bool ExcludedInstanceTypesHasBeenSet() const
ServiceManagedEc2InstanceCapabilities & AddAllowedInstanceTypes(AllowedInstanceTypesT &&value)
bool OsFamilyHasBeenSet() const
ServiceManagedEc2InstanceCapabilities & WithCpuArchitectureType(CpuArchitectureType value)
ServiceManagedEc2InstanceCapabilities & AddCustomAttributes(CustomAttributesT &&value)
ServiceManagedEc2InstanceCapabilities & WithRootEbsVolume(RootEbsVolumeT &&value)
AWS_DEADLINE_API ServiceManagedEc2InstanceCapabilities()=default
void SetExcludedInstanceTypes(ExcludedInstanceTypesT &&value)
bool CpuArchitectureTypeHasBeenSet() const
CpuArchitectureType GetCpuArchitectureType() const
ServiceManagedEc2InstanceCapabilities & WithExcludedInstanceTypes(ExcludedInstanceTypesT &&value)
bool RootEbsVolumeHasBeenSet() const
const Aws::Vector< FleetAttributeCapability > & GetCustomAttributes() const
ServiceManagedEc2InstanceCapabilities & WithOsFamily(ServiceManagedFleetOperatingSystemFamily value)
ServiceManagedEc2InstanceCapabilities & WithVCpuCount(VCpuCountT &&value)
void SetAllowedInstanceTypes(AllowedInstanceTypesT &&value)
bool MemoryMiBHasBeenSet() const
AWS_DEADLINE_API Aws::Utils::Json::JsonValue Jsonize() const
ServiceManagedEc2InstanceCapabilities & WithMemoryMiB(MemoryMiBT &&value)
const Aws::Vector< FleetAmountCapability > & GetCustomAmounts() const
const Aws::Vector< Aws::String > & GetAllowedInstanceTypes() const
ServiceManagedEc2InstanceCapabilities & WithAcceleratorCapabilities(AcceleratorCapabilitiesT &&value)
const Ec2EbsVolume & GetRootEbsVolume() const
ServiceManagedEc2InstanceCapabilities & WithCustomAmounts(CustomAmountsT &&value)
AWS_DEADLINE_API ServiceManagedEc2InstanceCapabilities(Aws::Utils::Json::JsonView jsonValue)
bool CustomAmountsHasBeenSet() const
void SetCpuArchitectureType(CpuArchitectureType value)
ServiceManagedFleetOperatingSystemFamily
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue