Sophie

Sophie

distrib > Mandriva > 2009.0 > i586 > by-pkgid > d9faa203c2b0b6fbb179d93daaea81b7 > files > 1123

libdtn-devel-2.6.0-1mdv2009.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>DTN Reference Implementation: dtn::IPAnnounce 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&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_1IPAnnounce.html">IPAnnounce</a>
  </div>
</div>
<div class="contents">
<h1>dtn::IPAnnounce Class Reference</h1><!-- doxytag: class="dtn::IPAnnounce" --><!-- doxytag: inherits="dtn::Announce" --><code>#include &lt;<a class="el" href="IPAnnounce_8h-source.html">IPAnnounce.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for dtn::IPAnnounce:</div>
<div class="dynsection">

<p><center><img src="classdtn_1_1IPAnnounce.png" usemap="#dtn::IPAnnounce_map" border="0" alt=""></center>
<map name="dtn::IPAnnounce_map">
<area href="classdtn_1_1Announce.html" alt="dtn::Announce" shape="rect" coords="0,0,104,24">
</map>
</div>

<p>
<a href="classdtn_1_1IPAnnounce-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
Helper class that 1) formats outbound beacons to advertise this CL instance via neighbor discovery, and 2) responds to inbound advertisements by creating a new <a class="el" href="classdtn_1_1Contact.html" title="Encapsulation of an active connection to a next-hop DTN contact.">Contact</a>. 
<p>Definition at line <a class="el" href="IPAnnounce_8h-source.html#l00031">31</a> of file <a class="el" href="IPAnnounce_8h-source.html">IPAnnounce.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">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1IPAnnounce.html#479164ae808ee96bfd3c288c9182d4df">format_advertisement</a> (u_char *<a class="el" href="num2sdnv_8c.html#a81cdcc7ff6987bc85c073253e32715f">buf</a>, size_t len)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Serialize announcement out to buffer.  <a href="#479164ae808ee96bfd3c288c9182d4df"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const in_addr_t &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1IPAnnounce.html#21bec094356706cb501349498969fde2">cl_addr</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Export cl_addr to use in sending Announcement out on correct interface.  <a href="#21bec094356706cb501349498969fde2"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Protected Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <br>
<a class="el" href="structdtn_1_1IPDiscovery_1_1DiscoveryHeader.html">IPDiscovery::DiscoveryHeader</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1IPAnnounce.html#bb32801687bed24e35159f2d43d5f447">DiscoveryHeader</a></td></tr>

<tr><td colspan="2"><br><h2>Protected 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_1IPAnnounce.html#d04e297f085fbc58df13db9d22a32ba8">IPAnnounce</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#d04e297f085fbc58df13db9d22a32ba8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1IPAnnounce.html#106a39fc2f3e9aa2bc69e66644706223">configure</a> (const std::string &amp;name, <a class="el" href="classdtn_1_1ConvergenceLayer.html">ConvergenceLayer</a> *cl, int argc, const char *argv[])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deserialize parameters for configuration.  <a href="#106a39fc2f3e9aa2bc69e66644706223"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">in_addr_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1IPAnnounce.html#c84088b9a9431310dd28e49beec0e9d2">cl_addr_</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">next hop info for CL to be advertised  <a href="#c84088b9a9431310dd28e49beec0e9d2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">u_int16_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1IPAnnounce.html#31a9868de818e01a3044f9e88161b37c">cl_port_</a></td></tr>

<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1IPAnnounce.html#648b5af4b843553ed77a62858d9ef213">Announce</a></td></tr>

</table>
<hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="bb32801687bed24e35159f2d43d5f447"></a><!-- doxytag: member="dtn::IPAnnounce::DiscoveryHeader" ref="bb32801687bed24e35159f2d43d5f447" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structdtn_1_1IPDiscovery_1_1DiscoveryHeader.html">IPDiscovery::DiscoveryHeader</a> <a class="el" href="structdtn_1_1IPDiscovery_1_1DiscoveryHeader.html">dtn::IPAnnounce::DiscoveryHeader</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="IPAnnounce_8h-source.html#l00047">47</a> of file <a class="el" href="IPAnnounce_8h-source.html">IPAnnounce.h</a>.</p>

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

<p>
Constructor. 
<p>

<p>Definition at line <a class="el" href="IPAnnounce_8cc-source.html#l00030">30</a> of file <a class="el" href="IPAnnounce_8cc-source.html">IPAnnounce.cc</a>.</p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="479164ae808ee96bfd3c288c9182d4df"></a><!-- doxytag: member="dtn::IPAnnounce::format_advertisement" ref="479164ae808ee96bfd3c288c9182d4df" args="(u_char *buf, size_t len)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t dtn::IPAnnounce::format_advertisement           </td>
          <td>(</td>
          <td class="paramtype">u_char *&nbsp;</td>
          <td class="paramname"> <em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Serialize announcement out to buffer. 
<p>

<p>Implements <a class="el" href="classdtn_1_1Announce.html#f335fed7a9baee08d1b02cf1697ea845">dtn::Announce</a>.</p>

<p>Definition at line <a class="el" href="IPAnnounce_8cc-source.html#l00082">82</a> of file <a class="el" href="IPAnnounce_8cc-source.html">IPAnnounce.cc</a>.</p>

<p>References <a class="el" href="EndpointID_8h-source.html#l00264">dtn::EndpointID::c_str()</a>, <a class="el" href="IPAnnounce_8h-source.html#l00063">cl_addr_</a>, <a class="el" href="IPAnnounce_8h-source.html#l00064">cl_port_</a>, <a class="el" href="IPDiscovery_8h-source.html#l00063">dtn::IPDiscovery::DiscoveryHeader::cl_type</a>, <a class="el" href="Announce_8h-source.html#l00114">dtn::Announce::data_sent_</a>, <a class="el" href="Announce_8h-source.html#l00027">FOUR_BYTE_ALIGN</a>, <a class="el" href="Simulator_8cc-source.html#l00269">dtnsim::gettimeofday()</a>, <a class="el" href="IPDiscovery_8h-source.html#l00066">dtn::IPDiscovery::DiscoveryHeader::inet_addr</a>, <a class="el" href="IPDiscovery_8h-source.html#l00067">dtn::IPDiscovery::DiscoveryHeader::inet_port</a>, <a class="el" href="IPDiscovery_8h-source.html#l00064">dtn::IPDiscovery::DiscoveryHeader::interval</a>, <a class="el" href="Announce_8h-source.html#l00112">dtn::Announce::interval_</a>, <a class="el" href="IPDiscovery_8h-source.html#l00065">dtn::IPDiscovery::DiscoveryHeader::length</a>, <a class="el" href="EndpointID_8h-source.html#l00266">dtn::EndpointID::length()</a>, <a class="el" href="IPDiscovery_8h-source.html#l00068">dtn::IPDiscovery::DiscoveryHeader::name_len</a>, <a class="el" href="IPDiscovery_8h-source.html#l00069">dtn::IPDiscovery::DiscoveryHeader::sender_name</a>, <a class="el" href="IPDiscovery_8h-source.html#l00095">dtn::IPDiscovery::str_to_type()</a>, and <a class="el" href="Announce_8h-source.html#l00054">dtn::Announce::type()</a>.</p>

<p>Referenced by <a class="el" href="IPDiscovery_8cc-source.html#l00122">dtn::IPDiscovery::run()</a>.</p>

</div>
</div><p>
<a class="anchor" name="21bec094356706cb501349498969fde2"></a><!-- doxytag: member="dtn::IPAnnounce::cl_addr" ref="21bec094356706cb501349498969fde2" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const in_addr_t&amp; dtn::IPAnnounce::cl_addr           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Export cl_addr to use in sending Announcement out on correct interface. 
<p>

<p>Definition at line <a class="el" href="IPAnnounce_8h-source.html#l00042">42</a> of file <a class="el" href="IPAnnounce_8h-source.html">IPAnnounce.h</a>.</p>

<p>References <a class="el" href="IPAnnounce_8h-source.html#l00063">cl_addr_</a>.</p>

<p>Referenced by <a class="el" href="IPDiscovery_8cc-source.html#l00122">dtn::IPDiscovery::run()</a>.</p>

</div>
</div><p>
<a class="anchor" name="106a39fc2f3e9aa2bc69e66644706223"></a><!-- doxytag: member="dtn::IPAnnounce::configure" ref="106a39fc2f3e9aa2bc69e66644706223" args="(const std::string &amp;name, ConvergenceLayer *cl, 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::IPAnnounce::configure           </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classdtn_1_1ConvergenceLayer.html">ConvergenceLayer</a> *&nbsp;</td>
          <td class="paramname"> <em>cl</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>argc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>argv</em>[]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Deserialize parameters for configuration. 
<p>

<p>Implements <a class="el" href="classdtn_1_1Announce.html#005ba1185dabf18c7d40a349350013ef">dtn::Announce</a>.</p>

<p>Definition at line <a class="el" href="IPAnnounce_8cc-source.html#l00036">36</a> of file <a class="el" href="IPAnnounce_8cc-source.html">IPAnnounce.cc</a>.</p>

<p>References <a class="el" href="num2sdnv_8c-source.html#l00035">buf</a>, <a class="el" href="Announce_8h-source.html#l00108">dtn::Announce::cl_</a>, <a class="el" href="IPAnnounce_8h-source.html#l00063">cl_addr_</a>, <a class="el" href="IPAnnounce_8h-source.html#l00064">cl_port_</a>, <a class="el" href="Announce_8h-source.html#l00112">dtn::Announce::interval_</a>, <a class="el" href="Announce_8h-source.html#l00109">dtn::Announce::local_</a>, <a class="el" href="ConvergenceLayer_8h-source.html#l00205">dtn::ConvergenceLayer::name()</a>, <a class="el" href="Announce_8h-source.html#l00110">dtn::Announce::name_</a>, and <a class="el" href="Announce_8h-source.html#l00111">dtn::Announce::type_</a>.</p>

</div>
</div><p>
<hr><h2>Friends And Related Function Documentation</h2>
<a class="anchor" name="648b5af4b843553ed77a62858d9ef213"></a><!-- doxytag: member="dtn::IPAnnounce::Announce" ref="648b5af4b843553ed77a62858d9ef213" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">friend class <a class="el" href="classdtn_1_1Announce.html">Announce</a><code> [friend]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="IPAnnounce_8h-source.html#l00045">45</a> of file <a class="el" href="IPAnnounce_8h-source.html">IPAnnounce.h</a>.</p>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="c84088b9a9431310dd28e49beec0e9d2"></a><!-- doxytag: member="dtn::IPAnnounce::cl_addr_" ref="c84088b9a9431310dd28e49beec0e9d2" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">in_addr_t <a class="el" href="classdtn_1_1IPAnnounce.html#c84088b9a9431310dd28e49beec0e9d2">dtn::IPAnnounce::cl_addr_</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
next hop info for CL to be advertised 
<p>

<p>Definition at line <a class="el" href="IPAnnounce_8h-source.html#l00063">63</a> of file <a class="el" href="IPAnnounce_8h-source.html">IPAnnounce.h</a>.</p>

<p>Referenced by <a class="el" href="IPAnnounce_8h-source.html#l00042">cl_addr()</a>, <a class="el" href="IPAnnounce_8cc-source.html#l00036">configure()</a>, and <a class="el" href="IPAnnounce_8cc-source.html#l00082">format_advertisement()</a>.</p>

</div>
</div><p>
<a class="anchor" name="31a9868de818e01a3044f9e88161b37c"></a><!-- doxytag: member="dtn::IPAnnounce::cl_port_" ref="31a9868de818e01a3044f9e88161b37c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u_int16_t <a class="el" href="classdtn_1_1IPAnnounce.html#31a9868de818e01a3044f9e88161b37c">dtn::IPAnnounce::cl_port_</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="IPAnnounce_8h-source.html#l00064">64</a> of file <a class="el" href="IPAnnounce_8h-source.html">IPAnnounce.h</a>.</p>

<p>Referenced by <a class="el" href="IPAnnounce_8cc-source.html#l00036">configure()</a>, and <a class="el" href="IPAnnounce_8cc-source.html#l00082">format_advertisement()</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="IPAnnounce_8h-source.html">IPAnnounce.h</a><li><a class="el" href="IPAnnounce_8cc-source.html">IPAnnounce.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&nbsp;
<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>