byteme
C++ wrappers for buffered inputs
Loading...
Searching...
No Matches
byteme::GzipFileWriter Class Reference

Write uncompressed bytes to a Gzip-compressed file. More...

#include <GzipFileWriter.hpp>

Inheritance diagram for byteme::GzipFileWriter:
Collaboration diagram for byteme::GzipFileWriter:

Public Member Functions

 GzipFileWriter (const char *path, int compression_level=6, size_t buffer_size=65536)
 
 GzipFileWriter (const std::string &path, int compression_level=6, size_t buffer_size=65536)
 
void write (const unsigned char *buffer, size_t n)
 
void finish ()
 
void write (const std::string &x)
 
void write (const char *x)
 
void write (char x)
 
- Public Member Functions inherited from byteme::Writer
void write (const std::string &x)
 
void write (const char *x)
 
void write (char x)
 

Detailed Description

Write uncompressed bytes to a Gzip-compressed file.

This is basically a wrapper around Zlib's gzFile with correct closing and error checking.

Constructor & Destructor Documentation

◆ GzipFileWriter() [1/2]

byteme::GzipFileWriter::GzipFileWriter ( const char * path,
int compression_level = 6,
size_t buffer_size = 65536 )
inline
Parameters
pathPath to the file.
compression_levelGzip compression level.
buffer_sizeSize of the internal buffer.

◆ GzipFileWriter() [2/2]

byteme::GzipFileWriter::GzipFileWriter ( const std::string & path,
int compression_level = 6,
size_t buffer_size = 65536 )
inline
Parameters
pathPath to the file.
compression_levelGzip compression level.
buffer_sizeSize of the buffer to use for reading.

Member Function Documentation

◆ finish()

void byteme::GzipFileWriter::finish ( )
inlinevirtual

Indicate that the writing has finished and that the relevant clean-up (buffer flushing, file closing, etc.) should be performed. This should be called exactly once, after which no further calls to write() or finish() should be performed.

Implements byteme::Writer.

◆ write() [1/4]

void byteme::Writer::write ( char x)
inline

Write a single character to the output sink.

Parameters
xCharacter to be written.

◆ write() [2/4]

void byteme::Writer::write ( const char * x)
inline

Write a null-terminated C-string to the output sink.

Parameters
[in]xPointer to the string to be written.

◆ write() [3/4]

void byteme::Writer::write ( const std::string & x)
inline

Write a string to the output sink.

Parameters
xString to be written.

◆ write() [4/4]

void byteme::GzipFileWriter::write ( const unsigned char * buffer,
size_t n )
inlinevirtual

Write the next chunk of bytes to the output sink. This may or may not be internally buffered at the discretion of the concrete class.

Parameters
[in]bufferPointer to the start of an array containing the bytes to be written.
nLength of the array in buffer.

Implements byteme::Writer.


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