/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about a simulation job request.See Also:
AWS
* API Reference
The maximum simulation job duration in seconds. The value must be 8 days * (691,200 seconds) or less.
*/ inline long long GetMaxJobDurationInSeconds() const{ return m_maxJobDurationInSeconds; } /** *The maximum simulation job duration in seconds. The value must be 8 days * (691,200 seconds) or less.
*/ inline bool MaxJobDurationInSecondsHasBeenSet() const { return m_maxJobDurationInSecondsHasBeenSet; } /** *The maximum simulation job duration in seconds. The value must be 8 days * (691,200 seconds) or less.
*/ inline void SetMaxJobDurationInSeconds(long long value) { m_maxJobDurationInSecondsHasBeenSet = true; m_maxJobDurationInSeconds = value; } /** *The maximum simulation job duration in seconds. The value must be 8 days * (691,200 seconds) or less.
*/ inline SimulationJobRequest& WithMaxJobDurationInSeconds(long long value) { SetMaxJobDurationInSeconds(value); return *this;} /** *The IAM role name that allows the simulation instance to call the AWS APIs * that are specified in its associated policies on your behalf. This is how * credentials are passed in to your simulation job.
*/ inline const Aws::String& GetIamRole() const{ return m_iamRole; } /** *The IAM role name that allows the simulation instance to call the AWS APIs * that are specified in its associated policies on your behalf. This is how * credentials are passed in to your simulation job.
*/ inline bool IamRoleHasBeenSet() const { return m_iamRoleHasBeenSet; } /** *The IAM role name that allows the simulation instance to call the AWS APIs * that are specified in its associated policies on your behalf. This is how * credentials are passed in to your simulation job.
*/ inline void SetIamRole(const Aws::String& value) { m_iamRoleHasBeenSet = true; m_iamRole = value; } /** *The IAM role name that allows the simulation instance to call the AWS APIs * that are specified in its associated policies on your behalf. This is how * credentials are passed in to your simulation job.
*/ inline void SetIamRole(Aws::String&& value) { m_iamRoleHasBeenSet = true; m_iamRole = std::move(value); } /** *The IAM role name that allows the simulation instance to call the AWS APIs * that are specified in its associated policies on your behalf. This is how * credentials are passed in to your simulation job.
*/ inline void SetIamRole(const char* value) { m_iamRoleHasBeenSet = true; m_iamRole.assign(value); } /** *The IAM role name that allows the simulation instance to call the AWS APIs * that are specified in its associated policies on your behalf. This is how * credentials are passed in to your simulation job.
*/ inline SimulationJobRequest& WithIamRole(const Aws::String& value) { SetIamRole(value); return *this;} /** *The IAM role name that allows the simulation instance to call the AWS APIs * that are specified in its associated policies on your behalf. This is how * credentials are passed in to your simulation job.
*/ inline SimulationJobRequest& WithIamRole(Aws::String&& value) { SetIamRole(std::move(value)); return *this;} /** *The IAM role name that allows the simulation instance to call the AWS APIs * that are specified in its associated policies on your behalf. This is how * credentials are passed in to your simulation job.
*/ inline SimulationJobRequest& WithIamRole(const char* value) { SetIamRole(value); return *this;} /** *The failure behavior the simulation job.
Restart the simulation job in the same host instance.
Stop the simulation job and terminate the instance.
The failure behavior the simulation job.
Restart the simulation job in the same host instance.
Stop the simulation job and terminate the instance.
The failure behavior the simulation job.
Restart the simulation job in the same host instance.
Stop the simulation job and terminate the instance.
The failure behavior the simulation job.
Restart the simulation job in the same host instance.
Stop the simulation job and terminate the instance.
The failure behavior the simulation job.
Restart the simulation job in the same host instance.
Stop the simulation job and terminate the instance.
The failure behavior the simulation job.
Restart the simulation job in the same host instance.
Stop the simulation job and terminate the instance.
Boolean indicating whether to use default simulation tool applications.
*/ inline bool GetUseDefaultApplications() const{ return m_useDefaultApplications; } /** *Boolean indicating whether to use default simulation tool applications.
*/ inline bool UseDefaultApplicationsHasBeenSet() const { return m_useDefaultApplicationsHasBeenSet; } /** *Boolean indicating whether to use default simulation tool applications.
*/ inline void SetUseDefaultApplications(bool value) { m_useDefaultApplicationsHasBeenSet = true; m_useDefaultApplications = value; } /** *Boolean indicating whether to use default simulation tool applications.
*/ inline SimulationJobRequest& WithUseDefaultApplications(bool value) { SetUseDefaultApplications(value); return *this;} /** *The robot applications to use in the simulation job.
*/ inline const Aws::VectorThe robot applications to use in the simulation job.
*/ inline bool RobotApplicationsHasBeenSet() const { return m_robotApplicationsHasBeenSet; } /** *The robot applications to use in the simulation job.
*/ inline void SetRobotApplications(const Aws::VectorThe robot applications to use in the simulation job.
*/ inline void SetRobotApplications(Aws::VectorThe robot applications to use in the simulation job.
*/ inline SimulationJobRequest& WithRobotApplications(const Aws::VectorThe robot applications to use in the simulation job.
*/ inline SimulationJobRequest& WithRobotApplications(Aws::VectorThe robot applications to use in the simulation job.
*/ inline SimulationJobRequest& AddRobotApplications(const RobotApplicationConfig& value) { m_robotApplicationsHasBeenSet = true; m_robotApplications.push_back(value); return *this; } /** *The robot applications to use in the simulation job.
*/ inline SimulationJobRequest& AddRobotApplications(RobotApplicationConfig&& value) { m_robotApplicationsHasBeenSet = true; m_robotApplications.push_back(std::move(value)); return *this; } /** *The simulation applications to use in the simulation job.
*/ inline const Aws::VectorThe simulation applications to use in the simulation job.
*/ inline bool SimulationApplicationsHasBeenSet() const { return m_simulationApplicationsHasBeenSet; } /** *The simulation applications to use in the simulation job.
*/ inline void SetSimulationApplications(const Aws::VectorThe simulation applications to use in the simulation job.
*/ inline void SetSimulationApplications(Aws::VectorThe simulation applications to use in the simulation job.
*/ inline SimulationJobRequest& WithSimulationApplications(const Aws::VectorThe simulation applications to use in the simulation job.
*/ inline SimulationJobRequest& WithSimulationApplications(Aws::VectorThe simulation applications to use in the simulation job.
*/ inline SimulationJobRequest& AddSimulationApplications(const SimulationApplicationConfig& value) { m_simulationApplicationsHasBeenSet = true; m_simulationApplications.push_back(value); return *this; } /** *The simulation applications to use in the simulation job.
*/ inline SimulationJobRequest& AddSimulationApplications(SimulationApplicationConfig&& value) { m_simulationApplicationsHasBeenSet = true; m_simulationApplications.push_back(std::move(value)); return *this; } /** *Specify data sources to mount read-only files from S3 into your simulation.
* These files are available under
* /opt/robomaker/datasources/data_source_name.
There
* is a limit of 100 files and a combined size of 25GB for all
* DataSourceConfig objects.
Specify data sources to mount read-only files from S3 into your simulation.
* These files are available under
* /opt/robomaker/datasources/data_source_name.
There
* is a limit of 100 files and a combined size of 25GB for all
* DataSourceConfig objects.
Specify data sources to mount read-only files from S3 into your simulation.
* These files are available under
* /opt/robomaker/datasources/data_source_name.
There
* is a limit of 100 files and a combined size of 25GB for all
* DataSourceConfig objects.
Specify data sources to mount read-only files from S3 into your simulation.
* These files are available under
* /opt/robomaker/datasources/data_source_name.
There
* is a limit of 100 files and a combined size of 25GB for all
* DataSourceConfig objects.
Specify data sources to mount read-only files from S3 into your simulation.
* These files are available under
* /opt/robomaker/datasources/data_source_name.
There
* is a limit of 100 files and a combined size of 25GB for all
* DataSourceConfig objects.
Specify data sources to mount read-only files from S3 into your simulation.
* These files are available under
* /opt/robomaker/datasources/data_source_name.
There
* is a limit of 100 files and a combined size of 25GB for all
* DataSourceConfig objects.
Specify data sources to mount read-only files from S3 into your simulation.
* These files are available under
* /opt/robomaker/datasources/data_source_name.
There
* is a limit of 100 files and a combined size of 25GB for all
* DataSourceConfig objects.
Specify data sources to mount read-only files from S3 into your simulation.
* These files are available under
* /opt/robomaker/datasources/data_source_name.
There
* is a limit of 100 files and a combined size of 25GB for all
* DataSourceConfig objects.
Compute information for the simulation job
*/ inline const Compute& GetCompute() const{ return m_compute; } /** *Compute information for the simulation job
*/ inline bool ComputeHasBeenSet() const { return m_computeHasBeenSet; } /** *Compute information for the simulation job
*/ inline void SetCompute(const Compute& value) { m_computeHasBeenSet = true; m_compute = value; } /** *Compute information for the simulation job
*/ inline void SetCompute(Compute&& value) { m_computeHasBeenSet = true; m_compute = std::move(value); } /** *Compute information for the simulation job
*/ inline SimulationJobRequest& WithCompute(const Compute& value) { SetCompute(value); return *this;} /** *Compute information for the simulation job
*/ inline SimulationJobRequest& WithCompute(Compute&& value) { SetCompute(std::move(value)); return *this;} /** *A map that contains tag keys and tag values that are attached to the * simulation job request.
*/ inline const Aws::MapA map that contains tag keys and tag values that are attached to the * simulation job request.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *A map that contains tag keys and tag values that are attached to the * simulation job request.
*/ inline void SetTags(const Aws::MapA map that contains tag keys and tag values that are attached to the * simulation job request.
*/ inline void SetTags(Aws::MapA map that contains tag keys and tag values that are attached to the * simulation job request.
*/ inline SimulationJobRequest& WithTags(const Aws::MapA map that contains tag keys and tag values that are attached to the * simulation job request.
*/ inline SimulationJobRequest& WithTags(Aws::MapA map that contains tag keys and tag values that are attached to the * simulation job request.
*/ inline SimulationJobRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *A map that contains tag keys and tag values that are attached to the * simulation job request.
*/ inline SimulationJobRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *A map that contains tag keys and tag values that are attached to the * simulation job request.
*/ inline SimulationJobRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *A map that contains tag keys and tag values that are attached to the * simulation job request.
*/ inline SimulationJobRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *A map that contains tag keys and tag values that are attached to the * simulation job request.
*/ inline SimulationJobRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *A map that contains tag keys and tag values that are attached to the * simulation job request.
*/ inline SimulationJobRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *A map that contains tag keys and tag values that are attached to the * simulation job request.
*/ inline SimulationJobRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } private: OutputLocation m_outputLocation; bool m_outputLocationHasBeenSet; LoggingConfig m_loggingConfig; bool m_loggingConfigHasBeenSet; long long m_maxJobDurationInSeconds; bool m_maxJobDurationInSecondsHasBeenSet; Aws::String m_iamRole; bool m_iamRoleHasBeenSet; FailureBehavior m_failureBehavior; bool m_failureBehaviorHasBeenSet; bool m_useDefaultApplications; bool m_useDefaultApplicationsHasBeenSet; Aws::Vector