Sophie

Sophie

distrib > Fedora > 17 > i386 > by-pkgid > a5792cbc6dcdf6bdde626c0724c2c85a > files > 71

globus-ftp-client-doc-7.4-1.fc17.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta name="robots" content="noindex">
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<!-- THIS FILE IS AUTOMATICALLY GENERATED FROM THE GLOBUS SOURCE CODE
     DO NOT MODIFY.
-->
<title>Globus Reference Manual</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.8.1.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('group__globus__ftp__client__throughput__nl__plugin.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Netlogger Throughput Plugin</div>  </div>
<div class="ingroups"><a class="el" href="group__globus__ftp__client__plugins.html">Plugins</a></div></div><!--header-->
<div class="contents">
<div class="dynheader">
Collaboration diagram for Netlogger Throughput Plugin:</div>
<div class="dyncontent">
<center><table><tr><td><img src="group__globus__ftp__client__throughput__nl__plugin.png" border="0" alt="" usemap="#group____globus____ftp____client____throughput____nl____plugin"/>
<map name="group____globus____ftp____client____throughput____nl____plugin" id="group____globus____ftp____client____throughput____nl____plugin">
<area shape="rect" id="node1" href="group__globus__ftp__client__plugins.html" title="Plugin API." alt="" coords="6,12,71,39"/></map>
</td></tr></table></center>
</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ga3b6e9de75bb2ecd40ed0a66f3865e3eb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__throughput__nl__plugin.html#ga3b6e9de75bb2ecd40ed0a66f3865e3eb">GLOBUS_FTP_CLIENT_THROUGHPUT_NL_PLUGIN_MODULE</a>&#160;&#160;&#160;(&amp;globus_i_ftp_client_throughput_nl_plugin_module)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga2d41e7507ae4865762d1823255fc5d5c"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__throughput__nl__plugin.html#ga2d41e7507ae4865762d1823255fc5d5c">globus_ftp_client_throughput_nl_plugin_init</a> (<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, const char *nl_url, const char *prog_name, const char *opaque_string)</td></tr>
<tr class="memitem:gacb6c8cd12bdbb43336f0b05ad799786b"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__throughput__nl__plugin.html#gacb6c8cd12bdbb43336f0b05ad799786b">globus_ftp_client_throughput_nl_plugin_init_with_handle</a> (<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, NLhandle *nl_handle, const char *opaque_string)</td></tr>
<tr class="memitem:ga1d80a39d6144c5f11e566f2a14509a9d"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__throughput__nl__plugin.html#ga1d80a39d6144c5f11e566f2a14509a9d">globus_ftp_client_throughput_nl_plugin_destroy</a> (<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin)</td></tr>
<tr class="memitem:ga2b1685629fccd0a4480e8ee6eba1c8bc"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__ftp__client__throughput__nl__plugin.html#ga2b1685629fccd0a4480e8ee6eba1c8bc">globus_ftp_client_throughput_nl_plugin_set_callbacks</a> (<a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *plugin, <a class="el" href="group__globus__ftp__client__throughput__plugin.html#ga635fcdcd8bc88682f974b6258665fa77">globus_ftp_client_throughput_plugin_begin_cb_t</a> begin_cb, <a class="el" href="group__globus__ftp__client__throughput__plugin.html#gad3378988c81b09b07a56be73b81d7e39">globus_ftp_client_throughput_plugin_stripe_cb_t</a> per_stripe_cb, <a class="el" href="group__globus__ftp__client__throughput__plugin.html#ga94697ba39253977f5edc0f616baa3f07">globus_ftp_client_throughput_plugin_total_cb_t</a> total_cb, <a class="el" href="group__globus__ftp__client__throughput__plugin.html#ga41213a4cc3331fdd9ae607ecaeb35122">globus_ftp_client_throughput_plugin_complete_cb_t</a> complete_cb, void *user_specific)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<p>This plugin allows a user to easily use the throughput plugin to log performance data vi Netlogger. </p>
<p>The plugin will log the following Event Types with its coressponding info</p>
<p>TransferPerfTotal : This event type will be sent everytime a throughput plugin total callback is received.</p>
<ul>
<li>URL.SOURCE &lt;string&gt; Source url of transfer</li>
<li>URL.DEST &lt;string&gt; Dest url of transfer</li>
<li>BYTES &lt;int&gt; Total bytes transfered thus far</li>
<li>BW.CURRENT &lt;float&gt; Current (instantaneous) bandwidth</li>
<li>BW.AVG &lt;float&gt; Average (instantaneous) bandwidth</li>
</ul>
<p>TransferPerfStripe : This event type will be sent everytime a throughput plugin stripe callback is received.</p>
<ul>
<li>URL.SOURCE &lt;string&gt; Source url of transfer</li>
<li>URL.DEST &lt;string&gt; Dest url of transfer</li>
<li>INDEX &lt;int&gt; The stripe index the event applies to</li>
<li>BYTES &lt;int&gt; Total bytes transfered thus far on this stripe</li>
<li>BW.CURRENT &lt;float&gt; Current (instantaneous) bandwidth on this stripe</li>
<li>BW.AVG &lt;float&gt; Average (instantaneous) bandwidth on this stripe</li>
</ul>
<p>TransferBegin : This event type will be sent everytime a throughput plugin begin callback is received.</p>
<ul>
<li>URL.SOURCE &lt;string&gt; Source url of transfer</li>
<li>URL.DEST &lt;string&gt; Dest url of transfer</li>
</ul>
<p>TransferEnd : This event type will be sent everytime a throughput plugin complete callback is received.</p>
<ul>
<li>SUCCESS &lt;bool&gt; Completion status </li>
</ul>
<hr/><h2>Macro Definition Documentation</h2>
<a class="anchor" id="ga3b6e9de75bb2ecd40ed0a66f3865e3eb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GLOBUS_FTP_CLIENT_THROUGHPUT_NL_PLUGIN_MODULE&#160;&#160;&#160;(&amp;globus_i_ftp_client_throughput_nl_plugin_module)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Module descriptor. </p>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="ga2d41e7507ae4865762d1823255fc5d5c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_throughput_nl_plugin_init </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *&#160;</td>
          <td class="paramname"><em>plugin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>nl_url</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>prog_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>opaque_string</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize netlogger wrapped throughput pluginThis will initialize a netlogger wrapped throughput plugin. </p>
<p>Note that the nl_url may be NULL. Regardless of what nl_host is set to, if the env variable NL_DEST_ENV is set, logging will always occur to that location.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>a plugin to be initialized</td></tr>
    <tr><td class="paramname">nl_url</td><td>the url to log to (May be NULL) Valid urls are: <a href="file://tmp/netlog.log">file://tmp/netlog.log</a> x-netlog://host[:port] x-syslog://localhost</td></tr>
    <tr><td class="paramname">prog_name</td><td>This is used as the prog name in the NetLoggerOpen call</td></tr>
    <tr><td class="paramname">opaque_string</td><td>this is an opaque string that will be inserted into all logged statements. (may be NULL)</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd><ul>
<li>Error on NULL plugin or failure to init throughput plugin</li>
<li>Error on NetLogger open</li>
<li>GLOBUS_SUCCESS </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="gacb6c8cd12bdbb43336f0b05ad799786b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_throughput_nl_plugin_init_with_handle </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *&#160;</td>
          <td class="paramname"><em>plugin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">NLhandle *&#160;</td>
          <td class="paramname"><em>nl_handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>opaque_string</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize netlogger wrapped throughput pluginThis will initialize a netlogger wrapped throughput plugin. </p>
<p>Instead of passing a NetLogger url as in the plain init func, you can pass in a previously 'Open'ed NLhandle. This handle will not be destroyed by this plugin.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>a plugin to be initialized</td></tr>
    <tr><td class="paramname">nl_handle</td><td>a previously opened NetLogger handle</td></tr>
    <tr><td class="paramname">opaque_string</td><td>this is an opaque string that will be inserted into all logged statements. (may be NULL)</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd><ul>
<li>Error on NULL plugin or failure to init throughput plugin</li>
<li>Error on NetLogger open</li>
<li>GLOBUS_SUCCESS </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="ga1d80a39d6144c5f11e566f2a14509a9d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_throughput_nl_plugin_destroy </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *&#160;</td>
          <td class="paramname"><em>plugin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Destroy netlogger wrapped throughput pluginFrees up memory associated with plugin. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td>plugin previously initialized with init (above)</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd><ul>
<li>GLOBUS_SUCCESS</li>
<li>Error on NULL plugin </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="ga2b1685629fccd0a4480e8ee6eba1c8bc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_ftp_client_throughput_nl_plugin_set_callbacks </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__plugins.html#gafd650bbeee4bf50b94275d89352697dc">globus_ftp_client_plugin_t</a> *&#160;</td>
          <td class="paramname"><em>plugin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__throughput__plugin.html#ga635fcdcd8bc88682f974b6258665fa77">globus_ftp_client_throughput_plugin_begin_cb_t</a>&#160;</td>
          <td class="paramname"><em>begin_cb</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__throughput__plugin.html#gad3378988c81b09b07a56be73b81d7e39">globus_ftp_client_throughput_plugin_stripe_cb_t</a>&#160;</td>
          <td class="paramname"><em>per_stripe_cb</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__throughput__plugin.html#ga94697ba39253977f5edc0f616baa3f07">globus_ftp_client_throughput_plugin_total_cb_t</a>&#160;</td>
          <td class="paramname"><em>total_cb</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__globus__ftp__client__throughput__plugin.html#ga41213a4cc3331fdd9ae607ecaeb35122">globus_ftp_client_throughput_plugin_complete_cb_t</a>&#160;</td>
          <td class="paramname"><em>complete_cb</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>user_specific</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Receive throughput callbacksYou can still get the automatic netlogging of throughput along with receiving the same throughput callbacks that the throughput plugin provides by using this function to set these callbacks. </p>
<p>Note that the callbacks are defined the same as in the throughput plugin</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">plugin</td><td></td></tr>
    <tr><td class="paramname">begin_cb</td><td>the callback to be called upon the start of a transfer</td></tr>
    <tr><td class="paramname">per_stripe_cb</td><td>the callback to be called every time updated throughput info is available for a given stripe</td></tr>
    <tr><td class="paramname">total_cb</td><td>the callback to be called every time updated throughput info is available for any stripe</td></tr>
    <tr><td class="paramname">complete_cb</td><td>the callback to be called to indicate transfer completion</td></tr>
    <tr><td class="paramname">user_specific</td><td>a pointer to some user specific data that will be provided to all callbacks</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd><ul>
<li>Error on NULL or invalid plugin</li>
<li>GLOBUS_SUCCESS</li>
</ul>
</dd></dl>
<dl class="section see"><dt>See also:</dt><dd><a class="el" href="group__globus__ftp__client__throughput__plugin.html" title="The FTP Throughput Performance plugin allows the user to obtain calculated performance information fo...">Throughput Performance Plugin</a> </dd></dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<hr>
<p align="center">
<a href="http://www.globus.org/toolkit/about.html" target="_top">about globus</a> |
<a href="http://www.globus.org/toolkit/" target="_top">globus toolkit</a> |
<a href="https://dev.globus.org/wiki/Welcome/" target="_top">dev.globus</a>
<br>
<br>
Comments? <a href="mailto:webmaster@globus.org">webmaster@globus.org</a>
</body>
</html>