blocxx
Classes | Public Member Functions | Private Attributes

BLOCXX_NAMESPACE::Process::Status Class Reference

Portable process status. More...

#include <Process.hpp>

List of all members.

Classes

struct  Repr

Public Member Functions

 Status (ProcId wpid, int status)
 Status (int rep1, int rep2, Repr)
 Status ()
bool running () const
bool exitTerminated () const
int exitStatus () const
bool terminatedSuccessfully () const
bool signalTerminated () const
bool terminated () const
int termSignal () const
bool stopped () const
int stopSignal () const
String toString () const
 Get a string representation of the status suitable for debugging or logging.
int getPOSIXwaitpidStatus () const
 Get the result from waitpid()
void repr (int &rep1, int &rep2) const

Private Attributes

bool m_status_available
int m_status

Detailed Description

Portable process status.

Definition at line 122 of file Process.hpp.


Constructor & Destructor Documentation

BLOCXX_NAMESPACE::Process::Status::Status ( ProcId  wpid,
int  status 
)
Invariant:
Exactly one of running(), stopped() and terminated() is true.
Parameters:
wpidreturn value from waitpid
statusstatus value assigned by waitpid.

Definition at line 104 of file Process.cpp.

BLOCXX_NAMESPACE::Process::Status::Status ( int  rep1,
int  rep2,
Repr   
)
Precondition:
rep1 and were obtained by a prior call to repr() on some Status object.

Definition at line 110 of file Process.cpp.

BLOCXX_NAMESPACE::Process::Status::Status ( )
Postcondition:
running() is true

Definition at line 169 of file Process.cpp.


Member Function Documentation

int BLOCXX_NAMESPACE::Process::Status::exitStatus ( ) const
Precondition:
exitTerminated()
Returns:
exit status of process, as passed to exit() or returned from main().

Definition at line 188 of file Process.cpp.

bool BLOCXX_NAMESPACE::Process::Status::exitTerminated ( ) const
Returns:
Has the process terminated normally?

Definition at line 183 of file Process.cpp.

int BLOCXX_NAMESPACE::Process::Status::getPOSIXwaitpidStatus ( ) const

Get the result from waitpid()

Definition at line 193 of file Process.cpp.

void BLOCXX_NAMESPACE::Process::Status::repr ( int &  rep1,
int &  rep2 
) const

Definition at line 220 of file Process.cpp.

bool BLOCXX_NAMESPACE::Process::Status::running ( ) const
Returns:
Is the process still running?

Definition at line 173 of file Process.cpp.

bool BLOCXX_NAMESPACE::Process::Status::signalTerminated ( ) const
Returns:
Has the process terminated because of an uncaught signal?

Definition at line 198 of file Process.cpp.

bool BLOCXX_NAMESPACE::Process::Status::stopped ( ) const
Returns:
Has the process stopped?

Definition at line 208 of file Process.cpp.

int BLOCXX_NAMESPACE::Process::Status::stopSignal ( ) const
Precondition:
stopped()
Returns:
signal that caused the child to stop

Definition at line 213 of file Process.cpp.

bool BLOCXX_NAMESPACE::Process::Status::terminated ( ) const
Returns:
Has the process terminated?

Definition at line 178 of file Process.cpp.

Referenced by BLOCXX_NAMESPACE::Process::waitCloseTerm().

bool BLOCXX_NAMESPACE::Process::Status::terminatedSuccessfully ( ) const
Returns:
exitTerminated() && exitStatus() == 0

Definition at line 226 of file Process.cpp.

int BLOCXX_NAMESPACE::Process::Status::termSignal ( ) const
Precondition:
signalTerminated()
Returns:
signal that caused the process to terminate.

Definition at line 203 of file Process.cpp.

String BLOCXX_NAMESPACE::Process::Status::toString ( ) const

Get a string representation of the status suitable for debugging or logging.

Definition at line 231 of file Process.cpp.


Member Data Documentation

Definition at line 199 of file Process.hpp.

Definition at line 198 of file Process.hpp.


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