<!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: prophet::FwdStrategyCompGRTRSORT 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 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 List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div class="navpath"><a class="el" href="namespaceprophet.html">prophet</a>::<a class="el" href="classprophet_1_1FwdStrategyCompGRTRSORT.html">FwdStrategyCompGRTRSORT</a> </div> </div> <div class="contents"> <h1>prophet::FwdStrategyCompGRTRSORT Class Reference</h1><!-- doxytag: class="prophet::FwdStrategyCompGRTRSORT" --><!-- doxytag: inherits="prophet::FwdStrategyComp" -->Comparator for sorting Bundles according to GRTRSort, Section 3.6, Prophet March 2006. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="FwdStrategy_8h-source.html">FwdStrategy.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for prophet::FwdStrategyCompGRTRSORT:</div> <div class="dynsection"> <p><center><img src="classprophet_1_1FwdStrategyCompGRTRSORT.png" usemap="#prophet::FwdStrategyCompGRTRSORT_map" border="0" alt=""></center> <map name="prophet::FwdStrategyCompGRTRSORT_map"> <area href="classprophet_1_1FwdStrategyComp.html" alt="prophet::FwdStrategyComp" shape="rect" coords="0,0,229,24"> </map> </div> <p> <a href="classprophet_1_1FwdStrategyCompGRTRSORT-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1FwdStrategyCompGRTRSORT.html#2aa6a4c91c7622b505963293578a65ea">~FwdStrategyCompGRTRSORT</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="#2aa6a4c91c7622b505963293578a65ea"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1FwdStrategyCompGRTRSORT.html#75ff32e30a6a2a02c72de5c9bf8ca0dd">operator()</a> (const <a class="el" href="classprophet_1_1Bundle.html">Bundle</a> *a, const <a class="el" href="classprophet_1_1Bundle.html">Bundle</a> *b) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Comparator function for FIFO ordering in a heap. <a href="#75ff32e30a6a2a02c72de5c9bf8ca0dd"></a><br></td></tr> <tr><td colspan="2"><div class="groupHeader"></div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classprophet_1_1Table.html">Table</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1FwdStrategyCompGRTRSORT.html#9ba184b765ac731b437c9298e7dd8969">local_nodes</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Accessors. <a href="#9ba184b765ac731b437c9298e7dd8969"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classprophet_1_1Table.html">Table</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1FwdStrategyCompGRTRSORT.html#3aefc3ca7c4fe94a0a9f26c2b2be6197">remote_nodes</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Accessors. <a href="#3aefc3ca7c4fe94a0a9f26c2b2be6197"></a><br></td></tr> <tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1FwdStrategyCompGRTRSORT.html#ffe6dfae553ad6dba623d723ae3aecb4">FwdStrategyCompGRTRSORT</a> (<a class="el" href="structprophet_1_1FwdStrategy.html#50567dba6d835926a1532568f6a46ff9">FwdStrategy::fwd_strategy_t</a> fs, const <a class="el" href="classprophet_1_1Table.html">Table</a> *local, const <a class="el" href="classprophet_1_1Table.html">Table</a> *remote)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor is protected to restrict access to factory method. <a href="#ffe6dfae553ad6dba623d723ae3aecb4"></a><br></td></tr> <tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classprophet_1_1Table.html">Table</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1FwdStrategyCompGRTRSORT.html#dd692d527d0c6da86ba489f2327e86d9">local_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">list of routes as known by local node <a href="#dd692d527d0c6da86ba489f2327e86d9"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classprophet_1_1Table.html">Table</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1FwdStrategyCompGRTRSORT.html#4638941329f8756fd69feb9565475c03">remote_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">list of routes known by peer node <a href="#4638941329f8756fd69feb9565475c03"></a><br></td></tr> <tr><td colspan="2"><br><h2>Friends</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1FwdStrategyCompGRTRSORT.html#d399dade364b5046211f77a07e53d5fb">FwdStrategy</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">for factory method <a href="#d399dade364b5046211f77a07e53d5fb"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Comparator for sorting Bundles according to GRTRSort, Section 3.6, Prophet March 2006. <p> Sorted according to metric P_(B,D) - P_(A,D), where A is local node, B is peering Prophet node, and D represents the route to the Bundle's destination. <p>Definition at line <a class="el" href="FwdStrategy_8h-source.html#l00129">129</a> of file <a class="el" href="FwdStrategy_8h-source.html">FwdStrategy.h</a>.</p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="2aa6a4c91c7622b505963293578a65ea"></a><!-- doxytag: member="prophet::FwdStrategyCompGRTRSORT::~FwdStrategyCompGRTRSORT" ref="2aa6a4c91c7622b505963293578a65ea" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual prophet::FwdStrategyCompGRTRSORT::~FwdStrategyCompGRTRSORT </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Destructor. <p> <p>Definition at line <a class="el" href="FwdStrategy_8h-source.html#l00135">135</a> of file <a class="el" href="FwdStrategy_8h-source.html">FwdStrategy.h</a>.</p> </div> </div><p> <a class="anchor" name="ffe6dfae553ad6dba623d723ae3aecb4"></a><!-- doxytag: member="prophet::FwdStrategyCompGRTRSORT::FwdStrategyCompGRTRSORT" ref="ffe6dfae553ad6dba623d723ae3aecb4" args="(FwdStrategy::fwd_strategy_t fs, const Table *local, const Table *remote)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">prophet::FwdStrategyCompGRTRSORT::FwdStrategyCompGRTRSORT </td> <td>(</td> <td class="paramtype"><a class="el" href="structprophet_1_1FwdStrategy.html#50567dba6d835926a1532568f6a46ff9">FwdStrategy::fwd_strategy_t</a> </td> <td class="paramname"> <em>fs</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classprophet_1_1Table.html">Table</a> * </td> <td class="paramname"> <em>local</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classprophet_1_1Table.html">Table</a> * </td> <td class="paramname"> <em>remote</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [inline, protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Constructor is protected to restrict access to factory method. <p> <p>Definition at line <a class="el" href="FwdStrategy_8h-source.html#l00156">156</a> of file <a class="el" href="FwdStrategy_8h-source.html">FwdStrategy.h</a>.</p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="9ba184b765ac731b437c9298e7dd8969"></a><!-- doxytag: member="prophet::FwdStrategyCompGRTRSORT::local_nodes" ref="9ba184b765ac731b437c9298e7dd8969" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="classprophet_1_1Table.html">Table</a>* prophet::FwdStrategyCompGRTRSORT::local_nodes </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Accessors. <p> <p>Definition at line <a class="el" href="FwdStrategy_8h-source.html#l00146">146</a> of file <a class="el" href="FwdStrategy_8h-source.html">FwdStrategy.h</a>.</p> <p>References <a class="el" href="FwdStrategy_8h-source.html#l00160">local_</a>.</p> </div> </div><p> <a class="anchor" name="75ff32e30a6a2a02c72de5c9bf8ca0dd"></a><!-- doxytag: member="prophet::FwdStrategyCompGRTRSORT::operator()" ref="75ff32e30a6a2a02c72de5c9bf8ca0dd" args="(const Bundle *a, const Bundle *b) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> prophet::FwdStrategyCompGRTRSORT::operator() </td> <td>(</td> <td class="paramtype">const <a class="el" href="classprophet_1_1Bundle.html">Bundle</a> * </td> <td class="paramname"> <em>a</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classprophet_1_1Bundle.html">Bundle</a> * </td> <td class="paramname"> <em>b</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Comparator function for FIFO ordering in a heap. <p> <p>Reimplemented from <a class="el" href="classprophet_1_1FwdStrategyComp.html#977aa52b23eb49fe72e892f12102348d">prophet::FwdStrategyComp</a>.</p> <p>Definition at line <a class="el" href="FwdStrategy_8h-source.html#l00137">137</a> of file <a class="el" href="FwdStrategy_8h-source.html">FwdStrategy.h</a>.</p> <p>References <a class="el" href="FwdStrategy_8h-source.html#l00160">local_</a>, <a class="el" href="Table_8cc-source.html#l00090">prophet::Table::p_value()</a>, and <a class="el" href="FwdStrategy_8h-source.html#l00161">remote_</a>.</p> </div> </div><p> <a class="anchor" name="3aefc3ca7c4fe94a0a9f26c2b2be6197"></a><!-- doxytag: member="prophet::FwdStrategyCompGRTRSORT::remote_nodes" ref="3aefc3ca7c4fe94a0a9f26c2b2be6197" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="classprophet_1_1Table.html">Table</a>* prophet::FwdStrategyCompGRTRSORT::remote_nodes </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Accessors. <p> <p>Definition at line <a class="el" href="FwdStrategy_8h-source.html#l00147">147</a> of file <a class="el" href="FwdStrategy_8h-source.html">FwdStrategy.h</a>.</p> <p>References <a class="el" href="FwdStrategy_8h-source.html#l00161">remote_</a>.</p> </div> </div><p> <hr><h2>Friends And Related Function Documentation</h2> <a class="anchor" name="d399dade364b5046211f77a07e53d5fb"></a><!-- doxytag: member="prophet::FwdStrategyCompGRTRSORT::FwdStrategy" ref="d399dade364b5046211f77a07e53d5fb" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">friend class <a class="el" href="structprophet_1_1FwdStrategy.html">FwdStrategy</a><code> [friend]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> for factory method <p> <p>Reimplemented from <a class="el" href="classprophet_1_1FwdStrategyComp.html#d399dade364b5046211f77a07e53d5fb">prophet::FwdStrategyComp</a>.</p> <p>Definition at line <a class="el" href="FwdStrategy_8h-source.html#l00151">151</a> of file <a class="el" href="FwdStrategy_8h-source.html">FwdStrategy.h</a>.</p> </div> </div><p> <hr><h2>Member Data Documentation</h2> <a class="anchor" name="dd692d527d0c6da86ba489f2327e86d9"></a><!-- doxytag: member="prophet::FwdStrategyCompGRTRSORT::local_" ref="dd692d527d0c6da86ba489f2327e86d9" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="classprophet_1_1Table.html">Table</a>* <a class="el" href="classprophet_1_1FwdStrategyCompGRTRSORT.html#dd692d527d0c6da86ba489f2327e86d9">prophet::FwdStrategyCompGRTRSORT::local_</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> list of routes as known by local node <p> <p>Definition at line <a class="el" href="FwdStrategy_8h-source.html#l00160">160</a> of file <a class="el" href="FwdStrategy_8h-source.html">FwdStrategy.h</a>.</p> <p>Referenced by <a class="el" href="FwdStrategy_8h-source.html#l00146">local_nodes()</a>, and <a class="el" href="FwdStrategy_8h-source.html#l00137">operator()()</a>.</p> </div> </div><p> <a class="anchor" name="4638941329f8756fd69feb9565475c03"></a><!-- doxytag: member="prophet::FwdStrategyCompGRTRSORT::remote_" ref="4638941329f8756fd69feb9565475c03" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="classprophet_1_1Table.html">Table</a>* <a class="el" href="classprophet_1_1FwdStrategyCompGRTRSORT.html#4638941329f8756fd69feb9565475c03">prophet::FwdStrategyCompGRTRSORT::remote_</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> list of routes known by peer node <p> <p>Definition at line <a class="el" href="FwdStrategy_8h-source.html#l00161">161</a> of file <a class="el" href="FwdStrategy_8h-source.html">FwdStrategy.h</a>.</p> <p>Referenced by <a class="el" href="FwdStrategy_8h-source.html#l00137">operator()()</a>, and <a class="el" href="FwdStrategy_8h-source.html#l00147">remote_nodes()</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="FwdStrategy_8h-source.html">FwdStrategy.h</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Fri Jan 30 09:27:06 2009 for DTN Reference Implementation by <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>