00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef GDCMRLEFRAMESINFO_H
00021 #define GDCMRLEFRAMESINFO_H
00022
00023 #include "gdcmRLEFrame.h"
00024
00025 #include <list>
00026
00027 namespace gdcm
00028 {
00043 class GDCM_EXPORT RLEFramesInfo
00044 {
00045 friend class PixelReadConvert;
00046 friend class File;
00047
00048 private:
00049 ~RLEFramesInfo();
00050 void Print( std::ostream &os = std::cout, std::string indent = "" );
00051 bool DecompressRLEFile( std::ifstream *fp, uint8_t *subRaw, int xSize,
00052 int ySize, int zSize, int bitsAllocated );
00053 bool ConvertRLE16BitsFromRLE8Bits( uint8_t *subRaw, int xSize, int ySize,
00054 int numberOfFrames );
00055
00056 void AddFrame(RLEFrame *frame);
00057
00058 RLEFrame *GetFirstFrame();
00059 RLEFrame *GetNextFrame();
00060
00061
00062 typedef std::list<RLEFrame *> RLEFrameList;
00063
00064 RLEFrameList Frames;
00065 RLEFrameList::iterator ItFrames;
00066 };
00067 }
00068
00069
00070 #endif