Program: gdcm
Module: $RCSfile: gdcmJPEGFragmentsInfo.h,v $
Language: C++
- Date: $Date: 2004/12/03 20:16:58 $
- Version: $Revision: 1.7 $
+ Date: $Date: 2005/01/26 16:28:58 $
+ Version: $Revision: 1.14 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
namespace gdcm
{
-
/**
* \brief Utility class for gathering the informations of the collection
* of JPEG fragment[s] (see \ref JPEGFragment) when handling
*/
class GDCM_EXPORT JPEGFragmentsInfo
{
-friend class Document;
-friend class File;
-friend class PixelReadConvert;
-private:
- typedef std::list< JPEGFragment* > JPEGFragmentsList;
- JPEGFragmentsList Fragments;
public:
+ JPEGFragmentsInfo();
~JPEGFragmentsInfo();
- void Print( std::string indent = "", std::ostream &os = std::cout );
+ void Print( std::ostream &os = std::cout, std::string const & indent = "" );
+ size_t GetFragmentsLength();
+ void ReadAllFragments(std::ifstream *fp, JOCTET *buffer );
+
+ void DecompressJPEGFramesFromFile(std::ifstream *fp, uint8_t *buffer, int nBits, int numBytes, int length);
+
+ void AddFragment(JPEGFragment *fragment);
+
+private:
+ typedef std::list<JPEGFragment *> JPEGFragmentsList;
+
+ //Some mathieu hack:
+ int StateSuspension;
+ void *SampBuffer;
+ char* pimage;
+ JPEGFragmentsList Fragments;
+
+ friend class PixelReadConvert;
};
} // end namespace gdcm
//-----------------------------------------------------------------------------
#endif
+