<!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: dtnsim::SimLink Class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.6 --> <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="namespacedtnsim.html">dtnsim</a>::<a class="el" href="classdtnsim_1_1SimLink.html">SimLink</a> </div> </div> <div class="contents"> <h1>dtnsim::SimLink Class Reference</h1><!-- doxytag: class="dtnsim::SimLink" --><!-- doxytag: inherits="dtn::CLInfo" --><div class="dynheader"> Inheritance diagram for dtnsim::SimLink:</div> <div class="dynsection"> <p><center><img src="classdtnsim_1_1SimLink.png" usemap="#dtnsim::SimLink_map" border="0" alt=""></center> <map name="dtnsim::SimLink_map"> <area href="classdtn_1_1CLInfo.html" alt="dtn::CLInfo" shape="rect" coords="0,0,96,24"> </map> </div> <p> <a href="classdtnsim_1_1SimLink-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00042">42</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <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"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#f584fc9d65c43f00997621febd18fb37">SimLink</a> (const LinkRef &link, const <a class="el" href="structdtnsim_1_1SimLink_1_1Params.html">SimLink::Params</a> &params)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#deebacf28266b8ee1be662e04f02c464">~SimLink</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#44df94e79e7d4d5bbf2c4daffc0bc2d4">start_next_bundle</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#fd6152f3a4889cb2561cb8110465ae7a">timeout</a> (const oasys::Time &now)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#569eaaf98a5ebffe3716dafed8bc7803">handle_pending_inflight</a> (const oasys::Time &now)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#3e9dff5b296f40679fa1c4b929469c13">handle_arrival_events</a> (const oasys::Time &now)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#fac1c027aaa1a11c3128dbafe77878c1">handle_transmitted_events</a> (const oasys::Time &now)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#a9856259f0468f8c4ce0d5b043103c7b">reschedule_timers</a> ()</td></tr> <tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">LinkRef </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#a71bf2e73e47179eb051b09bf8fb7309">link_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The <a class="el" href="namespacedtn.html" title="Namespace for the dtn daemon source code.">dtn</a> Link. <a href="#a71bf2e73e47179eb051b09bf8fb7309"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct <a class="el" href="structdtnsim_1_1SimLink_1_1Params.html">dtnsim::SimLink::Params</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#2ca34df3b9fd92f81d4d94190ec67bca">params_</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtnsim_1_1Node.html">Node</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#c1b78c68f8d8f7dd512971fb59d76d1e">peer_node_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The receiving node. <a href="#c1b78c68f8d8f7dd512971fb59d76d1e"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">oasys::TokenBucket </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#acc1169aba619333dd4425ded507762f">tb_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Token bucket to track the link rate. <a href="#acc1169aba619333dd4425ded507762f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">u_char </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#57b0481e90469e25edf041c99826e0c3">buf_</a> [65536]</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Temp buffer. <a href="#57b0481e90469e25edf041c99826e0c3"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structdtnsim_1_1SimLink_1_1PendingEvent.html">PendingEvent</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#2893440f71bdbe2d95b8c4c7b56f5c72">pending_inflight_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Pending event (at most one) to put the next bundle in flight. <a href="#2893440f71bdbe2d95b8c4c7b56f5c72"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">std::queue< <a class="el" href="structdtnsim_1_1SimLink_1_1PendingEvent.html">PendingEvent</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#27439f634ae423b24acffe60832b9fb5">arrival_events_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Pending bundle arrival events. <a href="#27439f634ae423b24acffe60832b9fb5"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">std::queue< <a class="el" href="structdtnsim_1_1SimLink_1_1PendingEvent.html">PendingEvent</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#b2ec6a0297d39426263f968a985e9fe9">transmitted_events_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Pending bundle transmitted events. <a href="#b2ec6a0297d39426263f968a985e9fe9"></a><br></td></tr> <tr><td colspan="2"><div class="groupHeader"></div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtnsim_1_1SimLink_1_1PendingEventTimer.html">PendingEventTimer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#b1cb5971c5ce861064877c0489a70c8b">inflight_timer_</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtnsim_1_1SimLink_1_1PendingEventTimer.html">PendingEventTimer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#362b965aee05cc5ce4a12adfb2851f79">arrival_timer_</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtnsim_1_1SimLink_1_1PendingEventTimer.html">PendingEventTimer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink.html#d09a7883abb5a4e4b7e4e6332aef980d">transmitted_timer_</a></td></tr> <tr><td colspan="2"><br><h2>Classes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structdtnsim_1_1SimLink_1_1Params.html">Params</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structdtnsim_1_1SimLink_1_1PendingEvent.html">PendingEvent</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Helper class to track bundle transmission or reception events that need to be delivered in the future. <a href="structdtnsim_1_1SimLink_1_1PendingEvent.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtnsim_1_1SimLink_1_1PendingEventTimer.html">PendingEventTimer</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Timer class to manage pending events. <a href="classdtnsim_1_1SimLink_1_1PendingEventTimer.html#_details">More...</a><br></td></tr> </table> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="f584fc9d65c43f00997621febd18fb37"></a><!-- doxytag: member="dtnsim::SimLink::SimLink" ref="f584fc9d65c43f00997621febd18fb37" args="(const LinkRef &link, const SimLink::Params &params)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">dtnsim::SimLink::SimLink </td> <td>(</td> <td class="paramtype">const LinkRef & </td> <td class="paramname"> <em>link</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="structdtnsim_1_1SimLink_1_1Params.html">SimLink::Params</a> & </td> <td class="paramname"> <em>params</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00047">47</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> </div> </div><p> <a class="anchor" name="deebacf28266b8ee1be662e04f02c464"></a><!-- doxytag: member="dtnsim::SimLink::~SimLink" ref="deebacf28266b8ee1be662e04f02c464" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">dtnsim::SimLink::~SimLink </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00061">61</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="44df94e79e7d4d5bbf2c4daffc0bc2d4"></a><!-- doxytag: member="dtnsim::SimLink::start_next_bundle" ref="44df94e79e7d4d5bbf2c4daffc0bc2d4" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dtnsim::SimLink::start_next_bundle </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00152">152</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="sim_2Node_8h-source.html#l00135">dtnsim::Node::active_node()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00122">arrival_events_</a>, <a class="el" href="SDNV_8cc-source.html#l00044">ASSERT</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00101">buf_</a>, <a class="el" href="bundling_2Bundle_8h-source.html#l00201">dtn::Bundle::bundleid()</a>, <a class="el" href="BlockInfo_8cc-source.html#l00203">dtn::BlockInfoVec::find_block()</a>, <a class="el" href="Connectivity_8h-source.html#l00072">dtnsim::Connectivity::instance()</a>, <a class="el" href="Connectivity_8h-source.html#l00060">dtnsim::ConnState::latency_</a>, <a class="el" href="num2sdnv_8c-source.html#l00034">len</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00071">link_</a>, <a class="el" href="Connectivity_8cc-source.html#l00167">dtnsim::Connectivity::lookup()</a>, <a class="el" href="bundling_2Bundle_8h-source.html#l00272">dtn::Bundle::mutable_payload()</a>, <a class="el" href="classdtnsim_1_1SimLink.html#2ca34df3b9fd92f81d4d94190ec67bca">params_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00095">peer_node_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00119">pending_inflight_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00081">dtnsim::SimLink::Params::reliable_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00232">reschedule_timers()</a>, <a class="el" href="BlockInfo_8h-source.html#l00092">dtn::BlockInfo::set_data_length()</a>, <a class="el" href="BundlePayload_8cc-source.html#l00161">dtn::BundlePayload::set_length()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00098">tb_</a>, <a class="el" href="Simulator_8h-source.html#l00038">dtnsim::Simulator::time()</a>, and <a class="el" href="SimConvergenceLayer_8cc-source.html#l00125">transmitted_events_</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00276">handle_pending_inflight()</a>.</p> </div> </div><p> <a class="anchor" name="fd6152f3a4889cb2561cb8110465ae7a"></a><!-- doxytag: member="dtnsim::SimLink::timeout" ref="fd6152f3a4889cb2561cb8110465ae7a" args="(const oasys::Time &now)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dtnsim::SimLink::timeout </td> <td>(</td> <td class="paramtype">const oasys::Time & </td> <td class="paramname"> <em>now</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="569eaaf98a5ebffe3716dafed8bc7803"></a><!-- doxytag: member="dtnsim::SimLink::handle_pending_inflight" ref="569eaaf98a5ebffe3716dafed8bc7803" args="(const oasys::Time &now)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dtnsim::SimLink::handle_pending_inflight </td> <td>(</td> <td class="paramtype">const oasys::Time & </td> <td class="paramname"> <em>now</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00276">276</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="SDNV_8cc-source.html#l00044">ASSERT</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00113">dtnsim::SimLink::PendingEvent::bundle_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00071">link_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00119">pending_inflight_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00232">reschedule_timers()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00152">start_next_bundle()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00115">dtnsim::SimLink::PendingEvent::time_</a>, and <a class="el" href="SimConvergenceLayer_8cc-source.html#l00114">dtnsim::SimLink::PendingEvent::total_len_</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00256">dtnsim::SimLink::PendingEventTimer::timeout()</a>.</p> </div> </div><p> <a class="anchor" name="3e9dff5b296f40679fa1c4b929469c13"></a><!-- doxytag: member="dtnsim::SimLink::handle_arrival_events" ref="3e9dff5b296f40679fa1c4b929469c13" args="(const oasys::Time &now)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dtnsim::SimLink::handle_arrival_events </td> <td>(</td> <td class="paramtype">const oasys::Time & </td> <td class="paramname"> <em>now</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00303">303</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="sim_2Node_8h-source.html#l00135">dtnsim::Node::active_node()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00122">arrival_events_</a>, <a class="el" href="SDNV_8cc-source.html#l00044">ASSERT</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00113">dtnsim::SimLink::PendingEvent::bundle_</a>, <a class="el" href="BundleEvent_8h-source.html#l00214">dtn::EVENTSRC_PEER</a>, <a class="el" href="BundleDaemon_8h-source.html#l00193">dtn::BundleDaemon::local_eid()</a>, <a class="el" href="classdtnsim_1_1SimLink.html#2ca34df3b9fd92f81d4d94190ec67bca">params_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00095">peer_node_</a>, <a class="el" href="sim_2Node_8cc-source.html#l00131">dtnsim::Node::post_event()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00232">reschedule_timers()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00090">dtnsim::SimLink::Params::set_prevhop_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00115">dtnsim::SimLink::PendingEvent::time_</a>, and <a class="el" href="SimConvergenceLayer_8cc-source.html#l00114">dtnsim::SimLink::PendingEvent::total_len_</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00256">dtnsim::SimLink::PendingEventTimer::timeout()</a>.</p> </div> </div><p> <a class="anchor" name="fac1c027aaa1a11c3128dbafe77878c1"></a><!-- doxytag: member="dtnsim::SimLink::handle_transmitted_events" ref="fac1c027aaa1a11c3128dbafe77878c1" args="(const oasys::Time &now)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dtnsim::SimLink::handle_transmitted_events </td> <td>(</td> <td class="paramtype">const oasys::Time & </td> <td class="paramname"> <em>now</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00337">337</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="SDNV_8cc-source.html#l00044">ASSERT</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00113">dtnsim::SimLink::PendingEvent::bundle_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00071">link_</a>, <a class="el" href="classdtnsim_1_1SimLink.html#2ca34df3b9fd92f81d4d94190ec67bca">params_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00081">dtnsim::SimLink::Params::reliable_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00232">reschedule_timers()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00115">dtnsim::SimLink::PendingEvent::time_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00114">dtnsim::SimLink::PendingEvent::total_len_</a>, and <a class="el" href="SimConvergenceLayer_8cc-source.html#l00125">transmitted_events_</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00256">dtnsim::SimLink::PendingEventTimer::timeout()</a>.</p> </div> </div><p> <a class="anchor" name="a9856259f0468f8c4ce0d5b043103c7b"></a><!-- doxytag: member="dtnsim::SimLink::reschedule_timers" ref="a9856259f0468f8c4ce0d5b043103c7b" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dtnsim::SimLink::reschedule_timers </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00232">232</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="SimConvergenceLayer_8cc-source.html#l00122">arrival_events_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00145">arrival_timer_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00144">inflight_timer_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00119">pending_inflight_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00115">dtnsim::SimLink::PendingEvent::time_</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00125">transmitted_events_</a>, and <a class="el" href="SimConvergenceLayer_8cc-source.html#l00146">transmitted_timer_</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00303">handle_arrival_events()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00276">handle_pending_inflight()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00337">handle_transmitted_events()</a>, and <a class="el" href="SimConvergenceLayer_8cc-source.html#l00152">start_next_bundle()</a>.</p> </div> </div><p> <hr><h2>Member Data Documentation</h2> <a class="anchor" name="a71bf2e73e47179eb051b09bf8fb7309"></a><!-- doxytag: member="dtnsim::SimLink::link_" ref="a71bf2e73e47179eb051b09bf8fb7309" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">LinkRef <a class="el" href="classdtnsim_1_1SimLink.html#a71bf2e73e47179eb051b09bf8fb7309">dtnsim::SimLink::link_</a> </td> </tr> </table> </div> <div class="memdoc"> <p> The <a class="el" href="namespacedtn.html" title="Namespace for the dtn daemon source code.">dtn</a> Link. <p> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00071">71</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00276">handle_pending_inflight()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00337">handle_transmitted_events()</a>, and <a class="el" href="SimConvergenceLayer_8cc-source.html#l00152">start_next_bundle()</a>.</p> </div> </div><p> <a class="anchor" name="2ca34df3b9fd92f81d4d94190ec67bca"></a><!-- doxytag: member="dtnsim::SimLink::params_" ref="2ca34df3b9fd92f81d4d94190ec67bca" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">struct <a class="el" href="structdtnsim_1_1SimLink_1_1Params.html">dtnsim::SimLink::Params</a> <a class="el" href="classdtnsim_1_1SimLink.html#2ca34df3b9fd92f81d4d94190ec67bca">dtnsim::SimLink::params_</a> </td> </tr> </table> </div> <div class="memdoc"> <p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00303">handle_arrival_events()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00337">handle_transmitted_events()</a>, and <a class="el" href="SimConvergenceLayer_8cc-source.html#l00152">start_next_bundle()</a>.</p> </div> </div><p> <a class="anchor" name="c1b78c68f8d8f7dd512971fb59d76d1e"></a><!-- doxytag: member="dtnsim::SimLink::peer_node_" ref="c1b78c68f8d8f7dd512971fb59d76d1e" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classdtnsim_1_1Node.html">Node</a>* <a class="el" href="classdtnsim_1_1SimLink.html#c1b78c68f8d8f7dd512971fb59d76d1e">dtnsim::SimLink::peer_node_</a> </td> </tr> </table> </div> <div class="memdoc"> <p> The receiving node. <p> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00095">95</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00303">handle_arrival_events()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00377">dtnsim::SimConvergenceLayer::init_link()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00152">start_next_bundle()</a>, and <a class="el" href="SimConvergenceLayer_8cc-source.html#l00486">dtnsim::SimConvergenceLayer::update_connectivity()</a>.</p> </div> </div><p> <a class="anchor" name="acc1169aba619333dd4425ded507762f"></a><!-- doxytag: member="dtnsim::SimLink::tb_" ref="acc1169aba619333dd4425ded507762f" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">oasys::TokenBucket <a class="el" href="classdtnsim_1_1SimLink.html#acc1169aba619333dd4425ded507762f">dtnsim::SimLink::tb_</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Token bucket to track the link rate. <p> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00098">98</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00152">start_next_bundle()</a>, and <a class="el" href="SimConvergenceLayer_8cc-source.html#l00486">dtnsim::SimConvergenceLayer::update_connectivity()</a>.</p> </div> </div><p> <a class="anchor" name="57b0481e90469e25edf041c99826e0c3"></a><!-- doxytag: member="dtnsim::SimLink::buf_" ref="57b0481e90469e25edf041c99826e0c3" args="[65536]" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">u_char <a class="el" href="classdtnsim_1_1SimLink.html#57b0481e90469e25edf041c99826e0c3">dtnsim::SimLink::buf_</a>[65536] </td> </tr> </table> </div> <div class="memdoc"> <p> Temp buffer. <p> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00101">101</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00152">start_next_bundle()</a>.</p> </div> </div><p> <a class="anchor" name="2893440f71bdbe2d95b8c4c7b56f5c72"></a><!-- doxytag: member="dtnsim::SimLink::pending_inflight_" ref="2893440f71bdbe2d95b8c4c7b56f5c72" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="structdtnsim_1_1SimLink_1_1PendingEvent.html">PendingEvent</a>* <a class="el" href="classdtnsim_1_1SimLink.html#2893440f71bdbe2d95b8c4c7b56f5c72">dtnsim::SimLink::pending_inflight_</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Pending event (at most one) to put the next bundle in flight. <p> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00119">119</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00276">handle_pending_inflight()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00232">reschedule_timers()</a>, and <a class="el" href="SimConvergenceLayer_8cc-source.html#l00152">start_next_bundle()</a>.</p> </div> </div><p> <a class="anchor" name="27439f634ae423b24acffe60832b9fb5"></a><!-- doxytag: member="dtnsim::SimLink::arrival_events_" ref="27439f634ae423b24acffe60832b9fb5" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::queue<<a class="el" href="structdtnsim_1_1SimLink_1_1PendingEvent.html">PendingEvent</a>*> <a class="el" href="classdtnsim_1_1SimLink.html#27439f634ae423b24acffe60832b9fb5">dtnsim::SimLink::arrival_events_</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Pending bundle arrival events. <p> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00122">122</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00303">handle_arrival_events()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00232">reschedule_timers()</a>, and <a class="el" href="SimConvergenceLayer_8cc-source.html#l00152">start_next_bundle()</a>.</p> </div> </div><p> <a class="anchor" name="b2ec6a0297d39426263f968a985e9fe9"></a><!-- doxytag: member="dtnsim::SimLink::transmitted_events_" ref="b2ec6a0297d39426263f968a985e9fe9" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::queue<<a class="el" href="structdtnsim_1_1SimLink_1_1PendingEvent.html">PendingEvent</a>*> <a class="el" href="classdtnsim_1_1SimLink.html#b2ec6a0297d39426263f968a985e9fe9">dtnsim::SimLink::transmitted_events_</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Pending bundle transmitted events. <p> <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00125">125</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00337">handle_transmitted_events()</a>, <a class="el" href="SimConvergenceLayer_8cc-source.html#l00232">reschedule_timers()</a>, and <a class="el" href="SimConvergenceLayer_8cc-source.html#l00152">start_next_bundle()</a>.</p> </div> </div><p> <a class="anchor" name="b1cb5971c5ce861064877c0489a70c8b"></a><!-- doxytag: member="dtnsim::SimLink::inflight_timer_" ref="b1cb5971c5ce861064877c0489a70c8b" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classdtnsim_1_1SimLink_1_1PendingEventTimer.html">PendingEventTimer</a> <a class="el" href="classdtnsim_1_1SimLink.html#b1cb5971c5ce861064877c0489a70c8b">dtnsim::SimLink::inflight_timer_</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Three timer instances to independently schedule the timers, though each class can itself be managed with a FIFO queue. <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00144">144</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00232">reschedule_timers()</a>.</p> </div> </div><p> <a class="anchor" name="362b965aee05cc5ce4a12adfb2851f79"></a><!-- doxytag: member="dtnsim::SimLink::arrival_timer_" ref="362b965aee05cc5ce4a12adfb2851f79" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classdtnsim_1_1SimLink_1_1PendingEventTimer.html">PendingEventTimer</a> <a class="el" href="classdtnsim_1_1SimLink.html#362b965aee05cc5ce4a12adfb2851f79">dtnsim::SimLink::arrival_timer_</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Three timer instances to independently schedule the timers, though each class can itself be managed with a FIFO queue. <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00145">145</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00232">reschedule_timers()</a>.</p> </div> </div><p> <a class="anchor" name="d09a7883abb5a4e4b7e4e6332aef980d"></a><!-- doxytag: member="dtnsim::SimLink::transmitted_timer_" ref="d09a7883abb5a4e4b7e4e6332aef980d" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classdtnsim_1_1SimLink_1_1PendingEventTimer.html">PendingEventTimer</a> <a class="el" href="classdtnsim_1_1SimLink.html#d09a7883abb5a4e4b7e4e6332aef980d">dtnsim::SimLink::transmitted_timer_</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Three timer instances to independently schedule the timers, though each class can itself be managed with a FIFO queue. <p>Definition at line <a class="el" href="SimConvergenceLayer_8cc-source.html#l00146">146</a> of file <a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a>.</p> <p>Referenced by <a class="el" href="SimConvergenceLayer_8cc-source.html#l00232">reschedule_timers()</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="SimConvergenceLayer_8cc-source.html">SimConvergenceLayer.cc</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Mon Jul 21 14:09:55 2008 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.6 </small></address> </body> </html>