<!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="a00235.html">dirac_instr</a>::<a class="el" href="a00058.html">DrawOverlay</a> </div> <div class="contents"> <h1>dirac_instr::DrawOverlay Class Reference</h1><!-- doxytag: class="dirac_instr::DrawOverlay" -->Base class for block overlay objects. <p> <code>#include <<a class="el" href="a00189_source.html">draw_overlay.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for dirac_instr::DrawOverlay:</div> <div class="dynsection"> <p><center><img src="a00058.png" usemap="#dirac_instr::DrawOverlay_map" border="0" alt=""></center> <map name="dirac_instr::DrawOverlay_map"> <area href="a00054.html" alt="dirac_instr::DrawGMInliers" shape="rect" coords="0,56,225,80"> <area href="a00055.html" alt="dirac_instr::DrawMotionArrows" shape="rect" coords="235,56,460,80"> <area href="a00056.html" alt="dirac_instr::DrawMotionColour" shape="rect" coords="470,56,695,80"> <area href="a00060.html" alt="dirac_instr::DrawPredMode" shape="rect" coords="705,56,930,80"> <area href="a00061.html" alt="dirac_instr::DrawSad" shape="rect" coords="940,56,1165,80"> <area href="a00062.html" alt="dirac_instr::DrawSplitMode" shape="rect" coords="1175,56,1400,80"> <area href="a00057.html" alt="dirac_instr::DrawMotionColourArrows" shape="rect" coords="235,112,460,136"> </map> </div> <p> <a href="a00384.html">List of all members.</a><h2>Public Member Functions</h2> <ul> <li><a class="el" href="a00058.html#f95fb701aeb382a268895570e865d66b">DrawOverlay</a> (<a class="el" href="a00108.html">Picture</a> &, <a class="el" href="a00059.html">DrawPictureMotionParams</a> &) <dl class="el"><dd class="mdescRight">Constructor. <a href="#f95fb701aeb382a268895570e865d66b"></a><br></dl><li>virtual <a class="el" href="a00058.html#cb8e761a2ba7947bb496de8d8a0b3c38">~DrawOverlay</a> () <dl class="el"><dd class="mdescRight">Destructor. <a href="#cb8e761a2ba7947bb496de8d8a0b3c38"></a><br></dl><li>virtual void <a class="el" href="a00058.html#0f5bcaa7bf7aa1a68dcedc844ee2c033">DrawBlock</a> (int, int)=0 <dl class="el"><dd class="mdescRight">Carries out overlay for single block. <a href="#0f5bcaa7bf7aa1a68dcedc844ee2c033"></a><br></dl><li>virtual void <a class="el" href="a00058.html#a35e17ffbe778ce92c729f902d57edc0">DrawLegend</a> ()=0 <dl class="el"><dd class="mdescRight">Draws overlay legend. <a href="#a35e17ffbe778ce92c729f902d57edc0"></a><br></dl><li>void <a class="el" href="a00058.html#c35edca32277d6063067039a76ae6be9">DrawReferenceNumbers</a> (int, int) <dl class="el"><dd class="mdescRight">Draws picture numbers for both references. <a href="#c35edca32277d6063067039a76ae6be9"></a><br></dl><li>void <a class="el" href="a00058.html#ad2c9ea93f1e550e9078eebdee30d52f">DrawReferenceNumber</a> (int, int) <dl class="el"><dd class="mdescRight">Draws picture number for chosen reference. <a href="#ad2c9ea93f1e550e9078eebdee30d52f"></a><br></dl><li>void <a class="el" href="a00058.html#9583be241859dacd54d78dd5001dfee3">DrawPictureNumber</a> (int) <dl class="el"><dd class="mdescRight">Draws current picture number. <a href="#9583be241859dacd54d78dd5001dfee3"></a><br></dl><li>void <a class="el" href="a00058.html#516934e8b1a0c010e296047ccb8a99c4">DrawCharacter</a> (const <a class="el" href="a00107.html">PicArray</a> &, int, int) <dl class="el"><dd class="mdescRight">Draws a character / number / symbol. <a href="#516934e8b1a0c010e296047ccb8a99c4"></a><br></dl><li>const <a class="el" href="a00102.html">OverlaySymbols</a> & <a class="el" href="a00058.html#8d7839308b7506dbcada9ab2ee1d3516">Symbols</a> () const <dl class="el"><dd class="mdescRight">Returns reference to symbols object. <a href="#8d7839308b7506dbcada9ab2ee1d3516"></a><br></dl></ul> <h2>Protected Member Functions</h2> <ul> <li>void <a class="el" href="a00058.html#e61bad8b24938b0f4219588bfd065dd8">GetPowerUV</a> (int, int &, int &) <dl class="el"><dd class="mdescRight">Calculates U and V for particular value normalised to 1000. <a href="#e61bad8b24938b0f4219588bfd065dd8"></a><br></dl><li>void <a class="el" href="a00058.html#46e39f3cc0b1f23260bcc9c7153118e2">DrawPowerBar</a> (int, int) <dl class="el"><dd class="mdescRight">Draws power bar legend with given limits. <a href="#46e39f3cc0b1f23260bcc9c7153118e2"></a><br></dl><li>void <a class="el" href="a00058.html#62a25a15d6b4fdf3c6dca434c0c9c161">DrawValue</a> (int, int, int) <dl class="el"><dd class="mdescRight">Draws value. <a href="#62a25a15d6b4fdf3c6dca434c0c9c161"></a><br></dl><li>void <a class="el" href="a00058.html#113ac50a0a23dc7730a5aa544b11932c">DrawMvBlockUV</a> (int, int, int, int) <dl class="el"><dd class="mdescRight">Colours motion vector block referenced by motion vector. <a href="#113ac50a0a23dc7730a5aa544b11932c"></a><br></dl><li>void <a class="el" href="a00058.html#b3e821411a648011b74d200ea42fdc22">DrawBlockUV</a> (int, int, int, int) <dl class="el"><dd class="mdescRight">Colours an 8x8 block referenced by TL chroma pixel. <a href="#b3e821411a648011b74d200ea42fdc22"></a><br></dl></ul> <h2>Protected Attributes</h2> <ul> <li><a class="el" href="a00108.html">Picture</a> & <a class="el" href="a00058.html#64c2b21d8845e2aa847b59d2552344de">m_picture</a> <dl class="el"><dd class="mdescRight">Picture data. <a href="#64c2b21d8845e2aa847b59d2552344de"></a><br></dl><li><a class="el" href="a00059.html">DrawPictureMotionParams</a> & <a class="el" href="a00058.html#fb1041f15bfe21d92ac19ea8dd2e64f2">m_draw_params</a> <dl class="el"><dd class="mdescRight">Block parameters and chroma scaling. <a href="#fb1041f15bfe21d92ac19ea8dd2e64f2"></a><br></dl><li><a class="el" href="a00102.html">OverlaySymbols</a> <a class="el" href="a00058.html#168599c371dac9aede9859ea25056e38">m_symbols</a> <dl class="el"><dd class="mdescRight">Symbols. <a href="#168599c371dac9aede9859ea25056e38"></a><br></dl></ul> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="f95fb701aeb382a268895570e865d66b"></a><!-- doxytag: member="dirac_instr::DrawOverlay::DrawOverlay" ref="f95fb701aeb382a268895570e865d66b" args="(Picture &, DrawPictureMotionParams &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">dirac_instr::DrawOverlay::DrawOverlay </td> <td>(</td> <td class="paramtype"><a class="el" href="a00108.html">Picture</a> & </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00059.html">DrawPictureMotionParams</a> & </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="cb8e761a2ba7947bb496de8d8a0b3c38"></a><!-- doxytag: member="dirac_instr::DrawOverlay::~DrawOverlay" ref="cb8e761a2ba7947bb496de8d8a0b3c38" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual dirac_instr::DrawOverlay::~DrawOverlay </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="0f5bcaa7bf7aa1a68dcedc844ee2c033"></a><!-- doxytag: member="dirac_instr::DrawOverlay::DrawBlock" ref="0f5bcaa7bf7aa1a68dcedc844ee2c033" args="(int, int)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void dirac_instr::DrawOverlay::DrawBlock </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Implemented in <a class="el" href="a00054.html#248056948c5c15d581ddad0aa40e0274">dirac_instr::DrawGMInliers</a>, <a class="el" href="a00055.html#feeadce13231b9e9aa17c9836865bc81">dirac_instr::DrawMotionArrows</a>, <a class="el" href="a00056.html#b1667c3d43ee0a65e3d082efbac4bde6">dirac_instr::DrawMotionColour</a>, <a class="el" href="a00057.html#67cab7c48ecef94fe4cc344e87a1210e">dirac_instr::DrawMotionColourArrows</a>, <a class="el" href="a00060.html#e89af3211defe8b1d80184147d6e83f6">dirac_instr::DrawPredMode</a>, <a class="el" href="a00061.html#12e725393c3f05a18b2eb25ef65f6001">dirac_instr::DrawSad</a>, and <a class="el" href="a00062.html#87388a0b67c09db242baa0282d0bf8ed">dirac_instr::DrawSplitMode</a>.</p> </div> </div><p> <a class="anchor" name="b3e821411a648011b74d200ea42fdc22"></a><!-- doxytag: member="dirac_instr::DrawOverlay::DrawBlockUV" ref="b3e821411a648011b74d200ea42fdc22" args="(int, int, int, int)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dirac_instr::DrawOverlay::DrawBlockUV </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="516934e8b1a0c010e296047ccb8a99c4"></a><!-- doxytag: member="dirac_instr::DrawOverlay::DrawCharacter" ref="516934e8b1a0c010e296047ccb8a99c4" args="(const PicArray &, int, int)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dirac_instr::DrawOverlay::DrawCharacter </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00107.html">PicArray</a> & </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="a35e17ffbe778ce92c729f902d57edc0"></a><!-- doxytag: member="dirac_instr::DrawOverlay::DrawLegend" ref="a35e17ffbe778ce92c729f902d57edc0" args="()=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void dirac_instr::DrawOverlay::DrawLegend </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Implemented in <a class="el" href="a00054.html#84437fefb3de92c2f9dd6bc3ea2c76be">dirac_instr::DrawGMInliers</a>, <a class="el" href="a00055.html#8ec57e5a552a3e3f1461ba509831fbf2">dirac_instr::DrawMotionArrows</a>, <a class="el" href="a00056.html#b00f9a82a905c9c07da937c63dd3b8f3">dirac_instr::DrawMotionColour</a>, <a class="el" href="a00057.html#a30f12ac6fcdecbcc4c49815fe8676a1">dirac_instr::DrawMotionColourArrows</a>, <a class="el" href="a00060.html#9e9dbdb0dab5d6124264a07dfaef3246">dirac_instr::DrawPredMode</a>, <a class="el" href="a00061.html#94f867dd63fe4e04c317fe2323c905ad">dirac_instr::DrawSad</a>, and <a class="el" href="a00062.html#4dab4f1dd2546aa57a0786fd68b2ffb0">dirac_instr::DrawSplitMode</a>.</p> </div> </div><p> <a class="anchor" name="113ac50a0a23dc7730a5aa544b11932c"></a><!-- doxytag: member="dirac_instr::DrawOverlay::DrawMvBlockUV" ref="113ac50a0a23dc7730a5aa544b11932c" args="(int, int, int, int)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dirac_instr::DrawOverlay::DrawMvBlockUV </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="9583be241859dacd54d78dd5001dfee3"></a><!-- doxytag: member="dirac_instr::DrawOverlay::DrawPictureNumber" ref="9583be241859dacd54d78dd5001dfee3" args="(int)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dirac_instr::DrawOverlay::DrawPictureNumber </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="46e39f3cc0b1f23260bcc9c7153118e2"></a><!-- doxytag: member="dirac_instr::DrawOverlay::DrawPowerBar" ref="46e39f3cc0b1f23260bcc9c7153118e2" args="(int, int)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dirac_instr::DrawOverlay::DrawPowerBar </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="ad2c9ea93f1e550e9078eebdee30d52f"></a><!-- doxytag: member="dirac_instr::DrawOverlay::DrawReferenceNumber" ref="ad2c9ea93f1e550e9078eebdee30d52f" args="(int, int)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dirac_instr::DrawOverlay::DrawReferenceNumber </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="c35edca32277d6063067039a76ae6be9"></a><!-- doxytag: member="dirac_instr::DrawOverlay::DrawReferenceNumbers" ref="c35edca32277d6063067039a76ae6be9" args="(int, int)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dirac_instr::DrawOverlay::DrawReferenceNumbers </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="62a25a15d6b4fdf3c6dca434c0c9c161"></a><!-- doxytag: member="dirac_instr::DrawOverlay::DrawValue" ref="62a25a15d6b4fdf3c6dca434c0c9c161" args="(int, int, int)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dirac_instr::DrawOverlay::DrawValue </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="e61bad8b24938b0f4219588bfd065dd8"></a><!-- doxytag: member="dirac_instr::DrawOverlay::GetPowerUV" ref="e61bad8b24938b0f4219588bfd065dd8" args="(int, int &, int &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dirac_instr::DrawOverlay::GetPowerUV </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int & </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int & </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="8d7839308b7506dbcada9ab2ee1d3516"></a><!-- doxytag: member="dirac_instr::DrawOverlay::Symbols" ref="8d7839308b7506dbcada9ab2ee1d3516" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="a00102.html">OverlaySymbols</a>& dirac_instr::DrawOverlay::Symbols </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> <p>References <a class="el" href="a00189_source.html#l00195">m_symbols</a>.</p> </div> </div><p> <hr><h2>Member Data Documentation</h2> <a class="anchor" name="fb1041f15bfe21d92ac19ea8dd2e64f2"></a><!-- doxytag: member="dirac_instr::DrawOverlay::m_draw_params" ref="fb1041f15bfe21d92ac19ea8dd2e64f2" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00059.html">DrawPictureMotionParams</a>& <a class="el" href="a00058.html#fb1041f15bfe21d92ac19ea8dd2e64f2">dirac_instr::DrawOverlay::m_draw_params</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="64c2b21d8845e2aa847b59d2552344de"></a><!-- doxytag: member="dirac_instr::DrawOverlay::m_picture" ref="64c2b21d8845e2aa847b59d2552344de" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00108.html">Picture</a>& <a class="el" href="a00058.html#64c2b21d8845e2aa847b59d2552344de">dirac_instr::DrawOverlay::m_picture</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="168599c371dac9aede9859ea25056e38"></a><!-- doxytag: member="dirac_instr::DrawOverlay::m_symbols" ref="168599c371dac9aede9859ea25056e38" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00102.html">OverlaySymbols</a> <a class="el" href="a00058.html#168599c371dac9aede9859ea25056e38">dirac_instr::DrawOverlay::m_symbols</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> <p>Referenced by <a class="el" href="a00189_source.html#l00168">Symbols()</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="a00189_source.html">draw_overlay.h</a></ul> </div> <hr> <p align="center"><small> © 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>