/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Application configuration information for a robot.See Also:
* AWS
* API Reference
The application information for the robot application.
*/ inline const Aws::String& GetApplication() const{ return m_application; } /** *The application information for the robot application.
*/ inline bool ApplicationHasBeenSet() const { return m_applicationHasBeenSet; } /** *The application information for the robot application.
*/ inline void SetApplication(const Aws::String& value) { m_applicationHasBeenSet = true; m_application = value; } /** *The application information for the robot application.
*/ inline void SetApplication(Aws::String&& value) { m_applicationHasBeenSet = true; m_application = std::move(value); } /** *The application information for the robot application.
*/ inline void SetApplication(const char* value) { m_applicationHasBeenSet = true; m_application.assign(value); } /** *The application information for the robot application.
*/ inline RobotApplicationConfig& WithApplication(const Aws::String& value) { SetApplication(value); return *this;} /** *The application information for the robot application.
*/ inline RobotApplicationConfig& WithApplication(Aws::String&& value) { SetApplication(std::move(value)); return *this;} /** *The application information for the robot application.
*/ inline RobotApplicationConfig& WithApplication(const char* value) { SetApplication(value); return *this;} /** *The version of the robot application.
*/ inline const Aws::String& GetApplicationVersion() const{ return m_applicationVersion; } /** *The version of the robot application.
*/ inline bool ApplicationVersionHasBeenSet() const { return m_applicationVersionHasBeenSet; } /** *The version of the robot application.
*/ inline void SetApplicationVersion(const Aws::String& value) { m_applicationVersionHasBeenSet = true; m_applicationVersion = value; } /** *The version of the robot application.
*/ inline void SetApplicationVersion(Aws::String&& value) { m_applicationVersionHasBeenSet = true; m_applicationVersion = std::move(value); } /** *The version of the robot application.
*/ inline void SetApplicationVersion(const char* value) { m_applicationVersionHasBeenSet = true; m_applicationVersion.assign(value); } /** *The version of the robot application.
*/ inline RobotApplicationConfig& WithApplicationVersion(const Aws::String& value) { SetApplicationVersion(value); return *this;} /** *The version of the robot application.
*/ inline RobotApplicationConfig& WithApplicationVersion(Aws::String&& value) { SetApplicationVersion(std::move(value)); return *this;} /** *The version of the robot application.
*/ inline RobotApplicationConfig& WithApplicationVersion(const char* value) { SetApplicationVersion(value); return *this;} /** *The launch configuration for the robot application.
*/ inline const LaunchConfig& GetLaunchConfig() const{ return m_launchConfig; } /** *The launch configuration for the robot application.
*/ inline bool LaunchConfigHasBeenSet() const { return m_launchConfigHasBeenSet; } /** *The launch configuration for the robot application.
*/ inline void SetLaunchConfig(const LaunchConfig& value) { m_launchConfigHasBeenSet = true; m_launchConfig = value; } /** *The launch configuration for the robot application.
*/ inline void SetLaunchConfig(LaunchConfig&& value) { m_launchConfigHasBeenSet = true; m_launchConfig = std::move(value); } /** *The launch configuration for the robot application.
*/ inline RobotApplicationConfig& WithLaunchConfig(const LaunchConfig& value) { SetLaunchConfig(value); return *this;} /** *The launch configuration for the robot application.
*/ inline RobotApplicationConfig& WithLaunchConfig(LaunchConfig&& value) { SetLaunchConfig(std::move(value)); return *this;} /** *The upload configurations for the robot application.
*/ inline const Aws::VectorThe upload configurations for the robot application.
*/ inline bool UploadConfigurationsHasBeenSet() const { return m_uploadConfigurationsHasBeenSet; } /** *The upload configurations for the robot application.
*/ inline void SetUploadConfigurations(const Aws::VectorThe upload configurations for the robot application.
*/ inline void SetUploadConfigurations(Aws::VectorThe upload configurations for the robot application.
*/ inline RobotApplicationConfig& WithUploadConfigurations(const Aws::VectorThe upload configurations for the robot application.
*/ inline RobotApplicationConfig& WithUploadConfigurations(Aws::VectorThe upload configurations for the robot application.
*/ inline RobotApplicationConfig& AddUploadConfigurations(const UploadConfiguration& value) { m_uploadConfigurationsHasBeenSet = true; m_uploadConfigurations.push_back(value); return *this; } /** *The upload configurations for the robot application.
*/ inline RobotApplicationConfig& AddUploadConfigurations(UploadConfiguration&& value) { m_uploadConfigurationsHasBeenSet = true; m_uploadConfigurations.push_back(std::move(value)); return *this; } /** *Information about tools configured for the robot application.
*/ inline const Aws::VectorInformation about tools configured for the robot application.
*/ inline bool ToolsHasBeenSet() const { return m_toolsHasBeenSet; } /** *Information about tools configured for the robot application.
*/ inline void SetTools(const Aws::VectorInformation about tools configured for the robot application.
*/ inline void SetTools(Aws::VectorInformation about tools configured for the robot application.
*/ inline RobotApplicationConfig& WithTools(const Aws::VectorInformation about tools configured for the robot application.
*/ inline RobotApplicationConfig& WithTools(Aws::VectorInformation about tools configured for the robot application.
*/ inline RobotApplicationConfig& AddTools(const Tool& value) { m_toolsHasBeenSet = true; m_tools.push_back(value); return *this; } /** *Information about tools configured for the robot application.
*/ inline RobotApplicationConfig& AddTools(Tool&& value) { m_toolsHasBeenSet = true; m_tools.push_back(std::move(value)); return *this; } private: Aws::String m_application; bool m_applicationHasBeenSet = false; Aws::String m_applicationVersion; bool m_applicationVersionHasBeenSet = false; LaunchConfig m_launchConfig; bool m_launchConfigHasBeenSet = false; Aws::Vector