GDCM  2.2.0
gdcmRLECodec.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: GDCM (Grassroots DICOM). A DICOM library
4 
5  Copyright (c) 2006-2011 Mathieu Malaterre
6  All rights reserved.
7  See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notice for more information.
12 
13 =========================================================================*/
14 #ifndef GDCMRLECODEC_H
15 #define GDCMRLECODEC_H
16 
17 #include "gdcmImageCodec.h"
18 
19 namespace gdcm
20 {
21 
22 class RLEInternals;
34 {
35 public:
36  RLECodec();
37  ~RLECodec();
38  bool CanCode(TransferSyntax const &ts) const;
39  bool CanDecode(TransferSyntax const &ts) const;
40  bool Decode(DataElement const &is, DataElement &os);
41  unsigned long GetBufferLength() const { return BufferLength; }
42  void SetBufferLength(unsigned long l) { BufferLength = l; }
43 
44  bool Code(DataElement const &in, DataElement &out);
45  bool GetHeaderInfo(std::istream &is, TransferSyntax &ts);
46 
47 protected:
48  bool Decode(std::istream &is, std::ostream &os);
49 public:
50 
51  void SetLength(unsigned long l)
52  {
53  Length = l;
54  }
55 private:
56  RLEInternals *Internals;
57  unsigned long Length;
58  unsigned long BufferLength;
59 };
60 
61 } // end namespace gdcm
62 
63 #endif //GDCMRLECODEC_H

Generated on Wed Jun 13 2012 20:40:37 for GDCM by doxygen 1.8.1
SourceForge.net Logo