Program: gdcm
Module: $RCSfile: gdcmPixelReadConvert.h,v $
Language: C++
- Date: $Date: 2005/01/06 20:03:28 $
- Version: $Revision: 1.9 $
+ Date: $Date: 2005/02/02 16:34:55 $
+ Version: $Revision: 1.17 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
namespace gdcm
{
-class Header;
+class File;
class RLEFramesInfo;
class JPEGFragmentsInfo;
-/*
+
+/**
* \brief Utility container for gathering the various forms the pixel data
* migth take during the user demanded processes.
*/
PixelReadConvert();
virtual ~PixelReadConvert();
- //// Getter accessors:
- uint8_t* GetRGB() { return RGB; }
+ void Print( std::ostream &os = std::cout, std::string const & indent = "" );
+
+ // Getter accessors:
+ uint8_t* GetRGB() { return RGB; }
size_t GetRGBSize() { return RGBSize; }
- uint8_t* GetRaw() { return Raw; }
+ uint8_t* GetRaw() { return Raw; }
size_t GetRawSize() { return RawSize; }
uint8_t* GetLutRGBA() { return LutRGBA; }
- //// Predicates:
+ // Predicates:
bool IsRawRGB();
- void Print( std::ostream &os = std::cout );
- void Print( std::string indent = "", std::ostream &os = std::cout );
-
// In progress
- void GrabInformationsFromHeader( Header *header );
+ void GrabInformationsFromFile( File *file );
bool ReadAndDecompressPixelData( std::ifstream *fp );
void Squeeze();
bool BuildRGBImage();
private:
// Use the fp:
- bool ReadAndDecompressRLEFragment(
- uint8_t *subDecompressed,
- long fragmentSize,
- long decompressedSegmentSize,
- std::ifstream *fp );
void ReadAndDecompress12BitsTo16Bits( std::ifstream *fp ) throw ( FormatError );
- bool ReadAndDecompressRLEFile( std::ifstream *fp );
bool ReadAndDecompressJPEGFile( std::ifstream *fp );
- bool ReadAndDecompressJPEGFramesFromFile( std::ifstream *fp );
- bool ReadAndDecompressJPEGSingleFrameFragmentsFromFile( std::ifstream *fp );
- bool ReadAndDecompressJPEGFragmentedFramesFromFile( std::ifstream *fp );
-
-
- void BuildLUTRGBA( std::ifstream *fp );
// In place (within Decompressed and with no fp access) decompression
// or convertion:
void BuildLUTRGBA();
- bool DecompressRLE16BitsFromRLE8Bits( int NumberOfFrames );
void ConvertSwapZone();
void ConvertReorderEndianity();
bool ConvertReArrangeBits() throw ( FormatError );
bool IsRaw;
bool IsJPEG2000;
+ bool IsJPEGLS;
bool IsJPEGLossless;
+ bool IsJPEGLossy;
+ bool IsJPEG;
bool IsRLELossless;
RLEFramesInfo *RLEInfo;