Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > media > main-release > by-pkgid > b91608bcc8cdfae85c75f04c03683d58 > files > 46

lib64dirac-devel-0.9.1-1mdv2008.1.x86_64.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Dirac Video Codec</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body bgcolor="#ffffff">
<h1 align="center" color="#606080">
Dirac - A Video Codec
</h1>
<p align="center">
Created by the <a href="http://www.bbc.co.uk">British Broadcasting Corporation</a>.
</p>
<hr>
<!-- Generated by Doxygen 1.5.4 -->
<div class="nav">
<a class="el" href="a00226.html">dirac</a>::<a class="el" href="a00015.html">BlockDiffQuarterPel</a></div>
<h1>dirac::BlockDiffQuarterPel Class Reference</h1><!-- doxytag: class="dirac::BlockDiffQuarterPel" --><!-- doxytag: inherits="dirac::BlockDiffUp" -->A class for doing differences with quarter-pixel accurate vectors.  
<a href="#_details"></a>
<p>
<code>#include &lt;<a class="el" href="a00266.html">me_utils.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for dirac::BlockDiffQuarterPel:</div>
<div class="dynsection">

<p><center><img src="a00015.png" usemap="#dirac::BlockDiffQuarterPel_map" border="0" alt=""></center>
<map name="dirac::BlockDiffQuarterPel_map">
<area href="a00016.html" alt="dirac::BlockDiffUp" shape="rect" coords="0,56,160,80">
<area href="a00011.html" alt="dirac::BlockDiff" shape="rect" coords="0,0,160,24">
</map>
</div>

<p>
<a href="a00435.html">List of all members.</a><h2>Public Member Functions</h2>
<ul>
<li><a class="el" href="a00015.html#acf079bf677b9556edd0c00ea2d1c037">BlockDiffQuarterPel</a> (const <a class="el" href="a00113.html">PicArray</a> &amp;ref, const <a class="el" href="a00113.html">PicArray</a> &amp;pic)
<dl class="el"><dd class="mdescRight">Constructor, initialising the reference and picture data.  <a href="#acf079bf677b9556edd0c00ea2d1c037"></a><br></dl><li><a class="el" href="a00015.html#3f4722a6940897eb0f97584786bade5f">~BlockDiffQuarterPel</a> ()
<dl class="el"><dd class="mdescRight">Destructor.  <a href="#3f4722a6940897eb0f97584786bade5f"></a><br></dl><li>float <a class="el" href="a00015.html#13abb40783f5c4131cfa40b5002a6c7e">Diff</a> (const <a class="el" href="a00014.html">BlockDiffParams</a> &amp;dparams, const <a class="el" href="a00099.html">MVector</a> &amp;mv)
<dl class="el"><dd class="mdescRight">Do the difference, returning SAD.  <a href="#13abb40783f5c4131cfa40b5002a6c7e"></a><br></dl><li>void <a class="el" href="a00015.html#f89563a8bddd0da80cbcdddd238dd01a">Diff</a> (const <a class="el" href="a00014.html">BlockDiffParams</a> &amp;dparams, const <a class="el" href="a00099.html">MVector</a> &amp;mv, const float mvcost, const float lambda, <a class="el" href="a00100.html">MvCostData</a> &amp;best_costs, <a class="el" href="a00099.html">MVector</a> &amp;best_mv)
<dl class="el"><dd class="mdescRight">Do the actual difference, overwriting the best MV so far if appropriate.  <a href="#f89563a8bddd0da80cbcdddd238dd01a"></a><br></dl></ul>
<h2>Private Member Functions</h2>
<ul>
<li><a class="el" href="a00015.html#f947e7c92afc3aab6e4b7e40e5366271">BlockDiffQuarterPel</a> (const <a class="el" href="a00015.html">BlockDiffQuarterPel</a> &amp;cpy)
<dl class="el"><dd class="mdescRight">Private, bodyless copy-constructor: class should not be copied.  <a href="#f947e7c92afc3aab6e4b7e40e5366271"></a><br></dl><li><a class="el" href="a00015.html">BlockDiffQuarterPel</a> &amp; <a class="el" href="a00015.html#797e8e11a696617944466e5471e4a3c2">operator=</a> (const <a class="el" href="a00015.html">BlockDiffQuarterPel</a> &amp;rhs)
<dl class="el"><dd class="mdescRight">Private, bodyless assignment=: class should not be assigned.  <a href="#797e8e11a696617944466e5471e4a3c2"></a><br></dl></ul>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="acf079bf677b9556edd0c00ea2d1c037"></a><!-- doxytag: member="dirac::BlockDiffQuarterPel::BlockDiffQuarterPel" ref="acf079bf677b9556edd0c00ea2d1c037" args="(const PicArray &amp;ref, const PicArray &amp;pic)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">dirac::BlockDiffQuarterPel::BlockDiffQuarterPel           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00113.html">PicArray</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>ref</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00113.html">PicArray</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pic</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="3f4722a6940897eb0f97584786bade5f"></a><!-- doxytag: member="dirac::BlockDiffQuarterPel::~BlockDiffQuarterPel" ref="3f4722a6940897eb0f97584786bade5f" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">dirac::BlockDiffQuarterPel::~BlockDiffQuarterPel           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="f947e7c92afc3aab6e4b7e40e5366271"></a><!-- doxytag: member="dirac::BlockDiffQuarterPel::BlockDiffQuarterPel" ref="f947e7c92afc3aab6e4b7e40e5366271" args="(const BlockDiffQuarterPel &amp;cpy)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">dirac::BlockDiffQuarterPel::BlockDiffQuarterPel           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00015.html">BlockDiffQuarterPel</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>cpy</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="13abb40783f5c4131cfa40b5002a6c7e"></a><!-- doxytag: member="dirac::BlockDiffQuarterPel::Diff" ref="13abb40783f5c4131cfa40b5002a6c7e" args="(const BlockDiffParams &amp;dparams, const MVector &amp;mv)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float dirac::BlockDiffQuarterPel::Diff           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00014.html">BlockDiffParams</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>dparams</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00099.html">MVector</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>mv</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Do the difference, returning SAD <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dparams</em>&nbsp;</td><td>block parameters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mv</em>&nbsp;</td><td>the motion vector being used </td></tr>
  </table>
</dl>

<p>Implements <a class="el" href="a00016.html#c37ea269dc71e0bd0802a4ead1b11f48">dirac::BlockDiffUp</a>.</p>

</div>
</div><p>
<a class="anchor" name="f89563a8bddd0da80cbcdddd238dd01a"></a><!-- doxytag: member="dirac::BlockDiffQuarterPel::Diff" ref="f89563a8bddd0da80cbcdddd238dd01a" args="(const BlockDiffParams &amp;dparams, const MVector &amp;mv, const float mvcost, const float lambda, MvCostData &amp;best_costs, MVector &amp;best_mv)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dirac::BlockDiffQuarterPel::Diff           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00014.html">BlockDiffParams</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>dparams</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00099.html">MVector</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>mv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const float&nbsp;</td>
          <td class="paramname"> <em>mvcost</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const float&nbsp;</td>
          <td class="paramname"> <em>lambda</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00100.html">MvCostData</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>best_costs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00099.html">MVector</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>best_mv</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Do the actual difference, overwriting the best MV so far if appropriate, and bailing out if we do worse <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dparams</em>&nbsp;</td><td>block parameters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mv</em>&nbsp;</td><td>the motion vector being used </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mvcost</em>&nbsp;</td><td>the (prediction) cost of the motion vector mv </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>lambda</em>&nbsp;</td><td>the weighting to be given to mvcost </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>best_costs</em>&nbsp;</td><td>the best Lagrangian costs obtained yet </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>best_mv</em>&nbsp;</td><td>the MV giving the best Lagrangian costs so far </td></tr>
  </table>
</dl>

<p>Implements <a class="el" href="a00016.html#9f39290b437ec2ee1ccc7cc5c2a7a384">dirac::BlockDiffUp</a>.</p>

</div>
</div><p>
<a class="anchor" name="797e8e11a696617944466e5471e4a3c2"></a><!-- doxytag: member="dirac::BlockDiffQuarterPel::operator=" ref="797e8e11a696617944466e5471e4a3c2" args="(const BlockDiffQuarterPel &amp;rhs)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00015.html">BlockDiffQuarterPel</a>&amp; dirac::BlockDiffQuarterPel::operator=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00015.html">BlockDiffQuarterPel</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>rhs</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="a00266.html">me_utils.h</a></ul>
<hr>
<p align="center"><small>
&copy; 2004 British Broadcasting Corporation.
Dirac code licensed under the <a href="http://www.mozilla.org/MPL/">Mozilla Public License (MPL) Version 1.1</a>.<br>
HTML documentation generated by Dimitri van Heesch's
excellent <a href="http://www.doxygen.org">Doxygen</a> tool.
</small></p>
</body>
</html>