/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes an Elastic Graphics accelerator.See Also:
AWS API
* Reference
The ID of the Elastic Graphics accelerator.
*/ inline const Aws::String& GetElasticGpuId() const{ return m_elasticGpuId; } /** *The ID of the Elastic Graphics accelerator.
*/ inline bool ElasticGpuIdHasBeenSet() const { return m_elasticGpuIdHasBeenSet; } /** *The ID of the Elastic Graphics accelerator.
*/ inline void SetElasticGpuId(const Aws::String& value) { m_elasticGpuIdHasBeenSet = true; m_elasticGpuId = value; } /** *The ID of the Elastic Graphics accelerator.
*/ inline void SetElasticGpuId(Aws::String&& value) { m_elasticGpuIdHasBeenSet = true; m_elasticGpuId = std::move(value); } /** *The ID of the Elastic Graphics accelerator.
*/ inline void SetElasticGpuId(const char* value) { m_elasticGpuIdHasBeenSet = true; m_elasticGpuId.assign(value); } /** *The ID of the Elastic Graphics accelerator.
*/ inline ElasticGpus& WithElasticGpuId(const Aws::String& value) { SetElasticGpuId(value); return *this;} /** *The ID of the Elastic Graphics accelerator.
*/ inline ElasticGpus& WithElasticGpuId(Aws::String&& value) { SetElasticGpuId(std::move(value)); return *this;} /** *The ID of the Elastic Graphics accelerator.
*/ inline ElasticGpus& WithElasticGpuId(const char* value) { SetElasticGpuId(value); return *this;} /** *The Availability Zone in the which the Elastic Graphics accelerator * resides.
*/ inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; } /** *The Availability Zone in the which the Elastic Graphics accelerator * resides.
*/ inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; } /** *The Availability Zone in the which the Elastic Graphics accelerator * resides.
*/ inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; } /** *The Availability Zone in the which the Elastic Graphics accelerator * resides.
*/ inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::move(value); } /** *The Availability Zone in the which the Elastic Graphics accelerator * resides.
*/ inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); } /** *The Availability Zone in the which the Elastic Graphics accelerator * resides.
*/ inline ElasticGpus& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;} /** *The Availability Zone in the which the Elastic Graphics accelerator * resides.
*/ inline ElasticGpus& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(std::move(value)); return *this;} /** *The Availability Zone in the which the Elastic Graphics accelerator * resides.
*/ inline ElasticGpus& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;} /** *The type of Elastic Graphics accelerator.
*/ inline const Aws::String& GetElasticGpuType() const{ return m_elasticGpuType; } /** *The type of Elastic Graphics accelerator.
*/ inline bool ElasticGpuTypeHasBeenSet() const { return m_elasticGpuTypeHasBeenSet; } /** *The type of Elastic Graphics accelerator.
*/ inline void SetElasticGpuType(const Aws::String& value) { m_elasticGpuTypeHasBeenSet = true; m_elasticGpuType = value; } /** *The type of Elastic Graphics accelerator.
*/ inline void SetElasticGpuType(Aws::String&& value) { m_elasticGpuTypeHasBeenSet = true; m_elasticGpuType = std::move(value); } /** *The type of Elastic Graphics accelerator.
*/ inline void SetElasticGpuType(const char* value) { m_elasticGpuTypeHasBeenSet = true; m_elasticGpuType.assign(value); } /** *The type of Elastic Graphics accelerator.
*/ inline ElasticGpus& WithElasticGpuType(const Aws::String& value) { SetElasticGpuType(value); return *this;} /** *The type of Elastic Graphics accelerator.
*/ inline ElasticGpus& WithElasticGpuType(Aws::String&& value) { SetElasticGpuType(std::move(value)); return *this;} /** *The type of Elastic Graphics accelerator.
*/ inline ElasticGpus& WithElasticGpuType(const char* value) { SetElasticGpuType(value); return *this;} /** *The status of the Elastic Graphics accelerator.
*/ inline const ElasticGpuHealth& GetElasticGpuHealth() const{ return m_elasticGpuHealth; } /** *The status of the Elastic Graphics accelerator.
*/ inline bool ElasticGpuHealthHasBeenSet() const { return m_elasticGpuHealthHasBeenSet; } /** *The status of the Elastic Graphics accelerator.
*/ inline void SetElasticGpuHealth(const ElasticGpuHealth& value) { m_elasticGpuHealthHasBeenSet = true; m_elasticGpuHealth = value; } /** *The status of the Elastic Graphics accelerator.
*/ inline void SetElasticGpuHealth(ElasticGpuHealth&& value) { m_elasticGpuHealthHasBeenSet = true; m_elasticGpuHealth = std::move(value); } /** *The status of the Elastic Graphics accelerator.
*/ inline ElasticGpus& WithElasticGpuHealth(const ElasticGpuHealth& value) { SetElasticGpuHealth(value); return *this;} /** *The status of the Elastic Graphics accelerator.
*/ inline ElasticGpus& WithElasticGpuHealth(ElasticGpuHealth&& value) { SetElasticGpuHealth(std::move(value)); return *this;} /** *The state of the Elastic Graphics accelerator.
*/ inline const ElasticGpuState& GetElasticGpuState() const{ return m_elasticGpuState; } /** *The state of the Elastic Graphics accelerator.
*/ inline bool ElasticGpuStateHasBeenSet() const { return m_elasticGpuStateHasBeenSet; } /** *The state of the Elastic Graphics accelerator.
*/ inline void SetElasticGpuState(const ElasticGpuState& value) { m_elasticGpuStateHasBeenSet = true; m_elasticGpuState = value; } /** *The state of the Elastic Graphics accelerator.
*/ inline void SetElasticGpuState(ElasticGpuState&& value) { m_elasticGpuStateHasBeenSet = true; m_elasticGpuState = std::move(value); } /** *The state of the Elastic Graphics accelerator.
*/ inline ElasticGpus& WithElasticGpuState(const ElasticGpuState& value) { SetElasticGpuState(value); return *this;} /** *The state of the Elastic Graphics accelerator.
*/ inline ElasticGpus& WithElasticGpuState(ElasticGpuState&& value) { SetElasticGpuState(std::move(value)); return *this;} /** *The ID of the instance to which the Elastic Graphics accelerator is * attached.
*/ inline const Aws::String& GetInstanceId() const{ return m_instanceId; } /** *The ID of the instance to which the Elastic Graphics accelerator is * attached.
*/ inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; } /** *The ID of the instance to which the Elastic Graphics accelerator is * attached.
*/ inline void SetInstanceId(const Aws::String& value) { m_instanceIdHasBeenSet = true; m_instanceId = value; } /** *The ID of the instance to which the Elastic Graphics accelerator is * attached.
*/ inline void SetInstanceId(Aws::String&& value) { m_instanceIdHasBeenSet = true; m_instanceId = std::move(value); } /** *The ID of the instance to which the Elastic Graphics accelerator is * attached.
*/ inline void SetInstanceId(const char* value) { m_instanceIdHasBeenSet = true; m_instanceId.assign(value); } /** *The ID of the instance to which the Elastic Graphics accelerator is * attached.
*/ inline ElasticGpus& WithInstanceId(const Aws::String& value) { SetInstanceId(value); return *this;} /** *The ID of the instance to which the Elastic Graphics accelerator is * attached.
*/ inline ElasticGpus& WithInstanceId(Aws::String&& value) { SetInstanceId(std::move(value)); return *this;} /** *The ID of the instance to which the Elastic Graphics accelerator is * attached.
*/ inline ElasticGpus& WithInstanceId(const char* value) { SetInstanceId(value); return *this;} /** *The tags assigned to the Elastic Graphics accelerator.
*/ inline const Aws::VectorThe tags assigned to the Elastic Graphics accelerator.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *The tags assigned to the Elastic Graphics accelerator.
*/ inline void SetTags(const Aws::VectorThe tags assigned to the Elastic Graphics accelerator.
*/ inline void SetTags(Aws::VectorThe tags assigned to the Elastic Graphics accelerator.
*/ inline ElasticGpus& WithTags(const Aws::VectorThe tags assigned to the Elastic Graphics accelerator.
*/ inline ElasticGpus& WithTags(Aws::VectorThe tags assigned to the Elastic Graphics accelerator.
*/ inline ElasticGpus& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *The tags assigned to the Elastic Graphics accelerator.
*/ inline ElasticGpus& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_elasticGpuId; bool m_elasticGpuIdHasBeenSet = false; Aws::String m_availabilityZone; bool m_availabilityZoneHasBeenSet = false; Aws::String m_elasticGpuType; bool m_elasticGpuTypeHasBeenSet = false; ElasticGpuHealth m_elasticGpuHealth; bool m_elasticGpuHealthHasBeenSet = false; ElasticGpuState m_elasticGpuState; bool m_elasticGpuStateHasBeenSet = false; Aws::String m_instanceId; bool m_instanceIdHasBeenSet = false; Aws::Vector