00001 /* 00002 * 00003 * Copyright (C) 1993-2010, OFFIS e.V. 00004 * All rights reserved. See COPYRIGHT file for details. 00005 * 00006 * This software and supporting documentation were developed by 00007 * 00008 * OFFIS e.V. 00009 * R&D Division Health 00010 * Escherweg 2 00011 * D-26121 Oldenburg, Germany 00012 * 00013 * 00014 * Module: dcmqrdb 00015 * 00016 * Author: Marco Eichelberg 00017 * 00018 * Purpose: class DcmQueryRetrieveProcessTable 00019 * 00020 * Last Update: $Author: joergr $ 00021 * Update Date: $Date: 2010-10-14 13:16:41 $ 00022 * CVS/RCS Revision: $Revision: 1.5 $ 00023 * Status: $State: Exp $ 00024 * 00025 * CVS/RCS Log at end of file 00026 * 00027 */ 00028 00029 #ifndef DCMQRPTB_H 00030 #define DCMQRPTB_H 00031 00032 #include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */ 00033 #include "dcmtk/ofstd/oftypes.h" 00034 #include "dcmtk/ofstd/ofstring.h" 00035 #include "dcmtk/dcmnet/assoc.h" 00036 00037 #define INCLUDE_CTIME 00038 #include "dcmtk/ofstd/ofstdinc.h" 00039 00040 BEGIN_EXTERN_C 00041 #ifdef HAVE_SYS_TIME_H 00042 #include <sys/time.h> 00043 #endif 00044 END_EXTERN_C 00045 00046 00047 class DcmQueryRetrieveProcessSlot; 00048 00049 00054 class DcmQueryRetrieveProcessTable 00055 { 00056 public: 00058 DcmQueryRetrieveProcessTable() { } 00059 00061 virtual ~DcmQueryRetrieveProcessTable(); 00062 00067 void addProcessToTable(int pid, T_ASC_Association * assoc); 00068 00072 size_t countChildProcesses() const 00073 { 00074 return table_.size(); 00075 } 00076 00081 void cleanChildren(); 00082 00088 OFBool haveProcessWithWriteAccess(const char *calledAETitle) const; 00089 00090 private: 00091 00095 void removeProcessFromTable(int pid); 00096 00098 OFList<DcmQueryRetrieveProcessSlot *> table_; 00099 }; 00100 00101 00102 #endif 00103 00104 /* 00105 * CVS Log 00106 * $Log: dcmqrptb.h,v $ 00107 * Revision 1.5 2010-10-14 13:16:41 joergr 00108 * Updated copyright header. Added reference to COPYRIGHT file. 00109 * 00110 * Revision 1.4 2009-11-24 10:10:42 uli 00111 * Switched to logging mechanism provided by the "new" oflog module. 00112 * 00113 * Revision 1.3 2009-08-21 09:50:07 joergr 00114 * Replaced tabs by spaces and updated copyright date. 00115 * 00116 * Revision 1.2 2005/12/08 16:04:26 meichel 00117 * Changed include path schema for all DCMTK header files 00118 * 00119 * Revision 1.1 2005/03/30 13:34:50 meichel 00120 * Initial release of module dcmqrdb that will replace module imagectn. 00121 * It provides a clear interface between the Q/R DICOM front-end and the 00122 * database back-end. The imagectn code has been re-factored into a minimal 00123 * class structure. 00124 * 00125 * 00126 */