Dirac - A Video Codec

Created by the British Broadcasting Corporation.


Public Member Functions | Protected Attributes | Private Member Functions | List of all members
dirac::BiBlockDiff Class Referenceabstract

A virtual class for bi-directional differences.

#include <me_utils.h>

Inheritance diagram for dirac::BiBlockDiff:
Inheritance graph
[legend]
Collaboration diagram for dirac::BiBlockDiff:
Collaboration graph
[legend]

Public Member Functions

 BiBlockDiff (const PicArray &ref1, const PicArray &ref2, const PicArray &pic)
 Constructor, initialising the references and picture data.
 
virtual ~BiBlockDiff ()
 Virtual destructor.
 
virtual float Diff (const BlockDiffParams &dparams, const MVector &mv1, const MVector &mv2)=0
 Do the difference, returning SAD.
 

Protected Attributes

const PicArraym_pic_data
 
const PicArraym_ref_data1
 
const PicArraym_ref_data2
 

Private Member Functions

 BiBlockDiff (const BiBlockDiff &cpy)
 Private, bodyless copy-constructor: class should not be copied.
 
BiBlockDiffoperator= (const BiBlockDiff &rhs)
 Private, bodyless assignment=: class should not be assigned.
 

Constructor & Destructor Documentation

◆ BiBlockDiff() [1/2]

dirac::BiBlockDiff::BiBlockDiff ( const PicArray & ref1,
const PicArray & ref2,
const PicArray & pic )

◆ ~BiBlockDiff()

virtual dirac::BiBlockDiff::~BiBlockDiff ( )
inlinevirtual

◆ BiBlockDiff() [2/2]

dirac::BiBlockDiff::BiBlockDiff ( const BiBlockDiff & cpy)
private

Member Function Documentation

◆ Diff()

virtual float dirac::BiBlockDiff::Diff ( const BlockDiffParams & dparams,
const MVector & mv1,
const MVector & mv2 )
pure virtual

Do the difference, returning SAD

Parameters
dparamsblock parameters
mv1the motion vector being used for reference 1
mv2the motion vector being used for reference 2

Implemented in dirac::BiBlockHalfPel, dirac::BiBlockQuarterPel, and dirac::BiBlockEighthPel.

◆ operator=()

BiBlockDiff & dirac::BiBlockDiff::operator= ( const BiBlockDiff & rhs)
private

Member Data Documentation

◆ m_pic_data

const PicArray& dirac::BiBlockDiff::m_pic_data
protected

◆ m_ref_data1

const PicArray& dirac::BiBlockDiff::m_ref_data1
protected

◆ m_ref_data2

const PicArray& dirac::BiBlockDiff::m_ref_data2
protected

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

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