ALib C++ Library
Library Version: 2510 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
alib::bitbuffer::ac_v1 Namespace Reference

Description:

This sub-namespace of ALib BitBuffer provides algorithms to compress integral arrays. Classes ac_v1::ArrayCompressor and ac_v1::HuffmanEncoder implement some data formats defined on bit-streams, which, in future versions of ALib, may be changed. With such future changes, theses classes will be published in a next enumerated namespace, parallel to this one.
This approach will allow software to read existing datasets from files (explicitly using older versions of the classes by selecting them via the namespace) and convert the data to the new binary format.

Type aliases alib::ArrayCompressor, alib::HuffmanEncoder and alib::HuffmanDecoder will always refer to the latest version.

Note
Currently, there is no other version of the class available.

Type Index:

class  ArrayCompressor
 
class  HuffmanDecoder
 
class  HuffmanEncoder
 

Function Index:

template<typename TI>
void readHuffman (BitReader &br, ArrayCompressor::Array< TI > &data)
 
template<typename TI>
void readIncremental (BitReader &br, ArrayCompressor::Array< TI > &data)
 
template<typename TI>
void readMinMax (BitReader &br, ArrayCompressor::Array< TI > &data)
 
template<typename TI>
void readSparse (BitReader &br, ArrayCompressor::Array< TI > &data)
 
template<typename TI>
void readUncompressed (BitReader &br, ArrayCompressor::Array< TI > &data)
 
template<typename TI>
void readVerySparse (BitReader &br, ArrayCompressor::Array< TI > &data)
 
template<typename TI>
void writeHuffman (BitWriter &bw, ArrayCompressor::Array< TI > &data)
 
template<typename TI>
void writeIncremental (BitWriter &bw, ArrayCompressor::Array< TI > &data)
 
template<typename TI>
void writeMinMax (BitWriter &bw, ArrayCompressor::Array< TI > &data)
 
template<typename TI>
void writeSparse (BitWriter &bw, ArrayCompressor::Array< TI > &data)
 
template<typename TI>
void writeUncompressed (BitWriter &bw, ArrayCompressor::Array< TI > &data)
 
template<typename TI>
void writeVerySparse (BitWriter &bw, ArrayCompressor::Array< TI > &data)
 

Function Details:

◆ readHuffman()

template<typename TI>
void alib::bitbuffer::ac_v1::readHuffman ( BitReader & br,
ArrayCompressor::Array< TI > & data )

Reads data compressed using class HuffmanDecoder.

Template Parameters
TIThe integral type of the array to read back.
Parameters
brThe bit reader to use.
dataThe array to read the data to.

Definition at line 65 of file acalgos.inl.inl.

Here is the call graph for this function:

◆ readIncremental()

template<typename TI>
void alib::bitbuffer::ac_v1::readIncremental ( BitReader & br,
ArrayCompressor::Array< TI > & data )

Reads data compressed with writeIncremental.

Template Parameters
TIThe integral type of the array to read back.
Parameters
brThe bit reader to use.
dataThe array to read the data to.

Definition at line 391 of file acalgos.inl.inl.

Here is the call graph for this function:

◆ readMinMax()

template<typename TI>
void alib::bitbuffer::ac_v1::readMinMax ( BitReader & br,
ArrayCompressor::Array< TI > & data )

Reads data compressed with method writeMinMax.

Template Parameters
TIThe integral type of the array to read back.
Parameters
brThe bit reader to use.
dataThe array to read the data to.

Definition at line 147 of file acalgos.inl.inl.

Here is the call graph for this function:

◆ readSparse()

template<typename TI>
void alib::bitbuffer::ac_v1::readSparse ( BitReader & br,
ArrayCompressor::Array< TI > & data )

Reads data compressed with method writeSparse.

Template Parameters
TIThe integral type of the array to read back.
Parameters
brThe bit reader to use.
dataThe array to read the data to.

Definition at line 194 of file acalgos.inl.inl.

Here is the call graph for this function:

◆ readUncompressed()

template<typename TI>
void alib::bitbuffer::ac_v1::readUncompressed ( BitReader & br,
ArrayCompressor::Array< TI > & data )

Reads data compressed using simply the mechanics provided with class BitWriter which tries to shorten integrals on writing.

Template Parameters
TIThe integral type of the array to read back.
Parameters
brThe bit reader to use.
dataThe array to read the data to.

Definition at line 110 of file acalgos.inl.inl.

Here is the call graph for this function:

◆ readVerySparse()

template<typename TI>
void alib::bitbuffer::ac_v1::readVerySparse ( BitReader & br,
ArrayCompressor::Array< TI > & data )

Reads data compressed with method writeVerySparse.

Template Parameters
TIThe integral type of the array to read back.
Parameters
brThe bit reader to use.
dataThe array to read the data to.

Definition at line 304 of file acalgos.inl.inl.

Here is the call graph for this function:

◆ writeHuffman()

template<typename TI>
void alib::bitbuffer::ac_v1::writeHuffman ( BitWriter & bw,
ArrayCompressor::Array< TI > & data )

Writes data compressed using class HuffmanEncoder.

Template Parameters
TIThe integral type of the array to write.
Parameters
bwThe bit writer to use.
dataThe array to read the data from.

Definition at line 15 of file acalgos.inl.inl.

Here is the call graph for this function:

◆ writeIncremental()

template<typename TI>
void alib::bitbuffer::ac_v1::writeIncremental ( BitWriter & bw,
ArrayCompressor::Array< TI > & data )

Writes array data incrementally.

Template Parameters
TIThe integral type of the array to write.
Parameters
bwThe bit writer to use.
dataThe array to read the data from.

Definition at line 340 of file acalgos.inl.inl.

Here is the call graph for this function:

◆ writeMinMax()

template<typename TI>
void alib::bitbuffer::ac_v1::writeMinMax ( BitWriter & bw,
ArrayCompressor::Array< TI > & data )

Writes array data by writing only the difference to the minimum found value.

Template Parameters
TIThe integral type of the array to write.
Parameters
bwThe bit writer to use.
dataThe array to read the data from.

Definition at line 122 of file acalgos.inl.inl.

Here is the call graph for this function:

◆ writeSparse()

template<typename TI>
void alib::bitbuffer::ac_v1::writeSparse ( BitWriter & bw,
ArrayCompressor::Array< TI > & data )

Writes array data assuming it is sparsely set.

Template Parameters
TIThe integral type of the array to write.
Parameters
bwThe bit writer to use.
dataThe array to read the data from.

Definition at line 168 of file acalgos.inl.inl.

Here is the call graph for this function:

◆ writeUncompressed()

template<typename TI>
void alib::bitbuffer::ac_v1::writeUncompressed ( BitWriter & bw,
ArrayCompressor::Array< TI > & data )

Writes array data by simply using the mechanics provided with class BitWriter, which tries to shorten integrals on writing.

Template Parameters
TIThe integral type of the array to write.
Parameters
bwThe bit writer to use.
dataThe array to read the data from.

Definition at line 96 of file acalgos.inl.inl.

Here is the call graph for this function:

◆ writeVerySparse()

template<typename TI>
void alib::bitbuffer::ac_v1::writeVerySparse ( BitWriter & bw,
ArrayCompressor::Array< TI > & data )

Writes array data assuming it is very sparsely set.

Template Parameters
TIThe integral type of the array to write.
Parameters
bwThe bit writer to use.
dataThe array to read the data from.

Definition at line 211 of file acalgos.inl.inl.

Here is the call graph for this function: