DcmQueryRetrieveProcessTable Class Reference

this class maintains a table of client processes. More...

List of all members.

Public Member Functions

 DcmQueryRetrieveProcessTable ()
 default constructor
virtual ~DcmQueryRetrieveProcessTable ()
 destructor
void addProcessToTable (int pid, T_ASC_Association *assoc)
 adds a new child process to the process table.
size_t countChildProcesses () const
 returns the number of child processes in the table
void cleanChildren ()
 check if child processes have terminated and, if yes, remove them from the process table.
OFBool haveProcessWithWriteAccess (const char *calledAETitle) const
 check if we have a child process that has write access to the given aetitle.

Private Member Functions

void removeProcessFromTable (int pid)
 remove the process with the given process ID from the table

Private Attributes

OFList< DcmQueryRetrieveProcessSlot * > table_
 the list of process entries maintained by this object.


Detailed Description

this class maintains a table of client processes.

For each client process, certain key parameters such as the peer hostname, AE titles, read/write access are stored along with the process ID.

Definition at line 54 of file dcmqrptb.h.


Member Function Documentation

void DcmQueryRetrieveProcessTable::addProcessToTable ( int  pid,
T_ASC_Association assoc 
)

adds a new child process to the process table.

Parameters:
pid process ID of the child process
assoc peer hostname and AEtitles are read from this object

size_t DcmQueryRetrieveProcessTable::countChildProcesses (  )  const [inline]

returns the number of child processes in the table

Returns:
number of child processes

Definition at line 72 of file dcmqrptb.h.

References OFList< T >::size(), and table_.

void DcmQueryRetrieveProcessTable::cleanChildren (  ) 

check if child processes have terminated and, if yes, remove them from the process table.

This method should be called regularly.

OFBool DcmQueryRetrieveProcessTable::haveProcessWithWriteAccess ( const char *  calledAETitle  )  const

check if we have a child process that has write access to the given aetitle.

Used to enforce an ad-hoc rule that allows only one parallel association to negotiate storage presentation contexts for each storage area (aetitle)

void DcmQueryRetrieveProcessTable::removeProcessFromTable ( int  pid  )  [private]

remove the process with the given process ID from the table

Parameters:
pid process ID


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


Generated on 6 Jan 2011 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.5.1