00001 /* 00002 * 00003 * Copyright (C) 2002-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: dcmdata 00019 * 00020 * Author: Marco Eichelberg 00021 * 00022 * Purpose: singleton class that registers RLE decoder. 00023 * 00024 * Last Update: $Author: meichel $ 00025 * Update Date: $Date: 2005/12/08 16:28:37 $ 00026 * CVS/RCS Revision: $Revision: 1.6 $ 00027 * Status: $State: Exp $ 00028 * 00029 * CVS/RCS Log at end of file 00030 * 00031 */ 00032 00033 #ifndef DCRLEDRG_H 00034 #define DCRLEDRG_H 00035 00036 #include "dcmtk/config/osconfig.h" 00037 #include "dcmtk/ofstd/oftypes.h" /* for OFBool */ 00038 00039 class DcmRLECodecParameter; 00040 class DcmRLECodecDecoder; 00041 00044 class DcmRLEDecoderRegistration 00045 { 00046 public: 00057 static void registerCodecs( 00058 OFBool pCreateSOPInstanceUID = OFFalse, 00059 OFBool pVerbose = OFFalse, 00060 OFBool pReverseDecompressionByteOrder = OFFalse); 00061 00067 static void cleanup(); 00068 00069 private: 00070 00072 DcmRLEDecoderRegistration(const DcmRLEDecoderRegistration&); 00073 00075 DcmRLEDecoderRegistration& operator=(const DcmRLEDecoderRegistration&); 00076 00078 static OFBool registered; 00079 00081 static DcmRLECodecParameter *cp; 00082 00084 static DcmRLECodecDecoder *codec; 00085 00086 // dummy friend declaration to prevent gcc from complaining 00087 // that this class only defines private constructors and has no friends. 00088 friend class DcmRLEDecoderRegistrationDummyFriend; 00089 00090 }; 00091 00092 #endif 00093 00094 /* 00095 * CVS/RCS Log 00096 * $Log: dcrledrg.h,v $ 00097 * Revision 1.6 2005/12/08 16:28:37 meichel 00098 * Changed include path schema for all DCMTK header files 00099 * 00100 * Revision 1.5 2005/07/26 17:08:33 meichel 00101 * Added option to RLE decoder that allows to correctly decode images with 00102 * incorrect byte order of byte segments (LSB instead of MSB). 00103 * 00104 * Revision 1.4 2004/02/04 16:00:22 joergr 00105 * Added CVS log entry at the end of the file. 00106 * 00107 * 00108 */