dcrlecp.h

00001 /*
00002  *
00003  *  Copyright (C) 1994-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: codec parameter for RLE
00023  *
00024  *  Last Update:      $Author: meichel $
00025  *  Update Date:      $Date: 2005/12/08 16:28:35 $
00026  *  Source File:      $Source: /share/dicom/cvs-depot/dcmtk/dcmdata/include/dcmtk/dcmdata/dcrlecp.h,v $
00027  *  CVS/RCS Revision: $Revision: 1.3 $
00028  *  Status:           $State: Exp $
00029  *
00030  *  CVS/RCS Log at end of file
00031  *
00032  */
00033 
00034 #ifndef DCRLECP_H
00035 #define DCRLECP_H
00036 
00037 #include "dcmtk/config/osconfig.h"
00038 #include "dcmtk/dcmdata/dccodec.h" /* for DcmCodecParameter */
00039 
00042 class DcmRLECodecParameter: public DcmCodecParameter
00043 {
00044 public:
00045 
00058   DcmRLECodecParameter(
00059     OFBool pVerbose = OFFalse,
00060     OFBool pCreateSOPInstanceUID = OFFalse,
00061     Uint32 pFragmentSize = 0,
00062     OFBool pCreateOffsetTable = OFTrue,
00063     OFBool pConvertToSC = OFFalse,
00064     OFBool pReverseDecompressionByteOrder = OFFalse);
00065 
00067   DcmRLECodecParameter(const DcmRLECodecParameter& arg);
00068 
00070   virtual ~DcmRLECodecParameter();
00071 
00076   virtual DcmCodecParameter *clone() const;
00077 
00081   virtual const char *className() const;
00082 
00086   Uint32 getFragmentSize() const
00087   {
00088     return fragmentSize;
00089   }
00090 
00094   OFBool getCreateOffsetTable() const
00095   {
00096     return createOffsetTable;
00097   }
00098 
00102   OFBool getConvertToSC() const
00103   {
00104     return convertToSC;
00105   }
00106 
00110   OFBool getUIDCreation() const
00111   {
00112     return createInstanceUID;
00113   }
00114 
00118   OFBool isVerbose() const
00119   {
00120     return verboseMode;
00121   }
00122 
00126   OFBool getReverseDecompressionByteOrder() const
00127   {
00128     return reverseDecompressionByteOrder;
00129   }
00130 
00131 
00132 private:
00133 
00135   DcmRLECodecParameter& operator=(const DcmRLECodecParameter&);
00136 
00138   Uint32 fragmentSize;
00139 
00141   OFBool createOffsetTable;
00142 
00144   OFBool convertToSC;
00145 
00147   OFBool createInstanceUID;
00148 
00152   OFBool reverseDecompressionByteOrder;
00153   
00155   OFBool verboseMode;
00156 };
00157 
00158 
00159 #endif
00160 
00161 /*
00162  * CVS/RCS Log
00163  * $Log: dcrlecp.h,v $
00164  * Revision 1.3  2005/12/08 16:28:35  meichel
00165  * Changed include path schema for all DCMTK header files
00166  *
00167  * Revision 1.2  2005/07/26 17:08:33  meichel
00168  * Added option to RLE decoder that allows to correctly decode images with
00169  *   incorrect byte order of byte segments (LSB instead of MSB).
00170  *
00171  * Revision 1.1  2002/06/06 14:52:35  meichel
00172  * Initial release of the new RLE codec classes
00173  *   and the dcmcrle/dcmdrle tools in module dcmdata
00174  *
00175  *
00176  */


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