7#include <aws/sagemaker/SageMaker_EXPORTS.h>
8#include <aws/sagemaker/model/TrainingInstanceType.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/sagemaker/model/InstancePlacementConfig.h>
12#include <aws/sagemaker/model/InstanceGroup.h>
63 inline void SetInstanceCount(
int value) { m_instanceCountHasBeenSet =
true; m_instanceCount = value; }
97 inline void SetVolumeSizeInGB(
int value) { m_volumeSizeInGBHasBeenSet =
true; m_volumeSizeInGB = value; }
123 template<
typename VolumeKmsKeyIdT = Aws::String>
124 void SetVolumeKmsKeyId(VolumeKmsKeyIdT&& value) { m_volumeKmsKeyIdHasBeenSet =
true; m_volumeKmsKeyId = std::forward<VolumeKmsKeyIdT>(value); }
125 template<
typename VolumeKmsKeyIdT = Aws::String>
146 template<
typename InstanceGroupsT = Aws::Vector<InstanceGroup>>
147 void SetInstanceGroups(InstanceGroupsT&& value) { m_instanceGroupsHasBeenSet =
true; m_instanceGroups = std::forward<InstanceGroupsT>(value); }
148 template<
typename InstanceGroupsT = Aws::Vector<InstanceGroup>>
150 template<
typename InstanceGroupsT = InstanceGroup>
151 ResourceConfig&
AddInstanceGroups(InstanceGroupsT&& value) { m_instanceGroupsHasBeenSet =
true; m_instanceGroups.emplace_back(std::forward<InstanceGroupsT>(value));
return *
this; }
161 template<
typename TrainingPlanArnT = Aws::String>
162 void SetTrainingPlanArn(TrainingPlanArnT&& value) { m_trainingPlanArnHasBeenSet =
true; m_trainingPlanArn = std::forward<TrainingPlanArnT>(value); }
163 template<
typename TrainingPlanArnT = Aws::String>
174 template<
typename InstancePlacementConfigT = InstancePlacementConfig>
175 void SetInstancePlacementConfig(InstancePlacementConfigT&& value) { m_instancePlacementConfigHasBeenSet =
true; m_instancePlacementConfig = std::forward<InstancePlacementConfigT>(value); }
176 template<
typename InstancePlacementConfigT = InstancePlacementConfig>
182 bool m_instanceTypeHasBeenSet =
false;
184 int m_instanceCount{0};
185 bool m_instanceCountHasBeenSet =
false;
187 int m_volumeSizeInGB{0};
188 bool m_volumeSizeInGBHasBeenSet =
false;
191 bool m_volumeKmsKeyIdHasBeenSet =
false;
193 int m_keepAlivePeriodInSeconds{0};
194 bool m_keepAlivePeriodInSecondsHasBeenSet =
false;
197 bool m_instanceGroupsHasBeenSet =
false;
200 bool m_trainingPlanArnHasBeenSet =
false;
202 InstancePlacementConfig m_instancePlacementConfig;
203 bool m_instancePlacementConfigHasBeenSet =
false;
const Aws::String & GetVolumeKmsKeyId() const
bool VolumeSizeInGBHasBeenSet() const
void SetVolumeKmsKeyId(VolumeKmsKeyIdT &&value)
const Aws::String & GetTrainingPlanArn() const
bool InstanceCountHasBeenSet() const
ResourceConfig & WithVolumeKmsKeyId(VolumeKmsKeyIdT &&value)
ResourceConfig & WithInstancePlacementConfig(InstancePlacementConfigT &&value)
bool VolumeKmsKeyIdHasBeenSet() const
bool InstancePlacementConfigHasBeenSet() const
ResourceConfig & WithKeepAlivePeriodInSeconds(int value)
void SetVolumeSizeInGB(int value)
bool KeepAlivePeriodInSecondsHasBeenSet() const
void SetInstanceGroups(InstanceGroupsT &&value)
bool InstanceTypeHasBeenSet() const
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const
ResourceConfig & WithInstanceGroups(InstanceGroupsT &&value)
const InstancePlacementConfig & GetInstancePlacementConfig() const
AWS_SAGEMAKER_API ResourceConfig(Aws::Utils::Json::JsonView jsonValue)
AWS_SAGEMAKER_API ResourceConfig()=default
int GetKeepAlivePeriodInSeconds() const
ResourceConfig & WithInstanceCount(int value)
void SetInstanceCount(int value)
ResourceConfig & WithTrainingPlanArn(TrainingPlanArnT &&value)
AWS_SAGEMAKER_API ResourceConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
ResourceConfig & WithVolumeSizeInGB(int value)
bool TrainingPlanArnHasBeenSet() const
void SetInstanceType(TrainingInstanceType value)
ResourceConfig & AddInstanceGroups(InstanceGroupsT &&value)
bool InstanceGroupsHasBeenSet() const
void SetInstancePlacementConfig(InstancePlacementConfigT &&value)
void SetTrainingPlanArn(TrainingPlanArnT &&value)
const Aws::Vector< InstanceGroup > & GetInstanceGroups() const
TrainingInstanceType GetInstanceType() const
void SetKeepAlivePeriodInSeconds(int value)
ResourceConfig & WithInstanceType(TrainingInstanceType value)
int GetInstanceCount() const
int GetVolumeSizeInGB() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue