# Dirac - A Video Codec

Created by the British Broadcasting Corporation.

# dirac::MvDataByteIO Class Reference

Represents compressed sequence-parameter data used in an AccessUnit.

`#include <mvdata_byteio.h>`

Inheritance diagram for dirac::MvDataByteIO:

[legend]
Collaboration diagram for dirac::MvDataByteIO:

[legend]
List of all members.

## Public Member Functions

- MvDataByteIO (FrameParams &fparams, CodecParams &c_params)
    Constructor.
- MvDataByteIO (ByteIO &byte_io, FrameParams &fparams, CodecParams &c_params)
    Constructor.
- virtual ~MvDataByteIO ()
    Destructor.
- void CollateByteStats (DiracByteStats &dirac_byte_stats)
    Gathers byte stats on the motion vector data.
- void Output ()
    Outputs motion vector data Dirac byte-format.
- void Input ()
    Inputs motion vector information.
- virtual const std::string GetBytes ()
    Get string containing coded bytes.
- ByteIO * BlockData ()
    Return pointer to the block data ByteIO stream.
- unsigned int BlockDataSize ()
    Return the input block data size.
- int GetSize () const
    Return the size.

## Private Member Functions

- void InputBlockParams ()
    Inputs block parameters.
- void InputMVPrecision ()
    Inputs Motion vector precision data.
- void InputGlobalMotionParams ()
    Inputs global motion parameters.
- void InputFramePredictionMode ()
    Inputs frame prediction mode.
- void InputFrameWeights ()
    Inputs Frame Weights.
- void OutputBlockParams ()
    Outputs block parameters.
- void OutputMVPrecision ()
    Outputs Motion vector precision data.
- void OutputGlobalMotionParams ()
    Outputs global motion parameters.
- void OutputFramePredictionMode ()
    Outputs frame prediction mode.
- void OutputFrameWeights ()
    Outputs Frame Weights.

## Private Attributes

- FrameParams & m_fparams
    Sequence paramters for intput/output.
- CodecParams & m_cparams
    Codec params - EncParams for Output and DecParams for input.
- const CodecParams m_default_cparams
    Default Codec params - EncParams for Output and DecParams for input.
- ByteIO m_block_data
    block data
- unsigned int m_block_size
    In block data size.

## Constructor & Destructor Documentation

dirac::MvDataByteIO::MvDataByteIO | ( | FrameParams & | fparams,
|  | CodecParams & | c_params |
| ) |  |  |

Parameters:

  | fparams | Frame Params
  | c_params | Codec parameters

dirac::MvDataByteIO::MvDataByteIO | ( | ByteIO & | byte_io,
|  | FrameParams & | fparams,
|  | CodecParams & | c_params |
| ) |  |  |

Parameters:

  | byte_io | Input/Output Byte stream
  | fparams | Frame Params
  | c_params | Codec parameters

virtual dirac::MvDataByteIO::~MvDataByteIO | ( |  | ) | `[virtual]`

## Member Function Documentation

ByteIO* dirac::MvDataByteIO::BlockData | ( |  | ) | `[inline]`

unsigned int dirac::MvDataByteIO::BlockDataSize | ( |  | ) | `[inline]`

void dirac::MvDataByteIO::CollateByteStats | ( | DiracByteStats & | dirac_byte_stats | ) | `[virtual]`

Parameters:

  | dirac_byte_stats | Stat container

Reimplemented from dirac::ByteIO.

virtual const std::string dirac::MvDataByteIO::GetBytes | ( |  | ) | `[virtual]`

Reimplemented from dirac::ByteIO.

int dirac::MvDataByteIO::GetSize | ( |  | ) | const`[virtual]`

Reimplemented from dirac::ByteIO.

void dirac::MvDataByteIO::Input | ( |  | ) |

void dirac::MvDataByteIO::InputBlockParams | ( |  | ) | `[private]`

void dirac::MvDataByteIO::InputFramePredictionMode | ( |  | ) | `[private]`

void dirac::MvDataByteIO::InputFrameWeights | ( |  | ) | `[private]`

void dirac::MvDataByteIO::InputGlobalMotionParams | ( |  | ) | `[private]`

void dirac::MvDataByteIO::InputMVPrecision | ( |  | ) | `[private]`

void dirac::MvDataByteIO::Output | ( |  | ) |

void dirac::MvDataByteIO::OutputBlockParams | ( |  | ) | `[private]`

void dirac::MvDataByteIO::OutputFramePredictionMode | ( |  | ) | `[private]`

void dirac::MvDataByteIO::OutputFrameWeights | ( |  | ) | `[private]`

void dirac::MvDataByteIO::OutputGlobalMotionParams | ( |  | ) | `[private]`

void dirac::MvDataByteIO::OutputMVPrecision | ( |  | ) | `[private]`

## Member Data Documentation

ByteIO dirac::MvDataByteIO::m_block_data`[private]`

unsigned int dirac::MvDataByteIO::m_block_size`[private]`

CodecParams& dirac::MvDataByteIO::m_cparams`[private]`

const CodecParams dirac::MvDataByteIO::m_default_cparams`[private]`

FrameParams& dirac::MvDataByteIO::m_fparams`[private]`

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

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