CCompression Class Reference
[Compression]

Search Toolkit Book for CCompression

#include <compress.hpp>

Inheritance diagram for CCompression:

Inheritance graph
[legend]
Collaboration diagram for CCompression:

Collaboration graph
[legend]
List of all members.

Detailed Description

Definition at line 155 of file compress.hpp.

Public Member Functions

 CCompression (ELevel level=eLevel_Default)
virtual ~CCompression (void)
virtual CVersionInfo GetVersion (void) const =0
 Return name and version of the compression library.
virtual void SetLevel (ELevel level)
virtual ELevel GetLevel (void) const
virtual int GetErrorCode (void) const
virtual string GetErrorDescription (void) const
virtual TFlags GetFlags (void) const
 Get flags.
virtual void SetFlags (TFlags flags)
 Set flags.

Protected Types

enum  EDecompressMode { eMode_Unknown, eMode_Decompress, eMode_TransparentRead }
 Decompression mode (see fAllowTransparentRead flag). More...

Protected Member Functions

virtual bool x_CompressFile (const string &src_file, CCompressionFile &dst_file, size_t buf_size=kCompressionDefaultBufSize)
virtual bool x_DecompressFile (CCompressionFile &src_file, const string &dst_file, size_t buf_size=kCompressionDefaultBufSize)
void SetError (int status, const char *description=0)
void SetError (int status, const string &description)

Protected Attributes

EDecompressMode m_DecompressMode

Private Attributes

ELevel m_Level
int m_ErrorCode
string m_ErrorMsg
TFlags m_Flags

Friends

class CCompressionStreambuf


Member Enumeration Documentation

enum CCompression::EDecompressMode [protected]
 

Decompression mode (see fAllowTransparentRead flag).

Enumerator:
eMode_Unknown  Not known yet (decompress/transparent read).
eMode_Decompress  Generic decompression.
eMode_TransparentRead  Transparent read, the data is uncompressed.

Definition at line 203 of file compress.hpp.


Constructor & Destructor Documentation

CCompression::CCompression ELevel  level = eLevel_Default  ) 
 

Definition at line 45 of file compress.cpp.

CCompression::~CCompression void   )  [virtual]
 

Definition at line 53 of file compress.cpp.


Member Function Documentation

int CCompression::GetErrorCode void   )  const [virtual]
 

Implements ICompression.

Definition at line 74 of file compress.cpp.

References m_ErrorCode.

Referenced by CZipCompression::CompressFile(), CBZip2Compression::CompressFile(), CZipCompression::DecompressFile(), CBZip2Compression::DecompressFile(), CZipCompression::DecompressFileIntoDir(), CZipCompression::FormatErrorMessage(), CBZip2Compression::FormatErrorMessage(), and CCompressionStream::x_GetError().

string CCompression::GetErrorDescription void   )  const [virtual]
 

Implements ICompression.

Definition at line 80 of file compress.cpp.

References m_ErrorMsg.

Referenced by CZipCompression::CompressFile(), CBZip2Compression::CompressFile(), CZipCompression::DecompressFile(), CBZip2Compression::DecompressFile(), CZipCompression::DecompressFileIntoDir(), CZipCompression::FormatErrorMessage(), CBZip2Compression::FormatErrorMessage(), and CCompressionStream::x_GetError().

CCompression::TFlags CCompression::GetFlags void   )  const [virtual]
 

Get flags.

Implements ICompression.

Definition at line 100 of file compress.cpp.

References m_Flags.

Referenced by CZipCompression::CompressFile(), CBZip2Compression::CompressFile(), CResultZBtSrcX::CResultZBtSrcX(), CZipCompressionFile::CZipCompressionFile(), CZipCompression::DecompressFile(), CBZip2Compression::DecompressFile(), and CZipCompression::DecompressFileIntoDir().

CCompression::ELevel CCompression::GetLevel void   )  const [virtual]
 

Implements ICompression.

Reimplemented in CBZip2Compression.

Definition at line 59 of file compress.cpp.

References ICompression::eLevel_Default, ICompression::GetDefaultLevel(), and m_Level.

Referenced by CZipCompression::CompressBuffer(), CZipCompression::CompressFile(), CZipCompression::DecompressFile(), CZipCompression::DecompressFileIntoDir(), CZipCompression::EstimateCompressionBufferSize(), CBZip2Compression::GetLevel(), and CZipCompressor::Init().

virtual CVersionInfo CCompression::GetVersion void   )  const [pure virtual]
 

Return name and version of the compression library.

Implements ICompression.

Implemented in CBZip2Compression, and CZipCompression.

void CCompression::SetError int  status,
const string &  description
[protected]
 

Definition at line 93 of file compress.cpp.

References m_ErrorCode, and m_ErrorMsg.

void CCompression::SetError int  status,
const char *  description = 0
[protected]
 

Definition at line 86 of file compress.cpp.

References kEmptyStr, m_ErrorCode, and m_ErrorMsg.

Referenced by CBZip2CompressionFile::Close(), CZipCompression::CompressBuffer(), CBZip2Compression::CompressBuffer(), CZipCompression::CompressFile(), CBZip2Compression::CompressFile(), CZipCompression::DecompressBuffer(), CBZip2Compression::DecompressBuffer(), CZipCompression::DecompressFile(), CBZip2Compression::DecompressFile(), CZipCompression::DecompressFileIntoDir(), CZipCompressor::End(), CBZip2Compressor::End(), CZipCompression::EstimateCompressionBufferSize(), CZipCompressor::Finish(), CBZip2Compressor::Finish(), CZipCompressor::Flush(), CBZip2Compressor::Flush(), CZipCompressionFile::GetStreamError(), CZipDecompressor::Init(), CZipCompressor::Init(), CBZip2Decompressor::Init(), CBZip2Compressor::Init(), CZipCompressionFile::Open(), CBZip2CompressionFile::Open(), CZipDecompressor::Process(), CZipCompressor::Process(), CBZip2Decompressor::Process(), CBZip2Compressor::Process(), CBZip2CompressionFile::Read(), CBZip2CompressionFile::Write(), x_CompressFile(), and x_DecompressFile().

void CCompression::SetFlags TFlags  flags  )  [virtual]
 

Set flags.

Definition at line 106 of file compress.cpp.

References m_Flags.

Referenced by CBZip2Compressor::CBZip2Compressor(), CBZip2Decompressor::CBZip2Decompressor(), CZipCompression::CompressFile(), CBZip2Compression::CompressFile(), CResultZBtSrcX::CResultZBtSrcX(), CZipCompressionFile::CZipCompressionFile(), CZipCompressor::CZipCompressor(), CZipDecompressor::CZipDecompressor(), CZipCompression::DecompressFile(), CBZip2Compression::DecompressFile(), and CZipCompression::DecompressFileIntoDir().

void CCompression::SetLevel ELevel  level  )  [virtual]
 

Definition at line 68 of file compress.cpp.

References m_Level.

bool CCompression::x_CompressFile const string &  src_file,
CCompressionFile dst_file,
size_t  buf_size = kCompressionDefaultBufSize
[protected, virtual]
 

Definition at line 112 of file compress.cpp.

References SetError().

bool CCompression::x_DecompressFile CCompressionFile src_file,
const string &  dst_file,
size_t  buf_size = kCompressionDefaultBufSize
[protected, virtual]
 

Definition at line 138 of file compress.cpp.

References out(), and SetError().


Friends And Related Function Documentation

friend class CCompressionStreambuf [friend]
 

Definition at line 218 of file compress.hpp.


Member Data Documentation

EDecompressMode CCompression::m_DecompressMode [protected]
 

Definition at line 209 of file compress.hpp.

Referenced by CZipDecompressor::End(), CBZip2Decompressor::End(), CZipDecompressor::Finish(), CBZip2Decompressor::Finish(), CBZip2Decompressor::Flush(), CBZip2CompressionFile::Open(), CZipDecompressor::Process(), CBZip2Decompressor::Process(), and CBZip2CompressionFile::Read().

int CCompression::m_ErrorCode [private]
 

Definition at line 213 of file compress.hpp.

Referenced by GetErrorCode(), and SetError().

string CCompression::m_ErrorMsg [private]
 

Definition at line 214 of file compress.hpp.

Referenced by GetErrorDescription(), and SetError().

TFlags CCompression::m_Flags [private]
 

Definition at line 215 of file compress.hpp.

Referenced by GetFlags(), and SetFlags().

ELevel CCompression::m_Level [private]
 

Definition at line 212 of file compress.hpp.

Referenced by GetLevel(), and SetLevel().


The documentation for this class was generated from the following files:
Generated on Mon Dec 7 10:51:42 2009 for NCBI C++ ToolKit by  doxygen 1.4.6
Modified on Mon Dec 07 16:22:52 2009 by modify_doxy.py rev. 173732