/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A set of instructions for launching server processes on each instance in a
* fleet. Server processes run either a custom game build executable or a Realtime
* Servers script. Each instruction set identifies the location of the custom game
* build executable or Realtime launch script, optional launch parameters, and the
* number of server processes with this configuration to maintain concurrently on
* the instance. Server process configurations make up a fleet's
* RuntimeConfiguration .See Also:
AWS
* API Reference
The location of the server executable in a custom game build or the name of
* the Realtime script file that contains the Init() function. Game
* builds and Realtime scripts are installed on instances at the root:
Windows (for custom game builds only): C:\game. Example:
* "C:\game\MyGame\server.exe"
Linux:
* /local/game. Examples: "/local/game/MyGame/server.exe"
* or "/local/game/MyRealtimeScript.js"
The location of the server executable in a custom game build or the name of
* the Realtime script file that contains the Init() function. Game
* builds and Realtime scripts are installed on instances at the root:
Windows (for custom game builds only): C:\game. Example:
* "C:\game\MyGame\server.exe"
Linux:
* /local/game. Examples: "/local/game/MyGame/server.exe"
* or "/local/game/MyRealtimeScript.js"
The location of the server executable in a custom game build or the name of
* the Realtime script file that contains the Init() function. Game
* builds and Realtime scripts are installed on instances at the root:
Windows (for custom game builds only): C:\game. Example:
* "C:\game\MyGame\server.exe"
Linux:
* /local/game. Examples: "/local/game/MyGame/server.exe"
* or "/local/game/MyRealtimeScript.js"
The location of the server executable in a custom game build or the name of
* the Realtime script file that contains the Init() function. Game
* builds and Realtime scripts are installed on instances at the root:
Windows (for custom game builds only): C:\game. Example:
* "C:\game\MyGame\server.exe"
Linux:
* /local/game. Examples: "/local/game/MyGame/server.exe"
* or "/local/game/MyRealtimeScript.js"
The location of the server executable in a custom game build or the name of
* the Realtime script file that contains the Init() function. Game
* builds and Realtime scripts are installed on instances at the root:
Windows (for custom game builds only): C:\game. Example:
* "C:\game\MyGame\server.exe"
Linux:
* /local/game. Examples: "/local/game/MyGame/server.exe"
* or "/local/game/MyRealtimeScript.js"
The location of the server executable in a custom game build or the name of
* the Realtime script file that contains the Init() function. Game
* builds and Realtime scripts are installed on instances at the root:
Windows (for custom game builds only): C:\game. Example:
* "C:\game\MyGame\server.exe"
Linux:
* /local/game. Examples: "/local/game/MyGame/server.exe"
* or "/local/game/MyRealtimeScript.js"
The location of the server executable in a custom game build or the name of
* the Realtime script file that contains the Init() function. Game
* builds and Realtime scripts are installed on instances at the root:
Windows (for custom game builds only): C:\game. Example:
* "C:\game\MyGame\server.exe"
Linux:
* /local/game. Examples: "/local/game/MyGame/server.exe"
* or "/local/game/MyRealtimeScript.js"
The location of the server executable in a custom game build or the name of
* the Realtime script file that contains the Init() function. Game
* builds and Realtime scripts are installed on instances at the root:
Windows (for custom game builds only): C:\game. Example:
* "C:\game\MyGame\server.exe"
Linux:
* /local/game. Examples: "/local/game/MyGame/server.exe"
* or "/local/game/MyRealtimeScript.js"
An optional list of parameters to pass to the server executable or Realtime * script on launch.
*/ inline const Aws::String& GetParameters() const{ return m_parameters; } /** *An optional list of parameters to pass to the server executable or Realtime * script on launch.
*/ inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; } /** *An optional list of parameters to pass to the server executable or Realtime * script on launch.
*/ inline void SetParameters(const Aws::String& value) { m_parametersHasBeenSet = true; m_parameters = value; } /** *An optional list of parameters to pass to the server executable or Realtime * script on launch.
*/ inline void SetParameters(Aws::String&& value) { m_parametersHasBeenSet = true; m_parameters = std::move(value); } /** *An optional list of parameters to pass to the server executable or Realtime * script on launch.
*/ inline void SetParameters(const char* value) { m_parametersHasBeenSet = true; m_parameters.assign(value); } /** *An optional list of parameters to pass to the server executable or Realtime * script on launch.
*/ inline ServerProcess& WithParameters(const Aws::String& value) { SetParameters(value); return *this;} /** *An optional list of parameters to pass to the server executable or Realtime * script on launch.
*/ inline ServerProcess& WithParameters(Aws::String&& value) { SetParameters(std::move(value)); return *this;} /** *An optional list of parameters to pass to the server executable or Realtime * script on launch.
*/ inline ServerProcess& WithParameters(const char* value) { SetParameters(value); return *this;} /** *The number of server processes that use this configuration to run * concurrently on an instance.
*/ inline int GetConcurrentExecutions() const{ return m_concurrentExecutions; } /** *The number of server processes that use this configuration to run * concurrently on an instance.
*/ inline bool ConcurrentExecutionsHasBeenSet() const { return m_concurrentExecutionsHasBeenSet; } /** *The number of server processes that use this configuration to run * concurrently on an instance.
*/ inline void SetConcurrentExecutions(int value) { m_concurrentExecutionsHasBeenSet = true; m_concurrentExecutions = value; } /** *The number of server processes that use this configuration to run * concurrently on an instance.
*/ inline ServerProcess& WithConcurrentExecutions(int value) { SetConcurrentExecutions(value); return *this;} private: Aws::String m_launchPath; bool m_launchPathHasBeenSet; Aws::String m_parameters; bool m_parametersHasBeenSet; int m_concurrentExecutions; bool m_concurrentExecutionsHasBeenSet; }; } // namespace Model } // namespace GameLift } // namespace Aws