# Dirac - A Video Codec

Created by the British Broadcasting Corporation.

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

An abstract class for doing block difference calculations.

`#include <me_utils.h>`

Inheritance diagram for dirac::BlockDiff:

List of all members.

## Public Member Functions
| BlockDiff (const PicArray &ref, const PicArray &pic)
| Constructor, initialising the reference and picture data.
virtual | ~BlockDiff ()
| Destructor.
virtual float | Diff (const BlockDiffParams &dparams, const MVector &mv)=0
| Do the difference, returning SAD.

## Protected Attributes
const PicArray & | m_pic_data
const PicArray & | m_ref_data

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

## Constructor & Destructor Documentation

dirac::BlockDiff::BlockDiff | ( | const PicArray & | ref,
|  | const PicArray & | pic
| ) |  |

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

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

## Member Function Documentation

virtual float dirac::BlockDiff::Diff | ( | const BlockDiffParams & | dparams,
|  | const MVector & | mv
| ) |  |
| pure virtual

Do the difference, returning SAD

Parameters:

  dparams | block parameters
  mv | the motion vector being used

Implemented in dirac::BlockDiffEighthPel, dirac::BlockDiffQuarterPel, dirac::BlockDiffHalfPel, dirac::BlockDiffUp, and dirac::PelBlockDiff.

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

## Member Data Documentation

const PicArray& dirac::BlockDiff::m_pic_data
| protected

const PicArray& dirac::BlockDiff::m_ref_data
| protected

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

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