AuroraRuntime/Include/Aurora/Processes/StartupParmaters.hpp

58 lines
1.3 KiB
C++

/***
Copyright (C) 2022 J Reece Wilson (a/k/a "Reece"). All rights reserved.
File: StartupParmaters.hpp
Date: 2022-1-29
Author: Reece
***/
#pragma once
namespace Aurora::Processes
{
struct StartupParmaters
{
AU_COPY_MOVE_DEF(StartupParmaters);
/**
* @brief Relative or absolute path to the executable binary
*/
AuString process;
/**
* @brief Raw arguments (argv[1]...)
*/
AuList<AuString> args;
/**
* @brief Child possession type
*/
enum ESpawnType type;
/**
* @brief Specifies the stdout handle of the child process
*/
EStreamForward fwdOut {};
/**
* @brief Specifies the stderr handle of the child process
*/
EStreamForward fwdErr {};
/**
* @brief Specifies the stdin handle of the child process
*/
EStreamForward fwdIn {};
/**
* @brief Under Windows Console subsystem applications, this hides the conhost.
*/
bool bNoShowConsole {};
/**
* @brief Starts the process in a resumable suspension mode
*/
bool bInDebugMode {};
AuOptional<AuString> workingDirectory;
};
}