ALib C++ Library
Library Version: 2412 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
ProcessInfo Class Reference

Description:

This class represents process information.

Definition at line 21 of file processinfo.hpp.

#include <processinfo.hpp>

Collaboration diagram for ProcessInfo:
[legend]

Public Static Method Index:

static ALIB_API const ProcessInfoCurrent ()
 

Public Field Index:

AString CmdLine
 The command line which invoked this process.
 
AString ConsoleTitle
 For console processes, this is the title displayed in the title bar. (Windows OS only.)
 
AString ExecFileName
 
AString ExecFilePath
 The path of the executable (if available to us).
 
AString Name
 
uinteger PID
 The process id as AString.
 
uinteger PPID
 The parent's process id as AString. (Unix like OS / Mac OS only.)
 
AString Stat
 The contents of /proc/PID/stat file. (Unix like OS only.)
 
AString StatPGRP
 The process group field (4) within Stat. (Unix like OS only.)
 
AString StatState
 The state field (2) within Stat. (Unix like OS only.)
 

Public Method Index:

 ProcessInfo (uinteger processID)
 
ALIB_API bool Get (uinteger processID)
 

Protected Static Field Index:

static ALIB_API ProcessInfo current
 

Protected Method Index:

 ProcessInfo ()
 Default constructor to create an empty instance.
 
ALIB_API bool get (uinteger PID)
 
bool getStatField (int fieldNo, AString &target)
 

Field Details:

◆ CmdLine

AString CmdLine

The command line which invoked this process.

Definition at line 36 of file processinfo.hpp.

◆ ConsoleTitle

AString ConsoleTitle

For console processes, this is the title displayed in the title bar. (Windows OS only.)

Definition at line 82 of file processinfo.hpp.

◆ current

ProcessInfo current
staticprotected

Information on the current process. This is initialized once, with the first invocation of Current.

Definition at line 29 of file processinfo.hpp.

◆ ExecFileName

AString ExecFileName

The file name of the executable (excluding ExecFilePath). Under GNU/Linux, if we have no access to read that value, field ExecFilePath will be empty while this field is filled with Name.

Definition at line 48 of file processinfo.hpp.

◆ ExecFilePath

AString ExecFilePath

The path of the executable (if available to us).

Definition at line 43 of file processinfo.hpp.

◆ Name

AString Name

The name of the process.
Under GNU/Linux this is read from /proc/nnn/stat and may differ from ExecFileName. Under Windows OS, it is he same as field ExecFileName.

Definition at line 40 of file processinfo.hpp.

◆ PID

uinteger PID

The process id as AString.

Definition at line 33 of file processinfo.hpp.

◆ PPID

uinteger PPID

The parent's process id as AString. (Unix like OS / Mac OS only.)

Definition at line 56 of file processinfo.hpp.

◆ Stat

AString Stat

The contents of /proc/PID/stat file. (Unix like OS only.)

Definition at line 59 of file processinfo.hpp.

◆ StatPGRP

AString StatPGRP

The process group field (4) within Stat. (Unix like OS only.)

Definition at line 65 of file processinfo.hpp.

◆ StatState

AString StatState

The state field (2) within Stat. (Unix like OS only.)

Definition at line 62 of file processinfo.hpp.

Constructor(s) / Destructor Details:

◆ ProcessInfo() [1/2]

ProcessInfo ( )
inlineprotected

Default constructor to create an empty instance.

Definition at line 93 of file processinfo.hpp.

◆ ProcessInfo() [2/2]

ProcessInfo ( uinteger processID)
inline

Constructor that initializes this instance according to the process information received from the system.

Note
This method is implemented for Unix like OS (incl. Mac OS) only. On Windows OS, only information about the current process can be received using static method Current.
Parameters
processIDThe ID of the process information is requested on. If a nulled string is provided, the current process is addressed.

Definition at line 134 of file processinfo.hpp.

Here is the call graph for this function:

Method Details:

◆ Current()

const ProcessInfo & Current ( )
static

Static method that receives information on the current process.

Returns
A constant reference to a ProcessInfo object representing the current process.

Definition at line 38 of file processinfo.cpp.

Here is the call graph for this function:

◆ Get()

ALIB_API bool Get ( uinteger processID)
inline

Fills the fields of this instance according to the process information received from the system.

Note
This method is implemented for Unix like OS (incl. Mac OS) only. On Windows OS, only information about the current process can be received using static method Current.
Parameters
processIDThe ID of the process information is requested on. If a nulled string is provided, the current process is addressed.
Returns
true on success, false otherwise.

Definition at line 151 of file processinfo.hpp.

Here is the call graph for this function:

◆ get()

bool get ( uinteger PID)
protected

Internal get() method with different platform implementations.

Parameters
PIDThe ID of the process information is requested on. If a nulled string is provided, the current process is addressed.
Returns
true on success, false otherwise.

Definition at line 195 of file processinfo.cpp.

Here is the call graph for this function:

◆ getStatField()

bool getStatField ( int fieldNo,
AString & target )
protected

Reads a field from the data found in /proc/PID/stat.

Parameters
fieldNoThe field number to read
targetThe variable to store the result in
Returns
true if successful.

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