Public Member Functions | Protected Member Functions

zeus::TFilterInputStream Class Reference

#include <FilterInputStream.h>

Inheritance diagram for zeus::TFilterInputStream:
zeus::TAbstractInputStream zeus::TZObject zeus::IInputStream zeus::IZUnknown zeus::IZUnknown zeus::TBase64InputStream zeus::TCryptedInputStream zeus::TTextInputStream zeus::TZippedInputStream

List of all members.

Public Member Functions

 TFilterInputStream (IInputStream &rParentStream)
virtual bool MQUALIFIER available () const
virtual bool MQUALIFIER isEndReached () const
virtual Retval MQUALIFIER read (char *pBuffer, Int iBufferSize, Int &rValidSize) const
virtual Int MQUALIFIER readItem () const
virtual void MQUALIFIER close ()
virtual void MQUALIFIER reset ()
virtual bool MQUALIFIER skip (Int iBytes=1)

Protected Member Functions

 TFilterInputStream (IInputStream &rParentStream, bool bDirectCreated)
virtual ~TFilterInputStream ()
virtual Retval delegateReadBlockToReadItem (char *pBuffer, Int iBufferSize, Int &rValidSize) const

Detailed Description

The filter input stream is used to filter streams before reading them. To implement any filter you must simply overwrite the read method and filter the incomming buffer of the parent stream


Constructor & Destructor Documentation

TFilterInputStream::TFilterInputStream ( IInputStream rParentStream )

Creates a filter input stream

Parameters:
rParentStream: Parent stream (source)
TFilterInputStream::TFilterInputStream ( IInputStream rParentStream,
bool  bDirectCreated 
) [protected]

Creates a filter input stream

Parameters:
rParentStream: Parent stream (source)
bDirectCreated: Dummy, is used to avoid an addref on the input stream
TFilterInputStream::~TFilterInputStream (  ) [protected, virtual]

Destroys the filter input stream


Member Function Documentation

bool MQUALIFIER zeus::TFilterInputStream::available (  ) const [inline, virtual]
void MQUALIFIER zeus::TFilterInputStream::close (  ) [inline, virtual]
Retval TFilterInputStream::delegateReadBlockToReadItem ( char *  pBuffer,
Int  iBufferSize,
Int &  rValidSize 
) const [protected, virtual]

This method dispatches the read-Block method to the readItem method

bool MQUALIFIER zeus::TFilterInputStream::isEndReached (  ) const [inline, virtual]
Retval MQUALIFIER zeus::TFilterInputStream::read ( char *  pBuffer,
Int  iBufferSize,
Int &  rValidSize 
) const [inline, virtual]
Int MQUALIFIER zeus::TFilterInputStream::readItem (  ) const [inline, virtual]
void MQUALIFIER zeus::TFilterInputStream::reset (  ) [inline, virtual]
bool MQUALIFIER TFilterInputStream::skip ( Int  iBytes = 1 ) [virtual]

The skip method needs to read bytes, since we don't know about the encoding and filter implementation. Therefore the skipping of one byte might be skipping of multible bytes on the origin source stream.

See also:
IInputStream::skip

Implements zeus::TAbstractInputStream.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


Written by Benjamin Hadorn http://www.xatlantis.ch.
Last change made on Sun Jan 22 2012 15:28:34