<!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::UDPConvergenceLayer 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="namespacedtn.html">dtn</a>::<a class="el" href="classdtn_1_1UDPConvergenceLayer.html">UDPConvergenceLayer</a> </div> </div> <div class="contents"> <h1>dtn::UDPConvergenceLayer Class Reference</h1><!-- doxytag: class="dtn::UDPConvergenceLayer" --><!-- doxytag: inherits="dtn::IPConvergenceLayer" --><code>#include <<a class="el" href="UDPConvergenceLayer_8h-source.html">UDPConvergenceLayer.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for dtn::UDPConvergenceLayer:</div> <div class="dynsection"> <p><center><img src="classdtn_1_1UDPConvergenceLayer.png" usemap="#dtn::UDPConvergenceLayer_map" border="0" alt=""></center> <map name="dtn::UDPConvergenceLayer_map"> <area href="classdtn_1_1IPConvergenceLayer.html" alt="dtn::IPConvergenceLayer" shape="rect" coords="0,56,170,80"> <area href="classdtn_1_1ConvergenceLayer.html" alt="dtn::ConvergenceLayer" shape="rect" coords="0,0,170,24"> </map> </div> <p> <a href="classdtn_1_1UDPConvergenceLayer-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8h-source.html#l00028">28</a> of file <a class="el" href="UDPConvergenceLayer_8h-source.html">UDPConvergenceLayer.h</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="classdtn_1_1UDPConvergenceLayer.html#ba060a90aff459670a038507bc6eaf27">UDPConvergenceLayer</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#ba060a90aff459670a038507bc6eaf27"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1UDPConvergenceLayer.html#d469954cd84f63fc4d54e4d5b7791576">interface_up</a> (<a class="el" href="classdtn_1_1Interface.html">Interface</a> *iface, int argc, const char *argv[])</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Bring up a new interface. <a href="#d469954cd84f63fc4d54e4d5b7791576"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1UDPConvergenceLayer.html#165757de59ab4932803cd4ff8e427565">interface_down</a> (<a class="el" href="classdtn_1_1Interface.html">Interface</a> *iface)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Bring down the interface. <a href="#165757de59ab4932803cd4ff8e427565"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1UDPConvergenceLayer.html#a6699e8acacbd6f0b36606e36338a7fa">dump_interface</a> (<a class="el" href="classdtn_1_1Interface.html">Interface</a> *iface, oasys::StringBuffer *<a class="el" href="num2sdnv_8c.html#a81cdcc7ff6987bc85c073253e32715f">buf</a>)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Dump out CL specific interface information. <a href="#a6699e8acacbd6f0b36606e36338a7fa"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1UDPConvergenceLayer.html#adfe99161cd707afd2af73b1db9d6ba3">init_link</a> (const <a class="el" href="namespacedtn.html#6efb37e503f8062c537b022eb755b94e">LinkRef</a> &link, int argc, const char *argv[])</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Create any CL-specific components of the <a class="el" href="classdtn_1_1Link.html" title="Abstraction for a DTN link, i.e.">Link</a>. <a href="#adfe99161cd707afd2af73b1db9d6ba3"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1UDPConvergenceLayer.html#85d4c12ec68ce3a65fcdbbe1ce9ef615">delete_link</a> (const <a class="el" href="namespacedtn.html#6efb37e503f8062c537b022eb755b94e">LinkRef</a> &link)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Delete any CL-specific components of the <a class="el" href="classdtn_1_1Link.html" title="Abstraction for a DTN link, i.e.">Link</a>. <a href="#85d4c12ec68ce3a65fcdbbe1ce9ef615"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1UDPConvergenceLayer.html#6c618838bac1a95b47dc287f75d2348b">dump_link</a> (const <a class="el" href="namespacedtn.html#6efb37e503f8062c537b022eb755b94e">LinkRef</a> &link, oasys::StringBuffer *<a class="el" href="num2sdnv_8c.html#a81cdcc7ff6987bc85c073253e32715f">buf</a>)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Dump out CL specific link information. <a href="#6c618838bac1a95b47dc287f75d2348b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1UDPConvergenceLayer.html#8894dcd4655c2431526dc2d889f23dc2">open_contact</a> (const <a class="el" href="namespacedtn.html#5f869544c85c75b5a85a14d6e90d7ff7">ContactRef</a> &contact)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Open the connection to a given contact and send/listen for bundles over this contact. <a href="#8894dcd4655c2431526dc2d889f23dc2"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1UDPConvergenceLayer.html#4bbdc393d363df910b750df5b1e95239">close_contact</a> (const <a class="el" href="namespacedtn.html#5f869544c85c75b5a85a14d6e90d7ff7">ContactRef</a> &contact)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Close the connnection to the contact. <a href="#4bbdc393d363df910b750df5b1e95239"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1UDPConvergenceLayer.html#b76259ac842a61d33663c376b2fa2509">bundle_queued</a> (const <a class="el" href="namespacedtn.html#6efb37e503f8062c537b022eb755b94e">LinkRef</a> &link, const <a class="el" href="namespacedtn.html#87094f3b26b9f1d469e616d311ae57b1">BundleRef</a> &bundle)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Send the bundle out the link. <a href="#b76259ac842a61d33663c376b2fa2509"></a><br></td></tr> <tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static const u_int </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1UDPConvergenceLayer.html#76e985ed36150909b585c14e3c14c242">MAX_BUNDLE_LEN</a> = 65507</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Maximum bundle size. <a href="#76e985ed36150909b585c14e3c14c242"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static const u_int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1UDPConvergenceLayer.html#640804ad7d940853a50f3f0bbe6ec383">UDPCL_DEFAULT_PORT</a> = 4556</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Default port used by the udp cl. <a href="#640804ad7d940853a50f3f0bbe6ec383"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="classdtn_1_1UDPConvergenceLayer_1_1Params.html">Params</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1UDPConvergenceLayer.html#74dd78fe6f434438daceab7d0ef3cf23">defaults_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Default parameters. <a href="#74dd78fe6f434438daceab7d0ef3cf23"></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"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1UDPConvergenceLayer.html#f8a83f57fdb07d33399fac56c7913616">parse_params</a> (<a class="el" href="classdtn_1_1UDPConvergenceLayer_1_1Params.html">Params</a> *params, int argc, const char **argv, const char **invalidp)</td></tr> <tr><td colspan="2"><br><h2>Classes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1UDPConvergenceLayer_1_1Params.html">Params</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Tunable parameter structure. <a href="classdtn_1_1UDPConvergenceLayer_1_1Params.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="classdtn_1_1UDPConvergenceLayer_1_1Receiver.html">Receiver</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Helper class (and thread) that listens on a registered interface for incoming data. <a href="classdtn_1_1UDPConvergenceLayer_1_1Receiver.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="classdtn_1_1UDPConvergenceLayer_1_1Sender.html">Sender</a></td></tr> </table> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="ba060a90aff459670a038507bc6eaf27"></a><!-- doxytag: member="dtn::UDPConvergenceLayer::UDPConvergenceLayer" ref="ba060a90aff459670a038507bc6eaf27" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">dtn::UDPConvergenceLayer::UDPConvergenceLayer </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Constructor. <p> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00052">52</a> of file <a class="el" href="UDPConvergenceLayer_8cc-source.html">UDPConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="UDPConvergenceLayer_8h-source.html#l00113">dtn::UDPConvergenceLayer::Params::bucket_depth_</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00119">defaults_</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00107">dtn::UDPConvergenceLayer::Params::local_addr_</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00108">dtn::UDPConvergenceLayer::Params::local_port_</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00112">dtn::UDPConvergenceLayer::Params::rate_</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00109">dtn::UDPConvergenceLayer::Params::remote_addr_</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00110">dtn::UDPConvergenceLayer::Params::remote_port_</a>, and <a class="el" href="UDPConvergenceLayer_8h-source.html#l00038">UDPCL_DEFAULT_PORT</a>.</p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="d469954cd84f63fc4d54e4d5b7791576"></a><!-- doxytag: member="dtn::UDPConvergenceLayer::interface_up" ref="d469954cd84f63fc4d54e4d5b7791576" args="(Interface *iface, int argc, const char *argv[])" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::UDPConvergenceLayer::interface_up </td> <td>(</td> <td class="paramtype"><a class="el" href="classdtn_1_1Interface.html">Interface</a> * </td> <td class="paramname"> <em>iface</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>argc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>argv</em>[]</td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Bring up a new interface. <p> <p>Reimplemented from <a class="el" href="classdtn_1_1ConvergenceLayer.html#0d8005ac771a2200d8b9a1fc46a42c29">dtn::ConvergenceLayer</a>.</p> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00087">87</a> of file <a class="el" href="UDPConvergenceLayer_8cc-source.html">UDPConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="UDPConvergenceLayer_8h-source.html#l00119">defaults_</a>, <a class="el" href="Interface_8h-source.html#l00037">dtn::Interface::name()</a>, <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00065">parse_params()</a>, and <a class="el" href="Interface_8h-source.html#l00045">dtn::Interface::set_cl_info()</a>.</p> </div> </div><p> <a class="anchor" name="165757de59ab4932803cd4ff8e427565"></a><!-- doxytag: member="dtn::UDPConvergenceLayer::interface_down" ref="165757de59ab4932803cd4ff8e427565" args="(Interface *iface)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::UDPConvergenceLayer::interface_down </td> <td>(</td> <td class="paramtype"><a class="el" href="classdtn_1_1Interface.html">Interface</a> * </td> <td class="paramname"> <em>iface</em> </td> <td> ) </td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Bring down the interface. <p> <p>Reimplemented from <a class="el" href="classdtn_1_1ConvergenceLayer.html#1f92c4c8c0fe58e20caa3ed72142f953">dtn::ConvergenceLayer</a>.</p> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00140">140</a> of file <a class="el" href="UDPConvergenceLayer_8cc-source.html">UDPConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="Interface_8h-source.html#l00040">dtn::Interface::cl_info()</a>.</p> </div> </div><p> <a class="anchor" name="a6699e8acacbd6f0b36606e36338a7fa"></a><!-- doxytag: member="dtn::UDPConvergenceLayer::dump_interface" ref="a6699e8acacbd6f0b36606e36338a7fa" args="(Interface *iface, oasys::StringBuffer *buf)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dtn::UDPConvergenceLayer::dump_interface </td> <td>(</td> <td class="paramtype"><a class="el" href="classdtn_1_1Interface.html">Interface</a> * </td> <td class="paramname"> <em>iface</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">oasys::StringBuffer * </td> <td class="paramname"> <em>buf</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Dump out CL specific interface information. <p> <p>Reimplemented from <a class="el" href="classdtn_1_1ConvergenceLayer.html#b7e42424ed95b560edcc28d6b45ecf04">dtn::ConvergenceLayer</a>.</p> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00160">160</a> of file <a class="el" href="UDPConvergenceLayer_8cc-source.html">UDPConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="Interface_8h-source.html#l00040">dtn::Interface::cl_info()</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00107">dtn::UDPConvergenceLayer::Params::local_addr_</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00108">dtn::UDPConvergenceLayer::Params::local_port_</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00109">dtn::UDPConvergenceLayer::Params::remote_addr_</a>, and <a class="el" href="UDPConvergenceLayer_8h-source.html#l00110">dtn::UDPConvergenceLayer::Params::remote_port_</a>.</p> </div> </div><p> <a class="anchor" name="adfe99161cd707afd2af73b1db9d6ba3"></a><!-- doxytag: member="dtn::UDPConvergenceLayer::init_link" ref="adfe99161cd707afd2af73b1db9d6ba3" args="(const LinkRef &link, int argc, const char *argv[])" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::UDPConvergenceLayer::init_link </td> <td>(</td> <td class="paramtype">const <a class="el" href="namespacedtn.html#6efb37e503f8062c537b022eb755b94e">LinkRef</a> & </td> <td class="paramname"> <em>link</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>argc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>argv</em>[]</td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Create any CL-specific components of the <a class="el" href="classdtn_1_1Link.html" title="Abstraction for a DTN link, i.e.">Link</a>. <p> <p>Reimplemented from <a class="el" href="classdtn_1_1ConvergenceLayer.html#30f0f04379a82df120a1c1459c049464">dtn::ConvergenceLayer</a>.</p> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00178">178</a> of file <a class="el" href="UDPConvergenceLayer_8cc-source.html">UDPConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="SDNV_8cc-source.html#l00044">ASSERT</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00119">defaults_</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00033">MAX_BUNDLE_LEN</a>, <a class="el" href="IPConvergenceLayer_8cc-source.html#l00033">dtn::IPConvergenceLayer::parse_nexthop()</a>, and <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00065">parse_params()</a>.</p> </div> </div><p> <a class="anchor" name="85d4c12ec68ce3a65fcdbbe1ce9ef615"></a><!-- doxytag: member="dtn::UDPConvergenceLayer::delete_link" ref="85d4c12ec68ce3a65fcdbbe1ce9ef615" args="(const LinkRef &link)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dtn::UDPConvergenceLayer::delete_link </td> <td>(</td> <td class="paramtype">const <a class="el" href="namespacedtn.html#6efb37e503f8062c537b022eb755b94e">LinkRef</a> & </td> <td class="paramname"> <em>link</em> </td> <td> ) </td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Delete any CL-specific components of the <a class="el" href="classdtn_1_1Link.html" title="Abstraction for a DTN link, i.e.">Link</a>. <p> <p>Reimplemented from <a class="el" href="classdtn_1_1ConvergenceLayer.html#c25b42069cd41f9f07bebb93205a0426">dtn::ConvergenceLayer</a>.</p> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00221">221</a> of file <a class="el" href="UDPConvergenceLayer_8cc-source.html">UDPConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="SDNV_8cc-source.html#l00044">ASSERT</a>.</p> </div> </div><p> <a class="anchor" name="6c618838bac1a95b47dc287f75d2348b"></a><!-- doxytag: member="dtn::UDPConvergenceLayer::dump_link" ref="6c618838bac1a95b47dc287f75d2348b" args="(const LinkRef &link, oasys::StringBuffer *buf)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dtn::UDPConvergenceLayer::dump_link </td> <td>(</td> <td class="paramtype">const <a class="el" href="namespacedtn.html#6efb37e503f8062c537b022eb755b94e">LinkRef</a> & </td> <td class="paramname"> <em>link</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">oasys::StringBuffer * </td> <td class="paramname"> <em>buf</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Dump out CL specific link information. <p> <p>Reimplemented from <a class="el" href="classdtn_1_1ConvergenceLayer.html#852d2ac184b8701d53d2ae8a04a776df">dtn::ConvergenceLayer</a>.</p> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00236">236</a> of file <a class="el" href="UDPConvergenceLayer_8cc-source.html">UDPConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="SDNV_8cc-source.html#l00044">ASSERT</a>.</p> </div> </div><p> <a class="anchor" name="8894dcd4655c2431526dc2d889f23dc2"></a><!-- doxytag: member="dtn::UDPConvergenceLayer::open_contact" ref="8894dcd4655c2431526dc2d889f23dc2" args="(const ContactRef &contact)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::UDPConvergenceLayer::open_contact </td> <td>(</td> <td class="paramtype">const <a class="el" href="namespacedtn.html#5f869544c85c75b5a85a14d6e90d7ff7">ContactRef</a> & </td> <td class="paramname"> <em>contact</em> </td> <td> ) </td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Open the connection to a given contact and send/listen for bundles over this contact. <p> <p>Implements <a class="el" href="classdtn_1_1ConvergenceLayer.html#0bc4483b3956e082a17f79bd9b488780">dtn::ConvergenceLayer</a>.</p> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00253">253</a> of file <a class="el" href="UDPConvergenceLayer_8cc-source.html">UDPConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="SDNV_8cc-source.html#l00044">ASSERT</a>, <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00430">dtn::UDPConvergenceLayer::Sender::init()</a>, <a class="el" href="BundleEvent_8h-source.html#l00498">dtn::ContactEvent::NO_INFO</a>, <a class="el" href="IPConvergenceLayer_8cc-source.html#l00033">dtn::IPConvergenceLayer::parse_nexthop()</a>, <a class="el" href="BundleDaemon_8cc-source.html#l00134">dtn::BundleDaemon::post()</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00038">UDPCL_DEFAULT_PORT</a>, and <a class="el" href="contacts_2Link_8h-source.html#l00184">dtn::Link::UNAVAILABLE</a>.</p> </div> </div><p> <a class="anchor" name="4bbdc393d363df910b750df5b1e95239"></a><!-- doxytag: member="dtn::UDPConvergenceLayer::close_contact" ref="4bbdc393d363df910b750df5b1e95239" args="(const ContactRef &contact)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::UDPConvergenceLayer::close_contact </td> <td>(</td> <td class="paramtype">const <a class="el" href="namespacedtn.html#5f869544c85c75b5a85a14d6e90d7ff7">ContactRef</a> & </td> <td class="paramname"> <em>contact</em> </td> <td> ) </td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Close the connnection to the contact. <p> <p>Reimplemented from <a class="el" href="classdtn_1_1ConvergenceLayer.html#0667833468ff83fd60b4f96307c26618">dtn::ConvergenceLayer</a>.</p> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00309">309</a> of file <a class="el" href="UDPConvergenceLayer_8cc-source.html">UDPConvergenceLayer.cc</a>.</p> </div> </div><p> <a class="anchor" name="b76259ac842a61d33663c376b2fa2509"></a><!-- doxytag: member="dtn::UDPConvergenceLayer::bundle_queued" ref="b76259ac842a61d33663c376b2fa2509" args="(const LinkRef &link, const BundleRef &bundle)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dtn::UDPConvergenceLayer::bundle_queued </td> <td>(</td> <td class="paramtype">const <a class="el" href="namespacedtn.html#6efb37e503f8062c537b022eb755b94e">LinkRef</a> & </td> <td class="paramname"> <em>link</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="namespacedtn.html#87094f3b26b9f1d469e616d311ae57b1">BundleRef</a> & </td> <td class="paramname"> <em>bundle</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Send the bundle out the link. <p> <p>Implements <a class="el" href="classdtn_1_1ConvergenceLayer.html#af13ad57dd3dbab0e5c1e827ef59ab67">dtn::ConvergenceLayer</a>.</p> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00325">325</a> of file <a class="el" href="UDPConvergenceLayer_8cc-source.html">UDPConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="SDNV_8cc-source.html#l00044">ASSERT</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00210">dtn::UDPConvergenceLayer::Sender::contact_</a>, <a class="el" href="num2sdnv_8c-source.html#l00034">len</a>, <a class="el" href="BundleDaemon_8cc-source.html#l00134">dtn::BundleDaemon::post()</a>, and <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00474">dtn::UDPConvergenceLayer::Sender::send_bundle()</a>.</p> </div> </div><p> <a class="anchor" name="f8a83f57fdb07d33399fac56c7913616"></a><!-- doxytag: member="dtn::UDPConvergenceLayer::parse_params" ref="f8a83f57fdb07d33399fac56c7913616" args="(Params *params, int argc, const char **argv, const char **invalidp)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::UDPConvergenceLayer::parse_params </td> <td>(</td> <td class="paramtype"><a class="el" href="classdtn_1_1UDPConvergenceLayer_1_1Params.html">Params</a> * </td> <td class="paramname"> <em>params</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>argc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char ** </td> <td class="paramname"> <em>argv</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char ** </td> <td class="paramname"> <em>invalidp</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00065">65</a> of file <a class="el" href="UDPConvergenceLayer_8cc-source.html">UDPConvergenceLayer.cc</a>.</p> <p>References <a class="el" href="UDPConvergenceLayer_8h-source.html#l00113">dtn::UDPConvergenceLayer::Params::bucket_depth_</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00107">dtn::UDPConvergenceLayer::Params::local_addr_</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00108">dtn::UDPConvergenceLayer::Params::local_port_</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00112">dtn::UDPConvergenceLayer::Params::rate_</a>, <a class="el" href="UDPConvergenceLayer_8h-source.html#l00109">dtn::UDPConvergenceLayer::Params::remote_addr_</a>, and <a class="el" href="UDPConvergenceLayer_8h-source.html#l00110">dtn::UDPConvergenceLayer::Params::remote_port_</a>.</p> <p>Referenced by <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00178">init_link()</a>, and <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00087">interface_up()</a>.</p> </div> </div><p> <hr><h2>Member Data Documentation</h2> <a class="anchor" name="76e985ed36150909b585c14e3c14c242"></a><!-- doxytag: member="dtn::UDPConvergenceLayer::MAX_BUNDLE_LEN" ref="76e985ed36150909b585c14e3c14c242" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const u_int <a class="el" href="classdtn_1_1UDPConvergenceLayer.html#76e985ed36150909b585c14e3c14c242">dtn::UDPConvergenceLayer::MAX_BUNDLE_LEN</a> = 65507<code> [static]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> Maximum bundle size. <p> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8h-source.html#l00033">33</a> of file <a class="el" href="UDPConvergenceLayer_8h-source.html">UDPConvergenceLayer.h</a>.</p> <p>Referenced by <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00178">init_link()</a>, and <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00474">dtn::UDPConvergenceLayer::Sender::send_bundle()</a>.</p> </div> </div><p> <a class="anchor" name="640804ad7d940853a50f3f0bbe6ec383"></a><!-- doxytag: member="dtn::UDPConvergenceLayer::UDPCL_DEFAULT_PORT" ref="640804ad7d940853a50f3f0bbe6ec383" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const u_int16_t <a class="el" href="classdtn_1_1UDPConvergenceLayer.html#640804ad7d940853a50f3f0bbe6ec383">dtn::UDPConvergenceLayer::UDPCL_DEFAULT_PORT</a> = 4556<code> [static]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> Default port used by the udp cl. <p> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8h-source.html#l00038">38</a> of file <a class="el" href="UDPConvergenceLayer_8h-source.html">UDPConvergenceLayer.h</a>.</p> <p>Referenced by <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00253">open_contact()</a>, and <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00052">UDPConvergenceLayer()</a>.</p> </div> </div><p> <a class="anchor" name="74dd78fe6f434438daceab7d0ef3cf23"></a><!-- doxytag: member="dtn::UDPConvergenceLayer::defaults_" ref="74dd78fe6f434438daceab7d0ef3cf23" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classdtn_1_1UDPConvergenceLayer_1_1Params.html">Params</a> <a class="el" href="classdtn_1_1UDPConvergenceLayer.html#74dd78fe6f434438daceab7d0ef3cf23">dtn::UDPConvergenceLayer::defaults_</a><code> [static]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> Default parameters. <p> <p>Definition at line <a class="el" href="UDPConvergenceLayer_8h-source.html#l00119">119</a> of file <a class="el" href="UDPConvergenceLayer_8h-source.html">UDPConvergenceLayer.h</a>.</p> <p>Referenced by <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00178">init_link()</a>, <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00087">interface_up()</a>, and <a class="el" href="UDPConvergenceLayer_8cc-source.html#l00052">UDPConvergenceLayer()</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="UDPConvergenceLayer_8h-source.html">UDPConvergenceLayer.h</a><li><a class="el" href="UDPConvergenceLayer_8cc-source.html">UDPConvergenceLayer.cc</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Mon Jul 21 14:09:52 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>