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. |
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.
void DcmQueryRetrieveProcessTable::addProcessToTable | ( | int | pid, | |
T_ASC_Association * | assoc | |||
) |
adds a new child process to the process table.
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
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
pid | process ID |