Sophie

Sophie

distrib > Mandriva > 2010.0 > x86_64 > by-pkgid > f250c16c2b84c9364a2f35a71121aaa2 > files > 133

lib64dirac-devel-1.0.2-2mdv2010.0.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.9 -->
  <div class="navpath"><a class="el" href="a00234.html">dirac</a>::<a class="el" href="a00079.html">IntraDCBandCodec</a>
  </div>
<div class="contents">
<h1>dirac::IntraDCBandCodec Class Reference</h1><!-- doxytag: class="dirac::IntraDCBandCodec" --><!-- doxytag: inherits="GenericIntraDCBandCodec&lt; ArithCodec&lt; CoeffArray &gt; &gt;" -->A class specially for coding the DC subband of Intra frames.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="a00163_source.html">band_codec.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for dirac::IntraDCBandCodec:</div>
<div class="dynsection">

<p><center><img src="a00079.png" usemap="#dirac::IntraDCBandCodec_map" border="0" alt=""></center>
<map name="dirac::IntraDCBandCodec_map">
<area href="a00075.html" alt="dirac::GenericIntraDCBandCodec< ArithCodec< CoeffArray > >" shape="rect" coords="0,168,377,192">
<area href="a00074.html" alt="dirac::GenericBandCodec< ArithCodec< CoeffArray > >" shape="rect" coords="0,112,377,136">
<area href="a00001.html" alt="dirac::ArithCodec< CoeffArray >" shape="rect" coords="0,56,377,80">
<area href="a00002.html" alt="dirac::ArithCodecBase" shape="rect" coords="0,0,377,24">
</map>
</div>

<p>
<a href="a00282.html">List of all members.</a><h2>Public Member Functions</h2>
<ul>
<li><a class="el" href="a00079.html#8a8a8f34dcaf5b563f259194b5aaf99c">IntraDCBandCodec</a> (<a class="el" href="a00141.html">SubbandByteIO</a> *subband_byteio, size_t number_of_contexts, const <a class="el" href="a00142.html">SubbandList</a> &amp;band_list)
<dl class="el"><dd class="mdescRight">Constructor.  <a href="#8a8a8f34dcaf5b563f259194b5aaf99c"></a><br></dl></ul>
<h2>Private Member Functions</h2>
<ul>
<li>void <a class="el" href="a00079.html#f0fe3814042ee758a6988d7b5e997101">DoWorkCode</a> (<a class="el" href="a00021.html">CoeffArray</a> &amp;in_data)
<dl class="el"><dd class="mdescRight">Initialize extra data required for error-feedback DC quantization.  <a href="#f0fe3814042ee758a6988d7b5e997101"></a><br></dl><li>void <a class="el" href="a00079.html#310cf073898fe6f4c6ac46a88e87086b">DoWorkDecode</a> (<a class="el" href="a00021.html">CoeffArray</a> &amp;out_data)
<dl class="el"><dd class="mdescRight">Ditto.  <a href="#310cf073898fe6f4c6ac46a88e87086b"></a><br></dl><li>void <a class="el" href="a00079.html#4b8080dd9f86ca3552522310c774913f">CodeCoeff</a> (<a class="el" href="a00021.html">CoeffArray</a> &amp;in_data, const int xpos, const int ypos)
<dl class="el"><dd class="mdescRight">Encode a single coefficient using error-feedback DC quantization.  <a href="#4b8080dd9f86ca3552522310c774913f"></a><br></dl><li>void <a class="el" href="a00079.html#552d6119c66ae1b84264879bf850f0c5">DecodeCoeff</a> (<a class="el" href="a00021.html">CoeffArray</a> &amp;out_data, const int xpos, const int ypos)
<dl class="el"><dd class="mdescRight">Decode a single coefficient using error-feedback DC quantization.  <a href="#552d6119c66ae1b84264879bf850f0c5"></a><br></dl><li><a class="el" href="a00079.html#4df07cdedc193d7ec3d06e4f73b989aa">IntraDCBandCodec</a> (const <a class="el" href="a00079.html">IntraDCBandCodec</a> &amp;cpy)
<dl class="el"><dd class="mdescRight">Private, bodyless copy constructor: class should not be copied.  <a href="#4df07cdedc193d7ec3d06e4f73b989aa"></a><br></dl><li><a class="el" href="a00079.html">IntraDCBandCodec</a> &amp; <a class="el" href="a00079.html#d5230de4cdb32f340cb043ebad68a855">operator=</a> (const <a class="el" href="a00079.html">IntraDCBandCodec</a> &amp;rhs)
<dl class="el"><dd class="mdescRight">Private, bodyless copy operator=: class should not be assigned.  <a href="#d5230de4cdb32f340cb043ebad68a855"></a><br></dl></ul>
<h2>Private Attributes</h2>
<ul>
<li><a class="el" href="a00021.html">CoeffArray</a> <a class="el" href="a00079.html#fcda0df3c3deb09fd8bf751d94c4eddf">m_dc_pred_res</a>
</ul>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A class specially for coding the DC subband of Intra frames, using intra-band prediction of coefficients. It uses the abstract <a class="el" href="a00001.html" title="Abstract binary arithmetic coding class.">ArithCodec</a> class <hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="8a8a8f34dcaf5b563f259194b5aaf99c"></a><!-- doxytag: member="dirac::IntraDCBandCodec::IntraDCBandCodec" ref="8a8a8f34dcaf5b563f259194b5aaf99c" args="(SubbandByteIO *subband_byteio, size_t number_of_contexts, const SubbandList &amp;band_list)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">dirac::IntraDCBandCodec::IntraDCBandCodec           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00141.html">SubbandByteIO</a> *&nbsp;</td>
          <td class="paramname"> <em>subband_byteio</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>number_of_contexts</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00142.html">SubbandList</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>band_list</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a <a class="el" href="a00079.html" title="A class specially for coding the DC subband of Intra frames.">IntraDCBandCodec</a> object to encode subband data, based on parameters <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>subband_byteio</em>&nbsp;</td><td>input/output for the encoded bits </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>number_of_contexts</em>&nbsp;</td><td>the number of contexts used in the encoding process </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>band_list</em>&nbsp;</td><td>the set of all the subbands </td></tr>
  </table>
</dl>

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

<p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="4b8080dd9f86ca3552522310c774913f"></a><!-- doxytag: member="dirac::IntraDCBandCodec::CodeCoeff" ref="4b8080dd9f86ca3552522310c774913f" args="(CoeffArray &amp;in_data, const int xpos, const int ypos)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dirac::IntraDCBandCodec::CodeCoeff           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00021.html">CoeffArray</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>in_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>xpos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>ypos</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented from <a class="el" href="a00074.html#e563efd53d42e61b4613bd6f5999e662">dirac::GenericBandCodec&lt; ArithCodec&lt; CoeffArray &gt; &gt;</a>.</p>

</div>
</div><p>
<a class="anchor" name="552d6119c66ae1b84264879bf850f0c5"></a><!-- doxytag: member="dirac::IntraDCBandCodec::DecodeCoeff" ref="552d6119c66ae1b84264879bf850f0c5" args="(CoeffArray &amp;out_data, const int xpos, const int ypos)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dirac::IntraDCBandCodec::DecodeCoeff           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00021.html">CoeffArray</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>out_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>xpos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>ypos</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented from <a class="el" href="a00074.html#9d930a4e0c1fad0e2f16227ec24bbf19">dirac::GenericBandCodec&lt; ArithCodec&lt; CoeffArray &gt; &gt;</a>.</p>

</div>
</div><p>
<a class="anchor" name="f0fe3814042ee758a6988d7b5e997101"></a><!-- doxytag: member="dirac::IntraDCBandCodec::DoWorkCode" ref="f0fe3814042ee758a6988d7b5e997101" args="(CoeffArray &amp;in_data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dirac::IntraDCBandCodec::DoWorkCode           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00021.html">CoeffArray</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>in_data</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented from <a class="el" href="a00074.html#fbe9e6a13374a7b030ae28397b84395f">dirac::GenericBandCodec&lt; ArithCodec&lt; CoeffArray &gt; &gt;</a>.</p>

</div>
</div><p>
<a class="anchor" name="310cf073898fe6f4c6ac46a88e87086b"></a><!-- doxytag: member="dirac::IntraDCBandCodec::DoWorkDecode" ref="310cf073898fe6f4c6ac46a88e87086b" args="(CoeffArray &amp;out_data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dirac::IntraDCBandCodec::DoWorkDecode           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00021.html">CoeffArray</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>out_data</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented from <a class="el" href="a00074.html#2db4a20896bde64fcae2c6fe35583078">dirac::GenericBandCodec&lt; ArithCodec&lt; CoeffArray &gt; &gt;</a>.</p>

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

<p>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="fcda0df3c3deb09fd8bf751d94c4eddf"></a><!-- doxytag: member="dirac::IntraDCBandCodec::m_dc_pred_res" ref="fcda0df3c3deb09fd8bf751d94c4eddf" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00021.html">CoeffArray</a> <a class="el" href="a00079.html#fcda0df3c3deb09fd8bf751d94c4eddf">dirac::IntraDCBandCodec::m_dc_pred_res</a><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="a00163_source.html">band_codec.h</a></ul>
</div>
<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>