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:
wpid return value from waitpid
status status value assigned by waitpid.

Definition at line 73 of file Process.cpp.

BLOCXX_NAMESPACE::Process::Status::Status ( int  rep1,
int  rep2,
Repr   
)
BLOCXX_NAMESPACE::Process::Status::Status (  ) 
Postcondition:
running() is true

Definition at line 138 of file Process.cpp.

Referenced by Status().


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 157 of file Process.cpp.

Referenced by Status().

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

Definition at line 152 of file Process.cpp.

Referenced by Status().

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

Get the result from waitpid().

Definition at line 162 of file Process.cpp.

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

Definition at line 189 of file Process.cpp.

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

Definition at line 142 of file Process.cpp.

Referenced by Status().

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

Definition at line 167 of file Process.cpp.

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

Definition at line 177 of file Process.cpp.

References m_status, and m_status_available.

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

Definition at line 182 of file Process.cpp.

References m_status, and m_status_available.

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

Definition at line 147 of file Process.cpp.

Referenced by BLOCXX_NAMESPACE::Process::err(), and Status().

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

Definition at line 195 of file Process.cpp.

References m_status, and m_status_available.

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

Definition at line 172 of file Process.cpp.

References m_status_available.

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

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

Definition at line 200 of file Process.cpp.

References m_status.


Member Data Documentation

Definition at line 199 of file Process.hpp.

Referenced by Status(), stopped(), stopSignal(), terminatedSuccessfully(), and toString().

Definition at line 198 of file Process.hpp.

Referenced by stopped(), stopSignal(), terminatedSuccessfully(), and termSignal().


The documentation for this class was generated from the following files:
Generated on Mon Jul 5 19:59:47 2010 for blocxx by  doxygen 1.6.3