# Dirac - A Video Codec

Created by the British Broadcasting Corporation.

# dirac::MvData Class Reference

Class for all the motion vector data. More...

`#include <motion.h>`

Inheritance diagram for dirac::MvData:

[legend]
Collaboration diagram for dirac::MvData:

[legend]

List of all members.

## Public Member Functions

- MvData (const int xnumMB, const int ynumMB, const int xnumblocks, const int ynumblocks, const int num_refs)
    Constructor.
- MvData (const int xnumMB, const int ynumMB, const int num_refs)
    Constructor.
- ~MvData ()
    Destructor.
- MvArray & Vectors (const int ref_id)
    Get the MVs for a reference.
- const MvArray & Vectors (const int ref_id) const
    Get the MVs for a reference.
- MvArray & GlobalMotionVectors (const int ref_id)
    Get the global MVs for a reference.
- const MvArray & GlobalMotionVectors (const int ref_id) const
    Get the global MVs for a reference.
- TwoDArray< ValueType > & DC (CompSort cs)
    Get the DC values for each component.
- const TwoDArray< ValueType > & DC (CompSort cs) const
    Get the DC values for each component.
- const OneDArray< TwoDArray
  < ValueType > * > & DC () const
    Get a reference to the vector holding component DC values.
- TwoDArray< PredMode > & Mode ()
    Get the block prediction modes.
- const TwoDArray< PredMode > & Mode () const
    Get the block prediction modes.
- TwoDArray< int > & MBSplit ()
    Get the MB split level.
- const TwoDArray< int > & MBSplit () const
    Get the MB split level.
- OneDArray< float > & GlobalMotionParameters (const int ref_id)
    Get the global motion model parameters.
- const OneDArray< float > & GlobalMotionParameters (const int ref_id) const
    Get the global motion model parameters.
- const unsigned int NumRefs () const
    Return the number of reference frames.

## Private Member Functions

- void InitMvData ()

## Private Attributes

- OneDArray< MvArray * > m_vectors
- OneDArray< MvArray * > m_gm_vectors
- TwoDArray< PredMode > m_modes
- OneDArray< TwoDArray
  < ValueType > * > m_dc
- TwoDArray< int > m_mb_split
- OneDArray< OneDArray< float > * > m_gm_params
- const unsigned int m_num_refs

## Detailed Description

Motion vector data: the motion vectors themselves, the blocks and macroblock modes.

## Constructor & Destructor Documentation

dirac::MvData::MvData | ( | const int | xnumMB,
|  | const int | ynumMB,
|  | const int | xnumblocks,
|  | const int | ynumblocks,
|  | const int | num_refs |
| ) |  |  |

Constructor takes:

Parameters:

  | xnumMB | the number of MBs horizontally
  | ynumMB | the number of MBs vertically
  | xnumblocks | the number of blocks horizontally
  | ynumblocks | the number of blocks vertically
  | num_refs | the number of references being used for the frame

dirac::MvData::MvData | ( | const int | xnumMB,
|  | const int | ynumMB,
|  | const int | num_refs |
| ) |  |  |

Constructor. Numbers of blocks derived from the number of MBs

Parameters:

  | xnumMB | the number of MBs horizontally
  | ynumMB | the number of MBs vertically
  | num_refs | the number of references being used for the frame

dirac::MvData::~MvData | ( |  | ) |

## Member Function Documentation

MvArray& dirac::MvData::Vectors | ( | const int | ref_id | ) | `[inline]`

const MvArray& dirac::MvData::Vectors | ( | const int | ref_id | ) | const`[inline]`

MvArray& dirac::MvData::GlobalMotionVectors | ( | const int | ref_id | ) | `[inline]`

const MvArray& dirac::MvData::GlobalMotionVectors | ( | const int | ref_id | ) | const`[inline]`

TwoDArray<ValueType>& dirac::MvData::DC | ( | CompSort | cs | ) | `[inline]`

const TwoDArray<ValueType>& dirac::MvData::DC | ( | CompSort | cs | ) | const`[inline]`

const OneDArray< TwoDArray<ValueType>* >& dirac::MvData::DC | ( |  | ) | const`[inline]`

TwoDArray<PredMode>& dirac::MvData::Mode | ( |  | ) | `[inline]`

const TwoDArray<PredMode>& dirac::MvData::Mode | ( |  | ) | const`[inline]`

TwoDArray<int>& dirac::MvData::MBSplit | ( |  | ) | `[inline]`

const TwoDArray<int>& dirac::MvData::MBSplit | ( |  | ) | const`[inline]`

OneDArray<float>& dirac::MvData::GlobalMotionParameters | ( | const int | ref_id | ) | `[inline]`

const OneDArray<float>& dirac::MvData::GlobalMotionParameters | ( | const int | ref_id | ) | const`[inline]`

const unsigned int dirac::MvData::NumRefs | ( |  | ) | const`[inline]`

void dirac::MvData::InitMvData | ( |  | ) | `[private]`

## Member Data Documentation

OneDArray<MvArray*> dirac::MvData::m_vectors `[private]`

OneDArray<MvArray*> dirac::MvData::m_gm_vectors `[private]`

TwoDArray<PredMode> dirac::MvData::m_modes `[private]`

OneDArray< TwoDArray<ValueType>* > dirac::MvData::m_dc `[private]`

TwoDArray<int> dirac::MvData::m_mb_split `[private]`

OneDArray< OneDArray<float>* > dirac::MvData::m_gm_params `[private]`

const unsigned int dirac::MvData::m_num_refs `[private]`

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

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