Created by the British Broadcasting Corporation.
#include <arith_codec.h>
dirac::ArithCodecBase::ArithCodecBase | ( | ByteIO * | p_byteio, | |
size_t | number_of_contexts | |||
) |
Creates an ArithCodec object to decode input based on a set of parameters.
p_byteio | input/output for encoded bits
|
virtual dirac::ArithCodecBase::~ArithCodecBase | ( | ) | [virtual] |
Destructor is virtual as this class is abstract.
dirac::ArithCodecBase::ArithCodecBase | ( | const ArithCodecBase & | cpy | ) | [private] |
int dirac::ArithCodecBase::ByteCount | ( | ) | const [protected] |
Referenced by dirac::ArithCodec< T >::Compress().
int dirac::ArithCodecBase::DecodeSInt | ( | const int | bin1, | |
const int | max_bin | |||
) | [inline, protected] |
References DecodeSymbol(), and DecodeUInt().
bool dirac::ArithCodecBase::DecodeSymbol | ( | int | context_num | ) | [inline, protected] |
References dirac::Context::GetScaledProb0(), InputBit(), m_code, m_context_list, m_low_code, m_range, and dirac::Context::Update().
Referenced by DecodeSInt(), and DecodeUInt().
unsigned int dirac::ArithCodecBase::DecodeUInt | ( | const int | bin1, | |
const int | max_bin | |||
) | [inline, protected] |
References DecodeSymbol().
Referenced by DecodeSInt().
void dirac::ArithCodecBase::EncodeSInt | ( | const int | value, | |
const int | bin1, | |||
const int | max_bin | |||
) | [inline, protected] |
References EncodeSymbol(), and EncodeUInt().
void dirac::ArithCodecBase::EncodeSymbol | ( | const bool | symbol, | |
const int | context_num | |||
) | [inline, protected] |
References dirac::Context::GetScaledProb0(), m_byteio, m_context_list, m_low_code, m_range, m_underflow, dirac::Context::Update(), and dirac::ByteIO::WriteBit().
Referenced by EncodeSInt(), and EncodeUInt().
void dirac::ArithCodecBase::EncodeUInt | ( | const unsigned int | value, | |
const int | bin1, | |||
const int | max_bin | |||
) | [inline, protected] |
References EncodeSymbol().
Referenced by EncodeSInt().
void dirac::ArithCodecBase::FlushEncoder | ( | ) | [protected] |
Referenced by dirac::ArithCodec< T >::Compress().
void dirac::ArithCodecBase::InitDecoder | ( | int | num_bytes | ) | [protected] |
Referenced by dirac::ArithCodec< T >::Decompress().
void dirac::ArithCodecBase::InitEncoder | ( | ) | [protected] |
Referenced by dirac::ArithCodec< T >::Compress().
bool dirac::ArithCodecBase::InputBit | ( | ) | [inline, private] |
References m_data_ptr, and m_input_bits_left.
Referenced by DecodeSymbol().
ArithCodecBase& dirac::ArithCodecBase::operator= | ( | const ArithCodecBase & | rhs | ) | [private] |
void dirac::ArithCodecBase::ReadAllData | ( | int | num_bytes | ) | [private] |
ByteIO* dirac::ArithCodecBase::m_byteio [private] |
Referenced by EncodeSymbol().
unsigned int dirac::ArithCodecBase::m_code [private] |
Referenced by DecodeSymbol().
std::vector<Context> dirac::ArithCodecBase::m_context_list [protected] |
Referenced by DecodeSymbol(), and EncodeSymbol().
char* dirac::ArithCodecBase::m_data_ptr [private] |
Referenced by InputBit().
char* dirac::ArithCodecBase::m_decode_data_ptr [private] |
int dirac::ArithCodecBase::m_input_bits_left [private] |
Referenced by InputBit().
unsigned int dirac::ArithCodecBase::m_low_code [private] |
Referenced by DecodeSymbol(), and EncodeSymbol().
unsigned int dirac::ArithCodecBase::m_range [private] |
Referenced by DecodeSymbol(), and EncodeSymbol().
unsigned int dirac::ArithCodecBase::m_scount [private] |
int dirac::ArithCodecBase::m_underflow [private] |
Referenced by EncodeSymbol().
© 2004 British Broadcasting Corporation.
Dirac code licensed under the Mozilla Public License (MPL) Version 1.1.
HTML documentation generated by Dimitri van Heesch's
excellent Doxygen tool.