dcmqropt.h

00001 /*
00002  *
00003  *  Copyright (C) 1993-2005, OFFIS
00004  *
00005  *  This software and supporting documentation were developed by
00006  *
00007  *    Kuratorium OFFIS e.V.
00008  *    Healthcare Information and Communication Systems
00009  *    Escherweg 2
00010  *    D-26121 Oldenburg, Germany
00011  *
00012  *  THIS SOFTWARE IS MADE AVAILABLE,  AS IS,  AND OFFIS MAKES NO  WARRANTY
00013  *  REGARDING  THE  SOFTWARE,  ITS  PERFORMANCE,  ITS  MERCHANTABILITY  OR
00014  *  FITNESS FOR ANY PARTICULAR USE, FREEDOM FROM ANY COMPUTER DISEASES  OR
00015  *  ITS CONFORMITY TO ANY SPECIFICATION. THE ENTIRE RISK AS TO QUALITY AND
00016  *  PERFORMANCE OF THE SOFTWARE IS WITH THE USER.
00017  *
00018  *  Module:  dcmqrdb
00019  *
00020  *  Author:  Andrew Hewett
00021  *
00022  *  Purpose: class DcmQueryRetrieveOptions
00023  *
00024  *  Last Update:      $Author: meichel $
00025  *  Update Date:      $Date: 2005/12/08 16:04:25 $
00026  *  Source File:      $Source: /share/dicom/cvs-depot/dcmtk/dcmqrdb/include/dcmtk/dcmqrdb/dcmqropt.h,v $
00027  *  CVS/RCS Revision: $Revision: 1.5 $
00028  *  Status:           $State: Exp $
00029  *
00030  *  CVS/RCS Log at end of file
00031  *
00032  */
00033 
00034 #ifndef DCMQROPT_H
00035 #define DCMQROPT_H
00036 
00037 #include "dcmtk/config/osconfig.h"    /* make sure OS specific configuration is included first */
00038 
00039 #include "dcmtk/dcmdata/dcxfer.h"
00040 #include "dcmtk/dcmnet/dicom.h"
00041 #include "dcmtk/dcmnet/cond.h"
00042 #include "dcmtk/dcmnet/assoc.h"
00043 #include "dcmtk/dcmqrdb/dcmqrcnf.h"
00044 #include "dcmtk/ofstd/ofconapp.h"
00045 #include "dcmtk/dcmnet/dimse.h"
00046 
00048 extern const OFCondition APP_INVALIDPEER;
00049 
00053 class DcmQueryRetrieveOptions
00054 {
00055 public:  
00057   DcmQueryRetrieveOptions();
00058 
00060   ~DcmQueryRetrieveOptions();
00061 
00063   static void errmsg(const char* msg, ...);
00064 
00065   // these member variables should be private but are public for now
00066 
00068   OFBool            allowShutdown_;
00069 
00071   OFBool            bitPreserving_;
00072 
00074   OFBool                correctUIDPadding_;
00075 
00077   OFBool            debug_;
00078 
00080   OFBool            disableGetSupport_;
00081 
00083   OFCmdUnsignedInt      filepad_;
00084 
00086   E_GrpLenEncoding      groupLength_;
00087 
00089   OFBool            ignoreStoreData_;
00090 
00092   OFCmdUnsignedInt      itempad_; 
00093 
00095   int               maxAssociations_;
00096 
00098   OFCmdUnsignedInt      maxPDU_;
00099 
00101   T_ASC_Network *   net_;
00102 
00104   E_TransferSyntax      networkTransferSyntax_;
00105 
00106 #ifndef DISABLE_COMPRESSION_EXTENSION
00107 
00108   E_TransferSyntax      networkTransferSyntaxOut_;
00109 #endif
00110 
00112   E_PaddingEncoding     paddingType_;
00113 
00114   /* refuse storage presentation contexts in incoming associations
00115    * if a storage presentation context for the application entity already exists
00116    */
00117   OFBool            refuseMultipleStorageAssociations_;
00118 
00120   OFBool            refuse_;
00121 
00123   OFBool            rejectWhenNoImplementationClassUID_;
00124 
00126   OFBool            requireFindForMove_;
00127 
00129   OFBool            restrictMoveToSameAE_;
00130 
00132   OFBool            restrictMoveToSameHost_;
00133 
00135   OFBool            restrictMoveToSameVendor_;
00136 
00138   E_EncodingType        sequenceType_;
00139 
00141   OFBool            singleProcess_;
00142 
00144   OFBool            supportPatientRoot_;
00145 
00147   OFBool            supportPatientStudyOnly_;
00148 
00150   OFBool            supportStudyRoot_;
00151 
00153   OFBool            useMetaheader_;
00154 
00159   OFBool                keepDBHandleDuringAssociation_;
00160 
00162   int               verbose_;
00163 
00165   E_TransferSyntax      writeTransferSyntax_;
00166   
00168   T_DIMSE_BlockingMode blockMode_;
00169 
00171   int dimse_timeout_;
00172 
00174   int acse_timeout_;
00175   
00176 };                  
00177 
00178 
00179 #endif
00180 
00181 /*
00182  * CVS Log
00183  * $Log: dcmqropt.h,v $
00184  * Revision 1.5  2005/12/08 16:04:25  meichel
00185  * Changed include path schema for all DCMTK header files
00186  *
00187  * Revision 1.4  2005/11/29 11:27:18  meichel
00188  * Added new flag keepDBHandleDuringAssociation_ which allows to determine
00189  *   whether a DB handle is kept open for a complete association or a single
00190  *   DIMSE message only. Also improved error handling of file locking.
00191  *
00192  * Revision 1.3  2005/11/29 10:54:54  meichel
00193  * Added minimal support for compressed transfer syntaxes to dcmqrscp.
00194  *   No on-the-fly decompression is performed, but compressed images can
00195  *   be stored and retrieved.
00196  *
00197  * Revision 1.2  2005/11/17 13:44:37  meichel
00198  * Added command line options for DIMSE and ACSE timeouts
00199  *
00200  * Revision 1.1  2005/03/30 13:34:50  meichel
00201  * Initial release of module dcmqrdb that will replace module imagectn.
00202  *   It provides a clear interface between the Q/R DICOM front-end and the
00203  *   database back-end. The imagectn code has been re-factored into a minimal
00204  *   class structure.
00205  *
00206  *
00207  */


Generated on 20 Dec 2005 for OFFIS DCMTK Version 3.5.4 by Doxygen 1.4.5