ZipOutputStreambuf is a zip output streambuf filter. More...
#include <zipoutputstreambuf.h>
Public Types | |
enum | CompressionLevels { NO_COMPRESSION = Z_NO_COMPRESSION, BEST_SPEED = Z_BEST_SPEED, BEST_COMPRESSION = Z_BEST_COMPRESSION, DEFAULT_COMPRESSION = Z_DEFAULT_COMPRESSION } |
Public Member Functions | |
ZipOutputStreambuf (streambuf *outbuf, bool del_outbuf=false) | |
ZipOutputStreambuf constructor. | |
void | closeEntry () |
Closes the current entry, and positions the stream read pointer at the beginning of the next entry (if there is one). | |
void | close () |
Calls finish. | |
void | finish () |
Closes the current entry (if one is open), then writes the Zip Central Directory Structure closing the ZipOutputStream. | |
void | putNextEntry (const ZipCDirEntry &entry) |
Begins writing the next entry. | |
void | setComment (const string &comment) |
Sets the global comment for the Zip archive. | |
void | setLevel (int level) |
Sets the compression level to be used for subsequent entries. | |
void | setMethod (StorageMethod method) |
Sets the compression method to be used. | |
virtual | ~ZipOutputStreambuf () |
Destructor. | |
Protected Member Functions | |
virtual int | overflow (int c=EOF) |
virtual int | sync () |
void | setEntryClosedState () |
void | updateEntryHeaderInfo () |
Static Protected Member Functions | |
static void | writeCentralDirectory (const vector< ZipCDirEntry > &entries, EndOfCentralDirectory eocd, ostream &os) |
ZipOutputStreambuf is a zip output streambuf filter.
Definition at line 17 of file zipoutputstreambuf.h.
zipios::ZipOutputStreambuf::ZipOutputStreambuf | ( | streambuf * | outbuf, | |
bool | del_outbuf = false | |||
) | [explicit] |
ZipOutputStreambuf constructor.
A newly constructed ZipOutputStreambuf is not ready to accept data, putNextEntry() must be invoked first.
outbuf | the streambuf to use for input.
|
Definition at line 20 of file zipoutputstreambuf.cpp.
zipios::ZipOutputStreambuf::~ZipOutputStreambuf | ( | ) | [virtual] |
Destructor.
Definition at line 56 of file zipoutputstreambuf.cpp.
void zipios::ZipOutputStreambuf::close | ( | ) |
Calls finish.
Definition at line 41 of file zipoutputstreambuf.cpp.
void zipios::ZipOutputStreambuf::closeEntry | ( | ) |
Closes the current entry, and positions the stream read pointer at the beginning of the next entry (if there is one).
Definition at line 30 of file zipoutputstreambuf.cpp.
void zipios::ZipOutputStreambuf::finish | ( | ) |
Closes the current entry (if one is open), then writes the Zip Central Directory Structure closing the ZipOutputStream.
The output stream that the zip archive is being written to is not closed.
Definition at line 46 of file zipoutputstreambuf.cpp.
void zipios::ZipOutputStreambuf::putNextEntry | ( | const ZipCDirEntry & | entry | ) |
Begins writing the next entry.
Opens the next entry in the zip archive and returns a const pointer to a FileEntry object for the entry.
Definition at line 61 of file zipoutputstreambuf.cpp.
void zipios::ZipOutputStreambuf::setComment | ( | const string & | comment | ) |
Sets the global comment for the Zip archive.
Definition at line 83 of file zipoutputstreambuf.cpp.
void zipios::ZipOutputStreambuf::setLevel | ( | int | level | ) |
Sets the compression level to be used for subsequent entries.
Definition at line 88 of file zipoutputstreambuf.cpp.
void zipios::ZipOutputStreambuf::setMethod | ( | StorageMethod | method | ) |
Sets the compression method to be used.
only STORED and DEFLATED are supported.
Definition at line 93 of file zipoutputstreambuf.cpp.