SHORE API
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
shore::gzxdeflater Class Reference

GZIP compress a stream in blocks. More...

Inheritance diagram for shore::gzxdeflater:
shore::gzxbase

Public Types

enum  HeaderType { HEADER_RAW =-1, HEADER_ZLIB =0, HEADER_GZIP =16 }
 Types of stream headers that can be written.
 
enum  Strategy {
  STGY_DEFAULT =Z_DEFAULT_STRATEGY, STGY_FILTERED =Z_FILTERED, STGY_HUFFMAN =Z_HUFFMAN_ONLY, STGY_RLE =Z_RLE,
  STGY_FIXED =Z_FIXED
}
 Possible compression strategies.
 

Public Member Functions

 gzxdeflater (std::ostream &os, const bool syncblocks=true, const size_t bs=131072, const HeaderType ht=HEADER_GZIP, const Strategy sg=STGY_DEFAULT)
 Constructor: init encoder.
 
 ~gzxdeflater ()
 Destructor: calls finish().
 
void finish ()
 Finish encoding and free buffers, append the index.
 
void write (const char *s, size_t n)
 Append a block of data.
 
const gzxindexget_syncs () const
 Get the index.
 

Additional Inherited Members

- Protected Member Functions inherited from shore::gzxbase
void z_error (const std::string &msg)
 Report & throw.
 
void zstat_error (const std::string &msg)
 Report together with zlib error status & throw.
 
- Protected Attributes inherited from shore::gzxbase
int m_zstat
 zlib error status.
 

Detailed Description

GZIP compress a stream in blocks.


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