<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>DTN Reference Implementation: prophet::RIBTLV 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="namespaceprophet.html">prophet</a>::<a class="el" href="classprophet_1_1RIBTLV.html">RIBTLV</a> </div> </div> <div class="contents"> <h1>prophet::RIBTLV Class Reference</h1><!-- doxytag: class="prophet::RIBTLV" --><!-- doxytag: inherits="prophet::BaseTLV" --><code>#include <<a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for prophet::RIBTLV:</div> <div class="dynsection"> <p><center><img src="classprophet_1_1RIBTLV.png" usemap="#prophet::RIBTLV_map" border="0" alt=""></center> <map name="prophet::RIBTLV_map"> <area href="classprophet_1_1BaseTLV.html" alt="prophet::BaseTLV" shape="rect" coords="0,0,112,24"> </map> </div> <p> <a href="classprophet_1_1RIBTLV-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00027">27</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> <table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Types</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#b822f9c4c9f1bbfde21215cc137b2ce9">rib_header_flag_t</a> { <a class="el" href="classprophet_1_1RIBTLV.html#b822f9c4c9f1bbfde21215cc137b2ce907986bd40834cfcf54f8a40aa6ce3b79">RELAY_NODE</a> = 1 << 0, <a class="el" href="classprophet_1_1RIBTLV.html#b822f9c4c9f1bbfde21215cc137b2ce99fac89806e29c2fa236bbac89fa5483d">CUSTODY_NODE</a> = 1 << 1, <a class="el" href="classprophet_1_1RIBTLV.html#b822f9c4c9f1bbfde21215cc137b2ce95f74aeab69c1736cea20e0fc9e18b48e">INTERNET_GW_NODE</a> = 1 << 2 }</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">RIB Header Flags p. <a href="classprophet_1_1RIBTLV.html#b822f9c4c9f1bbfde21215cc137b2ce9">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classprophet_1_1PointerList.html#4592d269227296c2bd509fd8f4089589">RIBNodeList::iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#51c1c0177057ba2576bfd4a2a3fcbf44">iterator</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classprophet_1_1PointerList.html#06e35a2ecc4bda2286b6e3f3685b9a9e">RIBNodeList::const_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#5f6c403eb1a75ab229ebb8214ebbacfd">const_iterator</a></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="classprophet_1_1RIBTLV.html#dce5afcecb193e604f78d01711740b45">RIBTLV</a> (const <a class="el" href="classprophet_1_1PointerList.html">RIBNodeList</a> &nodes, <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> relay, <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> custody, <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> internet=false)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#dce5afcecb193e604f78d01711740b45"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#01d06f4772aa350a858397a00911d4d6">~RIBTLV</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="#01d06f4772aa350a858397a00911d4d6"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#ce56f1f66c8a973d7a59b0c2bfa4812c">serialize</a> (u_char *bp, size_t len) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Virtual from <a class="el" href="classprophet_1_1BaseTLV.html" title="The Prophet I-D (March 2006) dictates five bytecodes for router state exchange messages...">BaseTLV</a>. <a href="#ce56f1f66c8a973d7a59b0c2bfa4812c"></a><br></td></tr> <tr><td colspan="2"><div class="groupHeader"></div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classprophet_1_1PointerList.html">RIBNodeList</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#da2c41e4216a0ddb40c52001084af457">nodes</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Accessors. <a href="#da2c41e4216a0ddb40c52001084af457"></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="classprophet_1_1RIBTLV.html#fd92d49a23da8ee5a9ef1349b1f85bfa">relay</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Accessors. <a href="#fd92d49a23da8ee5a9ef1349b1f85bfa"></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="classprophet_1_1RIBTLV.html#3c4a5b5a78ca2cd299952914f540f3e8">custody</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Accessors. <a href="#3c4a5b5a78ca2cd299952914f540f3e8"></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="classprophet_1_1RIBTLV.html#25507e2237efebdcccd2f2800464cb8d">internet</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Accessors. <a href="#25507e2237efebdcccd2f2800464cb8d"></a><br></td></tr> <tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct <br> <a class="el" href="structprophet_1_1RIBTLV_1_1RIBTLVHeader.html">prophet::RIBTLV::RIBTLVHeader</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#e59b2fde572f5d8680503d0eb838afa9">packed</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Routing Information Base TLV <br> p. <a href="#e59b2fde572f5d8680503d0eb838afa9"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct <a class="el" href="structprophet_1_1RIBTLV_1_1RIBEntry.html">prophet::RIBTLV::RIBEntry</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#af8420211eb4aaac9cac7b8d2168cb95">packed</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Routing Information Base entry p. <a href="#af8420211eb4aaac9cac7b8d2168cb95"></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 size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#c8cc286d0b6f4322a5c1e4beff758d72">RIBTLVHeaderSize</a> = sizeof(struct <a class="el" href="structprophet_1_1RIBTLV_1_1RIBTLVHeader.html">RIBTLVHeader</a>)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static const size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#c7119b733e1ac4b3cf22a1ce5a7f0062">RIBEntrySize</a> = sizeof(struct <a class="el" href="structprophet_1_1RIBTLV_1_1RIBEntry.html">RIBEntry</a>)</td></tr> <tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#8bbe4d6a0baf33591fee36cf282191a7">RIBTLV</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#8bbe4d6a0baf33591fee36cf282191a7"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#89c4ff6df76ed8241a3fd7d0745f3b2d">write_rib_entry</a> (u_int16_t sid, double pvalue, <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> relay, <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> custody, <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> internet, u_char *bp, size_t len) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Serialize routing information base entry out to no more than len bytes of buffer, using struct <a class="el" href="structprophet_1_1RIBTLV_1_1RIBEntry.html" title="Routing Information Base entry p.">RIBEntry</a>; return bytes written. <a href="#89c4ff6df76ed8241a3fd7d0745f3b2d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#27007d75c45d2e5cb300fabe19d0de5c">read_rib_entry</a> (u_int16_t *sid, double *pvalue, <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> *relay, <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> *custody, <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> *internet, const u_char *bp, size_t len)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Deserialize <a class="el" href="structprophet_1_1RIBTLV_1_1RIBEntry.html" title="Routing Information Base entry p.">RIBEntry</a> struct from transport into memory, reading no more than len bytes from buffer; return bytes read. <a href="#27007d75c45d2e5cb300fabe19d0de5c"></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="classprophet_1_1RIBTLV.html#2ef063b460e46038ff251775cb621a9c">deserialize</a> (const u_char *bp, size_t len)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Virtual from <a class="el" href="classprophet_1_1BaseTLV.html" title="The Prophet I-D (March 2006) dictates five bytecodes for router state exchange messages...">BaseTLV</a>. <a href="#2ef063b460e46038ff251775cb621a9c"></a><br></td></tr> <tr><td colspan="2"><br><h2>Static Protected Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#be1b38891666e6c09f5cf4df07287e88">decode_flags</a> (u_int8_t flags, <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> *relay, <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> *custody, <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> *internet)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Utility function for decoding RIB header flags. <a href="#be1b38891666e6c09f5cf4df07287e88"></a><br></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="classprophet_1_1PointerList.html">RIBNodeList</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#7f42b25b00f4418988b449e5b7ad0609">nodes_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">List of RIB entries. <a href="#7f42b25b00f4418988b449e5b7ad0609"></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="classprophet_1_1RIBTLV.html#c4f10f023f5ca5f98644576888cf178d">relay_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Whether this node accepts bundles for relay to other nodes. <a href="#c4f10f023f5ca5f98644576888cf178d"></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="classprophet_1_1RIBTLV.html#66d56083be8dfcb832ad1016ed2ee95b">custody_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Whether this node accepts custody transfers. <a href="#66d56083be8dfcb832ad1016ed2ee95b"></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="classprophet_1_1RIBTLV.html#a77ff503c9891ef67c02cb09fabd4aed">internet_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Whether this node bridges to the Internet. <a href="#a77ff503c9891ef67c02cb09fabd4aed"></a><br></td></tr> <tr><td colspan="2"><br><h2>Friends</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classprophet_1_1RIBTLV.html#7a64341ce4495d9b958714b112b45b26">TLVFactory< RIBTLV ></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="structprophet_1_1RIBTLV_1_1RIBEntry.html">RIBEntry</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Routing Information Base entry p. <a href="structprophet_1_1RIBTLV_1_1RIBEntry.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structprophet_1_1RIBTLV_1_1RIBTLVHeader.html">RIBTLVHeader</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Routing Information Base TLV <br> p. <a href="structprophet_1_1RIBTLV_1_1RIBTLVHeader.html#_details">More...</a><br></td></tr> </table> <hr><h2>Member Typedef Documentation</h2> <a class="anchor" name="51c1c0177057ba2576bfd4a2a3fcbf44"></a><!-- doxytag: member="prophet::RIBTLV::iterator" ref="51c1c0177057ba2576bfd4a2a3fcbf44" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classprophet_1_1PointerList.html#4592d269227296c2bd509fd8f4089589">RIBNodeList::iterator</a> <a class="el" href="classprophet_1_1RIBTLV.html#51c1c0177057ba2576bfd4a2a3fcbf44">prophet::RIBTLV::iterator</a> </td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00031">31</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> </div> </div><p> <a class="anchor" name="5f6c403eb1a75ab229ebb8214ebbacfd"></a><!-- doxytag: member="prophet::RIBTLV::const_iterator" ref="5f6c403eb1a75ab229ebb8214ebbacfd" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classprophet_1_1PointerList.html#06e35a2ecc4bda2286b6e3f3685b9a9e">RIBNodeList::const_iterator</a> <a class="el" href="classprophet_1_1RIBTLV.html#5f6c403eb1a75ab229ebb8214ebbacfd">prophet::RIBTLV::const_iterator</a> </td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00032">32</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> </div> </div><p> <hr><h2>Member Enumeration Documentation</h2> <a class="anchor" name="b822f9c4c9f1bbfde21215cc137b2ce9"></a><!-- doxytag: member="prophet::RIBTLV::rib_header_flag_t" ref="b822f9c4c9f1bbfde21215cc137b2ce9" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="classprophet_1_1RIBTLV.html#b822f9c4c9f1bbfde21215cc137b2ce9">prophet::RIBTLV::rib_header_flag_t</a> </td> </tr> </table> </div> <div class="memdoc"> <p> RIB Header Flags p. <p> 28, 4.4.4 <dl compact><dt><b>Enumerator: </b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"><em><a class="anchor" name="b822f9c4c9f1bbfde21215cc137b2ce907986bd40834cfcf54f8a40aa6ce3b79"></a><!-- doxytag: member="RELAY_NODE" ref="b822f9c4c9f1bbfde21215cc137b2ce907986bd40834cfcf54f8a40aa6ce3b79" args="" -->RELAY_NODE</em> </td><td> </td></tr> <tr><td valign="top"><em><a class="anchor" name="b822f9c4c9f1bbfde21215cc137b2ce99fac89806e29c2fa236bbac89fa5483d"></a><!-- doxytag: member="CUSTODY_NODE" ref="b822f9c4c9f1bbfde21215cc137b2ce99fac89806e29c2fa236bbac89fa5483d" args="" -->CUSTODY_NODE</em> </td><td> </td></tr> <tr><td valign="top"><em><a class="anchor" name="b822f9c4c9f1bbfde21215cc137b2ce95f74aeab69c1736cea20e0fc9e18b48e"></a><!-- doxytag: member="INTERNET_GW_NODE" ref="b822f9c4c9f1bbfde21215cc137b2ce95f74aeab69c1736cea20e0fc9e18b48e" args="" -->INTERNET_GW_NODE</em> </td><td> </td></tr> </table> </dl> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00038">38</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> </div> </div><p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="dce5afcecb193e604f78d01711740b45"></a><!-- doxytag: member="prophet::RIBTLV::RIBTLV" ref="dce5afcecb193e604f78d01711740b45" args="(const RIBNodeList &nodes, bool relay, bool custody, bool internet=false)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">prophet::RIBTLV::RIBTLV </td> <td>(</td> <td class="paramtype">const <a class="el" href="classprophet_1_1PointerList.html">RIBNodeList</a> & </td> <td class="paramname"> <em>nodes</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td> <td class="paramname"> <em>relay</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td> <td class="paramname"> <em>custody</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td> <td class="paramname"> <em>internet</em> = <code>false</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> Constructor. <p> <p>Definition at line <a class="el" href="RIBTLV_8cc-source.html#l00025">25</a> of file <a class="el" href="RIBTLV_8cc-source.html">RIBTLV.cc</a>.</p> <p>References <a class="el" href="BaseTLV_8h-source.html#l00127">prophet::BaseTLV::length_</a>, <a class="el" href="RIBTLV_8h-source.html#l00173">nodes_</a>, <a class="el" href="RIBTLV_8h-source.html#l00111">RIBEntrySize</a>, and <a class="el" href="RIBTLV_8h-source.html#l00109">RIBTLVHeaderSize</a>.</p> </div> </div><p> <a class="anchor" name="01d06f4772aa350a858397a00911d4d6"></a><!-- doxytag: member="prophet::RIBTLV::~RIBTLV" ref="01d06f4772aa350a858397a00911d4d6" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual prophet::RIBTLV::~RIBTLV </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Destructor. <p> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00124">124</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> </div> </div><p> <a class="anchor" name="8bbe4d6a0baf33591fee36cf282191a7"></a><!-- doxytag: member="prophet::RIBTLV::RIBTLV" ref="8bbe4d6a0baf33591fee36cf282191a7" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">prophet::RIBTLV::RIBTLV </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Constructor. <p> Protected to force access through <a class="el" href="structprophet_1_1TLVFactory.html">TLVFactory</a>. <p>Definition at line <a class="el" href="RIBTLV_8cc-source.html#l00035">35</a> of file <a class="el" href="RIBTLV_8cc-source.html">RIBTLV.cc</a>.</p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="ce56f1f66c8a973d7a59b0c2bfa4812c"></a><!-- doxytag: member="prophet::RIBTLV::serialize" ref="ce56f1f66c8a973d7a59b0c2bfa4812c" args="(u_char *bp, size_t len) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">size_t prophet::RIBTLV::serialize </td> <td>(</td> <td class="paramtype">u_char * </td> <td class="paramname"> <em>bp</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> const<code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Virtual from <a class="el" href="classprophet_1_1BaseTLV.html" title="The Prophet I-D (March 2006) dictates five bytecodes for router state exchange messages...">BaseTLV</a>. <p> <p>Implements <a class="el" href="classprophet_1_1BaseTLV.html#18534e5841ee8447ca2c51cf299becd0">prophet::BaseTLV</a>.</p> <p>Definition at line <a class="el" href="RIBTLV_8cc-source.html#l00040">40</a> of file <a class="el" href="RIBTLV_8cc-source.html">RIBTLV.cc</a>.</p> <p>References <a class="el" href="servlib_2prophet_2Node_8h-source.html#l00112">prophet::Node::custody()</a>, <a class="el" href="RIBTLV_8h-source.html#l00176">custody_</a>, <a class="el" href="RIBTLV_8h-source.html#l00040">CUSTODY_NODE</a>, <a class="el" href="RIBTLV_8h-source.html#l00068">prophet::RIBTLV::RIBTLVHeader::flags</a>, <a class="el" href="RIBTLV_8h-source.html#l00177">internet_</a>, <a class="el" href="servlib_2prophet_2Node_8h-source.html#l00113">prophet::Node::internet_gw()</a>, <a class="el" href="RIBTLV_8h-source.html#l00041">INTERNET_GW_NODE</a>, <a class="el" href="RIBTLV_8h-source.html#l00073">prophet::RIBTLV::RIBTLVHeader::length</a>, <a class="el" href="BaseTLV_8h-source.html#l00127">prophet::BaseTLV::length_</a>, <a class="el" href="RIBTLV_8h-source.html#l00173">nodes_</a>, <a class="el" href="servlib_2prophet_2Node_8h-source.html#l00110">prophet::Node::p_value()</a>, <a class="el" href="servlib_2prophet_2Node_8h-source.html#l00111">prophet::Node::relay()</a>, <a class="el" href="RIBTLV_8h-source.html#l00174">relay_</a>, <a class="el" href="RIBTLV_8h-source.html#l00039">RELAY_NODE</a>, <a class="el" href="RIBTLV_8h-source.html#l00074">prophet::RIBTLV::RIBTLVHeader::rib_string_count</a>, <a class="el" href="BaseTLV_8h-source.html#l00069">prophet::BaseTLV::RIB_TLV</a>, <a class="el" href="RIBTLV_8h-source.html#l00111">RIBEntrySize</a>, <a class="el" href="RIBTLV_8h-source.html#l00109">RIBTLVHeaderSize</a>, <a class="el" href="servlib_2prophet_2Node_8h-source.html#l00242">prophet::RIBNode::sid_</a>, <a class="el" href="RIBTLV_8h-source.html#l00054">prophet::RIBTLV::RIBTLVHeader::type</a>, <a class="el" href="BaseTLV_8h-source.html#l00125">prophet::BaseTLV::typecode_</a>, and <a class="el" href="RIBTLV_8cc-source.html#l00105">write_rib_entry()</a>.</p> </div> </div><p> <a class="anchor" name="da2c41e4216a0ddb40c52001084af457"></a><!-- doxytag: member="prophet::RIBTLV::nodes" ref="da2c41e4216a0ddb40c52001084af457" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="classprophet_1_1PointerList.html">RIBNodeList</a>& prophet::RIBTLV::nodes </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Accessors. <p> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00132">132</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> <p>References <a class="el" href="RIBTLV_8h-source.html#l00173">nodes_</a>.</p> </div> </div><p> <a class="anchor" name="fd92d49a23da8ee5a9ef1349b1f85bfa"></a><!-- doxytag: member="prophet::RIBTLV::relay" ref="fd92d49a23da8ee5a9ef1349b1f85bfa" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> prophet::RIBTLV::relay </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Accessors. <p> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00133">133</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> <p>References <a class="el" href="RIBTLV_8h-source.html#l00174">relay_</a>.</p> <p>Referenced by <a class="el" href="RIBTLV_8cc-source.html#l00153">deserialize()</a>.</p> </div> </div><p> <a class="anchor" name="3c4a5b5a78ca2cd299952914f540f3e8"></a><!-- doxytag: member="prophet::RIBTLV::custody" ref="3c4a5b5a78ca2cd299952914f540f3e8" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> prophet::RIBTLV::custody </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Accessors. <p> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00134">134</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> <p>References <a class="el" href="RIBTLV_8h-source.html#l00176">custody_</a>.</p> <p>Referenced by <a class="el" href="RIBTLV_8cc-source.html#l00153">deserialize()</a>.</p> </div> </div><p> <a class="anchor" name="25507e2237efebdcccd2f2800464cb8d"></a><!-- doxytag: member="prophet::RIBTLV::internet" ref="25507e2237efebdcccd2f2800464cb8d" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> prophet::RIBTLV::internet </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Accessors. <p> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00135">135</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> <p>References <a class="el" href="RIBTLV_8h-source.html#l00177">internet_</a>.</p> <p>Referenced by <a class="el" href="RIBTLV_8cc-source.html#l00153">deserialize()</a>.</p> </div> </div><p> <a class="anchor" name="be1b38891666e6c09f5cf4df07287e88"></a><!-- doxytag: member="prophet::RIBTLV::decode_flags" ref="be1b38891666e6c09f5cf4df07287e88" args="(u_int8_t flags, bool *relay, bool *custody, bool *internet)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void prophet::RIBTLV::decode_flags </td> <td>(</td> <td class="paramtype">u_int8_t </td> <td class="paramname"> <em>flags</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> * </td> <td class="paramname"> <em>relay</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> * </td> <td class="paramname"> <em>custody</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> * </td> <td class="paramname"> <em>internet</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [static, protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Utility function for decoding RIB header flags. <p> <p>Definition at line <a class="el" href="RIBTLV_8cc-source.html#l00091">91</a> of file <a class="el" href="RIBTLV_8cc-source.html">RIBTLV.cc</a>.</p> <p>References <a class="el" href="RIBTLV_8h-source.html#l00040">CUSTODY_NODE</a>, <a class="el" href="RIBTLV_8h-source.html#l00041">INTERNET_GW_NODE</a>, and <a class="el" href="RIBTLV_8h-source.html#l00039">RELAY_NODE</a>.</p> <p>Referenced by <a class="el" href="RIBTLV_8cc-source.html#l00153">deserialize()</a>, and <a class="el" href="RIBTLV_8cc-source.html#l00130">read_rib_entry()</a>.</p> </div> </div><p> <a class="anchor" name="89c4ff6df76ed8241a3fd7d0745f3b2d"></a><!-- doxytag: member="prophet::RIBTLV::write_rib_entry" ref="89c4ff6df76ed8241a3fd7d0745f3b2d" args="(u_int16_t sid, double pvalue, bool relay, bool custody, bool internet, u_char *bp, size_t len) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">size_t prophet::RIBTLV::write_rib_entry </td> <td>(</td> <td class="paramtype">u_int16_t </td> <td class="paramname"> <em>sid</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">double </td> <td class="paramname"> <em>pvalue</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td> <td class="paramname"> <em>relay</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td> <td class="paramname"> <em>custody</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td> <td class="paramname"> <em>internet</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">u_char * </td> <td class="paramname"> <em>bp</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> const<code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Serialize routing information base entry out to no more than len bytes of buffer, using struct <a class="el" href="structprophet_1_1RIBTLV_1_1RIBEntry.html" title="Routing Information Base entry p.">RIBEntry</a>; return bytes written. <p> <p>Definition at line <a class="el" href="RIBTLV_8cc-source.html#l00105">105</a> of file <a class="el" href="RIBTLV_8cc-source.html">RIBTLV.cc</a>.</p> <p>References <a class="el" href="RIBTLV_8h-source.html#l00040">CUSTODY_NODE</a>, <a class="el" href="RIBTLV_8h-source.html#l00106">prophet::RIBTLV::RIBEntry::flags</a>, <a class="el" href="RIBTLV_8h-source.html#l00041">INTERNET_GW_NODE</a>, <a class="el" href="RIBTLV_8h-source.html#l00093">prophet::RIBTLV::RIBEntry::pvalue</a>, <a class="el" href="RIBTLV_8h-source.html#l00039">RELAY_NODE</a>, <a class="el" href="RIBTLV_8h-source.html#l00111">RIBEntrySize</a>, and <a class="el" href="RIBTLV_8h-source.html#l00086">prophet::RIBTLV::RIBEntry::string_id</a>.</p> <p>Referenced by <a class="el" href="RIBTLV_8cc-source.html#l00040">serialize()</a>.</p> </div> </div><p> <a class="anchor" name="27007d75c45d2e5cb300fabe19d0de5c"></a><!-- doxytag: member="prophet::RIBTLV::read_rib_entry" ref="27007d75c45d2e5cb300fabe19d0de5c" args="(u_int16_t *sid, double *pvalue, bool *relay, bool *custody, bool *internet, const u_char *bp, size_t len)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">size_t prophet::RIBTLV::read_rib_entry </td> <td>(</td> <td class="paramtype">u_int16_t * </td> <td class="paramname"> <em>sid</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">double * </td> <td class="paramname"> <em>pvalue</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> * </td> <td class="paramname"> <em>relay</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> * </td> <td class="paramname"> <em>custody</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> * </td> <td class="paramname"> <em>internet</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const u_char * </td> <td class="paramname"> <em>bp</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> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Deserialize <a class="el" href="structprophet_1_1RIBTLV_1_1RIBEntry.html" title="Routing Information Base entry p.">RIBEntry</a> struct from transport into memory, reading no more than len bytes from buffer; return bytes read. <p> <p>Definition at line <a class="el" href="RIBTLV_8cc-source.html#l00130">130</a> of file <a class="el" href="RIBTLV_8cc-source.html">RIBTLV.cc</a>.</p> <p>References <a class="el" href="RIBTLV_8cc-source.html#l00091">decode_flags()</a>, <a class="el" href="RIBTLV_8h-source.html#l00106">prophet::RIBTLV::RIBEntry::flags</a>, <a class="el" href="RIBTLV_8h-source.html#l00093">prophet::RIBTLV::RIBEntry::pvalue</a>, <a class="el" href="RIBTLV_8h-source.html#l00111">RIBEntrySize</a>, and <a class="el" href="RIBTLV_8h-source.html#l00086">prophet::RIBTLV::RIBEntry::string_id</a>.</p> <p>Referenced by <a class="el" href="RIBTLV_8cc-source.html#l00153">deserialize()</a>.</p> </div> </div><p> <a class="anchor" name="2ef063b460e46038ff251775cb621a9c"></a><!-- doxytag: member="prophet::RIBTLV::deserialize" ref="2ef063b460e46038ff251775cb621a9c" args="(const u_char *bp, size_t len)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> prophet::RIBTLV::deserialize </td> <td>(</td> <td class="paramtype">const u_char * </td> <td class="paramname"> <em>bp</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> [protected, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Virtual from <a class="el" href="classprophet_1_1BaseTLV.html" title="The Prophet I-D (March 2006) dictates five bytecodes for router state exchange messages...">BaseTLV</a>. <p> <p>Implements <a class="el" href="classprophet_1_1BaseTLV.html#39a29c35a775a408b165921f61beec2d">prophet::BaseTLV</a>.</p> <p>Definition at line <a class="el" href="RIBTLV_8cc-source.html#l00153">153</a> of file <a class="el" href="RIBTLV_8cc-source.html">RIBTLV.cc</a>.</p> <p>References <a class="el" href="RIBTLV_8h-source.html#l00134">custody()</a>, <a class="el" href="RIBTLV_8h-source.html#l00176">custody_</a>, <a class="el" href="RIBTLV_8cc-source.html#l00091">decode_flags()</a>, <a class="el" href="RIBTLV_8h-source.html#l00068">prophet::RIBTLV::RIBTLVHeader::flags</a>, <a class="el" href="BaseTLV_8h-source.html#l00126">prophet::BaseTLV::flags_</a>, <a class="el" href="RIBTLV_8h-source.html#l00135">internet()</a>, <a class="el" href="RIBTLV_8h-source.html#l00177">internet_</a>, <a class="el" href="RIBTLV_8h-source.html#l00073">prophet::RIBTLV::RIBTLVHeader::length</a>, <a class="el" href="BaseTLV_8h-source.html#l00127">prophet::BaseTLV::length_</a>, <a class="el" href="RIBTLV_8h-source.html#l00173">nodes_</a>, <a class="el" href="RIBTLV_8cc-source.html#l00130">read_rib_entry()</a>, <a class="el" href="RIBTLV_8h-source.html#l00133">relay()</a>, <a class="el" href="RIBTLV_8h-source.html#l00174">relay_</a>, <a class="el" href="RIBTLV_8h-source.html#l00074">prophet::RIBTLV::RIBTLVHeader::rib_string_count</a>, <a class="el" href="BaseTLV_8h-source.html#l00069">prophet::BaseTLV::RIB_TLV</a>, <a class="el" href="RIBTLV_8h-source.html#l00111">RIBEntrySize</a>, <a class="el" href="RIBTLV_8h-source.html#l00109">RIBTLVHeaderSize</a>, <a class="el" href="servlib_2prophet_2Node_8h-source.html#l00168">prophet::Node::set_custody()</a>, <a class="el" href="servlib_2prophet_2Node_8h-source.html#l00169">prophet::Node::set_internet_gw()</a>, <a class="el" href="servlib_2prophet_2Node_8h-source.html#l00163">prophet::Node::set_pvalue()</a>, <a class="el" href="servlib_2prophet_2Node_8h-source.html#l00167">prophet::Node::set_relay()</a>, <a class="el" href="servlib_2prophet_2Node_8h-source.html#l00242">prophet::RIBNode::sid_</a>, <a class="el" href="RIBTLV_8h-source.html#l00054">prophet::RIBTLV::RIBTLVHeader::type</a>, and <a class="el" href="BaseTLV_8h-source.html#l00125">prophet::BaseTLV::typecode_</a>.</p> </div> </div><p> <hr><h2>Friends And Related Function Documentation</h2> <a class="anchor" name="7a64341ce4495d9b958714b112b45b26"></a><!-- doxytag: member="prophet::RIBTLV::TLVFactory< RIBTLV >" ref="7a64341ce4495d9b958714b112b45b26" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">friend class <a class="el" href="structprophet_1_1TLVFactory.html">TLVFactory</a>< <a class="el" href="classprophet_1_1RIBTLV.html">RIBTLV</a> ><code> [friend]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00139">139</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> </div> </div><p> <hr><h2>Member Data Documentation</h2> <a class="anchor" name="e59b2fde572f5d8680503d0eb838afa9"></a><!-- doxytag: member="prophet::RIBTLV::packed" ref="e59b2fde572f5d8680503d0eb838afa9" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">struct <a class="el" href="structprophet_1_1RIBTLV_1_1RIBTLVHeader.html">prophet::RIBTLV::RIBTLVHeader</a> <a class="el" href="classprophet_1_1RIBTLV.html#e59b2fde572f5d8680503d0eb838afa9">prophet::RIBTLV::packed</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Routing Information Base TLV <br> p. <p> 28, 4.4.4 <br> <br> The Routing Information Base lists the destinations a node knows of, and the delivery predictabilities it has associated with them. This information is needed by the PRoPHET algorithm to make decisions on routing and forwarding. </div> </div><p> <a class="anchor" name="af8420211eb4aaac9cac7b8d2168cb95"></a><!-- doxytag: member="prophet::RIBTLV::packed" ref="af8420211eb4aaac9cac7b8d2168cb95" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">struct <a class="el" href="structprophet_1_1RIBTLV_1_1RIBEntry.html">prophet::RIBTLV::RIBEntry</a> <a class="el" href="classprophet_1_1RIBTLV.html#e59b2fde572f5d8680503d0eb838afa9">prophet::RIBTLV::packed</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Routing Information Base entry p. <p> 28, 4.4.4 </div> </div><p> <a class="anchor" name="c8cc286d0b6f4322a5c1e4beff758d72"></a><!-- doxytag: member="prophet::RIBTLV::RIBTLVHeaderSize" ref="c8cc286d0b6f4322a5c1e4beff758d72" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const size_t <a class="el" href="classprophet_1_1RIBTLV.html#c8cc286d0b6f4322a5c1e4beff758d72">prophet::RIBTLV::RIBTLVHeaderSize</a> = sizeof(struct <a class="el" href="structprophet_1_1RIBTLV_1_1RIBTLVHeader.html">RIBTLVHeader</a>)<code> [static]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00109">109</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> <p>Referenced by <a class="el" href="RIBTLV_8cc-source.html#l00153">deserialize()</a>, <a class="el" href="RIBTLV_8cc-source.html#l00025">RIBTLV()</a>, and <a class="el" href="RIBTLV_8cc-source.html#l00040">serialize()</a>.</p> </div> </div><p> <a class="anchor" name="c7119b733e1ac4b3cf22a1ce5a7f0062"></a><!-- doxytag: member="prophet::RIBTLV::RIBEntrySize" ref="c7119b733e1ac4b3cf22a1ce5a7f0062" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const size_t <a class="el" href="classprophet_1_1RIBTLV.html#c7119b733e1ac4b3cf22a1ce5a7f0062">prophet::RIBTLV::RIBEntrySize</a> = sizeof(struct <a class="el" href="structprophet_1_1RIBTLV_1_1RIBEntry.html">RIBEntry</a>)<code> [static]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00111">111</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> <p>Referenced by <a class="el" href="RIBTLV_8cc-source.html#l00153">deserialize()</a>, <a class="el" href="RIBTLV_8cc-source.html#l00130">read_rib_entry()</a>, <a class="el" href="RIBTLV_8cc-source.html#l00025">RIBTLV()</a>, <a class="el" href="RIBTLV_8cc-source.html#l00040">serialize()</a>, and <a class="el" href="RIBTLV_8cc-source.html#l00105">write_rib_entry()</a>.</p> </div> </div><p> <a class="anchor" name="7f42b25b00f4418988b449e5b7ad0609"></a><!-- doxytag: member="prophet::RIBTLV::nodes_" ref="7f42b25b00f4418988b449e5b7ad0609" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classprophet_1_1PointerList.html">RIBNodeList</a> <a class="el" href="classprophet_1_1RIBTLV.html#7f42b25b00f4418988b449e5b7ad0609">prophet::RIBTLV::nodes_</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> List of RIB entries. <p> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00173">173</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> <p>Referenced by <a class="el" href="RIBTLV_8cc-source.html#l00153">deserialize()</a>, <a class="el" href="RIBTLV_8h-source.html#l00132">nodes()</a>, <a class="el" href="RIBTLV_8cc-source.html#l00025">RIBTLV()</a>, and <a class="el" href="RIBTLV_8cc-source.html#l00040">serialize()</a>.</p> </div> </div><p> <a class="anchor" name="c4f10f023f5ca5f98644576888cf178d"></a><!-- doxytag: member="prophet::RIBTLV::relay_" ref="c4f10f023f5ca5f98644576888cf178d" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> <a class="el" href="classprophet_1_1RIBTLV.html#c4f10f023f5ca5f98644576888cf178d">prophet::RIBTLV::relay_</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> Whether this node accepts bundles for relay to other nodes. <p> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00174">174</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> <p>Referenced by <a class="el" href="RIBTLV_8cc-source.html#l00153">deserialize()</a>, <a class="el" href="RIBTLV_8h-source.html#l00133">relay()</a>, and <a class="el" href="RIBTLV_8cc-source.html#l00040">serialize()</a>.</p> </div> </div><p> <a class="anchor" name="66d56083be8dfcb832ad1016ed2ee95b"></a><!-- doxytag: member="prophet::RIBTLV::custody_" ref="66d56083be8dfcb832ad1016ed2ee95b" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> <a class="el" href="classprophet_1_1RIBTLV.html#66d56083be8dfcb832ad1016ed2ee95b">prophet::RIBTLV::custody_</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> Whether this node accepts custody transfers. <p> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00176">176</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> <p>Referenced by <a class="el" href="RIBTLV_8h-source.html#l00134">custody()</a>, <a class="el" href="RIBTLV_8cc-source.html#l00153">deserialize()</a>, and <a class="el" href="RIBTLV_8cc-source.html#l00040">serialize()</a>.</p> </div> </div><p> <a class="anchor" name="a77ff503c9891ef67c02cb09fabd4aed"></a><!-- doxytag: member="prophet::RIBTLV::internet_" ref="a77ff503c9891ef67c02cb09fabd4aed" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> <a class="el" href="classprophet_1_1RIBTLV.html#a77ff503c9891ef67c02cb09fabd4aed">prophet::RIBTLV::internet_</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> Whether this node bridges to the Internet. <p> <p>Definition at line <a class="el" href="RIBTLV_8h-source.html#l00177">177</a> of file <a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a>.</p> <p>Referenced by <a class="el" href="RIBTLV_8cc-source.html#l00153">deserialize()</a>, <a class="el" href="RIBTLV_8h-source.html#l00135">internet()</a>, and <a class="el" href="RIBTLV_8cc-source.html#l00040">serialize()</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="RIBTLV_8h-source.html">RIBTLV.h</a><li><a class="el" href="RIBTLV_8cc-source.html">RIBTLV.cc</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Mon Jul 21 14:09:56 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>