AWS SDK for C++

AWS SDK for C++ Version 1.11.748

Loading...
Searching...
No Matches
SchedulerConfig.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/FairShare.h>
10#include <aws/sagemaker/model/IdleResourceSharing.h>
11#include <aws/sagemaker/model/PriorityClass.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace SageMaker {
23namespace Model {
24
33 public:
34 AWS_SAGEMAKER_API SchedulerConfig() = default;
35 AWS_SAGEMAKER_API SchedulerConfig(Aws::Utils::Json::JsonView jsonValue);
37 AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
45 inline const Aws::Vector<PriorityClass>& GetPriorityClasses() const { return m_priorityClasses; }
46 inline bool PriorityClassesHasBeenSet() const { return m_priorityClassesHasBeenSet; }
47 template <typename PriorityClassesT = Aws::Vector<PriorityClass>>
48 void SetPriorityClasses(PriorityClassesT&& value) {
49 m_priorityClassesHasBeenSet = true;
50 m_priorityClasses = std::forward<PriorityClassesT>(value);
51 }
52 template <typename PriorityClassesT = Aws::Vector<PriorityClass>>
53 SchedulerConfig& WithPriorityClasses(PriorityClassesT&& value) {
54 SetPriorityClasses(std::forward<PriorityClassesT>(value));
55 return *this;
56 }
57 template <typename PriorityClassesT = PriorityClass>
58 SchedulerConfig& AddPriorityClasses(PriorityClassesT&& value) {
59 m_priorityClassesHasBeenSet = true;
60 m_priorityClasses.emplace_back(std::forward<PriorityClassesT>(value));
61 return *this;
62 }
64
66
72 inline FairShare GetFairShare() const { return m_fairShare; }
73 inline bool FairShareHasBeenSet() const { return m_fairShareHasBeenSet; }
74 inline void SetFairShare(FairShare value) {
75 m_fairShareHasBeenSet = true;
76 m_fairShare = value;
77 }
79 SetFairShare(value);
80 return *this;
81 }
83
85
90 inline IdleResourceSharing GetIdleResourceSharing() const { return m_idleResourceSharing; }
91 inline bool IdleResourceSharingHasBeenSet() const { return m_idleResourceSharingHasBeenSet; }
93 m_idleResourceSharingHasBeenSet = true;
94 m_idleResourceSharing = value;
95 }
98 return *this;
99 }
101 private:
102 Aws::Vector<PriorityClass> m_priorityClasses;
103
104 FairShare m_fairShare{FairShare::NOT_SET};
105
107 bool m_priorityClassesHasBeenSet = false;
108 bool m_fairShareHasBeenSet = false;
109 bool m_idleResourceSharingHasBeenSet = false;
110};
111
112} // namespace Model
113} // namespace SageMaker
114} // namespace Aws
SchedulerConfig & WithIdleResourceSharing(IdleResourceSharing value)
void SetIdleResourceSharing(IdleResourceSharing value)
SchedulerConfig & WithFairShare(FairShare value)
AWS_SAGEMAKER_API SchedulerConfig(Aws::Utils::Json::JsonView jsonValue)
void SetPriorityClasses(PriorityClassesT &&value)
SchedulerConfig & WithPriorityClasses(PriorityClassesT &&value)
const Aws::Vector< PriorityClass > & GetPriorityClasses() const
AWS_SAGEMAKER_API SchedulerConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const
IdleResourceSharing GetIdleResourceSharing() const
SchedulerConfig & AddPriorityClasses(PriorityClassesT &&value)
AWS_SAGEMAKER_API SchedulerConfig()=default
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue