OFFIS DCMTK  Version 3.6.0
dcrleccd.h
1 /*
2  *
3  * Copyright (C) 2002-2010, OFFIS e.V.
4  * All rights reserved. See COPYRIGHT file for details.
5  *
6  * This software and supporting documentation were developed by
7  *
8  * OFFIS e.V.
9  * R&D Division Health
10  * Escherweg 2
11  * D-26121 Oldenburg, Germany
12  *
13  *
14  * Module: dcmdata
15  *
16  * Author: Marco Eichelberg
17  *
18  * Purpose: decoder codec class for RLE
19  *
20  * Last Update: $Author: joergr $
21  * Update Date: $Date: 2010-10-14 13:15:41 $
22  * CVS/RCS Revision: $Revision: 1.8 $
23  * Status: $State: Exp $
24  *
25  * CVS/RCS Log at end of file
26  *
27  */
28 
29 #ifndef DCRLECCD_H
30 #define DCRLECCD_H
31 
32 #include "dcmtk/config/osconfig.h"
33 #include "dcmtk/dcmdata/dccodec.h" /* for class DcmCodec */
34 
40 {
41 public:
42 
45 
47  virtual ~DcmRLECodecDecoder();
48 
59  virtual OFCondition decode(
60  const DcmRepresentationParameter * fromRepParam,
61  DcmPixelSequence * pixSeq,
62  DcmPolymorphOBOW& uncompressedPixelData,
63  const DcmCodecParameter * cp,
64  const DcmStack& objStack) const;
65 
91  virtual OFCondition decodeFrame(
92  const DcmRepresentationParameter * fromParam,
93  DcmPixelSequence * fromPixSeq,
94  const DcmCodecParameter * cp,
95  DcmItem *dataset,
96  Uint32 frameNo,
97  Uint32& startFragment,
98  void *buffer,
99  Uint32 bufSize,
100  OFString& decompressedColorModel) const;
101 
116  virtual OFCondition encode(
117  const Uint16 * pixelData,
118  const Uint32 length,
119  const DcmRepresentationParameter * toRepParam,
120  DcmPixelSequence * & pixSeq,
121  const DcmCodecParameter *cp,
122  DcmStack & objStack) const;
123 
138  virtual OFCondition encode(
139  const E_TransferSyntax fromRepType,
140  const DcmRepresentationParameter * fromRepParam,
141  DcmPixelSequence * fromPixSeq,
142  const DcmRepresentationParameter * toRepParam,
143  DcmPixelSequence * & toPixSeq,
144  const DcmCodecParameter * cp,
145  DcmStack & objStack) const;
146 
154  virtual OFBool canChangeCoding(
155  const E_TransferSyntax oldRepType,
156  const E_TransferSyntax newRepType) const;
157 
172  const DcmRepresentationParameter *fromParam,
173  DcmPixelSequence *fromPixSeq,
174  const DcmCodecParameter *cp,
175  DcmItem *dataset,
176  OFString &decompressedColorModel) const;
177 
178 private:
179 
182 
185 };
186 
187 #endif
188 
189 /*
190  * CVS/RCS Log
191  * $Log: dcrleccd.h,v $
192  * Revision 1.8 2010-10-14 13:15:41 joergr
193  * Updated copyright header. Added reference to COPYRIGHT file.
194  *
195  * Revision 1.7 2010-03-01 09:08:44 uli
196  * Removed some unnecessary include directives in the headers.
197  *
198  * Revision 1.6 2009-11-17 16:36:51 joergr
199  * Added new method that allows for determining the color model of the
200  * decompressed image.
201  *
202  * Revision 1.5 2009-11-04 09:58:07 uli
203  * Switched to logging mechanism provided by the "new" oflog module
204  *
205  * Revision 1.4 2008-05-29 10:46:13 meichel
206  * Implemented new method DcmPixelData::getUncompressedFrame
207  * that permits frame-wise access to compressed and uncompressed
208  * objects without ever loading the complete object into main memory.
209  * For this new method to work with compressed images, all classes derived from
210  * DcmCodec need to implement a new method decodeFrame(). For now, only
211  * dummy implementations returning an error code have been defined.
212  *
213  * Revision 1.3 2005/12/08 16:28:33 meichel
214  * Changed include path schema for all DCMTK header files
215  *
216  * Revision 1.2 2003/03/21 13:06:46 meichel
217  * Minor code purifications for warnings reported by MSVC in Level 4
218  *
219  * Revision 1.1 2002/06/06 14:52:34 meichel
220  * Initial release of the new RLE codec classes
221  * and the dcmcrle/dcmdrle tools in module dcmdata
222  *
223  *
224  */


Generated on Thu Dec 20 2012 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.8.2