AWS SDK for C++

AWS SDK for C++ Version 1.11.718

Loading...
Searching...
No Matches
InstancePlacementConfig.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/sagemaker/SageMaker_EXPORTS.h>
9#include <aws/sagemaker/model/PlacementSpecification.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace SageMaker {
21namespace Model {
22
30 public:
31 AWS_SAGEMAKER_API InstancePlacementConfig() = default;
34 AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
43 inline bool GetEnableMultipleJobs() const { return m_enableMultipleJobs; }
44 inline bool EnableMultipleJobsHasBeenSet() const { return m_enableMultipleJobsHasBeenSet; }
45 inline void SetEnableMultipleJobs(bool value) {
46 m_enableMultipleJobsHasBeenSet = true;
47 m_enableMultipleJobs = value;
48 }
51 return *this;
52 }
54
56
60 inline const Aws::Vector<PlacementSpecification>& GetPlacementSpecifications() const { return m_placementSpecifications; }
61 inline bool PlacementSpecificationsHasBeenSet() const { return m_placementSpecificationsHasBeenSet; }
62 template <typename PlacementSpecificationsT = Aws::Vector<PlacementSpecification>>
63 void SetPlacementSpecifications(PlacementSpecificationsT&& value) {
64 m_placementSpecificationsHasBeenSet = true;
65 m_placementSpecifications = std::forward<PlacementSpecificationsT>(value);
66 }
67 template <typename PlacementSpecificationsT = Aws::Vector<PlacementSpecification>>
68 InstancePlacementConfig& WithPlacementSpecifications(PlacementSpecificationsT&& value) {
69 SetPlacementSpecifications(std::forward<PlacementSpecificationsT>(value));
70 return *this;
71 }
72 template <typename PlacementSpecificationsT = PlacementSpecification>
73 InstancePlacementConfig& AddPlacementSpecifications(PlacementSpecificationsT&& value) {
74 m_placementSpecificationsHasBeenSet = true;
75 m_placementSpecifications.emplace_back(std::forward<PlacementSpecificationsT>(value));
76 return *this;
77 }
79 private:
80 bool m_enableMultipleJobs{false};
81
82 Aws::Vector<PlacementSpecification> m_placementSpecifications;
83 bool m_enableMultipleJobsHasBeenSet = false;
84 bool m_placementSpecificationsHasBeenSet = false;
85};
86
87} // namespace Model
88} // namespace SageMaker
89} // namespace Aws
InstancePlacementConfig & WithPlacementSpecifications(PlacementSpecificationsT &&value)
const Aws::Vector< PlacementSpecification > & GetPlacementSpecifications() const
InstancePlacementConfig & WithEnableMultipleJobs(bool value)
AWS_SAGEMAKER_API InstancePlacementConfig(Aws::Utils::Json::JsonView jsonValue)
void SetPlacementSpecifications(PlacementSpecificationsT &&value)
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_SAGEMAKER_API InstancePlacementConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
InstancePlacementConfig & AddPlacementSpecifications(PlacementSpecificationsT &&value)
AWS_SAGEMAKER_API InstancePlacementConfig()=default
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue