<!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::Announce 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="namespacedtn.html">dtn</a>::<a class="el" href="classdtn_1_1Announce.html">Announce</a> </div> </div> <div class="contents"> <h1>dtn::Announce Class Reference</h1><!-- doxytag: class="dtn::Announce" --><a class="el" href="classdtn_1_1Announce.html" title="Announce represents a ConvergenceLayer (Interface).">Announce</a> represents a <a class="el" href="classdtn_1_1ConvergenceLayer.html" title="The abstract interface for a convergence layer.">ConvergenceLayer</a> (<a class="el" href="classdtn_1_1Interface.html" title="Abstraction of a local dtn interface.">Interface</a>). <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="Announce_8h-source.html">Announce.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for dtn::Announce:</div> <div class="dynsection"> <p><center><img src="classdtn_1_1Announce.png" usemap="#dtn::Announce_map" border="0" alt=""></center> <map name="dtn::Announce_map"> <area href="classdtn_1_1IPAnnounce.html" alt="dtn::IPAnnounce" shape="rect" coords="0,56,104,80"> </map> </div> <p> <a href="classdtn_1_1Announce-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">const std::string & </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1Announce.html#7cea29d4c3796920f6d8cb4c943570eb">name</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The name of this <a class="el" href="classdtn_1_1Announce.html" title="Announce represents a ConvergenceLayer (Interface).">Announce</a> instance. <a href="#7cea29d4c3796920f6d8cb4c943570eb"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const std::string & </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1Announce.html#ace9d8bfc9824adb417ee56f3935e652">type</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Which type of CL is represented by this <a class="el" href="classdtn_1_1Announce.html" title="Announce represents a ConvergenceLayer (Interface).">Announce</a>. <a href="#ace9d8bfc9824adb417ee56f3935e652"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const std::string & </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1Announce.html#4cfa7eef803f45fbdd4d41d85514e021">local_addr</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return a string representation of the <a class="el" href="classdtn_1_1ConvergenceLayer.html" title="The abstract interface for a convergence layer.">ConvergenceLayer</a> address info to be advertised by parent <a class="el" href="classdtn_1_1Discovery.html" title="Abstraction of neighbor discovery agent.">Discovery</a>. <a href="#4cfa7eef803f45fbdd4d41d85514e021"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1Announce.html#f335fed7a9baee08d1b02cf1697ea845">format_advertisement</a> (u_char *<a class="el" href="num2sdnv_8c.html#a81cdcc7ff6987bc85c073253e32715f">buf</a>, size_t len)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Hook for derived classes to format information to be advertised. <a href="#f335fed7a9baee08d1b02cf1697ea845"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1Announce.html#d527f21832f1cae13c7676791a5867d3">~Announce</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">u_int </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1Announce.html#381c7961b5b0d78fcc58d1d64a1d84ca">interval_remaining</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the number of milliseconds remaining until the interval expires, or 0 if it's already expired. <a href="#381c7961b5b0d78fcc58d1d64a1d84ca"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">u_int </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1Announce.html#ea3deb5caedf6d291d0f60630d9be883">interval</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Number of milliseconds between announcements. <a href="#ea3deb5caedf6d291d0f60630d9be883"></a><br></td></tr> <tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="classdtn_1_1Announce.html">Announce</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1Announce.html#01b945f189453cdd16eefaa50f2e2dab">create_announce</a> (const std::string &name, <a class="el" href="classdtn_1_1ConvergenceLayer.html">ConvergenceLayer</a> *cl, int argc, const char *argv[])</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Factory method for creating instances of derived classes. <a href="#01b945f189453cdd16eefaa50f2e2dab"></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="classdtn_1_1Announce.html#53ac7813f7c1e61b31b1ce3596b29ff8">Announce</a> (const char *logpath="/dtn/discovery/announce")</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="classdtn_1_1Announce.html#005ba1185dabf18c7d40a349350013ef">configure</a> (const std::string &name, <a class="el" href="classdtn_1_1ConvergenceLayer.html">ConvergenceLayer</a> *cl, int argc, const char *argv[])=0</td></tr> <tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1ConvergenceLayer.html">ConvergenceLayer</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1Announce.html#65066d3cb11b61adc07b9440e337f269">cl_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">CL represented by this <a class="el" href="classdtn_1_1Announce.html" title="Announce represents a ConvergenceLayer (Interface).">Announce</a>. <a href="#65066d3cb11b61adc07b9440e337f269"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1Announce.html#e0381b20267e347d8ef914a1931e5e28">local_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Beacon info to advertise. <a href="#e0381b20267e347d8ef914a1931e5e28"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1Announce.html#1acf55ea37c38026a963a8a7ab5f5063">name_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">name for this beacon instance <a href="#1acf55ea37c38026a963a8a7ab5f5063"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1Announce.html#7dfeaeaf96b1904c710bdb09a7a52c3f">type_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">pulled from cl_ <a href="#7dfeaeaf96b1904c710bdb09a7a52c3f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">u_int </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1Announce.html#e81359675347762ba29a3f9ea9968cc4">interval_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">interval (in milliseconds) for beacon header <a href="#e81359675347762ba29a3f9ea9968cc4"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct timeval </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1Announce.html#25191d7733447aa55b2c092d61f6af35">data_sent_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">mark each time data is sent <a href="#25191d7733447aa55b2c092d61f6af35"></a><br></td></tr> <tr><td colspan="2"><br><h2>Private 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_1Announce.html#295a26618b70be16462a3cfad94df27f">Announce</a> (const <a class="el" href="classdtn_1_1Announce.html">Announce</a> &)</td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> <a class="el" href="classdtn_1_1Announce.html" title="Announce represents a ConvergenceLayer (Interface).">Announce</a> represents a <a class="el" href="classdtn_1_1ConvergenceLayer.html" title="The abstract interface for a convergence layer.">ConvergenceLayer</a> (<a class="el" href="classdtn_1_1Interface.html" title="Abstraction of a local dtn interface.">Interface</a>). <p> Each announce instance records its CL's address and the interval at which to advertise to or poll for neighbors. <a class="el" href="classdtn_1_1Discovery.html" title="Abstraction of neighbor discovery agent.">Discovery</a> maintains a list of <a class="el" href="classdtn_1_1Announce.html" title="Announce represents a ConvergenceLayer (Interface).">Announce</a> which serve as the basis for its advertisement.<p> Additionally, <a class="el" href="classdtn_1_1Announce.html" title="Announce represents a ConvergenceLayer (Interface).">Announce</a> serves as a responder. For each discovery it creates a new <a class="el" href="classdtn_1_1Contact.html" title="Encapsulation of an active connection to a next-hop DTN contact.">Contact</a> to the remote node by placing the appropriate call into its CL. <p>Definition at line <a class="el" href="Announce_8h-source.html#l00042">42</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="d527f21832f1cae13c7676791a5867d3"></a><!-- doxytag: member="dtn::Announce::~Announce" ref="d527f21832f1cae13c7676791a5867d3" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual dtn::Announce::~Announce </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="Announce_8h-source.html#l00067">67</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> </div> </div><p> <a class="anchor" name="53ac7813f7c1e61b31b1ce3596b29ff8"></a><!-- doxytag: member="dtn::Announce::Announce" ref="53ac7813f7c1e61b31b1ce3596b29ff8" args="(const char *logpath="/dtn/discovery/announce")" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">dtn::Announce::Announce </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>logpath</em> = <code>"/dtn/discovery/announce"</code> </td> <td> ) </td> <td><code> [inline, protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="Announce_8h-source.html#l00097">97</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> <p>References <a class="el" href="Announce_8h-source.html#l00114">data_sent_</a>, and <a class="el" href="Simulator_8cc-source.html#l00269">dtnsim::gettimeofday()</a>.</p> </div> </div><p> <a class="anchor" name="295a26618b70be16462a3cfad94df27f"></a><!-- doxytag: member="dtn::Announce::Announce" ref="295a26618b70be16462a3cfad94df27f" args="(const Announce &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">dtn::Announce::Announce </td> <td>(</td> <td class="paramtype">const <a class="el" href="classdtn_1_1Announce.html">Announce</a> & </td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline, private]</code></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="Announce_8h-source.html#l00116">116</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="005ba1185dabf18c7d40a349350013ef"></a><!-- doxytag: member="dtn::Announce::configure" ref="005ba1185dabf18c7d40a349350013ef" args="(const std::string &name, ConvergenceLayer *cl, int argc, const char *argv[])=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::Announce::configure </td> <td>(</td> <td class="paramtype">const std::string & </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> * </td> <td class="paramname"> <em>cl</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> [protected, pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Implemented in <a class="el" href="classdtn_1_1IPAnnounce.html#106a39fc2f3e9aa2bc69e66644706223">dtn::IPAnnounce</a>.</p> <p>Referenced by <a class="el" href="Announce_8cc-source.html#l00028">create_announce()</a>.</p> </div> </div><p> <a class="anchor" name="01b945f189453cdd16eefaa50f2e2dab"></a><!-- doxytag: member="dtn::Announce::create_announce" ref="01b945f189453cdd16eefaa50f2e2dab" args="(const std::string &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="classdtn_1_1Announce.html">Announce</a> * dtn::Announce::create_announce </td> <td>(</td> <td class="paramtype">const std::string & </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> * </td> <td class="paramname"> <em>cl</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> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Factory method for creating instances of derived classes. <p> <p>Definition at line <a class="el" href="Announce_8cc-source.html#l00028">28</a> of file <a class="el" href="Announce_8cc-source.html">Announce.cc</a>.</p> <p>References <a class="el" href="SDNV_8cc-source.html#l00044">ASSERT</a>, <a class="el" href="classdtn_1_1Announce.html#005ba1185dabf18c7d40a349350013ef">configure()</a>, and <a class="el" href="ConvergenceLayer_8h-source.html#l00205">dtn::ConvergenceLayer::name()</a>.</p> <p>Referenced by <a class="el" href="Discovery_8cc-source.html#l00108">dtn::Discovery::announce()</a>.</p> </div> </div><p> <a class="anchor" name="f335fed7a9baee08d1b02cf1697ea845"></a><!-- doxytag: member="dtn::Announce::format_advertisement" ref="f335fed7a9baee08d1b02cf1697ea845" args="(u_char *buf, size_t len)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual size_t dtn::Announce::format_advertisement </td> <td>(</td> <td class="paramtype">u_char * </td> <td class="paramname"> <em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"> <em>len</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Hook for derived classes to format information to be advertised. <p> <p>Implemented in <a class="el" href="classdtn_1_1IPAnnounce.html#479164ae808ee96bfd3c288c9182d4df">dtn::IPAnnounce</a>.</p> </div> </div><p> <a class="anchor" name="ea3deb5caedf6d291d0f60630d9be883"></a><!-- doxytag: member="dtn::Announce::interval" ref="ea3deb5caedf6d291d0f60630d9be883" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">u_int dtn::Announce::interval </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Number of milliseconds between announcements. <p> <p>Definition at line <a class="el" href="Announce_8h-source.html#l00094">94</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> <p>References <a class="el" href="Announce_8h-source.html#l00112">interval_</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="381c7961b5b0d78fcc58d1d64a1d84ca"></a><!-- doxytag: member="dtn::Announce::interval_remaining" ref="381c7961b5b0d78fcc58d1d64a1d84ca" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">u_int dtn::Announce::interval_remaining </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Return the number of milliseconds remaining until the interval expires, or 0 if it's already expired. <p> <p>Definition at line <a class="el" href="Announce_8h-source.html#l00073">73</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> <p>References <a class="el" href="Announce_8h-source.html#l00114">data_sent_</a>, <a class="el" href="Simulator_8cc-source.html#l00269">dtnsim::gettimeofday()</a>, <a class="el" href="Announce_8h-source.html#l00112">interval_</a>, and <a class="el" href="dtnping_8h-source.html#l00029">TIMEVAL_DIFF_MSEC</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="4cfa7eef803f45fbdd4d41d85514e021"></a><!-- doxytag: member="dtn::Announce::local_addr" ref="4cfa7eef803f45fbdd4d41d85514e021" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const std::string& dtn::Announce::local_addr </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Return a string representation of the <a class="el" href="classdtn_1_1ConvergenceLayer.html" title="The abstract interface for a convergence layer.">ConvergenceLayer</a> address info to be advertised by parent <a class="el" href="classdtn_1_1Discovery.html" title="Abstraction of neighbor discovery agent.">Discovery</a>. <p> <p>Definition at line <a class="el" href="Announce_8h-source.html#l00060">60</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> <p>References <a class="el" href="Announce_8h-source.html#l00109">local_</a>.</p> </div> </div><p> <a class="anchor" name="7cea29d4c3796920f6d8cb4c943570eb"></a><!-- doxytag: member="dtn::Announce::name" ref="7cea29d4c3796920f6d8cb4c943570eb" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const std::string& dtn::Announce::name </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> The name of this <a class="el" href="classdtn_1_1Announce.html" title="Announce represents a ConvergenceLayer (Interface).">Announce</a> instance. <p> <p>Definition at line <a class="el" href="Announce_8h-source.html#l00049">49</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> <p>References <a class="el" href="Announce_8h-source.html#l00110">name_</a>.</p> <p>Referenced by <a class="el" href="Discovery_8cc-source.html#l00165">dtn::Discovery::find()</a>.</p> </div> </div><p> <a class="anchor" name="ace9d8bfc9824adb417ee56f3935e652"></a><!-- doxytag: member="dtn::Announce::type" ref="ace9d8bfc9824adb417ee56f3935e652" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const std::string& dtn::Announce::type </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Which type of CL is represented by this <a class="el" href="classdtn_1_1Announce.html" title="Announce represents a ConvergenceLayer (Interface).">Announce</a>. <p> <p>Definition at line <a class="el" href="Announce_8h-source.html#l00054">54</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> <p>References <a class="el" href="Announce_8h-source.html#l00111">type_</a>.</p> <p>Referenced by <a class="el" href="IPAnnounce_8cc-source.html#l00082">dtn::IPAnnounce::format_advertisement()</a>.</p> </div> </div><p> <hr><h2>Member Data Documentation</h2> <a class="anchor" name="65066d3cb11b61adc07b9440e337f269"></a><!-- doxytag: member="dtn::Announce::cl_" ref="65066d3cb11b61adc07b9440e337f269" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classdtn_1_1ConvergenceLayer.html">ConvergenceLayer</a>* <a class="el" href="classdtn_1_1Announce.html#65066d3cb11b61adc07b9440e337f269">dtn::Announce::cl_</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> CL represented by this <a class="el" href="classdtn_1_1Announce.html" title="Announce represents a ConvergenceLayer (Interface).">Announce</a>. <p> <p>Definition at line <a class="el" href="Announce_8h-source.html#l00108">108</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> <p>Referenced by <a class="el" href="IPAnnounce_8cc-source.html#l00036">dtn::IPAnnounce::configure()</a>.</p> </div> </div><p> <a class="anchor" name="25191d7733447aa55b2c092d61f6af35"></a><!-- doxytag: member="dtn::Announce::data_sent_" ref="25191d7733447aa55b2c092d61f6af35" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">struct timeval <a class="el" href="classdtn_1_1Announce.html#25191d7733447aa55b2c092d61f6af35">dtn::Announce::data_sent_</a><code> [read, protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> mark each time data is sent <p> <p>Definition at line <a class="el" href="Announce_8h-source.html#l00114">114</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> <p>Referenced by <a class="el" href="Announce_8h-source.html#l00097">Announce()</a>, <a class="el" href="IPAnnounce_8cc-source.html#l00082">dtn::IPAnnounce::format_advertisement()</a>, and <a class="el" href="Announce_8h-source.html#l00073">interval_remaining()</a>.</p> </div> </div><p> <a class="anchor" name="e81359675347762ba29a3f9ea9968cc4"></a><!-- doxytag: member="dtn::Announce::interval_" ref="e81359675347762ba29a3f9ea9968cc4" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">u_int <a class="el" href="classdtn_1_1Announce.html#e81359675347762ba29a3f9ea9968cc4">dtn::Announce::interval_</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> interval (in milliseconds) for beacon header <p> <p>Definition at line <a class="el" href="Announce_8h-source.html#l00112">112</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> <p>Referenced by <a class="el" href="IPAnnounce_8cc-source.html#l00036">dtn::IPAnnounce::configure()</a>, <a class="el" href="IPAnnounce_8cc-source.html#l00082">dtn::IPAnnounce::format_advertisement()</a>, <a class="el" href="Announce_8h-source.html#l00094">interval()</a>, and <a class="el" href="Announce_8h-source.html#l00073">interval_remaining()</a>.</p> </div> </div><p> <a class="anchor" name="e0381b20267e347d8ef914a1931e5e28"></a><!-- doxytag: member="dtn::Announce::local_" ref="e0381b20267e347d8ef914a1931e5e28" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::string <a class="el" href="classdtn_1_1Announce.html#e0381b20267e347d8ef914a1931e5e28">dtn::Announce::local_</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> Beacon info to advertise. <p> <p>Definition at line <a class="el" href="Announce_8h-source.html#l00109">109</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> <p>Referenced by <a class="el" href="IPAnnounce_8cc-source.html#l00036">dtn::IPAnnounce::configure()</a>, and <a class="el" href="Announce_8h-source.html#l00060">local_addr()</a>.</p> </div> </div><p> <a class="anchor" name="1acf55ea37c38026a963a8a7ab5f5063"></a><!-- doxytag: member="dtn::Announce::name_" ref="1acf55ea37c38026a963a8a7ab5f5063" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::string <a class="el" href="classdtn_1_1Announce.html#1acf55ea37c38026a963a8a7ab5f5063">dtn::Announce::name_</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> name for this beacon instance <p> <p>Definition at line <a class="el" href="Announce_8h-source.html#l00110">110</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> <p>Referenced by <a class="el" href="IPAnnounce_8cc-source.html#l00036">dtn::IPAnnounce::configure()</a>, and <a class="el" href="Announce_8h-source.html#l00049">name()</a>.</p> </div> </div><p> <a class="anchor" name="7dfeaeaf96b1904c710bdb09a7a52c3f"></a><!-- doxytag: member="dtn::Announce::type_" ref="7dfeaeaf96b1904c710bdb09a7a52c3f" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::string <a class="el" href="classdtn_1_1Announce.html#7dfeaeaf96b1904c710bdb09a7a52c3f">dtn::Announce::type_</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> pulled from cl_ <p> <p>Definition at line <a class="el" href="Announce_8h-source.html#l00111">111</a> of file <a class="el" href="Announce_8h-source.html">Announce.h</a>.</p> <p>Referenced by <a class="el" href="IPAnnounce_8cc-source.html#l00036">dtn::IPAnnounce::configure()</a>, and <a class="el" href="Announce_8h-source.html#l00054">type()</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="Announce_8h-source.html">Announce.h</a><li><a class="el" href="Announce_8cc-source.html">Announce.cc</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Fri Jan 30 09:27:04 2009 for DTN Reference Implementation by <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>