Skip to content

Some Compression streams (gzip, snappy, lz4) implementing the ZeroCopy Interface from Google(TM) protobuf 2.4.1

License

Notifications You must be signed in to change notification settings

frankee/protobuf-zerocopy-compression

 
 

Repository files navigation

protobuf-zerocopy-compression

This C++ library implements some basic compressed input/output streams implementing the ZeroCopy Interface from Google(TM) protobuf 2.4.1. Currently, gzip, zlib, snappy and lz4 (included) are supported, but any blockwise compression algorithm could be plugged in with little effort.

Quickstart

The main interface is defined and documented in compressed_stream.h.

An example program is test.cc

A quick look:

#include <compressed_stream.h>
...
zerocc::AbstractCompressedInputStream * in = get_compressed_input_stream(&my_infile_stream);
...
zerocc::AbstractCompressedOutputStream * out = get_compressed_output_stream(&my_outfile_stream, zerocc::ZLIB, 4);

To compile the static library and the test program, just run

./waf go

Have fun!

About

Some Compression streams (gzip, snappy, lz4) implementing the ZeroCopy Interface from Google(TM) protobuf 2.4.1

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published