AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
GameServerGroupAutoScalingPolicy.h
1
6#pragma once
7#include <aws/gamelift/GameLift_EXPORTS.h>
8#include <aws/gamelift/model/TargetTrackingConfiguration.h>
9#include <utility>
10
11namespace Aws
12{
13namespace Utils
14{
15namespace Json
16{
17 class JsonValue;
18 class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace GameLift
22{
23namespace Model
24{
25
38 {
39 public:
40 AWS_GAMELIFT_API GameServerGroupAutoScalingPolicy() = default;
43 AWS_GAMELIFT_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
53 inline int GetEstimatedInstanceWarmup() const { return m_estimatedInstanceWarmup; }
54 inline bool EstimatedInstanceWarmupHasBeenSet() const { return m_estimatedInstanceWarmupHasBeenSet; }
55 inline void SetEstimatedInstanceWarmup(int value) { m_estimatedInstanceWarmupHasBeenSet = true; m_estimatedInstanceWarmup = value; }
58
60
68 inline const TargetTrackingConfiguration& GetTargetTrackingConfiguration() const { return m_targetTrackingConfiguration; }
69 inline bool TargetTrackingConfigurationHasBeenSet() const { return m_targetTrackingConfigurationHasBeenSet; }
70 template<typename TargetTrackingConfigurationT = TargetTrackingConfiguration>
71 void SetTargetTrackingConfiguration(TargetTrackingConfigurationT&& value) { m_targetTrackingConfigurationHasBeenSet = true; m_targetTrackingConfiguration = std::forward<TargetTrackingConfigurationT>(value); }
72 template<typename TargetTrackingConfigurationT = TargetTrackingConfiguration>
73 GameServerGroupAutoScalingPolicy& WithTargetTrackingConfiguration(TargetTrackingConfigurationT&& value) { SetTargetTrackingConfiguration(std::forward<TargetTrackingConfigurationT>(value)); return *this;}
75 private:
76
77 int m_estimatedInstanceWarmup{0};
78 bool m_estimatedInstanceWarmupHasBeenSet = false;
79
80 TargetTrackingConfiguration m_targetTrackingConfiguration;
81 bool m_targetTrackingConfigurationHasBeenSet = false;
82 };
83
84} // namespace Model
85} // namespace GameLift
86} // namespace Aws
AWS_GAMELIFT_API GameServerGroupAutoScalingPolicy(Aws::Utils::Json::JsonView jsonValue)
AWS_GAMELIFT_API Aws::Utils::Json::JsonValue Jsonize() const
const TargetTrackingConfiguration & GetTargetTrackingConfiguration() const
GameServerGroupAutoScalingPolicy & WithTargetTrackingConfiguration(TargetTrackingConfigurationT &&value)
AWS_GAMELIFT_API GameServerGroupAutoScalingPolicy & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_GAMELIFT_API GameServerGroupAutoScalingPolicy()=default
void SetTargetTrackingConfiguration(TargetTrackingConfigurationT &&value)
GameServerGroupAutoScalingPolicy & WithEstimatedInstanceWarmup(int value)
Aws::Utils::Json::JsonValue JsonValue