CCompressionStreamProcessor Class Reference
[CompressionStreams]

Search Toolkit Book for CCompressionStreamProcessor

#include <stream.hpp>

Inheritance diagram for CCompressionStreamProcessor:

Inheritance graph
[legend]
Collaboration diagram for CCompressionStreamProcessor:

Collaboration graph
[legend]
List of all members.

Detailed Description

Definition at line 169 of file stream.hpp.

Public Types

enum  EDeleteProcessor { eDelete, eNoDelete }
 If to delete the used compression processor in the destructor. More...
enum  EState { eActive, eFinalize, eDone }
 Stream processor state. More...

Public Member Functions

 CCompressionStreamProcessor (CCompressionProcessor *processor, EDeleteProcessor need_delete=eNoDelete, streamsize in_bufsize=kCompressionDefaultBufSize, streamsize out_bufsize=kCompressionDefaultBufSize)
 Constructor.
virtual ~CCompressionStreamProcessor (void)
 Destructor.
void Init (void)
 (Re)Initialize stream processor.

Private Attributes

CCompressionProcessorm_Processor
 (De)compression processor.
CT_CHAR_TYPE * m_InBuf
 Buffer of unprocessed data.
streamsize m_InBufSize
 Unprocessed data buffer size.
CT_CHAR_TYPE * m_OutBuf
 Buffer of processed data.
streamsize m_OutBufSize
 Processed data buffer size.
streamsize m_LastOutAvail
 The size of last data received from compression processor.
CT_CHAR_TYPE * m_Begin
 Begin and end of the pre/post.
CT_CHAR_TYPE * m_End
 processed data in the buffer.
EDeleteProcessor m_NeedDelete
 m_Processor auto-deleting flag.
CCompressionProcessor::EStatus m_LastStatus
 Last compressor status.
EState m_State
 Stream processor state.

Friends

class CCompressionStream
class CCompressionStreambuf


Member Enumeration Documentation

enum CCompressionStreamProcessor::EDeleteProcessor
 

If to delete the used compression processor in the destructor.

Enumerator:
eDelete  Do delete processor object.
eNoDelete  Do not delete processor object.

Definition at line 173 of file stream.hpp.

enum CCompressionStreamProcessor::EState
 

Stream processor state.

Enumerator:
eActive  Processor ready to read/write.
eFinalize  Finalize() already done, but End() not yet.
eDone  End() done, processor cannot process data.

Definition at line 179 of file stream.hpp.


Constructor & Destructor Documentation

CCompressionStreamProcessor::CCompressionStreamProcessor CCompressionProcessor processor,
EDeleteProcessor  need_delete = eNoDelete,
streamsize  in_bufsize = kCompressionDefaultBufSize,
streamsize  out_bufsize = kCompressionDefaultBufSize
 

Constructor.

Definition at line 46 of file stream.cpp.

References Init().

CCompressionStreamProcessor::~CCompressionStreamProcessor void   )  [virtual]
 

Destructor.

Definition at line 62 of file stream.cpp.

References eDelete, m_NeedDelete, and m_Processor.


Member Function Documentation

void CCompressionStreamProcessor::Init void   ) 
 

(Re)Initialize stream processor.

Definition at line 71 of file stream.cpp.

References eActive, eDone, CCompressionProcessor::End(), CCompressionProcessor::eStatus_Success, CCompressionProcessor::Init(), m_Begin, m_End, m_InBuf, m_LastOutAvail, m_LastStatus, m_OutBuf, m_Processor, and m_State.

Referenced by CCompressionStreambuf::CCompressionStreambuf(), and CCompressionStreamProcessor().


Friends And Related Function Documentation

friend class CCompressionStream [friend]
 

Definition at line 215 of file stream.hpp.

friend class CCompressionStreambuf [friend]
 

Definition at line 216 of file stream.hpp.


Member Data Documentation

CT_CHAR_TYPE* CCompressionStreamProcessor::m_Begin [private]
 

Begin and end of the pre/post.

Definition at line 207 of file stream.hpp.

Referenced by CCompressionStreambuf::CCompressionStreambuf(), Init(), CCompressionStreambuf::ProcessStreamRead(), and CCompressionStreambuf::WriteOutBufToStream().

CT_CHAR_TYPE* CCompressionStreamProcessor::m_End [private]
 

processed data in the buffer.

Definition at line 208 of file stream.hpp.

Referenced by CCompressionStreambuf::CCompressionStreambuf(), CCompressionStreambuf::Flush(), Init(), CCompressionStreambuf::ProcessStreamRead(), CCompressionStreambuf::ProcessStreamWrite(), and CCompressionStreambuf::WriteOutBufToStream().

CT_CHAR_TYPE* CCompressionStreamProcessor::m_InBuf [private]
 

Buffer of unprocessed data.

Definition at line 201 of file stream.hpp.

Referenced by CCompressionStreambuf::CCompressionStreambuf(), Init(), and CCompressionStreambuf::ProcessStreamRead().

streamsize CCompressionStreamProcessor::m_InBufSize [private]
 

Unprocessed data buffer size.

Definition at line 202 of file stream.hpp.

Referenced by CCompressionStreambuf::CCompressionStreambuf(), and CCompressionStreambuf::ProcessStreamRead().

streamsize CCompressionStreamProcessor::m_LastOutAvail [private]
 

The size of last data received from compression processor.

Definition at line 205 of file stream.hpp.

Referenced by Init(), and CCompressionStreambuf::ProcessStreamRead().

CCompressionProcessor::EStatus CCompressionStreamProcessor::m_LastStatus [private]
 

Last compressor status.

Definition at line 211 of file stream.hpp.

Referenced by CCompressionStreambuf::Finish(), CCompressionStreambuf::Flush(), Init(), CCompressionStreambuf::ProcessStreamRead(), CCompressionStreambuf::ProcessStreamWrite(), CCompressionStreambuf::sync(), CCompressionStreambuf::WriteOutBufToStream(), CCompressionStream::x_GetStatus(), and CCompressionStreambuf::~CCompressionStreambuf().

EDeleteProcessor CCompressionStreamProcessor::m_NeedDelete [private]
 

m_Processor auto-deleting flag.

Definition at line 209 of file stream.hpp.

Referenced by ~CCompressionStreamProcessor().

CT_CHAR_TYPE* CCompressionStreamProcessor::m_OutBuf [private]
 

Buffer of processed data.

Definition at line 203 of file stream.hpp.

Referenced by CCompressionStreambuf::CCompressionStreambuf(), CCompressionStreambuf::Flush(), Init(), CCompressionStreambuf::ProcessStreamRead(), CCompressionStreambuf::ProcessStreamWrite(), CCompressionStreambuf::underflow(), CCompressionStreambuf::WriteOutBufToStream(), and CCompressionStreambuf::xsgetn().

streamsize CCompressionStreamProcessor::m_OutBufSize [private]
 

Processed data buffer size.

Definition at line 204 of file stream.hpp.

Referenced by CCompressionStreambuf::CCompressionStreambuf(), CCompressionStreambuf::Flush(), CCompressionStreambuf::ProcessStreamRead(), CCompressionStreambuf::ProcessStreamWrite(), and CCompressionStreambuf::WriteOutBufToStream().

CCompressionProcessor* CCompressionStreamProcessor::m_Processor [private]
 

(De)compression processor.

Definition at line 200 of file stream.hpp.

Referenced by CCompressionStreambuf::CCompressionStreambuf(), CCompressionStreambuf::Flush(), CCompressionStreambuf::GetCompressionProcessor(), Init(), CCompressionStreambuf::IsStreamProcessorOkay(), CCompressionStreambuf::ProcessStreamRead(), CCompressionStreambuf::ProcessStreamWrite(), CCompressionStream::x_GetOutputSize(), CCompressionStream::x_GetProcessedSize(), CCompressionStreambuf::xsgetn(), CCompressionStreambuf::~CCompressionStreambuf(), and ~CCompressionStreamProcessor().

EState CCompressionStreamProcessor::m_State [private]
 

Stream processor state.

Definition at line 212 of file stream.hpp.

Referenced by CCompressionStreambuf::Finish(), CCompressionStreambuf::Flush(), Init(), CCompressionStreambuf::IsStreamProcessorOkay(), CCompressionStreambuf::overflow(), CCompressionStreambuf::ProcessStreamRead(), CCompressionStreambuf::ProcessStreamWrite(), CCompressionStreambuf::sync(), CCompressionStreambuf::xsputn(), and CCompressionStreambuf::~CCompressionStreambuf().


The documentation for this class was generated from the following files:
Generated on Mon Aug 4 12:19:37 2008 for NCBI C++ ToolKit by  doxygen 1.4.6
Modified on Mon Aug 04 16:26:54 2008 by modify_doxy.py rev. 117643