Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 29c369053a983cc5d8c880dc6e0a2237 > files > 1187

libdtn-devel-2.6.0-2mdv2009.1.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>DTN Reference Implementation: dtn::LinkScheduleEstimator Class 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.8 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespacedtn.html">dtn</a>::<a class="el" href="classdtn_1_1LinkScheduleEstimator.html">LinkScheduleEstimator</a>
  </div>
</div>
<div class="contents">
<h1>dtn::LinkScheduleEstimator Class Reference</h1><!-- doxytag: class="dtn::LinkScheduleEstimator" -->Given a log on the form (start1, duration1), .  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="LinkScheduleEstimator_8h-source.html">LinkScheduleEstimator.h</a>&gt;</code>
<p>

<p>
<a href="classdtn_1_1LinkScheduleEstimator-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdtn_1_1LinkScheduleEstimator_1_1LogEntry.html">LogEntry</a></td></tr>

<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::vector&lt; <a class="el" href="structdtn_1_1LinkScheduleEstimator_1_1LogEntry.html">LogEntry</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a></td></tr>

<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#cfee9ac8dfeba476eaecbef83af396c6">LinkScheduleEstimator</a> ()</td></tr>

<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#04c89a1b33385566625dba0bcec80ac7">find_schedule</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> *<a class="el" href="namespacedtn.html#68bf4270dd0a7e5e8390869b83889922">log</a>)</td></tr>

<tr><td colspan="2"><br><h2>Private Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#9bdc8a6a5b4cd5b4cd06f6d7555cce95">entry_dist</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;a, unsigned int a_index, unsigned int a_offset, <a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;b, unsigned int b_index, unsigned int b_offset, unsigned int warping_window)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#fb24f952b197b3d1bd6f7ba5ba33da35">log_dist_r</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;a, unsigned int a_index, unsigned int a_offset, <a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;b, unsigned int b_index, unsigned int b_offset, unsigned int warping_window)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#4f92af378017bf063a3b5144dd3680ee">log_dist</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;a, unsigned int a_offset, <a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;b, unsigned int b_offset, unsigned int warping_window, int print_table)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#a61e879bc1ff9495bca8c0ae83d9c3a6">autocorrelation</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;<a class="el" href="namespacedtn.html#68bf4270dd0a7e5e8390869b83889922">log</a>, unsigned int phase, int print_table)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#bd21da2cc439402e70d7fc0cf2a2c6ca">print_log</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;<a class="el" href="namespacedtn.html#68bf4270dd0a7e5e8390869b83889922">log</a>, int relative_dates)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#b8b4ab28ded6c1b5dba2d97cfbe02c51">generate_samples</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;schedule, unsigned int log_size, unsigned int start_jitter, double duration_jitter)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#d265c8f04daa7f58afe62733465fc747">estimate_period</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;<a class="el" href="namespacedtn.html#68bf4270dd0a7e5e8390869b83889922">log</a>)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#1735a8401a37cf5e7f7473f797c16cb7">seek_to_before_date</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;<a class="el" href="namespacedtn.html#68bf4270dd0a7e5e8390869b83889922">log</a>, unsigned int date)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the index of the closest log entry at or before the given date.  <a href="#1735a8401a37cf5e7f7473f797c16cb7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#3a8b1347b7e2346fb47e9f3086eecd6d">closest_entry_to_date</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;<a class="el" href="namespacedtn.html#68bf4270dd0a7e5e8390869b83889922">log</a>, unsigned int date)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the index of the closest log entry to the given date  <a href="#3a8b1347b7e2346fb47e9f3086eecd6d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#d682bec963c07b745a074e0f9227e4c4">clone_subsequence</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;<a class="el" href="namespacedtn.html#68bf4270dd0a7e5e8390869b83889922">log</a>, unsigned int start, unsigned int len)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#500562bbb64e252746e50df3bf6b7ef7">badness_of_match</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;pattern, <a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;<a class="el" href="namespacedtn.html#68bf4270dd0a7e5e8390869b83889922">log</a>, unsigned int warping_window, unsigned int period)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#53c3d355d5d0f4c13365dfc5319f2cb8">extract_schedule</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;<a class="el" href="namespacedtn.html#68bf4270dd0a7e5e8390869b83889922">log</a>, unsigned int period_estimate)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#72909ef9d3fdd911fd87e8756b554edd">refine_period</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;<a class="el" href="namespacedtn.html#68bf4270dd0a7e5e8390869b83889922">log</a>, unsigned int period_estimate)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#375f63c7c9eb507a4eae17257ccef180">find_schedule</a> (<a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;<a class="el" href="namespacedtn.html#68bf4270dd0a7e5e8390869b83889922">log</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This is the function to be called from the outside.  <a href="#375f63c7c9eb507a4eae17257ccef180"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Given a log on the form (start1, duration1), . 
<p>
.. ,(startN, durationN), the <a class="el" href="classdtn_1_1LinkScheduleEstimator.html" title="Given a log on the form (start1, duration1), .">LinkScheduleEstimator</a> algorithm figures out a periodic schedule that this log conforms to.<p>
The schedule computed can then be used to predict future link-up events, and to inform far-away nodes about the future predicted availability of the link in question.<p>
Usage: Log* <a class="el" href="classdtn_1_1LinkScheduleEstimator.html#04c89a1b33385566625dba0bcec80ac7">find_schedule(Log* log)</a>;<p>
Returns the best schedule for the given log. If there's no discernible periodicity in the log, the return value will be NULL. 
<p>Definition at line <a class="el" href="LinkScheduleEstimator_8h-source.html#l00046">46</a> of file <a class="el" href="LinkScheduleEstimator_8h-source.html">LinkScheduleEstimator.h</a>.</p>
<hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="03f2dd943b7f8c9b0edc879ee4edabdf"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::Log" ref="03f2dd943b7f8c9b0edc879ee4edabdf" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef std::vector&lt;<a class="el" href="structdtn_1_1LinkScheduleEstimator_1_1LogEntry.html">LogEntry</a>&gt; <a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">dtn::LinkScheduleEstimator::Log</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8h-source.html#l00053">53</a> of file <a class="el" href="LinkScheduleEstimator_8h-source.html">LinkScheduleEstimator.h</a>.</p>

</div>
</div><p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="cfee9ac8dfeba476eaecbef83af396c6"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::LinkScheduleEstimator" ref="cfee9ac8dfeba476eaecbef83af396c6" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">dtn::LinkScheduleEstimator::LinkScheduleEstimator           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00033">33</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="a61e879bc1ff9495bca8c0ae83d9c3a6"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::autocorrelation" ref="a61e879bc1ff9495bca8c0ae83d9c3a6" args="(Log &amp;log, unsigned int phase, int print_table)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int dtn::LinkScheduleEstimator::autocorrelation           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>log</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>phase</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>print_table</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00172">172</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

<p>References <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00110">log_dist()</a>, and <a class="el" href="LinkScheduleEstimator_8h-source.html#l00024">WARPING_WINDOW</a>.</p>

<p>Referenced by <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00265">estimate_period()</a>.</p>

</div>
</div><p>
<a class="anchor" name="500562bbb64e252746e50df3bf6b7ef7"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::badness_of_match" ref="500562bbb64e252746e50df3bf6b7ef7" args="(Log &amp;pattern, Log &amp;log, unsigned int warping_window, unsigned int period)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int dtn::LinkScheduleEstimator::badness_of_match           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>log</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>warping_window</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>period</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00338">338</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

<p>References <a class="el" href="dtnrecv_8c-source.html#l00058">change</a>, <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00322">clone_subsequence()</a>, <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00308">closest_entry_to_date()</a>, and <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00110">log_dist()</a>.</p>

<p>Referenced by <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00370">extract_schedule()</a>.</p>

</div>
</div><p>
<a class="anchor" name="d682bec963c07b745a074e0f9227e4c4"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::clone_subsequence" ref="d682bec963c07b745a074e0f9227e4c4" args="(Log &amp;log, unsigned int start, unsigned int len)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">LinkScheduleEstimator::Log</a> * dtn::LinkScheduleEstimator::clone_subsequence           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>log</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00322">322</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

<p>Referenced by <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00338">badness_of_match()</a>, and <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00370">extract_schedule()</a>.</p>

</div>
</div><p>
<a class="anchor" name="3a8b1347b7e2346fb47e9f3086eecd6d"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::closest_entry_to_date" ref="3a8b1347b7e2346fb47e9f3086eecd6d" args="(Log &amp;log, unsigned int date)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int dtn::LinkScheduleEstimator::closest_entry_to_date           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>log</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>date</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
return the index of the closest log entry to the given date 
<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00308">308</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

<p>References <a class="el" href="LinkScheduleEstimator_8h-source.html#l00022">absdiff</a>, and <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00296">seek_to_before_date()</a>.</p>

<p>Referenced by <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00338">badness_of_match()</a>, <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00370">extract_schedule()</a>, and <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00470">refine_period()</a>.</p>

</div>
</div><p>
<a class="anchor" name="9bdc8a6a5b4cd5b4cd06f6d7555cce95"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::entry_dist" ref="9bdc8a6a5b4cd5b4cd06f6d7555cce95" args="(Log &amp;a, unsigned int a_index, unsigned int a_offset, Log &amp;b, unsigned int b_index, unsigned int b_offset, unsigned int warping_window)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int dtn::LinkScheduleEstimator::entry_dist           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>a_index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>a_offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>b</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>b_index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>b_offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>warping_window</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00046">46</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

<p>References <a class="el" href="LinkScheduleEstimator_8h-source.html#l00022">absdiff</a>.</p>

<p>Referenced by <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00110">log_dist()</a>, and <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00061">log_dist_r()</a>.</p>

</div>
</div><p>
<a class="anchor" name="d265c8f04daa7f58afe62733465fc747"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::estimate_period" ref="d265c8f04daa7f58afe62733465fc747" args="(Log &amp;log)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int dtn::LinkScheduleEstimator::estimate_period           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>log</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00265">265</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

<p>References <a class="el" href="LinkScheduleEstimator_8h-source.html#l00022">absdiff</a>, <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00172">autocorrelation()</a>, and <a class="el" href="LinkScheduleEstimator_8h-source.html#l00025">PERIOD_TOLERANCE</a>.</p>

<p>Referenced by <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00495">find_schedule()</a>.</p>

</div>
</div><p>
<a class="anchor" name="53c3d355d5d0f4c13365dfc5319f2cb8"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::extract_schedule" ref="53c3d355d5d0f4c13365dfc5319f2cb8" args="(Log &amp;log, unsigned int period_estimate)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">LinkScheduleEstimator::Log</a> * dtn::LinkScheduleEstimator::extract_schedule           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>log</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>period_estimate</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00370">370</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

<p>References <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00338">badness_of_match()</a>, <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00322">clone_subsequence()</a>, <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00308">closest_entry_to_date()</a>, <a class="el" href="dtnperf-client_8c-source.html#l00954">pattern()</a>, <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00197">print_log()</a>, and <a class="el" href="LinkScheduleEstimator_8h-source.html#l00024">WARPING_WINDOW</a>.</p>

<p>Referenced by <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00495">find_schedule()</a>.</p>

</div>
</div><p>
<a class="anchor" name="375f63c7c9eb507a4eae17257ccef180"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::find_schedule" ref="375f63c7c9eb507a4eae17257ccef180" args="(Log &amp;log)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">LinkScheduleEstimator::Log</a> * dtn::LinkScheduleEstimator::find_schedule           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">LinkScheduleEstimator::Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>log</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This is the function to be called from the outside. 
<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00495">495</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

<p>References <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00265">estimate_period()</a>, <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00370">extract_schedule()</a>, and <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00470">refine_period()</a>.</p>

</div>
</div><p>
<a class="anchor" name="04c89a1b33385566625dba0bcec80ac7"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::find_schedule" ref="04c89a1b33385566625dba0bcec80ac7" args="(Log *log)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a>* dtn::LinkScheduleEstimator::find_schedule           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> *&nbsp;</td>
          <td class="paramname"> <em>log</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="b8b4ab28ded6c1b5dba2d97cfbe02c51"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::generate_samples" ref="b8b4ab28ded6c1b5dba2d97cfbe02c51" args="(Log &amp;schedule, unsigned int log_size, unsigned int start_jitter, double duration_jitter)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">LinkScheduleEstimator::Log</a> * dtn::LinkScheduleEstimator::generate_samples           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>schedule</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>log_size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>start_jitter</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>duration_jitter</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00217">217</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

</div>
</div><p>
<a class="anchor" name="4f92af378017bf063a3b5144dd3680ee"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::log_dist" ref="4f92af378017bf063a3b5144dd3680ee" args="(Log &amp;a, unsigned int a_offset, Log &amp;b, unsigned int b_offset, unsigned int warping_window, int print_table)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int dtn::LinkScheduleEstimator::log_dist           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>a_offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>b</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>b_offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>warping_window</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>print_table</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00110">110</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

<p>References <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00031">dtn::dist</a>, <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00046">entry_dist()</a>, <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00061">log_dist_r()</a>, and <a class="el" href="LinkScheduleEstimator_8h-source.html#l00026">MAX_DIST</a>.</p>

<p>Referenced by <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00172">autocorrelation()</a>, and <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00338">badness_of_match()</a>.</p>

</div>
</div><p>
<a class="anchor" name="fb24f952b197b3d1bd6f7ba5ba33da35"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::log_dist_r" ref="fb24f952b197b3d1bd6f7ba5ba33da35" args="(Log &amp;a, unsigned int a_index, unsigned int a_offset, Log &amp;b, unsigned int b_index, unsigned int b_offset, unsigned int warping_window)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int dtn::LinkScheduleEstimator::log_dist_r           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>a_index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>a_offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>b</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>b_index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>b_offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>warping_window</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00061">61</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

<p>References <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00031">dtn::dist</a>, <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00046">entry_dist()</a>, and <a class="el" href="LinkScheduleEstimator_8h-source.html#l00026">MAX_DIST</a>.</p>

<p>Referenced by <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00110">log_dist()</a>.</p>

</div>
</div><p>
<a class="anchor" name="bd21da2cc439402e70d7fc0cf2a2c6ca"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::print_log" ref="bd21da2cc439402e70d7fc0cf2a2c6ca" args="(Log &amp;log, int relative_dates)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dtn::LinkScheduleEstimator::print_log           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>log</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>relative_dates</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00197">197</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

<p>Referenced by <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00370">extract_schedule()</a>.</p>

</div>
</div><p>
<a class="anchor" name="72909ef9d3fdd911fd87e8756b554edd"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::refine_period" ref="72909ef9d3fdd911fd87e8756b554edd" args="(Log &amp;log, unsigned int period_estimate)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int dtn::LinkScheduleEstimator::refine_period           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">LinkScheduleEstimator::Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>log</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>period_estimate</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00470">470</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

<p>References <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00308">closest_entry_to_date()</a>, and <a class="el" href="dtnping_8c-source.html#l00045">count</a>.</p>

<p>Referenced by <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00495">find_schedule()</a>.</p>

</div>
</div><p>
<a class="anchor" name="1735a8401a37cf5e7f7473f797c16cb7"></a><!-- doxytag: member="dtn::LinkScheduleEstimator::seek_to_before_date" ref="1735a8401a37cf5e7f7473f797c16cb7" args="(Log &amp;log, unsigned int date)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int dtn::LinkScheduleEstimator::seek_to_before_date           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1LinkScheduleEstimator.html#03f2dd943b7f8c9b0edc879ee4edabdf">Log</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>log</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>date</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
return the index of the closest log entry at or before the given date. 
<p>

<p>Definition at line <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00296">296</a> of file <a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a>.</p>

<p>Referenced by <a class="el" href="LinkScheduleEstimator_8cc-source.html#l00308">closest_entry_to_date()</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="LinkScheduleEstimator_8h-source.html">LinkScheduleEstimator.h</a><li><a class="el" href="LinkScheduleEstimator_8cc-source.html">LinkScheduleEstimator.cc</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Fri Jan 30 09:27:04 2009 for DTN Reference Implementation by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
</body>
</html>