Zipios++
Public Member Functions | Protected Member Functions | Protected Attributes
zipios::InflateInputStreambuf Class Reference

InflateInputStreambuf is an input stream filter, that inflates the input from the attached input stream. More...

#include <inflateinputstreambuf.h>

Inheritance diagram for zipios::InflateInputStreambuf:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 InflateInputStreambuf (streambuf *inbuf, int s_pos=-1, bool del_inbuf=false)
 InflateInputStreambuf constructor.
bool reset (int stream_position=-1)
 Resets the zlib stream and purges input and output buffers.

Protected Member Functions

virtual int underflow ()

Protected Attributes

const int _outvecsize
vector< char > _outvec

Detailed Description

InflateInputStreambuf is an input stream filter, that inflates the input from the attached input stream.

Deflation/Inflation is a compression/decompression method used in gzip and zip. The zlib library is used to perform the actual inflation, this class only wraps the functionality in an input stream filter.


Constructor & Destructor Documentation

zipios::InflateInputStreambuf::InflateInputStreambuf ( streambuf *  inbuf,
int  s_pos = -1,
bool  del_inbuf = false 
) [explicit]

InflateInputStreambuf constructor.

Parameters:
inbufthe streambuf to use for input.
s_posa position to reset the inbuf to before reading. Specify -1 to read from the current position.
del_inbufif true is specified inbuf will be deleted, when the InflateInputStreambuf is destructed.

Definition at line 18 of file inflateinputstreambuf.cpp.


Member Function Documentation

bool zipios::InflateInputStreambuf::reset ( int  stream_position = -1)

Resets the zlib stream and purges input and output buffers.

repositions the input streambuf at stream_position.

Parameters:
stream_positiona position to reset the inbuf to before reading. Specify -1 to read from the current position.

Definition at line 117 of file inflateinputstreambuf.cpp.


The documentation for this class was generated from the following files: