Sophie

Sophie

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

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

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>DTN Reference Implementation: dtn::BundleStore Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespacedtn.html">dtn</a>::<a class="el" href="classdtn_1_1BundleStore.html">BundleStore</a>
  </div>
</div>
<div class="contents">
<h1>dtn::BundleStore Class Reference</h1><!-- doxytag: class="dtn::BundleStore" --><code>#include &lt;<a class="el" href="BundleStore_8h-source.html">BundleStore.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for dtn::BundleStore:</div>
<div class="dynsection">

<p><center><img src="classdtn_1_1BundleStore.png" usemap="#dtn::BundleStore_map" border="0" alt=""></center>
<map name="dtn::BundleStore_map">
<area href="classdtn_1_1SQLBundleStore.html" alt="dtn::SQLBundleStore" shape="rect" coords="0,56,129,80">
</map>
</div>

<p>
<a href="classdtn_1_1BundleStore-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
The class for bundle storage is an instantiation of an <a class="el" href="namespaceoasys.html">oasys</a> durable table to store the bundle metadata, tracking logic for the storage total, and other support classes for the payloads. 
<p>Definition at line <a class="el" href="BundleStore_8h-source.html#l00036">36</a> of file <a class="el" href="BundleStore_8h-source.html">BundleStore.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 oasys::OpenFdCache<br>
&lt; std::string &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#7f6ec449ca0ee33258d444af8426510d">FdCache</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Helper class typedefs.  <a href="#7f6ec449ca0ee33258d444af8426510d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <br>
oasys::InternalKeyDurableTable<br>
&lt; oasys::UIntShim, u_int32_t, <br>
<a class="el" href="classdtn_1_1Bundle.html">Bundle</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#17dedcf81fa5b62013a4754fe48409fb">BundleTable</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef BundleTable::iterator&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#fb4b85e14a877a86628c0b6bcf619e68">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">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#0d7ddf276c76fa7933fa445ca3edcf5a">BundleStore</a> (const <a class="el" href="classdtn_1_1DTNStorageConfig.html">DTNStorageConfig</a> &amp;cfg)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#0d7ddf276c76fa7933fa445ca3edcf5a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#c4bccdb52cfebbdc5409ce4611e98da2">add</a> (<a class="el" href="classdtn_1_1Bundle.html">Bundle</a> *bundle)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a new bundle.  <a href="#c4bccdb52cfebbdc5409ce4611e98da2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1Bundle.html">Bundle</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#dc21e162bbb18024768467a8005048ac">get</a> (u_int32_t bundleid)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieve a bundle.  <a href="#dc21e162bbb18024768467a8005048ac"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#3821a93fdc9d3566951764be76d2c649">update</a> (<a class="el" href="classdtn_1_1Bundle.html">Bundle</a> *bundle)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Update the metabundle for the bundle.  <a href="#3821a93fdc9d3566951764be76d2c649"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#87d444672b4bdb825be09b0ad3b37150">del</a> (<a class="el" href="classdtn_1_1Bundle.html">Bundle</a> *bundle)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Delete the bundle.  <a href="#87d444672b4bdb825be09b0ad3b37150"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1BundleStore.html#fb4b85e14a877a86628c0b6bcf619e68">iterator</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#2018d15d04bd544f78dc8bb4b23c4df2">new_iterator</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return a new iterator.  <a href="#2018d15d04bd544f78dc8bb4b23c4df2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#65ec6e97b58f4b9cab96cad6968145ab">close</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Close down the table.  <a href="#65ec6e97b58f4b9cab96cad6968145ab"></a><br></td></tr>
<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const std::string &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#86524d860e9407dd3d0613e81a9990d2">payload_dir</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Accessors.  <a href="#86524d860e9407dd3d0613e81a9990d2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">u_int64_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#8a503100de1f9c00d38fa66aebd78da1">payload_quota</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Accessors.  <a href="#8a503100de1f9c00d38fa66aebd78da1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1BundleStore.html#7f6ec449ca0ee33258d444af8426510d">FdCache</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#c3df23a2c4d9d3714d088f36d07c1ba2">payload_fdcache</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Accessors.  <a href="#c3df23a2c4d9d3714d088f36d07c1ba2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">u_int64_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#b360ea44c0fbb86453a1b53174154ddb">total_size</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Accessors.  <a href="#b360ea44c0fbb86453a1b53174154ddb"></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&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#98d13600ce59a19e79d256518c32e314">init</a> (const <a class="el" href="classdtn_1_1DTNStorageConfig.html">DTNStorageConfig</a> &amp;cfg, oasys::DurableStore *store)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Boot time initializer that takes as a parameter the storage configuration to use.  <a href="#98d13600ce59a19e79d256518c32e314"></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">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#e353ebf2181c93689adde1ba532192e0">set_total_size</a> (u_int64_t sz)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">When the bundle store is loaded at boot time, we need to reset the in-memory total_size_ parameter.  <a href="#e353ebf2181c93689adde1ba532192e0"></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 <a class="el" href="classdtn_1_1DTNStorageConfig.html">DTNStorageConfig</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#3f8c7283db7c084c29f7688ee2597dec">cfg_</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Storage configuration.  <a href="#3f8c7283db7c084c29f7688ee2597dec"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1BundleStore.html#17dedcf81fa5b62013a4754fe48409fb">BundleTable</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#6276fa50b81e2907ace7e7a10d270650">bundles_</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classdtn_1_1Bundle.html" title="The internal representation of a bundle.">Bundle</a> metabundle table.  <a href="#6276fa50b81e2907ace7e7a10d270650"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1BundleStore.html#7f6ec449ca0ee33258d444af8426510d">FdCache</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#187e6b5009ecf6ba0bf84e46da520234">payload_fdcache_</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">File descriptor cache.  <a href="#187e6b5009ecf6ba0bf84e46da520234"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">u_int64_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1BundleStore.html#ffb89e9cd7f3ce15c9c136fd31474a2e">total_size_</a></td></tr>

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

</table>
<hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="7f6ec449ca0ee33258d444af8426510d"></a><!-- doxytag: member="dtn::BundleStore::FdCache" ref="7f6ec449ca0ee33258d444af8426510d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef oasys::OpenFdCache&lt;std::string&gt; <a class="el" href="classdtn_1_1BundleStore.html#7f6ec449ca0ee33258d444af8426510d">dtn::BundleStore::FdCache</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Helper class typedefs. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8h-source.html#l00039">39</a> of file <a class="el" href="BundleStore_8h-source.html">BundleStore.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="17dedcf81fa5b62013a4754fe48409fb"></a><!-- doxytag: member="dtn::BundleStore::BundleTable" ref="17dedcf81fa5b62013a4754fe48409fb" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef oasys::InternalKeyDurableTable&lt; oasys::UIntShim, u_int32_t, <a class="el" href="classdtn_1_1Bundle.html">Bundle</a>&gt; <a class="el" href="classdtn_1_1BundleStore.html#17dedcf81fa5b62013a4754fe48409fb">dtn::BundleStore::BundleTable</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="BundleStore_8h-source.html#l00041">41</a> of file <a class="el" href="BundleStore_8h-source.html">BundleStore.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="fb4b85e14a877a86628c0b6bcf619e68"></a><!-- doxytag: member="dtn::BundleStore::iterator" ref="fb4b85e14a877a86628c0b6bcf619e68" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef BundleTable::iterator <a class="el" href="classdtn_1_1BundleStore.html#fb4b85e14a877a86628c0b6bcf619e68">dtn::BundleStore::iterator</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

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

</div>
</div><p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="0d7ddf276c76fa7933fa445ca3edcf5a"></a><!-- doxytag: member="dtn::BundleStore::BundleStore" ref="0d7ddf276c76fa7933fa445ca3edcf5a" args="(const DTNStorageConfig &amp;cfg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">dtn::BundleStore::BundleStore           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classdtn_1_1DTNStorageConfig.html">DTNStorageConfig</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>cfg</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Constructor. 
<p>

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

<p>Referenced by <a class="el" href="BundleStore_8cc-source.html#l00042">init()</a>.</p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="98d13600ce59a19e79d256518c32e314"></a><!-- doxytag: member="dtn::BundleStore::init" ref="98d13600ce59a19e79d256518c32e314" args="(const DTNStorageConfig &amp;cfg, oasys::DurableStore *store)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int dtn::BundleStore::init           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classdtn_1_1DTNStorageConfig.html">DTNStorageConfig</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>cfg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">oasys::DurableStore *&nbsp;</td>
          <td class="paramname"> <em>store</em></td><td>&nbsp;</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 that takes as a parameter the storage configuration to use. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8cc-source.html#l00042">42</a> of file <a class="el" href="BundleStore_8cc-source.html">BundleStore.cc</a>.</p>

<p>References <a class="el" href="BundleStore_8cc-source.html#l00030">BundleStore()</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="c4bccdb52cfebbdc5409ce4611e98da2"></a><!-- doxytag: member="dtn::BundleStore::add" ref="c4bccdb52cfebbdc5409ce4611e98da2" args="(Bundle *bundle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::BundleStore::add           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1Bundle.html">Bundle</a> *&nbsp;</td>
          <td class="paramname"> <em>bundle</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Add a new bundle. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8cc-source.html#l00054">54</a> of file <a class="el" href="BundleStore_8cc-source.html">BundleStore.cc</a>.</p>

<p>References <a class="el" href="BundleStore_8h-source.html#l00089">bundles_</a>, <a class="el" href="bundling_2Bundle_8h-source.html#l00121">dtn::Bundle::durable_size()</a>, and <a class="el" href="BundleStore_8h-source.html#l00091">total_size_</a>.</p>

</div>
</div><p>
<a class="anchor" name="dc21e162bbb18024768467a8005048ac"></a><!-- doxytag: member="dtn::BundleStore::get" ref="dc21e162bbb18024768467a8005048ac" args="(u_int32_t bundleid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classdtn_1_1Bundle.html">Bundle</a> * dtn::BundleStore::get           </td>
          <td>(</td>
          <td class="paramtype">u_int32_t&nbsp;</td>
          <td class="paramname"> <em>bundleid</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Retrieve a bundle. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8cc-source.html#l00065">65</a> of file <a class="el" href="BundleStore_8cc-source.html">BundleStore.cc</a>.</p>

<p>References <a class="el" href="BundleStore_8h-source.html#l00089">bundles_</a>.</p>

<p>Referenced by <a class="el" href="BundleDaemon_8cc-source.html#l02457">dtn::BundleDaemon::load_bundles()</a>.</p>

</div>
</div><p>
<a class="anchor" name="3821a93fdc9d3566951764be76d2c649"></a><!-- doxytag: member="dtn::BundleStore::update" ref="3821a93fdc9d3566951764be76d2c649" args="(Bundle *bundle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::BundleStore::update           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1Bundle.html">Bundle</a> *&nbsp;</td>
          <td class="paramname"> <em>bundle</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Update the metabundle for the bundle. 
<p>

<p>Reimplemented in <a class="el" href="classdtn_1_1SQLBundleStore.html#e29628d27fbc362bd3b50785a4f207b5">dtn::SQLBundleStore</a>.</p>

<p>Definition at line <a class="el" href="BundleStore_8cc-source.html#l00072">72</a> of file <a class="el" href="BundleStore_8cc-source.html">BundleStore.cc</a>.</p>

<p>References <a class="el" href="BundleStore_8h-source.html#l00089">bundles_</a>.</p>

</div>
</div><p>
<a class="anchor" name="87d444672b4bdb825be09b0ad3b37150"></a><!-- doxytag: member="dtn::BundleStore::del" ref="87d444672b4bdb825be09b0ad3b37150" args="(Bundle *bundle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::BundleStore::del           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1Bundle.html">Bundle</a> *&nbsp;</td>
          <td class="paramname"> <em>bundle</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Delete the bundle. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8cc-source.html#l00079">79</a> of file <a class="el" href="BundleStore_8cc-source.html">BundleStore.cc</a>.</p>

<p>References <a class="el" href="SDNV_8cc-source.html#l00044">ASSERT</a>, <a class="el" href="bundling_2Bundle_8h-source.html#l00201">dtn::Bundle::bundleid()</a>, <a class="el" href="BundleStore_8h-source.html#l00089">bundles_</a>, <a class="el" href="bundling_2Bundle_8h-source.html#l00121">dtn::Bundle::durable_size()</a>, and <a class="el" href="BundleStore_8h-source.html#l00091">total_size_</a>.</p>

</div>
</div><p>
<a class="anchor" name="2018d15d04bd544f78dc8bb4b23c4df2"></a><!-- doxytag: member="dtn::BundleStore::new_iterator" ref="2018d15d04bd544f78dc8bb4b23c4df2" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classdtn_1_1BundleStore.html#fb4b85e14a877a86628c0b6bcf619e68">BundleStore::iterator</a> * dtn::BundleStore::new_iterator           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return a new iterator. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8cc-source.html#l00091">91</a> of file <a class="el" href="BundleStore_8cc-source.html">BundleStore.cc</a>.</p>

<p>References <a class="el" href="BundleStore_8h-source.html#l00089">bundles_</a>.</p>

<p>Referenced by <a class="el" href="BundleDaemon_8cc-source.html#l02457">dtn::BundleDaemon::load_bundles()</a>.</p>

</div>
</div><p>
<a class="anchor" name="65ec6e97b58f4b9cab96cad6968145ab"></a><!-- doxytag: member="dtn::BundleStore::close" ref="65ec6e97b58f4b9cab96cad6968145ab" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dtn::BundleStore::close           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Close down the table. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8cc-source.html#l00098">98</a> of file <a class="el" href="BundleStore_8cc-source.html">BundleStore.cc</a>.</p>

<p>References <a class="el" href="BundleStore_8h-source.html#l00089">bundles_</a>.</p>

</div>
</div><p>
<a class="anchor" name="86524d860e9407dd3d0613e81a9990d2"></a><!-- doxytag: member="dtn::BundleStore::payload_dir" ref="86524d860e9407dd3d0613e81a9990d2" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const std::string&amp; dtn::BundleStore::payload_dir           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Accessors. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8h-source.html#l00075">75</a> of file <a class="el" href="BundleStore_8h-source.html">BundleStore.h</a>.</p>

<p>References <a class="el" href="BundleStore_8h-source.html#l00088">cfg_</a>, and <a class="el" href="DTNStorageConfig_8h-source.html#l00042">dtn::DTNStorageConfig::payload_dir_</a>.</p>

<p>Referenced by <a class="el" href="BundlePayload_8cc-source.html#l00048">dtn::BundlePayload::init()</a>, and <a class="el" href="BundlePayload_8cc-source.html#l00108">dtn::BundlePayload::init_from_store()</a>.</p>

</div>
</div><p>
<a class="anchor" name="8a503100de1f9c00d38fa66aebd78da1"></a><!-- doxytag: member="dtn::BundleStore::payload_quota" ref="8a503100de1f9c00d38fa66aebd78da1" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u_int64_t dtn::BundleStore::payload_quota           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Accessors. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8h-source.html#l00076">76</a> of file <a class="el" href="BundleStore_8h-source.html">BundleStore.h</a>.</p>

<p>References <a class="el" href="BundleStore_8h-source.html#l00088">cfg_</a>, and <a class="el" href="DTNStorageConfig_8h-source.html#l00045">dtn::DTNStorageConfig::payload_quota_</a>.</p>

<p>Referenced by <a class="el" href="BundleRouter_8cc-source.html#l00201">dtn::BundleRouter::accept_bundle()</a>.</p>

</div>
</div><p>
<a class="anchor" name="c3df23a2c4d9d3714d088f36d07c1ba2"></a><!-- doxytag: member="dtn::BundleStore::payload_fdcache" ref="c3df23a2c4d9d3714d088f36d07c1ba2" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classdtn_1_1BundleStore.html#7f6ec449ca0ee33258d444af8426510d">FdCache</a>* dtn::BundleStore::payload_fdcache           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Accessors. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8h-source.html#l00077">77</a> of file <a class="el" href="BundleStore_8h-source.html">BundleStore.h</a>.</p>

<p>References <a class="el" href="BundleStore_8h-source.html#l00090">payload_fdcache_</a>.</p>

<p>Referenced by <a class="el" href="BundlePayload_8cc-source.html#l00048">dtn::BundlePayload::init()</a>, <a class="el" href="BundlePayload_8cc-source.html#l00108">dtn::BundlePayload::init_from_store()</a>, <a class="el" href="BundlePayload_8cc-source.html#l00174">dtn::BundlePayload::pin_file()</a>, and <a class="el" href="BundlePayload_8cc-source.html#l00250">dtn::BundlePayload::replace_with_file()</a>.</p>

</div>
</div><p>
<a class="anchor" name="b360ea44c0fbb86453a1b53174154ddb"></a><!-- doxytag: member="dtn::BundleStore::total_size" ref="b360ea44c0fbb86453a1b53174154ddb" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u_int64_t dtn::BundleStore::total_size           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Accessors. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8h-source.html#l00078">78</a> of file <a class="el" href="BundleStore_8h-source.html">BundleStore.h</a>.</p>

<p>References <a class="el" href="BundleStore_8h-source.html#l00091">total_size_</a>.</p>

<p>Referenced by <a class="el" href="BundleRouter_8cc-source.html#l00201">dtn::BundleRouter::accept_bundle()</a>.</p>

</div>
</div><p>
<a class="anchor" name="e353ebf2181c93689adde1ba532192e0"></a><!-- doxytag: member="dtn::BundleStore::set_total_size" ref="e353ebf2181c93689adde1ba532192e0" args="(u_int64_t sz)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dtn::BundleStore::set_total_size           </td>
          <td>(</td>
          <td class="paramtype">u_int64_t&nbsp;</td>
          <td class="paramname"> <em>sz</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
When the bundle store is loaded at boot time, we need to reset the in-memory total_size_ parameter. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8h-source.html#l00086">86</a> of file <a class="el" href="BundleStore_8h-source.html">BundleStore.h</a>.</p>

<p>References <a class="el" href="BundleStore_8h-source.html#l00091">total_size_</a>.</p>

<p>Referenced by <a class="el" href="BundleDaemon_8cc-source.html#l02457">dtn::BundleDaemon::load_bundles()</a>.</p>

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

<p>

<p>Definition at line <a class="el" href="BundleStore_8h-source.html#l00082">82</a> of file <a class="el" href="BundleStore_8h-source.html">BundleStore.h</a>.</p>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="3f8c7283db7c084c29f7688ee2597dec"></a><!-- doxytag: member="dtn::BundleStore::cfg_" ref="3f8c7283db7c084c29f7688ee2597dec" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classdtn_1_1DTNStorageConfig.html">DTNStorageConfig</a>&amp; <a class="el" href="classdtn_1_1BundleStore.html#3f8c7283db7c084c29f7688ee2597dec">dtn::BundleStore::cfg_</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Storage configuration. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8h-source.html#l00088">88</a> of file <a class="el" href="BundleStore_8h-source.html">BundleStore.h</a>.</p>

<p>Referenced by <a class="el" href="BundleStore_8h-source.html#l00075">payload_dir()</a>, and <a class="el" href="BundleStore_8h-source.html#l00076">payload_quota()</a>.</p>

</div>
</div><p>
<a class="anchor" name="6276fa50b81e2907ace7e7a10d270650"></a><!-- doxytag: member="dtn::BundleStore::bundles_" ref="6276fa50b81e2907ace7e7a10d270650" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classdtn_1_1BundleStore.html#17dedcf81fa5b62013a4754fe48409fb">BundleTable</a> <a class="el" href="classdtn_1_1BundleStore.html#6276fa50b81e2907ace7e7a10d270650">dtn::BundleStore::bundles_</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<a class="el" href="classdtn_1_1Bundle.html" title="The internal representation of a bundle.">Bundle</a> metabundle table. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8h-source.html#l00089">89</a> of file <a class="el" href="BundleStore_8h-source.html">BundleStore.h</a>.</p>

<p>Referenced by <a class="el" href="BundleStore_8cc-source.html#l00054">add()</a>, <a class="el" href="BundleStore_8cc-source.html#l00098">close()</a>, <a class="el" href="BundleStore_8cc-source.html#l00079">del()</a>, <a class="el" href="BundleStore_8cc-source.html#l00065">get()</a>, <a class="el" href="BundleStore_8cc-source.html#l00091">new_iterator()</a>, and <a class="el" href="BundleStore_8cc-source.html#l00072">update()</a>.</p>

</div>
</div><p>
<a class="anchor" name="187e6b5009ecf6ba0bf84e46da520234"></a><!-- doxytag: member="dtn::BundleStore::payload_fdcache_" ref="187e6b5009ecf6ba0bf84e46da520234" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classdtn_1_1BundleStore.html#7f6ec449ca0ee33258d444af8426510d">FdCache</a> <a class="el" href="classdtn_1_1BundleStore.html#187e6b5009ecf6ba0bf84e46da520234">dtn::BundleStore::payload_fdcache_</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
File descriptor cache. 
<p>

<p>Definition at line <a class="el" href="BundleStore_8h-source.html#l00090">90</a> of file <a class="el" href="BundleStore_8h-source.html">BundleStore.h</a>.</p>

<p>Referenced by <a class="el" href="BundleStore_8h-source.html#l00077">payload_fdcache()</a>.</p>

</div>
</div><p>
<a class="anchor" name="ffb89e9cd7f3ce15c9c136fd31474a2e"></a><!-- doxytag: member="dtn::BundleStore::total_size_" ref="ffb89e9cd7f3ce15c9c136fd31474a2e" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u_int64_t <a class="el" href="classdtn_1_1BundleStore.html#ffb89e9cd7f3ce15c9c136fd31474a2e">dtn::BundleStore::total_size_</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="BundleStore_8h-source.html#l00091">91</a> of file <a class="el" href="BundleStore_8h-source.html">BundleStore.h</a>.</p>

<p>Referenced by <a class="el" href="BundleStore_8cc-source.html#l00054">add()</a>, <a class="el" href="BundleStore_8cc-source.html#l00079">del()</a>, <a class="el" href="BundleStore_8h-source.html#l00086">set_total_size()</a>, and <a class="el" href="BundleStore_8h-source.html#l00078">total_size()</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="BundleStore_8h-source.html">BundleStore.h</a><li><a class="el" href="BundleStore_8cc-source.html">BundleStore.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&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>