IProcess Class Reference

Space-ng SDK: sol3::integration::IProcess Class Reference
Space-ng SDK
sol3::integration::IProcess Class Referenceabstract

#include <sol3/integration/process.h>

Public Member Functions

virtual ~IProcess ()=default
 
virtual void terminate (int signal_num)=0
 
virtual bool waitFor (std::chrono::milliseconds timeout)=0
 
virtual std::string output () const =0
 Snapshot of the combined stdout/stderr output collected so far. More...
 
virtual long long pid () const =0
 Platform-agnostic process id. Returns -1 if not applicable. More...
 
virtual int exitCode () const =0
 

Detailed Description

Process for shelling out programs for testing, capturing output sending termination signals, and checking error codes.

Constructor & Destructor Documentation

◆ ~IProcess()

virtual sol3::integration::IProcess::~IProcess ( )
virtualdefault

Member Function Documentation

◆ exitCode()

virtual int sol3::integration::IProcess::exitCode ( ) const
pure virtual

Exit code if the process has exited; returns -1 if unknown or still running.

◆ output()

virtual std::string sol3::integration::IProcess::output ( ) const
pure virtual

Snapshot of the combined stdout/stderr output collected so far.

◆ pid()

virtual long long sol3::integration::IProcess::pid ( ) const
pure virtual

Platform-agnostic process id. Returns -1 if not applicable.

◆ terminate()

virtual void sol3::integration::IProcess::terminate ( int  signal_num)
pure virtual

Send a signal to the process (POSIX). On non-POSIX platforms this may be a no-op or emulate termination.

◆ waitFor()

virtual bool sol3::integration::IProcess::waitFor ( std::chrono::milliseconds  timeout)
pure virtual

Wait until the process exits or the timeout elapses. Returns true if the process exited.


The documentation for this class was generated from the following file:
  • /workspaces/astro/sol3-sdk/cpp/sol3/integration/process.h