Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef GDCMRLECODEC_H
00016 #define GDCMRLECODEC_H
00017
00018 #include "gdcmImageCodec.h"
00019
00020 namespace gdcm
00021 {
00022
00023 class RLEInternals;
00034 class GDCM_EXPORT RLECodec : public ImageCodec
00035 {
00036 public:
00037 RLECodec();
00038 ~RLECodec();
00039 bool CanCode(TransferSyntax const &ts) const;
00040 bool CanDecode(TransferSyntax const &ts) const;
00041 bool Decode(DataElement const &is, DataElement &os);
00042 unsigned long GetBufferLength() const { return BufferLength; }
00043 void SetBufferLength(unsigned long l) { BufferLength = l; }
00044
00045 bool Code(DataElement const &in, DataElement &out);
00046 bool GetHeaderInfo(std::istream &is, TransferSyntax &ts);
00047
00048 protected:
00049 bool Decode(std::istream &is, std::ostream &os);
00050 public:
00051
00052 void SetLength(unsigned long l)
00053 {
00054 Length = l;
00055 }
00056 private:
00057 RLEInternals *Internals;
00058 unsigned long Length;
00059 unsigned long BufferLength;
00060 };
00061
00062 }
00063
00064 #endif //GDCMRLECODEC_H