JUCE
|
A stream which uses zlib to compress the data written into it. More...
Public Types | |
enum | WindowBitsValues { windowBitsRaw = -15, windowBitsGZIP = 15 + 16 } |
These are preset values that can be used for the constructor's windowBits parameter. More... | |
Public Member Functions | |
GZIPCompressorOutputStream (OutputStream *destStream, int compressionLevel=-1, bool deleteDestStreamWhenDestroyed=false, int windowBits=0) | |
Creates a compression stream. More... | |
~GZIPCompressorOutputStream () | |
Destructor. More... | |
void | flush () override |
Flushes and closes the stream. More... | |
int64 | getPosition () override |
Returns the stream's current position. More... | |
bool | setPosition (int64) override |
Tries to move the stream's output position. More... | |
bool | write (const void *, size_t) override |
Writes a block of data to the stream. More... | |
![]() | |
virtual | ~OutputStream () |
Destructor. More... | |
virtual bool | writeByte (char byte) |
Writes a single byte to the stream. More... | |
virtual bool | writeBool (bool boolValue) |
Writes a boolean to the stream as a single byte. More... | |
virtual bool | writeShort (short value) |
Writes a 16-bit integer to the stream in a little-endian byte order. More... | |
virtual bool | writeShortBigEndian (short value) |
Writes a 16-bit integer to the stream in a big-endian byte order. More... | |
virtual bool | writeInt (int value) |
Writes a 32-bit integer to the stream in a little-endian byte order. More... | |
virtual bool | writeIntBigEndian (int value) |
Writes a 32-bit integer to the stream in a big-endian byte order. More... | |
virtual bool | writeInt64 (int64 value) |
Writes a 64-bit integer to the stream in a little-endian byte order. More... | |
virtual bool | writeInt64BigEndian (int64 value) |
Writes a 64-bit integer to the stream in a big-endian byte order. More... | |
virtual bool | writeFloat (float value) |
Writes a 32-bit floating point value to the stream in a binary format. More... | |
virtual bool | writeFloatBigEndian (float value) |
Writes a 32-bit floating point value to the stream in a binary format. More... | |
virtual bool | writeDouble (double value) |
Writes a 64-bit floating point value to the stream in a binary format. More... | |
virtual bool | writeDoubleBigEndian (double value) |
Writes a 64-bit floating point value to the stream in a binary format. More... | |
virtual bool | writeRepeatedByte (uint8 byte, size_t numTimesToRepeat) |
Writes a byte to the output stream a given number of times. More... | |
virtual bool | writeCompressedInt (int value) |
Writes a condensed binary encoding of a 32-bit integer. More... | |
virtual bool | writeString (const String &text) |
Stores a string in the stream in a binary format. More... | |
virtual bool | writeText (const String &text, bool asUTF16, bool writeUTF16ByteOrderMark) |
Writes a string of text to the stream. More... | |
virtual int64 | writeFromInputStream (InputStream &source, int64 maxNumBytesToWrite) |
Reads data from an input stream and writes it to this stream. More... | |
void | setNewLineString (const String &newLineString) |
Sets the string that will be written to the stream when the writeNewLine() method is called. More... | |
const String & | getNewLineString () const noexcept |
Returns the current new-line string that was set by setNewLineString(). More... | |
Additional Inherited Members | |
![]() | |
OutputStream () | |
A stream which uses zlib to compress the data written into it.
Important note: When you call flush() on a GZIPCompressorOutputStream, the gzip data is closed - this means that no more data can be written to it, and any subsequent attempts to call write() will cause an assertion.
GZIPCompressorOutputStream::GZIPCompressorOutputStream | ( | OutputStream * | destStream, |
int | compressionLevel = -1 , |
||
bool | deleteDestStreamWhenDestroyed = false , |
||
int | windowBits = 0 |
||
) |
Creates a compression stream.
destStream | the stream into which the compressed data should be written |
compressionLevel | how much to compress the data, between 0 and 9, where 0 is non-compressed storage, 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. |
deleteDestStreamWhenDestroyed | whether or not to delete the destStream object when this stream is destroyed |
windowBits | this 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.
|
overridevirtual |
Flushes and closes the stream.
Note that unlike most streams, when you call flush() on a GZIPCompressorOutputStream, the stream is closed - this means that no more data can be written to it, and any subsequent attempts to call write() will cause an assertion.
Implements OutputStream.
|
overridevirtual |
|
overridevirtual |
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.
Implements OutputStream.
|
overridevirtual |
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.
dataToWrite | the target buffer to receive the data. This must not be null. |
numberOfBytes | the number of bytes to write. |
Implements OutputStream.