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_NAME_SPACE
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 tSize, int bitsAllocated );
00053 bool ConvertRLE16BitsFromRLE8Bits( uint8_t *subRaw, int xSize, int ySize,
00054 int tSize, int numberOfFrames);
00055
00056 void AddFrame(RLEFrame *frame);
00057
00058 RLEFrame *GetFirstFrame();
00059 RLEFrame *GetNextFrame();
00060
00061 typedef std::list<RLEFrame *> RLEFrameList;
00062
00063 RLEFrameList Frames;
00064 RLEFrameList::iterator ItFrames;
00065 };
00066 }
00067
00068
00069 #endif