Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 550bbe86d83a7870fdddc73c68e5d2b2 > files > 407

libunbound-devel-1.3.4-1mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>unbound: util/timehist.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.9 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="dir_4b581c88b01efb1cf178857b56f0f2fb.html">util</a>
  </div>
</div>
<div class="contents">
<h1>timehist.h File Reference</h1>This file contains functions to make a histogram of time values.  
<a href="#_details">More...</a>
<p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structth__buck.html">th_buck</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Bucket of time history information.  <a href="structth__buck.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtimehist.html">timehist</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Keep histogram of time values.  <a href="structtimehist.html#_details">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7d5bb017785689e5eb76b91725c2c53d"></a><!-- doxytag: member="timehist.h::NUM_BUCKETS_HIST" ref="7d5bb017785689e5eb76b91725c2c53d" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="timehist_8h.html#7d5bb017785689e5eb76b91725c2c53d">NUM_BUCKETS_HIST</a>&nbsp;&nbsp;&nbsp;40</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of buckets in a histogram. <br></td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct <a class="el" href="structtimehist.html">timehist</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="timehist_8h.html#8be4a585db65e4eaf63ee74a9272b505">timehist_setup</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Setup a histogram, default.  <a href="#8be4a585db65e4eaf63ee74a9272b505"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="timehist_8h.html#d9c9aa6aba8301f51b13a65cdfb4b619">timehist_delete</a> (struct <a class="el" href="structtimehist.html">timehist</a> *hist)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Delete histogram.  <a href="#d9c9aa6aba8301f51b13a65cdfb4b619"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="timehist_8h.html#bab73f022a9d1d168c3789e6e381f556">timehist_clear</a> (struct <a class="el" href="structtimehist.html">timehist</a> *hist)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clear histogram.  <a href="#bab73f022a9d1d168c3789e6e381f556"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="timehist_8h.html#3ed6a56977bdf22bc8ccf2e1b1c59735">timehist_insert</a> (struct <a class="el" href="structtimehist.html">timehist</a> *hist, struct timeval *tv)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add time value to histogram.  <a href="#3ed6a56977bdf22bc8ccf2e1b1c59735"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="timehist_8h.html#0af4e7d33bcbb9d2d50d68e5c915e0a2">timehist_quartile</a> (struct <a class="el" href="structtimehist.html">timehist</a> *hist, double q)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Find time value for given quartile, such as 0.25, 0.50, 0.75.  <a href="#0af4e7d33bcbb9d2d50d68e5c915e0a2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="timehist_8h.html#5d67fc015edc4f637646f4d656b3a105">timehist_print</a> (struct <a class="el" href="structtimehist.html">timehist</a> *hist)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Printout histogram.  <a href="#5d67fc015edc4f637646f4d656b3a105"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="timehist_8h.html#95981553729e19df24472eb18b6a4f75">timehist_log</a> (struct <a class="el" href="structtimehist.html">timehist</a> *hist, const char *name)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Log histogram, print it to the logfile.  <a href="#95981553729e19df24472eb18b6a4f75"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="timehist_8h.html#afc9e95dcf3c137ad3b3c15f1af7216c">timehist_export</a> (struct <a class="el" href="structtimehist.html">timehist</a> *hist, size_t *array, size_t sz)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Export histogram to an array.  <a href="#afc9e95dcf3c137ad3b3c15f1af7216c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="timehist_8h.html#9a9f615c54a39f84994f69c01033e9b2">timehist_import</a> (struct <a class="el" href="structtimehist.html">timehist</a> *hist, size_t *array, size_t sz)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Import histogram from an array.  <a href="#9a9f615c54a39f84994f69c01033e9b2"></a><br></td></tr>
</table>
<hr><h2>Detailed Description</h2>
This file contains functions to make a histogram of time values. 
<p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="8be4a585db65e4eaf63ee74a9272b505"></a><!-- doxytag: member="timehist.h::timehist_setup" ref="8be4a585db65e4eaf63ee74a9272b505" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct <a class="el" href="structtimehist.html">timehist</a>* timehist_setup           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [read]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Setup a histogram, default. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>histogram or NULL on malloc failure. </dd></dl>

<p>References <a class="el" href="timehist_8h_source.html#l00067">timehist::buckets</a>, <a class="el" href="timehist_8c_source.html#l00066">dosetup()</a>, <a class="el" href="timehist_8h_source.html#l00065">timehist::num</a>, and <a class="el" href="timehist_8h_source.html#l00046">NUM_BUCKETS_HIST</a>.</p>

<p>Referenced by <a class="el" href="mesh_8c_source.html#l00156">mesh_create()</a>, and <a class="el" href="remote_8c_source.html#l00713">print_hist()</a>.</p>

</div>
</div><p>
<a class="anchor" name="d9c9aa6aba8301f51b13a65cdfb4b619"></a><!-- doxytag: member="timehist.h::timehist_delete" ref="d9c9aa6aba8301f51b13a65cdfb4b619" args="(struct timehist *hist)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void timehist_delete           </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structtimehist.html">timehist</a> *&nbsp;</td>
          <td class="paramname"> <em>hist</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Delete histogram. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>hist,:</em>&nbsp;</td><td>to delete </td></tr>
  </table>
</dl>

<p>References <a class="el" href="timehist_8h_source.html#l00067">timehist::buckets</a>.</p>

<p>Referenced by <a class="el" href="mesh_8c_source.html#l00203">mesh_delete()</a>, and <a class="el" href="remote_8c_source.html#l00713">print_hist()</a>.</p>

</div>
</div><p>
<a class="anchor" name="bab73f022a9d1d168c3789e6e381f556"></a><!-- doxytag: member="timehist.h::timehist_clear" ref="bab73f022a9d1d168c3789e6e381f556" args="(struct timehist *hist)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void timehist_clear           </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structtimehist.html">timehist</a> *&nbsp;</td>
          <td class="paramname"> <em>hist</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Clear histogram. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>hist,:</em>&nbsp;</td><td>to clear all data from </td></tr>
  </table>
</dl>

<p>References <a class="el" href="timehist_8h_source.html#l00067">timehist::buckets</a>, <a class="el" href="timehist_8h_source.html#l00057">th_buck::count</a>, and <a class="el" href="timehist_8h_source.html#l00065">timehist::num</a>.</p>

<p>Referenced by <a class="el" href="mesh_8c_source.html#l00967">mesh_stats_clear()</a>.</p>

</div>
</div><p>
<a class="anchor" name="3ed6a56977bdf22bc8ccf2e1b1c59735"></a><!-- doxytag: member="timehist.h::timehist_insert" ref="3ed6a56977bdf22bc8ccf2e1b1c59735" args="(struct timehist *hist, struct timeval *tv)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void timehist_insert           </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structtimehist.html">timehist</a> *&nbsp;</td>
          <td class="paramname"> <em>hist</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct timeval *&nbsp;</td>
          <td class="paramname"> <em>tv</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Add time value to histogram. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>hist,:</em>&nbsp;</td><td>histogram </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>tv,:</em>&nbsp;</td><td>time value </td></tr>
  </table>
</dl>

<p>References <a class="el" href="timehist_8h_source.html#l00067">timehist::buckets</a>, <a class="el" href="timehist_8h_source.html#l00057">th_buck::count</a>, <a class="el" href="timehist_8h_source.html#l00065">timehist::num</a>, <a class="el" href="timehist_8c_source.html#l00114">timeval_smaller()</a>, and <a class="el" href="timehist_8h_source.html#l00055">th_buck::upper</a>.</p>

<p>Referenced by <a class="el" href="mesh_8c_source.html#l00662">mesh_send_reply()</a>.</p>

</div>
</div><p>
<a class="anchor" name="0af4e7d33bcbb9d2d50d68e5c915e0a2"></a><!-- doxytag: member="timehist.h::timehist_quartile" ref="0af4e7d33bcbb9d2d50d68e5c915e0a2" args="(struct timehist *hist, double q)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double timehist_quartile           </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structtimehist.html">timehist</a> *&nbsp;</td>
          <td class="paramname"> <em>hist</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>q</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Find time value for given quartile, such as 0.25, 0.50, 0.75. 
<p>
The looks up the value for the i-th element in the sorted list of time values, as approximated using the histogram. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>hist,:</em>&nbsp;</td><td>histogram. Interpolated information is used from it. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>q,:</em>&nbsp;</td><td>quartile, 0.50 results in the median. Must be &gt;0 and &lt;1. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>: the time in seconds for that percentage. </dd></dl>

<p>References <a class="el" href="timehist_8h_source.html#l00067">timehist::buckets</a>, <a class="el" href="timehist_8h_source.html#l00057">th_buck::count</a>, <a class="el" href="timehist_8h_source.html#l00053">th_buck::lower</a>, <a class="el" href="timehist_8h_source.html#l00065">timehist::num</a>, <a class="el" href="timehist_8c_source.html#l00184">timehist_count()</a>, and <a class="el" href="timehist_8h_source.html#l00055">th_buck::upper</a>.</p>

<p>Referenced by <a class="el" href="stats_8c_source.html#l00118">server_stats_compile()</a>, and <a class="el" href="timehist_8c_source.html#l00159">timehist_log()</a>.</p>

</div>
</div><p>
<a class="anchor" name="5d67fc015edc4f637646f4d656b3a105"></a><!-- doxytag: member="timehist.h::timehist_print" ref="5d67fc015edc4f637646f4d656b3a105" args="(struct timehist *hist)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void timehist_print           </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structtimehist.html">timehist</a> *&nbsp;</td>
          <td class="paramname"> <em>hist</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Printout histogram. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>hist,:</em>&nbsp;</td><td>histogram </td></tr>
  </table>
</dl>

<p>References <a class="el" href="timehist_8h_source.html#l00067">timehist::buckets</a>, <a class="el" href="timehist_8h_source.html#l00057">th_buck::count</a>, <a class="el" href="timehist_8h_source.html#l00053">th_buck::lower</a>, <a class="el" href="timehist_8h_source.html#l00065">timehist::num</a>, and <a class="el" href="timehist_8h_source.html#l00055">th_buck::upper</a>.</p>

</div>
</div><p>
<a class="anchor" name="95981553729e19df24472eb18b6a4f75"></a><!-- doxytag: member="timehist.h::timehist_log" ref="95981553729e19df24472eb18b6a4f75" args="(struct timehist *hist, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void timehist_log           </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structtimehist.html">timehist</a> *&nbsp;</td>
          <td class="paramname"> <em>hist</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Log histogram, print it to the logfile. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>hist,:</em>&nbsp;</td><td>histogram </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name,:</em>&nbsp;</td><td>the name of the value column </td></tr>
  </table>
</dl>

<p>References <a class="el" href="timehist_8h_source.html#l00067">timehist::buckets</a>, <a class="el" href="timehist_8h_source.html#l00057">th_buck::count</a>, <a class="el" href="log_8c_source.html#l00228">log_info()</a>, <a class="el" href="timehist_8h_source.html#l00053">th_buck::lower</a>, <a class="el" href="timehist_8h_source.html#l00065">timehist::num</a>, <a class="el" href="timehist_8c_source.html#l00193">timehist_quartile()</a>, and <a class="el" href="timehist_8h_source.html#l00055">th_buck::upper</a>.</p>

<p>Referenced by <a class="el" href="mesh_8c_source.html#l00943">mesh_stats()</a>.</p>

</div>
</div><p>
<a class="anchor" name="afc9e95dcf3c137ad3b3c15f1af7216c"></a><!-- doxytag: member="timehist.h::timehist_export" ref="afc9e95dcf3c137ad3b3c15f1af7216c" args="(struct timehist *hist, size_t *array, size_t sz)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void timehist_export           </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structtimehist.html">timehist</a> *&nbsp;</td>
          <td class="paramname"> <em>hist</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t *&nbsp;</td>
          <td class="paramname"> <em>array</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>sz</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Export histogram to an array. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>hist,:</em>&nbsp;</td><td>histogram </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>array,:</em>&nbsp;</td><td>the array to export to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>sz,:</em>&nbsp;</td><td>number of items in array. </td></tr>
  </table>
</dl>

<p>References <a class="el" href="timehist_8h_source.html#l00067">timehist::buckets</a>, <a class="el" href="timehist_8h_source.html#l00057">th_buck::count</a>, and <a class="el" href="timehist_8h_source.html#l00065">timehist::num</a>.</p>

<p>Referenced by <a class="el" href="stats_8c_source.html#l00118">server_stats_compile()</a>.</p>

</div>
</div><p>
<a class="anchor" name="9a9f615c54a39f84994f69c01033e9b2"></a><!-- doxytag: member="timehist.h::timehist_import" ref="9a9f615c54a39f84994f69c01033e9b2" args="(struct timehist *hist, size_t *array, size_t sz)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void timehist_import           </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structtimehist.html">timehist</a> *&nbsp;</td>
          <td class="paramname"> <em>hist</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t *&nbsp;</td>
          <td class="paramname"> <em>array</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>sz</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Import histogram from an array. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>hist,:</em>&nbsp;</td><td>histogram </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>array,:</em>&nbsp;</td><td>the array to import from. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>sz,:</em>&nbsp;</td><td>number of items in array. </td></tr>
  </table>
</dl>

<p>References <a class="el" href="timehist_8h_source.html#l00067">timehist::buckets</a>, <a class="el" href="timehist_8h_source.html#l00057">th_buck::count</a>, and <a class="el" href="timehist_8h_source.html#l00065">timehist::num</a>.</p>

<p>Referenced by <a class="el" href="remote_8c_source.html#l00713">print_hist()</a>.</p>

</div>
</div><p>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Oct 13 06:46:33 2009 for unbound by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address>
</body>
</html>