00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _GDCMJPEGFRAGMENTSINFO_H_
00021 #define _GDCMJPEGFRAGMENTSINFO_H_
00022
00023 #include "gdcmJPEGFragment.h"
00024
00025 #include <list>
00026 #include <iostream>
00027
00028 namespace GDCM_NAME_SPACE
00029 {
00040 class GDCM_EXPORT JPEGFragmentsInfo
00041 {
00042 friend class File;
00043 friend class PixelReadConvert;
00044
00045 private:
00046 JPEGFragmentsInfo();
00047 ~JPEGFragmentsInfo();
00048 void Print( std::ostream &os = std::cout, std::string const &indent = "" );
00049
00050 void DecompressFromFile(std::ifstream *fp, uint8_t *buffer, int nBits,
00051 int numBytes, int length);
00052
00053 void AddFragment(JPEGFragment *fragment);
00054 JPEGFragment *GetFirstFragment();
00055 JPEGFragment *GetNextFragment();
00056 unsigned int GetFragmentCount();
00057
00058
00059 typedef std::list<JPEGFragment *> JPEGFragmentsList;
00060
00061
00062 int StateSuspension;
00063 void *SampBuffer;
00064 char *pimage;
00065 JPEGFragmentsList Fragments;
00066 JPEGFragmentsList::iterator ItFragments;
00067 };
00068 }
00069
00070
00071 #endif
00072