/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include An application node that represents a camera stream, a model, code, or
* output.See Also:
AWS API
* Reference
The node's category.
*/ inline const NodeCategory& GetCategory() const{ return m_category; } /** *The node's category.
*/ inline bool CategoryHasBeenSet() const { return m_categoryHasBeenSet; } /** *The node's category.
*/ inline void SetCategory(const NodeCategory& value) { m_categoryHasBeenSet = true; m_category = value; } /** *The node's category.
*/ inline void SetCategory(NodeCategory&& value) { m_categoryHasBeenSet = true; m_category = std::move(value); } /** *The node's category.
*/ inline Node& WithCategory(const NodeCategory& value) { SetCategory(value); return *this;} /** *The node's category.
*/ inline Node& WithCategory(NodeCategory&& value) { SetCategory(std::move(value)); return *this;} /** *When the node was created.
*/ inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; } /** *When the node was created.
*/ inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; } /** *When the node was created.
*/ inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTimeHasBeenSet = true; m_createdTime = value; } /** *When the node was created.
*/ inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTimeHasBeenSet = true; m_createdTime = std::move(value); } /** *When the node was created.
*/ inline Node& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;} /** *When the node was created.
*/ inline Node& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(value)); return *this;} /** *The node's description.
*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *The node's description.
*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *The node's description.
*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *The node's description.
*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *The node's description.
*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *The node's description.
*/ inline Node& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *The node's description.
*/ inline Node& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *The node's description.
*/ inline Node& WithDescription(const char* value) { SetDescription(value); return *this;} /** *The node's name.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The node's name.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The node's name.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The node's name.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The node's name.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The node's name.
*/ inline Node& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The node's name.
*/ inline Node& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The node's name.
*/ inline Node& WithName(const char* value) { SetName(value); return *this;} /** *The node's ID.
*/ inline const Aws::String& GetNodeId() const{ return m_nodeId; } /** *The node's ID.
*/ inline bool NodeIdHasBeenSet() const { return m_nodeIdHasBeenSet; } /** *The node's ID.
*/ inline void SetNodeId(const Aws::String& value) { m_nodeIdHasBeenSet = true; m_nodeId = value; } /** *The node's ID.
*/ inline void SetNodeId(Aws::String&& value) { m_nodeIdHasBeenSet = true; m_nodeId = std::move(value); } /** *The node's ID.
*/ inline void SetNodeId(const char* value) { m_nodeIdHasBeenSet = true; m_nodeId.assign(value); } /** *The node's ID.
*/ inline Node& WithNodeId(const Aws::String& value) { SetNodeId(value); return *this;} /** *The node's ID.
*/ inline Node& WithNodeId(Aws::String&& value) { SetNodeId(std::move(value)); return *this;} /** *The node's ID.
*/ inline Node& WithNodeId(const char* value) { SetNodeId(value); return *this;} /** *The account ID of the node's owner.
*/ inline const Aws::String& GetOwnerAccount() const{ return m_ownerAccount; } /** *The account ID of the node's owner.
*/ inline bool OwnerAccountHasBeenSet() const { return m_ownerAccountHasBeenSet; } /** *The account ID of the node's owner.
*/ inline void SetOwnerAccount(const Aws::String& value) { m_ownerAccountHasBeenSet = true; m_ownerAccount = value; } /** *The account ID of the node's owner.
*/ inline void SetOwnerAccount(Aws::String&& value) { m_ownerAccountHasBeenSet = true; m_ownerAccount = std::move(value); } /** *The account ID of the node's owner.
*/ inline void SetOwnerAccount(const char* value) { m_ownerAccountHasBeenSet = true; m_ownerAccount.assign(value); } /** *The account ID of the node's owner.
*/ inline Node& WithOwnerAccount(const Aws::String& value) { SetOwnerAccount(value); return *this;} /** *The account ID of the node's owner.
*/ inline Node& WithOwnerAccount(Aws::String&& value) { SetOwnerAccount(std::move(value)); return *this;} /** *The account ID of the node's owner.
*/ inline Node& WithOwnerAccount(const char* value) { SetOwnerAccount(value); return *this;} /** *The node's ARN.
*/ inline const Aws::String& GetPackageArn() const{ return m_packageArn; } /** *The node's ARN.
*/ inline bool PackageArnHasBeenSet() const { return m_packageArnHasBeenSet; } /** *The node's ARN.
*/ inline void SetPackageArn(const Aws::String& value) { m_packageArnHasBeenSet = true; m_packageArn = value; } /** *The node's ARN.
*/ inline void SetPackageArn(Aws::String&& value) { m_packageArnHasBeenSet = true; m_packageArn = std::move(value); } /** *The node's ARN.
*/ inline void SetPackageArn(const char* value) { m_packageArnHasBeenSet = true; m_packageArn.assign(value); } /** *The node's ARN.
*/ inline Node& WithPackageArn(const Aws::String& value) { SetPackageArn(value); return *this;} /** *The node's ARN.
*/ inline Node& WithPackageArn(Aws::String&& value) { SetPackageArn(std::move(value)); return *this;} /** *The node's ARN.
*/ inline Node& WithPackageArn(const char* value) { SetPackageArn(value); return *this;} /** *The node's package ID.
*/ inline const Aws::String& GetPackageId() const{ return m_packageId; } /** *The node's package ID.
*/ inline bool PackageIdHasBeenSet() const { return m_packageIdHasBeenSet; } /** *The node's package ID.
*/ inline void SetPackageId(const Aws::String& value) { m_packageIdHasBeenSet = true; m_packageId = value; } /** *The node's package ID.
*/ inline void SetPackageId(Aws::String&& value) { m_packageIdHasBeenSet = true; m_packageId = std::move(value); } /** *The node's package ID.
*/ inline void SetPackageId(const char* value) { m_packageIdHasBeenSet = true; m_packageId.assign(value); } /** *The node's package ID.
*/ inline Node& WithPackageId(const Aws::String& value) { SetPackageId(value); return *this;} /** *The node's package ID.
*/ inline Node& WithPackageId(Aws::String&& value) { SetPackageId(std::move(value)); return *this;} /** *The node's package ID.
*/ inline Node& WithPackageId(const char* value) { SetPackageId(value); return *this;} /** *The node's package name.
*/ inline const Aws::String& GetPackageName() const{ return m_packageName; } /** *The node's package name.
*/ inline bool PackageNameHasBeenSet() const { return m_packageNameHasBeenSet; } /** *The node's package name.
*/ inline void SetPackageName(const Aws::String& value) { m_packageNameHasBeenSet = true; m_packageName = value; } /** *The node's package name.
*/ inline void SetPackageName(Aws::String&& value) { m_packageNameHasBeenSet = true; m_packageName = std::move(value); } /** *The node's package name.
*/ inline void SetPackageName(const char* value) { m_packageNameHasBeenSet = true; m_packageName.assign(value); } /** *The node's package name.
*/ inline Node& WithPackageName(const Aws::String& value) { SetPackageName(value); return *this;} /** *The node's package name.
*/ inline Node& WithPackageName(Aws::String&& value) { SetPackageName(std::move(value)); return *this;} /** *The node's package name.
*/ inline Node& WithPackageName(const char* value) { SetPackageName(value); return *this;} /** *The node's package version.
*/ inline const Aws::String& GetPackageVersion() const{ return m_packageVersion; } /** *The node's package version.
*/ inline bool PackageVersionHasBeenSet() const { return m_packageVersionHasBeenSet; } /** *The node's package version.
*/ inline void SetPackageVersion(const Aws::String& value) { m_packageVersionHasBeenSet = true; m_packageVersion = value; } /** *The node's package version.
*/ inline void SetPackageVersion(Aws::String&& value) { m_packageVersionHasBeenSet = true; m_packageVersion = std::move(value); } /** *The node's package version.
*/ inline void SetPackageVersion(const char* value) { m_packageVersionHasBeenSet = true; m_packageVersion.assign(value); } /** *The node's package version.
*/ inline Node& WithPackageVersion(const Aws::String& value) { SetPackageVersion(value); return *this;} /** *The node's package version.
*/ inline Node& WithPackageVersion(Aws::String&& value) { SetPackageVersion(std::move(value)); return *this;} /** *The node's package version.
*/ inline Node& WithPackageVersion(const char* value) { SetPackageVersion(value); return *this;} /** *The node's patch version.
*/ inline const Aws::String& GetPatchVersion() const{ return m_patchVersion; } /** *The node's patch version.
*/ inline bool PatchVersionHasBeenSet() const { return m_patchVersionHasBeenSet; } /** *The node's patch version.
*/ inline void SetPatchVersion(const Aws::String& value) { m_patchVersionHasBeenSet = true; m_patchVersion = value; } /** *The node's patch version.
*/ inline void SetPatchVersion(Aws::String&& value) { m_patchVersionHasBeenSet = true; m_patchVersion = std::move(value); } /** *The node's patch version.
*/ inline void SetPatchVersion(const char* value) { m_patchVersionHasBeenSet = true; m_patchVersion.assign(value); } /** *The node's patch version.
*/ inline Node& WithPatchVersion(const Aws::String& value) { SetPatchVersion(value); return *this;} /** *The node's patch version.
*/ inline Node& WithPatchVersion(Aws::String&& value) { SetPatchVersion(std::move(value)); return *this;} /** *The node's patch version.
*/ inline Node& WithPatchVersion(const char* value) { SetPatchVersion(value); return *this;} private: NodeCategory m_category; bool m_categoryHasBeenSet = false; Aws::Utils::DateTime m_createdTime; bool m_createdTimeHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_nodeId; bool m_nodeIdHasBeenSet = false; Aws::String m_ownerAccount; bool m_ownerAccountHasBeenSet = false; Aws::String m_packageArn; bool m_packageArnHasBeenSet = false; Aws::String m_packageId; bool m_packageIdHasBeenSet = false; Aws::String m_packageName; bool m_packageNameHasBeenSet = false; Aws::String m_packageVersion; bool m_packageVersionHasBeenSet = false; Aws::String m_patchVersion; bool m_patchVersionHasBeenSet = false; }; } // namespace Model } // namespace Panorama } // namespace Aws