Updated API documentation

This commit is contained in:
Christophe Riccio
2013-12-25 23:48:55 +01:00
parent 792e5ff74f
commit fee3eddd37
459 changed files with 76100 additions and 48806 deletions

View File

@@ -3,7 +3,8 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>GLM_GTX_matrix_operation</title>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>GLM: GLM_GTC_ulp</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
@@ -15,18 +16,23 @@
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
<td style="padding-left: 0.5em;">
<div id="projectname">GLM
&#160;<span id="projectnumber">0.9.5</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.2 -->
<!-- Generated by Doxygen 1.8.5 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
@@ -35,212 +41,186 @@
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">GLM_GTX_matrix_operation</div> </div>
<div class="ingroups"><a class="el" href="a00139.html">GTX Extensions (Experimental)</a></div></div><!--header-->
<div class="title">GLM_GTC_ulp<div class="ingroups"><a class="el" href="a00164.html">GTC Extensions (Stable)</a></div></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gabe577b7504108952eb7a6dad10699cc0"><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr class="memitem:gabe577b7504108952eb7a6dad10699cc0"><td class="memTemplItemLeft" align="right" valign="top">detail::tmat2x2&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#gabe577b7504108952eb7a6dad10699cc0">diagonal2x2</a> (detail::tvec2&lt; valType &gt; const &amp;v)</td></tr>
<tr class="separator:gabe577b7504108952eb7a6dad10699cc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gada165842cf06dc7224850b7408576b25"><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr class="memitem:gada165842cf06dc7224850b7408576b25"><td class="memTemplItemLeft" align="right" valign="top">detail::tmat2x3&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#gada165842cf06dc7224850b7408576b25">diagonal2x3</a> (detail::tvec2&lt; valType &gt; const &amp;v)</td></tr>
<tr class="separator:gada165842cf06dc7224850b7408576b25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabe9910eda35b16bfe455d11b3f946d37"><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr class="memitem:gabe9910eda35b16bfe455d11b3f946d37"><td class="memTemplItemLeft" align="right" valign="top">detail::tmat2x4&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#gabe9910eda35b16bfe455d11b3f946d37">diagonal2x4</a> (detail::tvec2&lt; valType &gt; const &amp;v)</td></tr>
<tr class="separator:gabe9910eda35b16bfe455d11b3f946d37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf0d798eaf2ae1a04e943e34ca6650ff7"><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr class="memitem:gaf0d798eaf2ae1a04e943e34ca6650ff7"><td class="memTemplItemLeft" align="right" valign="top">detail::tmat3x2&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#gaf0d798eaf2ae1a04e943e34ca6650ff7">diagonal3x2</a> (detail::tvec2&lt; valType &gt; const &amp;v)</td></tr>
<tr class="separator:gaf0d798eaf2ae1a04e943e34ca6650ff7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3abe19ac33f7210ca982c0b474772bac"><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr class="memitem:ga3abe19ac33f7210ca982c0b474772bac"><td class="memTemplItemLeft" align="right" valign="top">detail::tmat3x3&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#ga3abe19ac33f7210ca982c0b474772bac">diagonal3x3</a> (detail::tvec3&lt; valType &gt; const &amp;v)</td></tr>
<tr class="separator:ga3abe19ac33f7210ca982c0b474772bac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga113fa9ed40e506a12b5aea2c9b75afca"><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr class="memitem:ga113fa9ed40e506a12b5aea2c9b75afca"><td class="memTemplItemLeft" align="right" valign="top">detail::tmat3x4&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#ga113fa9ed40e506a12b5aea2c9b75afca">diagonal3x4</a> (detail::tvec3&lt; valType &gt; const &amp;v)</td></tr>
<tr class="separator:ga113fa9ed40e506a12b5aea2c9b75afca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0eee99e7ad936da2db23cb7a83e743a5"><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr class="memitem:ga0eee99e7ad936da2db23cb7a83e743a5"><td class="memTemplItemLeft" align="right" valign="top">detail::tmat4x2&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#ga0eee99e7ad936da2db23cb7a83e743a5">diagonal4x2</a> (detail::tvec2&lt; valType &gt; const &amp;v)</td></tr>
<tr class="separator:ga0eee99e7ad936da2db23cb7a83e743a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac1f73e28418802c2ff536c31242e5dd1"><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr class="memitem:gac1f73e28418802c2ff536c31242e5dd1"><td class="memTemplItemLeft" align="right" valign="top">detail::tmat4x3&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#gac1f73e28418802c2ff536c31242e5dd1">diagonal4x3</a> (detail::tvec3&lt; valType &gt; const &amp;v)</td></tr>
<tr class="separator:gac1f73e28418802c2ff536c31242e5dd1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga25f5af850dbb9b484c0a46e25cf593a7"><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr class="memitem:ga25f5af850dbb9b484c0a46e25cf593a7"><td class="memTemplItemLeft" align="right" valign="top">detail::tmat4x4&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#ga25f5af850dbb9b484c0a46e25cf593a7">diagonal4x4</a> (detail::tvec4&lt; valType &gt; const &amp;v)</td></tr>
<tr class="separator:ga25f5af850dbb9b484c0a46e25cf593a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2e09bd6c8b0a9c91f6f5683d68245634"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:ga2e09bd6c8b0a9c91f6f5683d68245634"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL uint&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#ga2e09bd6c8b0a9c91f6f5683d68245634">float_distance</a> (T const &amp;x, T const &amp;y)</td></tr>
<tr class="separator:ga2e09bd6c8b0a9c91f6f5683d68245634"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga85355f2549d75789eb66e5d565d8ad26"><td class="memTemplParams" colspan="2">template&lt;typename T , template&lt; typename &gt; class vecType&gt; </td></tr>
<tr class="memitem:ga85355f2549d75789eb66e5d565d8ad26"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vecType&lt; uint &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#ga85355f2549d75789eb66e5d565d8ad26">float_distance</a> (vecType&lt; T &gt; const &amp;x, vecType&lt; T &gt; const &amp;y)</td></tr>
<tr class="separator:ga85355f2549d75789eb66e5d565d8ad26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae516ae554faa6117660828240e8bdaf0"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:gae516ae554faa6117660828240e8bdaf0"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#gae516ae554faa6117660828240e8bdaf0">next_float</a> (genType const &amp;x)</td></tr>
<tr class="separator:gae516ae554faa6117660828240e8bdaf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad107ec3d9697ef82032a33338a73ebdd"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:gad107ec3d9697ef82032a33338a73ebdd"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#gad107ec3d9697ef82032a33338a73ebdd">next_float</a> (genType const &amp;x, uint const &amp;Distance)</td></tr>
<tr class="separator:gad107ec3d9697ef82032a33338a73ebdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2fcbb7bfbfc595712bfddc51b0715b07"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:ga2fcbb7bfbfc595712bfddc51b0715b07"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#ga2fcbb7bfbfc595712bfddc51b0715b07">prev_float</a> (genType const &amp;x)</td></tr>
<tr class="separator:ga2fcbb7bfbfc595712bfddc51b0715b07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa399d5b6472a70e8952f9b26ecaacdec"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:gaa399d5b6472a70e8952f9b26ecaacdec"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00184.html#gaa399d5b6472a70e8952f9b26ecaacdec">prev_float</a> (genType const &amp;x, uint const &amp;Distance)</td></tr>
<tr class="separator:gaa399d5b6472a70e8952f9b26ecaacdec"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>Build diagonal matrices from vectors. </p>
<p>&lt;<a class="el" href="a00058.html" title="OpenGL Mathematics (glm.g-truc.net)">glm/gtx/matrix_operation.hpp</a>&gt; need to be included to use these functionalities. </p>
<p>Allow the measurement of the accuracy of a function against a reference implementation. </p>
<p>This extension works on floating-point data and provide results in ULP. &lt;<a class="el" href="a00139.html" title="OpenGL Mathematics (glm.g-truc.net) ">glm/gtc/ulp.hpp</a>&gt; need to be included to use these features. </p>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="gabe577b7504108952eb7a6dad10699cc0"></a>
<a class="anchor" id="ga2e09bd6c8b0a9c91f6f5683d68245634"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat2x2&lt;valType&gt; glm::diagonal2x2 </td>
<td class="memname">GLM_FUNC_DECL uint glm::float_distance </td>
<td>(</td>
<td class="paramtype">detail::tvec2&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>v</em></td><td>)</td>
<td class="paramtype">T const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">T const &amp;&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Return the distance in the number of ULP between 2 scalars. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00184.html" title="Allow the measurement of the accuracy of a function against a reference implementation. ">GLM_GTC_ulp</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga85355f2549d75789eb66e5d565d8ad26"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL vecType&lt;uint&gt; glm::float_distance </td>
<td>(</td>
<td class="paramtype">vecType&lt; T &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">vecType&lt; T &gt; const &amp;&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Return the distance in the number of ULP between 2 vectors. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00184.html" title="Allow the measurement of the accuracy of a function against a reference implementation. ">GLM_GTC_ulp</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gae516ae554faa6117660828240e8bdaf0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL genType glm::next_float </td>
<td>(</td>
<td class="paramtype">genType const &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Build a diagonal matrix. </p>
<p>From GLM_GTX_matrix_operation extension. </p>
<p>Return the next ULP value(s) after the input value(s). </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00184.html" title="Allow the measurement of the accuracy of a function against a reference implementation. ">GLM_GTC_ulp</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gada165842cf06dc7224850b7408576b25"></a>
<a class="anchor" id="gad107ec3d9697ef82032a33338a73ebdd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat2x3&lt;valType&gt; glm::diagonal2x3 </td>
<td class="memname">GLM_FUNC_DECL genType glm::next_float </td>
<td>(</td>
<td class="paramtype">detail::tvec2&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>v</em></td><td>)</td>
<td class="paramtype">genType const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint const &amp;&#160;</td>
<td class="paramname"><em>Distance</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Return the value(s) ULP distance after the input value(s). </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00184.html" title="Allow the measurement of the accuracy of a function against a reference implementation. ">GLM_GTC_ulp</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga2fcbb7bfbfc595712bfddc51b0715b07"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL genType glm::prev_float </td>
<td>(</td>
<td class="paramtype">genType const &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Build a diagonal matrix. </p>
<p>From GLM_GTX_matrix_operation extension. </p>
<p>Return the previous ULP value(s) before the input value(s). </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00184.html" title="Allow the measurement of the accuracy of a function against a reference implementation. ">GLM_GTC_ulp</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gabe9910eda35b16bfe455d11b3f946d37"></a>
<a class="anchor" id="gaa399d5b6472a70e8952f9b26ecaacdec"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat2x4&lt;valType&gt; glm::diagonal2x4 </td>
<td class="memname">GLM_FUNC_DECL genType glm::prev_float </td>
<td>(</td>
<td class="paramtype">detail::tvec2&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>v</em></td><td>)</td>
<td></td>
<td class="paramtype">genType const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
</table>
</div><div class="memdoc">
<p>Build a diagonal matrix. </p>
<p>From GLM_GTX_matrix_operation extension. </p>
</div>
</div>
<a class="anchor" id="gaf0d798eaf2ae1a04e943e34ca6650ff7"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat3x2&lt;valType&gt; glm::diagonal3x2 </td>
<td>(</td>
<td class="paramtype">detail::tvec2&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>v</em></td><td>)</td>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint const &amp;&#160;</td>
<td class="paramname"><em>Distance</em>&#160;</td>
</tr>
</table>
</div><div class="memdoc">
<p>Build a diagonal matrix. </p>
<p>From GLM_GTX_matrix_operation extension. </p>
</div>
</div>
<a class="anchor" id="ga3abe19ac33f7210ca982c0b474772bac"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat3x3&lt;valType&gt; glm::diagonal3x3 </td>
<td>(</td>
<td class="paramtype">detail::tvec3&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>v</em></td><td>)</td>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Build a diagonal matrix. </p>
<p>From GLM_GTX_matrix_operation extension. </p>
</div>
</div>
<a class="anchor" id="ga113fa9ed40e506a12b5aea2c9b75afca"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat3x4&lt;valType&gt; glm::diagonal3x4 </td>
<td>(</td>
<td class="paramtype">detail::tvec3&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>v</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Build a diagonal matrix. </p>
<p>From GLM_GTX_matrix_operation extension. </p>
</div>
</div>
<a class="anchor" id="ga0eee99e7ad936da2db23cb7a83e743a5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat4x2&lt;valType&gt; glm::diagonal4x2 </td>
<td>(</td>
<td class="paramtype">detail::tvec2&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>v</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Build a diagonal matrix. </p>
<p>From GLM_GTX_matrix_operation extension. </p>
</div>
</div>
<a class="anchor" id="gac1f73e28418802c2ff536c31242e5dd1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat4x3&lt;valType&gt; glm::diagonal4x3 </td>
<td>(</td>
<td class="paramtype">detail::tvec3&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>v</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Build a diagonal matrix. </p>
<p>From GLM_GTX_matrix_operation extension. </p>
</div>
</div>
<a class="anchor" id="ga25f5af850dbb9b484c0a46e25cf593a7"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat4x4&lt;valType&gt; glm::diagonal4x4 </td>
<td>(</td>
<td class="paramtype">detail::tvec4&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>v</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Build a diagonal matrix. </p>
<p>From GLM_GTX_matrix_operation extension. </p>
<p>Return the value(s) ULP distance before the input value(s). </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00184.html" title="Allow the measurement of the accuracy of a function against a reference implementation. ">GLM_GTC_ulp</a> </dd></dl>
</div>
</div>
@@ -249,7 +229,7 @@ Functions</h2></td></tr>
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.2
</a> 1.8.5
</small></address>
</body>
</html>