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)

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 202 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::FormatErrorMessage(), and CBZip2Compression::FormatErrorMessage().

string CCompression::GetErrorDescription void   )  const [virtual]
 

Implements ICompression.

Definition at line 80 of file compress.cpp.

References m_ErrorMsg.

Referenced by CZipCompression::FormatErrorMessage(), and CBZip2Compression::FormatErrorMessage().

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

Get flags.

Implements ICompression.

Definition at line 93 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 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::DecompressBuffer(), CBZip2Compression::DecompressBuffer(), CZipCompressor::End(), CBZip2Compressor::End(), CZipCompression::EstimateCompressionBufferSize(), CZipCompressor::Finish(), CBZip2Compressor::Finish(), CZipCompressor::Flush(), CBZip2Compressor::Flush(), 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 99 of file compress.cpp.

References m_Flags.

Referenced by CZipCompression::CompressFile(), CBZip2Compression::CompressFile(), CResultZBtSrcX::CResultZBtSrcX(), CZipCompressionFile::CZipCompressionFile(), 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 105 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 134 of file compress.cpp.

References out(), and SetError().


Friends And Related Function Documentation

friend class CCompressionStreambuf [friend]
 

Definition at line 217 of file compress.hpp.


Member Data Documentation

EDecompressMode CCompression::m_DecompressMode [protected]
 

Definition at line 208 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 212 of file compress.hpp.

Referenced by GetErrorCode(), and SetError().

string CCompression::m_ErrorMsg [private]
 

Definition at line 213 of file compress.hpp.

Referenced by GetErrorDescription(), and SetError().

TFlags CCompression::m_Flags [private]
 

Definition at line 214 of file compress.hpp.

Referenced by GetFlags(), and SetFlags().

ELevel CCompression::m_Level [private]
 

Definition at line 211 of file compress.hpp.

Referenced by GetLevel(), and SetLevel().


The documentation for this class was generated from the following files:
Generated on Thu Sep 4 02:21:35 2008 for NCBI C++ ToolKit by  doxygen 1.4.6
Modified on Thu Sep 04 03:25:10 2008 by modify_doxy.py rev. 117643