Public Types | Public Member Functions

GZIPCompressorOutputStream Class Reference

A stream which uses zlib to compress the data written into it. More...

Inherits OutputStream.

List of all members.

Public Types

enum  WindowBitsValues { windowBitsRaw = -15, windowBitsGZIP = 15 + 16 }
 

These are preset values that can be used for the constructor's windowBits paramter.

More...

Public Member Functions

 GZIPCompressorOutputStream (OutputStream *destStream, int compressionLevel=0, bool deleteDestStreamWhenDestroyed=false, int windowBits=0)
 Creates a compression stream.
 ~GZIPCompressorOutputStream ()
 Destructor.
void flush ()
 If the stream is using a buffer, this will ensure it gets written out to the destination.
int64 getPosition ()
 Returns the stream's current position.
bool setPosition (int64 newPosition)
 Tries to move the stream's output position.
bool write (const void *destBuffer, int howMany)
 Writes a block of data to the stream.

Detailed Description

A stream which uses zlib to compress the data written into it.

See also:
GZIPDecompressorInputStream

Member Enumeration Documentation

These are preset values that can be used for the constructor's windowBits paramter.

For more info about this, see the zlib documentation for its windowBits parameter.

Enumerator:
windowBitsRaw 
windowBitsGZIP 

Constructor & Destructor Documentation

GZIPCompressorOutputStream::GZIPCompressorOutputStream ( OutputStream destStream,
int  compressionLevel = 0,
bool  deleteDestStreamWhenDestroyed = false,
int  windowBits = 0 
)

Creates a compression stream.

Parameters:
destStreamthe stream into which the compressed data should be written
compressionLevelhow much to compress the data, between 1 and 9, where 1 is the fastest/lowest compression, and 9 is the slowest/highest compression. Any value outside this range indicates that a default compression level should be used.
deleteDestStreamWhenDestroyedwhether or not to delete the destStream object when this stream is destroyed
windowBitsthis is used internally to change the window size used by zlib - leave it as 0 unless you specifically need to set its value for some reason
GZIPCompressorOutputStream::~GZIPCompressorOutputStream (  )

Destructor.


Member Function Documentation

void GZIPCompressorOutputStream::flush (  ) [virtual]

If the stream is using a buffer, this will ensure it gets written out to the destination.

Implements OutputStream.

int64 GZIPCompressorOutputStream::getPosition (  ) [virtual]

Returns the stream's current position.

See also:
setPosition

Implements OutputStream.

bool GZIPCompressorOutputStream::setPosition ( int64  newPosition ) [virtual]

Tries to move the stream's output position.

Not all streams will be able to seek to a new position - this will return false if it fails to work.

See also:
getPosition

Implements OutputStream.

bool GZIPCompressorOutputStream::write ( const void *  dataToWrite,
int  howManyBytes 
) [virtual]

Writes a block of data to the stream.

When creating a subclass of OutputStream, this is the only write method that needs to be overloaded - the base class has methods for writing other types of data which use this to do the work.

Returns:
false if the write operation fails for some reason

Implements OutputStream.


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