ProcLib 0.0.1.0
A cross-platform process runner.
Loading...
Searching...
No Matches
Public Member Functions | List of all members
pl::Process Class Reference

Forward declaration. More...

#include <process.hxx>

Public Member Functions

 Process ()
 Constructor.
 
 ~Process ()
 Destructor.
 
 Process (Process const &)=delete
 Delete copy operation.
 
Processoperator= (Process const &)=delete
 Delete copy operation.
 
 Process (Process &&)=delete
 Delete copy operation.
 
Processoperator= (Process &&)=delete
 Delete copy operation.
 
auto start (std::filesystem::path const &executablePath, std::vector< std::string > const &arguments) -> std::error_code
 
auto terminate () -> std::error_code
 
auto kill (uint32_t const exitCode=1) -> std::error_code
 
auto wait () -> ProcessResult
 

Detailed Description

Forward declaration.

Represents a platform-independent process.

Constructor & Destructor Documentation

◆ Process() [1/3]

pl::Process::Process ( )

Constructor.

◆ ~Process()

pl::Process::~Process ( )

Destructor.

◆ Process() [2/3]

pl::Process::Process ( Process const &  )
delete

Delete copy operation.

◆ Process() [3/3]

pl::Process::Process ( Process &&  )
delete

Delete copy operation.

Member Function Documentation

◆ kill()

auto pl::Process::kill ( uint32_t const  exitCode = 1) -> std::error_code

Stop the process immediately, without giving it a chance to shut down cleanly (e.g. SIGKILL on POSIX, TerminateProcess on Windows).

Parameters
exitCodeThe exit code to report for the process. Only honored on platforms where the OS lets the caller dictate it (e.g. Windows); ignored elsewhere (e.g. POSIX signals carry no exit code).
Returns
An error code, if any.

◆ operator=() [1/2]

Process & pl::Process::operator= ( Process &&  )
delete

Delete copy operation.

◆ operator=() [2/2]

Process & pl::Process::operator= ( Process const &  )
delete

Delete copy operation.

◆ start()

auto pl::Process::start ( std::filesystem::path const &  executablePath,
std::vector< std::string > const &  arguments 
) -> std::error_code

Start the process.

Parameters
executablePathFully qualified path of the exectuable to run.
argumentsThe arguments to launch the process with.
Returns
An error code, if any.

◆ terminate()

auto pl::Process::terminate ( ) -> std::error_code

Ask the process to stop gracefully, giving it a chance to shut down cleanly (e.g. SIGTERM on POSIX). On platforms with no such mechanism (e.g. Windows), this behaves the same as kill().

Returns
An error code, if any.

◆ wait()

auto pl::Process::wait ( ) -> ProcessResult

Wait for the process to complete.

Returns
The outcome of the process.

The documentation for this class was generated from the following file: