# Dirac - A Video Codec

Created by the British Broadcasting Corporation.

Public Member Functions | Protected Attributes | Private Member Functions
dirac::ArithCodecToVLCAdapter Class Reference

`#include <band_vlc.h>`

Inheritance diagram for dirac::ArithCodecToVLCAdapter:

List of all members.

## Public Member Functions
| ArithCodecToVLCAdapter (SubbandByteIO *subband_byteio, size_t number_of_contexts)
virtual | ~ArithCodecToVLCAdapter ()
int | Compress (CoeffArray &in_data)
void | Decompress (CoeffArray &out_data, int num_bytes)
void | EncodeSymbol (bool val, int)
bool | DecodeSymbol (int)
virtual void | DoWorkCode (CoeffArray &in_data)=0
virtual void | DoWorkDecode (CoeffArray &out_data)=0

## Protected Attributes
ByteIO * | m_byteio

## Private Member Functions
| ArithCodecToVLCAdapter (const ArithCodecToVLCAdapter &cpy)
| Private, bodyless copy constructor: class should not be copied.
ArithCodecToVLCAdapter & | operator= (const ArithCodecToVLCAdapter &rhs)
| Private, bodyless copy operator=: class should not be assigned.

## Detailed Description

Abstract VLC entropy codec base class

## Constructor & Destructor Documentation

dirac::ArithCodecToVLCAdapter::ArithCodecToVLCAdapter | ( | SubbandByteIO * | subband_byteio,
|  | size_t | number_of_contexts
| ) |  |

Constructor

virtual dirac::ArithCodecToVLCAdapter::~ArithCodecToVLCAdapter | ( |  | ) |
| inline virtual

Virtual Destructor

dirac::ArithCodecToVLCAdapter::ArithCodecToVLCAdapter | ( | const ArithCodecToVLCAdapter & | cpy | ) |
| private

## Member Function Documentation

int dirac::ArithCodecToVLCAdapter::Compress | ( | CoeffArray & | in_data | ) |

bool dirac::ArithCodecToVLCAdapter::DecodeSymbol | ( | int |  | ) |
| inline

References m_byteio, and dirac::ByteIO::ReadBoolB().

void dirac::ArithCodecToVLCAdapter::Decompress | ( | CoeffArray & | out_data,
|  | int | num_bytes
| ) |  |

virtual void dirac::ArithCodecToVLCAdapter::DoWorkCode | ( | CoeffArray & | in_data | ) |
| pure virtual

Purely virtual function that does the actual encoding. Derived classes must define it

Implemented in dirac::GenericBandCodec< ArithCodecToVLCAdapter >.

virtual void dirac::ArithCodecToVLCAdapter::DoWorkDecode | ( | CoeffArray & | out_data | ) |
| pure virtual

Purely virtual function that does the actual decoding. Derived classes must define it

Implemented in dirac::GenericBandCodec< ArithCodecToVLCAdapter >.

void dirac::ArithCodecToVLCAdapter::EncodeSymbol | ( | bool | val,
|  | int |
| ) |  |
| inline

References m_byteio, and dirac::ByteIO::WriteBit().

ArithCodecToVLCAdapter& dirac::ArithCodecToVLCAdapter::operator= | ( | const ArithCodecToVLCAdapter & | rhs | ) |
| private

## Member Data Documentation

ByteIO* dirac::ArithCodecToVLCAdapter::m_byteio
| protected

Input/output stream for Dirac-format bytes

Referenced by DecodeSymbol(), and EncodeSymbol().

The documentation for this class was generated from the following file:

- band_vlc.h

© 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.