<!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::ProphetStore Class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.6 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="main.html"><span>Main Page</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div class="navpath"><a class="el" href="namespacedtn.html">dtn</a>::<a class="el" href="classdtn_1_1ProphetStore.html">ProphetStore</a> </div> </div> <div class="contents"> <h1>dtn::ProphetStore Class Reference</h1><!-- doxytag: class="dtn::ProphetStore" --><code>#include <<a class="el" href="ProphetStore_8h-source.html">ProphetStore.h</a>></code> <p> <p> <a href="classdtn_1_1ProphetStore-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2> <p>Definition at line <a class="el" href="ProphetStore_8h-source.html#l00047">47</a> of file <a class="el" href="ProphetStore_8h-source.html">ProphetStore.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">typedef <br> oasys::InternalKeyDurableTable<br> < <a class="el" href="classdtn_1_1EndpointIDShim.html">EndpointIDShim</a>, <a class="el" href="classdtn_1_1EndpointID.html">EndpointID</a>, <br> <a class="el" href="classdtn_1_1ProphetNode.html">ProphetNode</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1ProphetStore.html#0f76ee75e825c2d5468f9307c7e0898f">ProphetDurableTable</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <br> ProphetDurableTable::iterator </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1ProphetStore.html#55d38ab64d7a4ab03eb78dd8f21f4eac">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="classdtn_1_1ProphetStore.html#dc647ed65a1eb6eb078e9963ec060b5c">ProphetStore</a> (const oasys::StorageConfig &cfg)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#dc647ed65a1eb6eb078e9963ec060b5c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1ProphetStore.html#e93504515e4b1af5e52727594f543b85">add</a> (<a class="el" href="classdtn_1_1ProphetNode.html">ProphetNode</a> *node)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add a new <a class="el" href="classdtn_1_1ProphetNode.html" title="ProphetNode stores state for a remote node as identified by remote_eid.">ProphetNode</a>. <a href="#e93504515e4b1af5e52727594f543b85"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1ProphetNode.html">ProphetNode</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1ProphetStore.html#b69963faf845cf598a991d5885294002">get</a> (const <a class="el" href="classdtn_1_1EndpointID.html">EndpointID</a> &remote_eid)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Retrieve a <a class="el" href="classdtn_1_1ProphetNode.html" title="ProphetNode stores state for a remote node as identified by remote_eid.">ProphetNode</a>. <a href="#b69963faf845cf598a991d5885294002"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1ProphetStore.html#e3e6b6b1e824c95d722673735a94db41">update</a> (<a class="el" href="classdtn_1_1ProphetNode.html">ProphetNode</a> *node)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Update the <a class="el" href="classdtn_1_1ProphetNode.html" title="ProphetNode stores state for a remote node as identified by remote_eid.">ProphetNode</a> data. <a href="#e3e6b6b1e824c95d722673735a94db41"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1ProphetStore.html#7c99f97e29ac5fc42b51bc55c34f08de">del</a> (<a class="el" href="classdtn_1_1ProphetNode.html">ProphetNode</a> *node)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Delete the <a class="el" href="classdtn_1_1ProphetNode.html" title="ProphetNode stores state for a remote node as identified by remote_eid.">ProphetNode</a>. <a href="#7c99f97e29ac5fc42b51bc55c34f08de"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1ProphetStore.html#55d38ab64d7a4ab03eb78dd8f21f4eac">iterator</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1ProphetStore.html#0b855e0d581312dcdeac06d14e6c35c1">new_iterator</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return a new iterator. <a href="#0b855e0d581312dcdeac06d14e6c35c1"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1ProphetStore.html#347f6d6a39dcdef5e98a1c8d7495fe8a">close</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Close down the table. <a href="#347f6d6a39dcdef5e98a1c8d7495fe8a"></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 int </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1ProphetStore.html#a90fa13e07d68b488c9551d790f8122a">init</a> (const oasys::StorageConfig &cfg, oasys::DurableStore *store)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Boot time initializer. <a href="#a90fa13e07d68b488c9551d790f8122a"></a><br></td></tr> <tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const oasys::StorageConfig & </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1ProphetStore.html#eb4c99aa076eeb115f2ac3546f7cdbb2">cfg_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">storage configuration <a href="#eb4c99aa076eeb115f2ac3546f7cdbb2"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1ProphetStore.html#0f76ee75e825c2d5468f9307c7e0898f">ProphetDurableTable</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1ProphetStore.html#7867008cf488c702698b8f481ee2120b">nodes_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="classdtn_1_1ProphetNode.html" title="ProphetNode stores state for a remote node as identified by remote_eid.">ProphetNode</a> information base. <a href="#7867008cf488c702698b8f481ee2120b"></a><br></td></tr> </table> <hr><h2>Member Typedef Documentation</h2> <a class="anchor" name="0f76ee75e825c2d5468f9307c7e0898f"></a><!-- doxytag: member="dtn::ProphetStore::ProphetDurableTable" ref="0f76ee75e825c2d5468f9307c7e0898f" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef oasys::InternalKeyDurableTable< <a class="el" href="classdtn_1_1EndpointIDShim.html">EndpointIDShim</a>,<a class="el" href="classdtn_1_1EndpointID.html">EndpointID</a>,<a class="el" href="classdtn_1_1ProphetNode.html">ProphetNode</a>> <a class="el" href="classdtn_1_1ProphetStore.html#0f76ee75e825c2d5468f9307c7e0898f">dtn::ProphetStore::ProphetDurableTable</a> </td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="ProphetStore_8h-source.html#l00050">50</a> of file <a class="el" href="ProphetStore_8h-source.html">ProphetStore.h</a>.</p> </div> </div><p> <a class="anchor" name="55d38ab64d7a4ab03eb78dd8f21f4eac"></a><!-- doxytag: member="dtn::ProphetStore::iterator" ref="55d38ab64d7a4ab03eb78dd8f21f4eac" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef ProphetDurableTable::iterator <a class="el" href="classdtn_1_1ProphetStore.html#55d38ab64d7a4ab03eb78dd8f21f4eac">dtn::ProphetStore::iterator</a> </td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="ProphetStore_8h-source.html#l00051">51</a> of file <a class="el" href="ProphetStore_8h-source.html">ProphetStore.h</a>.</p> </div> </div><p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="dc647ed65a1eb6eb078e9963ec060b5c"></a><!-- doxytag: member="dtn::ProphetStore::ProphetStore" ref="dc647ed65a1eb6eb078e9963ec060b5c" args="(const oasys::StorageConfig &cfg)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">dtn::ProphetStore::ProphetStore </td> <td>(</td> <td class="paramtype">const oasys::StorageConfig & </td> <td class="paramname"> <em>cfg</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Constructor. <p> <p>Definition at line <a class="el" href="ProphetStore_8cc-source.html#l00030">30</a> of file <a class="el" href="ProphetStore_8cc-source.html">ProphetStore.cc</a>.</p> <p>Referenced by <a class="el" href="ProphetStore_8cc-source.html#l00039">init()</a>.</p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="a90fa13e07d68b488c9551d790f8122a"></a><!-- doxytag: member="dtn::ProphetStore::init" ref="a90fa13e07d68b488c9551d790f8122a" args="(const oasys::StorageConfig &cfg, oasys::DurableStore *store)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int dtn::ProphetStore::init </td> <td>(</td> <td class="paramtype">const oasys::StorageConfig & </td> <td class="paramname"> <em>cfg</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">oasys::DurableStore * </td> <td class="paramname"> <em>store</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> Boot time initializer. <p> <p>Definition at line <a class="el" href="ProphetStore_8cc-source.html#l00039">39</a> of file <a class="el" href="ProphetStore_8cc-source.html">ProphetStore.cc</a>.</p> <p>References <a class="el" href="ProphetStore_8cc-source.html#l00030">ProphetStore()</a>.</p> <p>Referenced by <a class="el" href="DTNServer_8cc-source.html#l00103">dtn::DTNServer::init_datastore()</a>.</p> </div> </div><p> <a class="anchor" name="e93504515e4b1af5e52727594f543b85"></a><!-- doxytag: member="dtn::ProphetStore::add" ref="e93504515e4b1af5e52727594f543b85" args="(ProphetNode *node)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::ProphetStore::add </td> <td>(</td> <td class="paramtype"><a class="el" href="classdtn_1_1ProphetNode.html">ProphetNode</a> * </td> <td class="paramname"> <em>node</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Add a new <a class="el" href="classdtn_1_1ProphetNode.html" title="ProphetNode stores state for a remote node as identified by remote_eid.">ProphetNode</a>. <p> <p>Definition at line <a class="el" href="ProphetStore_8cc-source.html#l00052">52</a> of file <a class="el" href="ProphetStore_8cc-source.html">ProphetStore.cc</a>.</p> <p>References <a class="el" href="ProphetStore_8h-source.html#l00085">nodes_</a>.</p> </div> </div><p> <a class="anchor" name="b69963faf845cf598a991d5885294002"></a><!-- doxytag: member="dtn::ProphetStore::get" ref="b69963faf845cf598a991d5885294002" args="(const EndpointID &remote_eid)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classdtn_1_1ProphetNode.html">ProphetNode</a> * dtn::ProphetStore::get </td> <td>(</td> <td class="paramtype">const <a class="el" href="classdtn_1_1EndpointID.html">EndpointID</a> & </td> <td class="paramname"> <em>remote_eid</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Retrieve a <a class="el" href="classdtn_1_1ProphetNode.html" title="ProphetNode stores state for a remote node as identified by remote_eid.">ProphetNode</a>. <p> <p>Definition at line <a class="el" href="ProphetStore_8cc-source.html#l00062">62</a> of file <a class="el" href="ProphetStore_8cc-source.html">ProphetStore.cc</a>.</p> <p>References <a class="el" href="EndpointID_8h-source.html#l00264">dtn::EndpointID::c_str()</a>, and <a class="el" href="ProphetStore_8h-source.html#l00085">nodes_</a>.</p> <p>Referenced by <a class="el" href="ProphetBundleCore_8cc-source.html#l00314">dtn::ProphetBundleCore::load_prophet_nodes()</a>.</p> </div> </div><p> <a class="anchor" name="e3e6b6b1e824c95d722673735a94db41"></a><!-- doxytag: member="dtn::ProphetStore::update" ref="e3e6b6b1e824c95d722673735a94db41" args="(ProphetNode *node)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::ProphetStore::update </td> <td>(</td> <td class="paramtype"><a class="el" href="classdtn_1_1ProphetNode.html">ProphetNode</a> * </td> <td class="paramname"> <em>node</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Update the <a class="el" href="classdtn_1_1ProphetNode.html" title="ProphetNode stores state for a remote node as identified by remote_eid.">ProphetNode</a> data. <p> <p>Definition at line <a class="el" href="ProphetStore_8cc-source.html#l00070">70</a> of file <a class="el" href="ProphetStore_8cc-source.html">ProphetStore.cc</a>.</p> <p>References <a class="el" href="ProphetStore_8h-source.html#l00085">nodes_</a>.</p> </div> </div><p> <a class="anchor" name="7c99f97e29ac5fc42b51bc55c34f08de"></a><!-- doxytag: member="dtn::ProphetStore::del" ref="7c99f97e29ac5fc42b51bc55c34f08de" args="(ProphetNode *node)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::ProphetStore::del </td> <td>(</td> <td class="paramtype"><a class="el" href="classdtn_1_1ProphetNode.html">ProphetNode</a> * </td> <td class="paramname"> <em>node</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Delete the <a class="el" href="classdtn_1_1ProphetNode.html" title="ProphetNode stores state for a remote node as identified by remote_eid.">ProphetNode</a>. <p> <p>Definition at line <a class="el" href="ProphetStore_8cc-source.html#l00080">80</a> of file <a class="el" href="ProphetStore_8cc-source.html">ProphetStore.cc</a>.</p> <p>References <a class="el" href="servlib_2prophet_2Node_8h-source.html#l00114">prophet::Node::dest_id()</a>, and <a class="el" href="ProphetStore_8h-source.html#l00085">nodes_</a>.</p> </div> </div><p> <a class="anchor" name="0b855e0d581312dcdeac06d14e6c35c1"></a><!-- doxytag: member="dtn::ProphetStore::new_iterator" ref="0b855e0d581312dcdeac06d14e6c35c1" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classdtn_1_1ProphetStore.html#55d38ab64d7a4ab03eb78dd8f21f4eac">ProphetStore::iterator</a> * dtn::ProphetStore::new_iterator </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Return a new iterator. <p> <p>Definition at line <a class="el" href="ProphetStore_8cc-source.html#l00088">88</a> of file <a class="el" href="ProphetStore_8cc-source.html">ProphetStore.cc</a>.</p> <p>References <a class="el" href="ProphetStore_8h-source.html#l00085">nodes_</a>.</p> <p>Referenced by <a class="el" href="ProphetBundleCore_8cc-source.html#l00314">dtn::ProphetBundleCore::load_prophet_nodes()</a>.</p> </div> </div><p> <a class="anchor" name="347f6d6a39dcdef5e98a1c8d7495fe8a"></a><!-- doxytag: member="dtn::ProphetStore::close" ref="347f6d6a39dcdef5e98a1c8d7495fe8a" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dtn::ProphetStore::close </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Close down the table. <p> <p>Definition at line <a class="el" href="ProphetStore_8cc-source.html#l00095">95</a> of file <a class="el" href="ProphetStore_8cc-source.html">ProphetStore.cc</a>.</p> <p>References <a class="el" href="ProphetStore_8h-source.html#l00085">nodes_</a>.</p> </div> </div><p> <hr><h2>Member Data Documentation</h2> <a class="anchor" name="eb4c99aa076eeb115f2ac3546f7cdbb2"></a><!-- doxytag: member="dtn::ProphetStore::cfg_" ref="eb4c99aa076eeb115f2ac3546f7cdbb2" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const oasys::StorageConfig& <a class="el" href="classdtn_1_1ProphetStore.html#eb4c99aa076eeb115f2ac3546f7cdbb2">dtn::ProphetStore::cfg_</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> storage configuration <p> <p>Definition at line <a class="el" href="ProphetStore_8h-source.html#l00084">84</a> of file <a class="el" href="ProphetStore_8h-source.html">ProphetStore.h</a>.</p> </div> </div><p> <a class="anchor" name="7867008cf488c702698b8f481ee2120b"></a><!-- doxytag: member="dtn::ProphetStore::nodes_" ref="7867008cf488c702698b8f481ee2120b" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classdtn_1_1ProphetStore.html#0f76ee75e825c2d5468f9307c7e0898f">ProphetDurableTable</a> <a class="el" href="classdtn_1_1ProphetStore.html#7867008cf488c702698b8f481ee2120b">dtn::ProphetStore::nodes_</a><code> [protected]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> <a class="el" href="classdtn_1_1ProphetNode.html" title="ProphetNode stores state for a remote node as identified by remote_eid.">ProphetNode</a> information base. <p> <p>Definition at line <a class="el" href="ProphetStore_8h-source.html#l00085">85</a> of file <a class="el" href="ProphetStore_8h-source.html">ProphetStore.h</a>.</p> <p>Referenced by <a class="el" href="ProphetStore_8cc-source.html#l00052">add()</a>, <a class="el" href="ProphetStore_8cc-source.html#l00095">close()</a>, <a class="el" href="ProphetStore_8cc-source.html#l00080">del()</a>, <a class="el" href="ProphetStore_8cc-source.html#l00062">get()</a>, <a class="el" href="ProphetStore_8cc-source.html#l00088">new_iterator()</a>, and <a class="el" href="ProphetStore_8cc-source.html#l00070">update()</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="ProphetStore_8h-source.html">ProphetStore.h</a><li><a class="el" href="ProphetStore_8cc-source.html">ProphetStore.cc</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Mon Jul 21 14:09:55 2008 for DTN Reference Implementation by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address> </body> </html>