Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 29c369053a983cc5d8c880dc6e0a2237 > files > 1063

libdtn-devel-2.6.0-2mdv2009.1.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::DTNServer Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.8 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&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_1DTNServer.html">DTNServer</a>
  </div>
</div>
<div class="contents">
<h1>dtn::DTNServer Class Reference</h1><!-- doxytag: class="dtn::DTNServer" --><code>#include &lt;<a class="el" href="DTNServer_8h-source.html">DTNServer.h</a>&gt;</code>
<p>

<p>
<a href="classdtn_1_1DTNServer-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1DTNServer.html#c96c63286ea3b15819f3d7fdd82c0195">ShutdownProc</a> )(void *args)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Typedef for a shutdown procedure.  <a href="#c96c63286ea3b15819f3d7fdd82c0195"></a><br></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_1DTNServer.html#9eadca50aa6f23bd7331641801dbbf38">DTNServer</a> (const char *logpath, <a class="el" href="classdtn_1_1DTNStorageConfig.html">DTNStorageConfig</a> *storage_config)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1DTNServer.html#5e0722efdfa4abbd74059722aeb5b3a4">~DTNServer</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1DTNStorageConfig.html">DTNStorageConfig</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1DTNServer.html#40945fd5ac08bedc60eae51351c80e42">storage_config</a> ()</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_1DTNServer.html#25004a24eda88d80df382931bcae1aaa">init</a> ()</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_1DTNServer.html#90e55dea605a029a958bb9d53a4e7b52">init_datastore</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize the datastore.  <a href="#90e55dea605a029a958bb9d53a4e7b52"></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_1DTNServer.html#6c43a61f37a218e5e105258a6835372e">close_datastore</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Close and sync the data store.  <a href="#6c43a61f37a218e5e105258a6835372e"></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_1DTNServer.html#91378d308617a0ec3b6688e445bdd85d">start</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Start DTN daemon.  <a href="#91378d308617a0ec3b6688e445bdd85d"></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_1DTNServer.html#93f18438079f9ddbe2afdc994d8bd25f">parse_conf_file</a> (std::string &amp;conf_file, <a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> conf_file_set)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Parse the conf file.  <a href="#93f18438079f9ddbe2afdc994d8bd25f"></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_1DTNServer.html#99decfe3bc07be267f449c230ab34174">shutdown</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shut down the server.  <a href="#99decfe3bc07be267f449c230ab34174"></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_1DTNServer.html#49ac1febc5496f250c43549446f51ac1">set_app_shutdown</a> (<a class="el" href="classdtn_1_1DTNServer.html#c96c63286ea3b15819f3d7fdd82c0195">ShutdownProc</a> proc, void *data)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set an application-specific shutdown handler.  <a href="#49ac1febc5496f250c43549446f51ac1"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Private Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1DTNServer.html#822c3c5a007849bab47a6c6675aed9d5">init_dir</a> (const char *dirname)</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_1DTNServer.html#325b23ceddfd016711a468a4d5403e55">tidy_dir</a> (const char *dirname)</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_1DTNServer.html#597f3452f64288450c53f69a636c792f">validate_dir</a> (const char *dirname)</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_1DTNServer.html#9d82f98d9283dd23e3ce7b12f909a186">init_commands</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize and register all the server related <a class="el" href="namespacedtn.html" title="Namespace for the dtn daemon source code.">dtn</a> commands.  <a href="#9d82f98d9283dd23e3ce7b12f909a186"></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_1DTNServer.html#a362113583ca122749ba34d1f7a5c79c">init_components</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize all components before modifying any configuration.  <a href="#a362113583ca122749ba34d1f7a5c79c"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Private Attributes</h2></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_1DTNServer.html#008043d508b06424988a348cce19782e">init_</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">oasys::atomic_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1DTNServer.html#facc725094d1ef0c509a299210aa73d4">in_shutdown_</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1DTNStorageConfig.html">DTNStorageConfig</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1DTNServer.html#23402ab6fc9394691f25c41bb3edabd0">storage_config_</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">oasys::DurableStore *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1DTNServer.html#7ce7aaa528077a02c78de4b351a96f88">store_</a></td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Encapsulation class for the "guts" of the server library. 
<p>Definition at line <a class="el" href="DTNServer_8h-source.html#l00031">31</a> of file <a class="el" href="DTNServer_8h-source.html">DTNServer.h</a>.</p>
<hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="c96c63286ea3b15819f3d7fdd82c0195"></a><!-- doxytag: member="dtn::DTNServer::ShutdownProc" ref="c96c63286ea3b15819f3d7fdd82c0195" args=")(void *args)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* <a class="el" href="classdtn_1_1DTNServer.html#c96c63286ea3b15819f3d7fdd82c0195">dtn::DTNServer::ShutdownProc</a>)(void *args)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Typedef for a shutdown procedure. 
<p>

</div>
</div><p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="9eadca50aa6f23bd7331641801dbbf38"></a><!-- doxytag: member="dtn::DTNServer::DTNServer" ref="9eadca50aa6f23bd7331641801dbbf38" args="(const char *logpath, DTNStorageConfig *storage_config)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">dtn::DTNServer::DTNServer           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>logpath</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classdtn_1_1DTNStorageConfig.html">DTNStorageConfig</a> *&nbsp;</td>
          <td class="paramname"> <em>storage_config</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="DTNServer_8cc-source.html#l00071">71</a> of file <a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a>.</p>

</div>
</div><p>
<a class="anchor" name="5e0722efdfa4abbd74059722aeb5b3a4"></a><!-- doxytag: member="dtn::DTNServer::~DTNServer" ref="5e0722efdfa4abbd74059722aeb5b3a4" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">dtn::DTNServer::~DTNServer           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="DTNServer_8cc-source.html#l00080">80</a> of file <a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a>.</p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="6c43a61f37a218e5e105258a6835372e"></a><!-- doxytag: member="dtn::DTNServer::close_datastore" ref="6c43a61f37a218e5e105258a6835372e" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dtn::DTNServer::close_datastore           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Close and sync the data store. 
<p>

<p>Definition at line <a class="el" href="DTNServer_8cc-source.html#l00248">248</a> of file <a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a>.</p>

<p>References <a class="el" href="GlobalStore_8cc-source.html#l00289">dtn::GlobalStore::close()</a>, <a class="el" href="GlobalStore_8h-source.html#l00049">dtn::GlobalStore::instance()</a>, and <a class="el" href="DTNServer_8h-source.html#l00073">store_</a>.</p>

<p>Referenced by <a class="el" href="dtnd_8cc-source.html#l00152">dtn::DTND::main()</a>, and <a class="el" href="DTNServer_8cc-source.html#l00262">shutdown()</a>.</p>

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

<p>
Initialize storage, components<p>
NOTE: This needs to be called with thread barrier and timer system off because of initialization ordering constraints. 
<p>Definition at line <a class="el" href="DTNServer_8cc-source.html#l00086">86</a> of file <a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a>.</p>

<p>References <a class="el" href="SDNV_8cc-source.html#l00044">ASSERT</a>, <a class="el" href="DTNServer_8cc-source.html#l00207">init_commands()</a>, and <a class="el" href="DTNServer_8cc-source.html#l00236">init_components()</a>.</p>

<p>Referenced by <a class="el" href="DTNServer_8cc-source.html#l00236">init_components()</a>, and <a class="el" href="dtnd_8cc-source.html#l00152">dtn::DTND::main()</a>.</p>

</div>
</div><p>
<a class="anchor" name="9d82f98d9283dd23e3ce7b12f909a186"></a><!-- doxytag: member="dtn::DTNServer::init_commands" ref="9d82f98d9283dd23e3ce7b12f909a186" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dtn::DTNServer::init_commands           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Initialize and register all the server related <a class="el" href="namespacedtn.html" title="Namespace for the dtn daemon source code.">dtn</a> commands. 
<p>

<p>Definition at line <a class="el" href="DTNServer_8cc-source.html#l00207">207</a> of file <a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a>.</p>

<p>References <a class="el" href="DTNServer_8h-source.html#l00072">storage_config_</a>.</p>

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

</div>
</div><p>
<a class="anchor" name="a362113583ca122749ba34d1f7a5c79c"></a><!-- doxytag: member="dtn::DTNServer::init_components" ref="a362113583ca122749ba34d1f7a5c79c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dtn::DTNServer::init_components           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Initialize all components before modifying any configuration. 
<p>

<p>Definition at line <a class="el" href="DTNServer_8cc-source.html#l00236">236</a> of file <a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a>.</p>

<p>References <a class="el" href="DTNServer_8cc-source.html#l00086">init()</a>, and <a class="el" href="ConvergenceLayer_8cc-source.html#l00051">dtn::ConvergenceLayer::init_clayers()</a>.</p>

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

</div>
</div><p>
<a class="anchor" name="90e55dea605a029a958bb9d53a4e7b52"></a><!-- doxytag: member="dtn::DTNServer::init_datastore" ref="90e55dea605a029a958bb9d53a4e7b52" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::DTNServer::init_datastore           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Initialize the datastore. 
<p>

<p>Definition at line <a class="el" href="DTNServer_8cc-source.html#l00103">103</a> of file <a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a>.</p>

<p>References <a class="el" href="RegistrationStore_8h-source.html#l00046">dtn::RegistrationStore::init()</a>, <a class="el" href="LinkStore_8h-source.html#l00046">dtn::LinkStore::init()</a>, <a class="el" href="ProphetStore_8cc-source.html#l00039">dtn::ProphetStore::init()</a>, <a class="el" href="BundleStore_8cc-source.html#l00042">dtn::BundleStore::init()</a>, <a class="el" href="GlobalStore_8cc-source.html#l00082">dtn::GlobalStore::init()</a>, <a class="el" href="DTNServer_8cc-source.html#l00290">init_dir()</a>, <a class="el" href="GlobalStore_8h-source.html#l00049">dtn::GlobalStore::instance()</a>, <a class="el" href="DTNStorageConfig_8h-source.html#l00042">dtn::DTNStorageConfig::payload_dir_</a>, <a class="el" href="DTNServer_8h-source.html#l00072">storage_config_</a>, <a class="el" href="DTNServer_8h-source.html#l00073">store_</a>, <a class="el" href="DTNServer_8cc-source.html#l00314">tidy_dir()</a>, and <a class="el" href="DTNServer_8cc-source.html#l00348">validate_dir()</a>.</p>

<p>Referenced by <a class="el" href="dtnd_8cc-source.html#l00152">dtn::DTND::main()</a>.</p>

</div>
</div><p>
<a class="anchor" name="822c3c5a007849bab47a6c6675aed9d5"></a><!-- doxytag: member="dtn::DTNServer::init_dir" ref="822c3c5a007849bab47a6c6675aed9d5" args="(const char *dirname)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::DTNServer::init_dir           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>dirname</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="DTNServer_8cc-source.html#l00290">290</a> of file <a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a>.</p>

<p>References <a class="el" href="IPDiscovery_8cc.html#d65a8842cc674e3ddf69355898c0ecbf">errno</a>.</p>

<p>Referenced by <a class="el" href="DTNServer_8cc-source.html#l00103">init_datastore()</a>.</p>

</div>
</div><p>
<a class="anchor" name="93f18438079f9ddbe2afdc994d8bd25f"></a><!-- doxytag: member="dtn::DTNServer::parse_conf_file" ref="93f18438079f9ddbe2afdc994d8bd25f" args="(std::string &amp;conf_file, bool conf_file_set)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::DTNServer::parse_conf_file           </td>
          <td>(</td>
          <td class="paramtype">std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>conf_file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a>&nbsp;</td>
          <td class="paramname"> <em>conf_file_set</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Parse the conf file. 
<p>

<p>Definition at line <a class="el" href="DTNServer_8cc-source.html#l00156">156</a> of file <a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a>.</p>

<p>References <a class="el" href="dtn-config_8h-source.html#l00053">INSTALL_SYSCONFDIR</a>.</p>

<p>Referenced by <a class="el" href="dtnd_8cc-source.html#l00152">dtn::DTND::main()</a>.</p>

</div>
</div><p>
<a class="anchor" name="49ac1febc5496f250c43549446f51ac1"></a><!-- doxytag: member="dtn::DTNServer::set_app_shutdown" ref="49ac1febc5496f250c43549446f51ac1" args="(ShutdownProc proc, void *data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dtn::DTNServer::set_app_shutdown           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classdtn_1_1DTNServer.html#c96c63286ea3b15819f3d7fdd82c0195">ShutdownProc</a>&nbsp;</td>
          <td class="paramname"> <em>proc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>data</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set an application-specific shutdown handler. 
<p>

<p>Definition at line <a class="el" href="DTNServer_8cc-source.html#l00284">284</a> of file <a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a>.</p>

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

<p>
Shut down the server. 
<p>

<p>Definition at line <a class="el" href="DTNServer_8cc-source.html#l00262">262</a> of file <a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a>.</p>

<p>References <a class="el" href="DTNServer_8cc-source.html#l00248">close_datastore()</a>, and <a class="el" href="DTNServer_8h-source.html#l00070">in_shutdown_</a>.</p>

<p>Referenced by <a class="el" href="dtnd_8cc-source.html#l00152">dtn::DTND::main()</a>.</p>

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

<p>
Start DTN daemon. 
<p>

<p>Definition at line <a class="el" href="DTNServer_8cc-source.html#l00095">95</a> of file <a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a>.</p>

<p>Referenced by <a class="el" href="dtnd_8cc-source.html#l00152">dtn::DTND::main()</a>.</p>

</div>
</div><p>
<a class="anchor" name="40945fd5ac08bedc60eae51351c80e42"></a><!-- doxytag: member="dtn::DTNServer::storage_config" ref="40945fd5ac08bedc60eae51351c80e42" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classdtn_1_1DTNStorageConfig.html">DTNStorageConfig</a>* dtn::DTNServer::storage_config           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="DTNServer_8h-source.html#l00037">37</a> of file <a class="el" href="DTNServer_8h-source.html">DTNServer.h</a>.</p>

<p>References <a class="el" href="DTNServer_8h-source.html#l00072">storage_config_</a>.</p>

</div>
</div><p>
<a class="anchor" name="325b23ceddfd016711a468a4d5403e55"></a><!-- doxytag: member="dtn::DTNServer::tidy_dir" ref="325b23ceddfd016711a468a4d5403e55" args="(const char *dirname)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::DTNServer::tidy_dir           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>dirname</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="DTNServer_8cc-source.html#l00314">314</a> of file <a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a>.</p>

<p>References <a class="el" href="IPDiscovery_8cc.html#d65a8842cc674e3ddf69355898c0ecbf">errno</a>.</p>

<p>Referenced by <a class="el" href="DTNServer_8cc-source.html#l00103">init_datastore()</a>.</p>

</div>
</div><p>
<a class="anchor" name="597f3452f64288450c53f69a636c792f"></a><!-- doxytag: member="dtn::DTNServer::validate_dir" ref="597f3452f64288450c53f69a636c792f" args="(const char *dirname)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::DTNServer::validate_dir           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>dirname</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="DTNServer_8cc-source.html#l00348">348</a> of file <a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a>.</p>

<p>References <a class="el" href="IPDiscovery_8cc.html#d65a8842cc674e3ddf69355898c0ecbf">errno</a>.</p>

<p>Referenced by <a class="el" href="DTNServer_8cc-source.html#l00103">init_datastore()</a>.</p>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="facc725094d1ef0c509a299210aa73d4"></a><!-- doxytag: member="dtn::DTNServer::in_shutdown_" ref="facc725094d1ef0c509a299210aa73d4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">oasys::atomic_t <a class="el" href="classdtn_1_1DTNServer.html#facc725094d1ef0c509a299210aa73d4">dtn::DTNServer::in_shutdown_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="DTNServer_8h-source.html#l00070">70</a> of file <a class="el" href="DTNServer_8h-source.html">DTNServer.h</a>.</p>

<p>Referenced by <a class="el" href="DTNServer_8cc-source.html#l00262">shutdown()</a>.</p>

</div>
</div><p>
<a class="anchor" name="008043d508b06424988a348cce19782e"></a><!-- doxytag: member="dtn::DTNServer::init_" ref="008043d508b06424988a348cce19782e" 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="classdtn_1_1DTNServer.html#008043d508b06424988a348cce19782e">dtn::DTNServer::init_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="DTNServer_8h-source.html#l00069">69</a> of file <a class="el" href="DTNServer_8h-source.html">DTNServer.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="23402ab6fc9394691f25c41bb3edabd0"></a><!-- doxytag: member="dtn::DTNServer::storage_config_" ref="23402ab6fc9394691f25c41bb3edabd0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classdtn_1_1DTNStorageConfig.html">DTNStorageConfig</a>* <a class="el" href="classdtn_1_1DTNServer.html#23402ab6fc9394691f25c41bb3edabd0">dtn::DTNServer::storage_config_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="DTNServer_8h-source.html#l00072">72</a> of file <a class="el" href="DTNServer_8h-source.html">DTNServer.h</a>.</p>

<p>Referenced by <a class="el" href="DTNServer_8cc-source.html#l00207">init_commands()</a>, <a class="el" href="DTNServer_8cc-source.html#l00103">init_datastore()</a>, and <a class="el" href="DTNServer_8h-source.html#l00037">storage_config()</a>.</p>

</div>
</div><p>
<a class="anchor" name="7ce7aaa528077a02c78de4b351a96f88"></a><!-- doxytag: member="dtn::DTNServer::store_" ref="7ce7aaa528077a02c78de4b351a96f88" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">oasys::DurableStore* <a class="el" href="classdtn_1_1DTNServer.html#7ce7aaa528077a02c78de4b351a96f88">dtn::DTNServer::store_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="DTNServer_8h-source.html#l00073">73</a> of file <a class="el" href="DTNServer_8h-source.html">DTNServer.h</a>.</p>

<p>Referenced by <a class="el" href="DTNServer_8cc-source.html#l00248">close_datastore()</a>, and <a class="el" href="DTNServer_8cc-source.html#l00103">init_datastore()</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="DTNServer_8h-source.html">DTNServer.h</a><li><a class="el" href="DTNServer_8cc-source.html">DTNServer.cc</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Fri Jan 30 09:27:04 2009 for DTN Reference Implementation by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
</body>
</html>