![]() |
Project
|
Container holding information to build Huffman tree. More...
#include <HuffmanCodec.h>
Public Types | |
using | self_type = HuffmanNode |
using | pointer = self_type * |
using | shared_pointer = std::shared_ptr< self_type > |
using | CodeType = _CodeType |
Public Member Functions | |
HuffmanNode () | |
HuffmanNode (const HuffmanNode &other)=default | |
HuffmanNode & | operator= (const HuffmanNode &other)=default |
~HuffmanNode ()=default | |
HuffmanNode (double weight, uint16_t index=~uint16_t(0)) | |
HuffmanNode (shared_pointer left, shared_pointer right) | |
bool | operator< (const HuffmanNode &other) const |
CodeType | getBinaryCode () const |
uint16_t | getBinaryCodeLength () const |
uint16_t | getIndex () const |
pointer | getLeftChild () const |
pointer | getRightChild () const |
void | setBinaryCode (uint16_t codeLen, CodeType code) |
self_type & | operator<<= (bool bit) |
self_type & | operator>>= (bool bit) |
void | print (std::ostream &stream=std::cout) const |
Container holding information to build Huffman tree.
The container holds information about child nodes in the tree, the accumulated weight (probability) according to coding model. Leave node, i.e. the end of the tree branches, also contain the Huffman code after assignment.
Definition at line 51 of file HuffmanCodec.h.
using o2::data_compression::HuffmanNode< _CodeType >::CodeType = _CodeType |
Definition at line 57 of file HuffmanCodec.h.
using o2::data_compression::HuffmanNode< _CodeType >::pointer = self_type* |
Definition at line 55 of file HuffmanCodec.h.
using o2::data_compression::HuffmanNode< _CodeType >::self_type = HuffmanNode |
Definition at line 54 of file HuffmanCodec.h.
using o2::data_compression::HuffmanNode< _CodeType >::shared_pointer = std::shared_ptr<self_type> |
Definition at line 56 of file HuffmanCodec.h.
|
inline |
Definition at line 59 of file HuffmanCodec.h.
|
default |
|
default |
|
inline |
Definition at line 64 of file HuffmanCodec.h.
|
inline |
Definition at line 69 of file HuffmanCodec.h.
|
inline |
Definition at line 81 of file HuffmanCodec.h.
|
inline |
Definition at line 82 of file HuffmanCodec.h.
|
inline |
Definition at line 83 of file HuffmanCodec.h.
|
inline |
Definition at line 86 of file HuffmanCodec.h.
|
inline |
Definition at line 87 of file HuffmanCodec.h.
|
inline |
Definition at line 79 of file HuffmanCodec.h.
|
inline |
Definition at line 95 of file HuffmanCodec.h.
|
default |
|
inline |
Definition at line 108 of file HuffmanCodec.h.
|
inline |
Definition at line 119 of file HuffmanCodec.h.
|
inline |
Definition at line 88 of file HuffmanCodec.h.