# Dirac - A Video Codec

Created by the British Broadcasting Corporation.

# dirac::SplitModeCodec Class Reference

Codes and decodes the split mode. More...

`#include <mv_codec.h>`

Inheritance diagram for dirac::SplitModeCodec:

List of all members.

## Public Member Functions

- SplitModeCodec (ByteIO *p_byteio, size_t number_of_contexts)
    Constructor.
- void InitContexts ()
    Initialises the contexts.

## Private Member Functions

- SplitModeCodec (const SplitModeCodec &cpy)
    Private, bodyless copy constructor: class should not be copied.
- SplitModeCodec & operator= (const SplitModeCodec &rhs)
    Private, bodyless copy operator=: class should not be assigned.
- void CodeVal (const MvData &in_data)
- void DecodeVal (MvData &out_data)
- void DoWorkCode (MvData &in_data)
    Does the work of actually coding the data.
- void DoWorkDecode (MvData &out_data)
    virtual decode-only functions ////////////////////////////
- void ResetAll ()
- unsigned int Prediction (const TwoDArray< int > &mbdata) const

## Private Attributes

- int m_sb_xp
- int m_sb_yp

## Detailed Description

Derived from the ArithCodec class, this codes and decodes the split mode

## Constructor & Destructor Documentation

dirac::SplitModeCodec::SplitModeCodec | ( | ByteIO * | p_byteio,
|  | size_t | number_of_contexts |
| ) |  |  |

Creates a MvDataCodec object to encode MV data, based on parameters

Parameters:

  | p_byteio | Input/output for the encoded bits
  | number_of_contexts | the number of contexts used

dirac::SplitModeCodec::SplitModeCodec | ( | const SplitModeCodec & | cpy | ) | `[private]`

## Member Function Documentation

void dirac::SplitModeCodec::CodeVal | ( | const MvData & | in_data | ) | `[private]`

void dirac::SplitModeCodec::DecodeVal | ( | MvData & | out_data | ) | `[private]`

void dirac::SplitModeCodec::DoWorkCode | ( | MvData & | in_data | ) | `[private, virtual]`

Implements dirac::ArithCodec< MvData >.

void dirac::SplitModeCodec::DoWorkDecode | ( | MvData & | out_data | ) | `[private, virtual]`

Implements dirac::ArithCodec< MvData >.

void dirac::SplitModeCodec::InitContexts | ( |  | ) |

SplitModeCodec& dirac::SplitModeCodec::operator= | ( | const SplitModeCodec & | rhs | ) | `[private]`

unsigned int dirac::SplitModeCodec::Prediction | ( | const TwoDArray< int > & | mbdata | ) | const`[private]`

void dirac::SplitModeCodec::ResetAll | ( |  | ) | `[private]`

## Member Data Documentation

int dirac::SplitModeCodec::m_sb_xp`[private]`

int dirac::SplitModeCodec::m_sb_yp`[private]`

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

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