ALib C++ Library
Library Version: 2412 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 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 75 of file acalgos.inl.

Here is the call graph for this function:

◆ readIncremental()

template<typename TI >
void 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 401 of file acalgos.inl.

Here is the call graph for this function:

◆ readMinMax()

template<typename TI >
void 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 157 of file acalgos.inl.

Here is the call graph for this function:

◆ readSparse()

template<typename TI >
void 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 204 of file acalgos.inl.

Here is the call graph for this function:

◆ readUncompressed()

template<typename TI >
void 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 120 of file acalgos.inl.

Here is the call graph for this function:

◆ readVerySparse()

template<typename TI >
void 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 314 of file acalgos.inl.

Here is the call graph for this function:

◆ writeHuffman()

template<typename TI >
void 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 25 of file acalgos.inl.

Here is the call graph for this function:

◆ writeIncremental()

template<typename TI >
void 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 350 of file acalgos.inl.

Here is the call graph for this function:

◆ writeMinMax()

template<typename TI >
void 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 132 of file acalgos.inl.

Here is the call graph for this function:

◆ writeSparse()

template<typename TI >
void 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 178 of file acalgos.inl.

Here is the call graph for this function:

◆ writeUncompressed()

template<typename TI >
void 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 106 of file acalgos.inl.

Here is the call graph for this function:

◆ writeVerySparse()

template<typename TI >
void 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 221 of file acalgos.inl.

Here is the call graph for this function: