ocean.io.compress.lzo.LzoHeader

Generates and reads headers of chunks of compressed data, containing the data length, compression type and checksum

There are two header versions: 1. the regular LzoHeader, 2. the Null header which has the same meaning as a Stop header.

LzoHeader data layout if size_t has a width of 32-bit: void[16] header

header[0 .. 4] - length of chunk[4 .. $] (or compressed data length + header length - 4) header[4 .. 8] - 32-bit CRC value of following header elements and compressed data (chunk[8 .. $]), calculated using lzo_crc32() header[8 .. 12] - chunk/compression type code (signed integer) header[12 .. 16] - length of uncompressed data (may be 0)

More...

Members

Structs

LzoHeader
struct LzoHeader(bool LengthInline = true)

LzoHeader structure

Terminator
struct Terminator

Terminator structure

Templates

SizeofTuple
template SizeofTuple(T...)

Calculates the sum of the sizes of the types of T

Detailed Description

Null header data layout if size_t has a width of 32-bit: void[4] null_header

header[0 .. 4] - all bytes set to value 0

Meta

License

Boost Software License Version 1.0. See LICENSE_BOOST.txt for details. Alternatively, this file may be distributed under the terms of the Tango 3-Clause BSD License (see LICENSE_BSD.txt for details).