Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > media > main-release > by-pkgid > d4a6745d7fbd92dfb64dce5e91e08f80 > files > 174

lib64meanwhile1-doc-1.0.2-1mdv2008.1.x86_64.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>meanwhile: mwService Struct 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.4 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li class="current"><a href="classes.html"><span>Data&nbsp;Structures</span></a></li>
    <li><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul>
</div>
<div class="tabs">
  <ul>
    <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
    <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
    <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
  </ul>
</div>
<h1>mwService Struct Reference</h1><!-- doxytag: class="mwService" --><code>#include &lt;<a class="el" href="mw__service_8h-source.html">mw_service.h</a>&gt;</code>
<p>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A service is the recipient of sendOnCnl messages sent over channels marked with the corresponding service id. 
<p>
Services provide functionality such as IM relaying, Awareness tracking and notification, and Conference handling. It is a service's responsibility to accept or destroy channels, and to process data sent over those channels <table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Data Fields</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">guint32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmwService.html#d2d3325c80ad007b9cf0e7ac8c7ec63f">type</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">the unique identifier by which this service is registered.  <a href="#d2d3325c80ad007b9cf0e7ac8c7ec63f"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Related Functions</h2></td></tr>
<tr><td colspan="2">(Note that these are not member functions.) <br><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="mw__service_8h.html#a61b5086d147a38f2dfd6c136916f232">mwService_funcClear</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmwService.html#9b86cc0545150a4fde3ab3060e803e58">clear</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The service's cleanup handler.  <a href="#9b86cc0545150a4fde3ab3060e803e58"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">GDestroyNotify&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmwService.html#d8baae0714a14f4a89f224296e83c332">client_cleanup</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Optional client data cleanup function.  <a href="#d8baae0714a14f4a89f224296e83c332"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">gpointer&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmwService.html#0029f74d1a50227dc5d89f1f1caa35e7">client_data</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Optional client data, not for use by service implementations.  <a href="#0029f74d1a50227dc5d89f1f1caa35e7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="mw__service_8h.html#cdf3ce1a852e3cc3cf1379e083ff8ffd">mwService_funcGetDesc</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmwService.html#2bcd80250a76d4deb90761c5253c5b98">get_desc</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><dl class="return" compact><dt><b>Returns:</b></dt><dd>string short description of the service </dd></dl>
 <a href="#2bcd80250a76d4deb90761c5253c5b98"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="mw__service_8h.html#f4becc5dcb225e192b6c92d8a72a432c">mwService_funcGetName</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmwService.html#5e0242406b28deb224c76bf1ff9084bc">get_name</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><dl class="return" compact><dt><b>Returns:</b></dt><dd>string short name of the service </dd></dl>
 <a href="#5e0242406b28deb224c76bf1ff9084bc"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="mw__service_8h.html#71e4e8071893d3588d3c8f5f3be660b4">mwService_funcRecv</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmwService.html#aac0e0bd9612b24dcf64de5cb72fe304">recv</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The service's input handler.  <a href="#aac0e0bd9612b24dcf64de5cb72fe304"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="mw__service_8h.html#7bf9bcb70ba1944f027140328edcb145">mwService_funcRecvAccept</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmwService.html#9dfbe087438b6061cc7e7f72e0e5e86f">recv_accept</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The service's channel accept handler.  <a href="#9dfbe087438b6061cc7e7f72e0e5e86f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="mw__service_8h.html#39b4834a00b1e19d98432fbfe9653ab8">mwService_funcRecvCreate</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmwService.html#b203804ec5846ff3f14646d43c85f058">recv_create</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The service's channel create handler.  <a href="#b203804ec5846ff3f14646d43c85f058"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="mw__service_8h.html#4741b85ca24938110fb9d13d6682c497">mwService_funcRecvDestroy</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmwService.html#60154d557db64b36a988befdca631fa4">recv_destroy</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The service's channel destroy handler.  <a href="#60154d557db64b36a988befdca631fa4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct <a class="el" href="structmwSession.html">mwSession</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmwService.html#0c2badd2256155b2bee149fa4b57b7d6">session</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">session this service is attached to.  <a href="#0c2badd2256155b2bee149fa4b57b7d6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="mw__service_8h.html#345848a5ac34f9fbe69a5dfea7fbc4b9">mwService_funcStart</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmwService.html#bc050a99570b3255eb3822dbe8d70a9b">start</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The service's start handler.  <a href="#bc050a99570b3255eb3822dbe8d70a9b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum <a class="el" href="mw__service_8h.html#7ce6ac62b951a443c05f541c8ace90a9">mwServiceState</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmwService.html#b5adc0f5a0cbeddaece7a4512ec66099">state</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">the state of this service.  <a href="#b5adc0f5a0cbeddaece7a4512ec66099"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="mw__service_8h.html#1179c7de60ece58e88a69e204d0de59e">mwService_funcStop</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmwService.html#4d237f5966d8c4b7ef92c8e0bbd82a20">stop</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The service's stop handler.  <a href="#4d237f5966d8c4b7ef92c8e0bbd82a20"></a><br></td></tr>
</table>
<hr><h2>Friends And Related Function Documentation</h2>
<a class="anchor" name="9b86cc0545150a4fde3ab3060e803e58"></a><!-- doxytag: member="mwService::clear" ref="9b86cc0545150a4fde3ab3060e803e58" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="mw__service_8h.html#a61b5086d147a38f2dfd6c136916f232">mwService_funcClear</a> <a class="el" href="structmwService.html#9b86cc0545150a4fde3ab3060e803e58">clear</a><code> [related]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The service's cleanup handler. 
<p>
Service implementations should presume that <a class="el" href="structmwService.html#4d237f5966d8c4b7ef92c8e0bbd82a20" title="The service&#39;s stop handler.">mwService::stop</a> will be called first. The clear handler is not for shutting down channels or generating non-cleanup side-effects, it is only for handling tear-down of the service, and will only be called once for any instance. 
</div>
</div><p>
<a class="anchor" name="d8baae0714a14f4a89f224296e83c332"></a><!-- doxytag: member="mwService::client_cleanup" ref="d8baae0714a14f4a89f224296e83c332" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GDestroyNotify <a class="el" href="structmwService.html#d8baae0714a14f4a89f224296e83c332">client_cleanup</a><code> [related]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Optional client data cleanup function. 
<p>
Called with client_data from mwService_free 
</div>
</div><p>
<a class="anchor" name="0029f74d1a50227dc5d89f1f1caa35e7"></a><!-- doxytag: member="mwService::client_data" ref="0029f74d1a50227dc5d89f1f1caa35e7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gpointer <a class="el" href="structmwService.html#0029f74d1a50227dc5d89f1f1caa35e7">client_data</a><code> [related]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Optional client data, not for use by service implementations. 
<p>

</div>
</div><p>
<a class="anchor" name="2bcd80250a76d4deb90761c5253c5b98"></a><!-- doxytag: member="mwService::get_desc" ref="2bcd80250a76d4deb90761c5253c5b98" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="mw__service_8h.html#cdf3ce1a852e3cc3cf1379e083ff8ffd">mwService_funcGetDesc</a> <a class="el" href="structmwService.html#2bcd80250a76d4deb90761c5253c5b98">get_desc</a><code> [related]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>string short description of the service </dd></dl>

<p>

</div>
</div><p>
<a class="anchor" name="5e0242406b28deb224c76bf1ff9084bc"></a><!-- doxytag: member="mwService::get_name" ref="5e0242406b28deb224c76bf1ff9084bc" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="mw__service_8h.html#f4becc5dcb225e192b6c92d8a72a432c">mwService_funcGetName</a> <a class="el" href="structmwService.html#5e0242406b28deb224c76bf1ff9084bc">get_name</a><code> [related]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>string short name of the service </dd></dl>

<p>

</div>
</div><p>
<a class="anchor" name="aac0e0bd9612b24dcf64de5cb72fe304"></a><!-- doxytag: member="mwService::recv" ref="aac0e0bd9612b24dcf64de5cb72fe304" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="mw__service_8h.html#71e4e8071893d3588d3c8f5f3be660b4">mwService_funcRecv</a> <a class="el" href="structmwService.html#aac0e0bd9612b24dcf64de5cb72fe304">recv</a><code> [related]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The service's input handler. 
<p>
Called when the session receives data on a channel belonging to this service 
</div>
</div><p>
<a class="anchor" name="9dfbe087438b6061cc7e7f72e0e5e86f"></a><!-- doxytag: member="mwService::recv_accept" ref="9dfbe087438b6061cc7e7f72e0e5e86f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="mw__service_8h.html#7bf9bcb70ba1944f027140328edcb145">mwService_funcRecvAccept</a> <a class="el" href="structmwService.html#9dfbe087438b6061cc7e7f72e0e5e86f">recv_accept</a><code> [related]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The service's channel accept handler. 
<p>
Called when the session receives a channel accept message for a channel with a service matching this service's type. 
</div>
</div><p>
<a class="anchor" name="b203804ec5846ff3f14646d43c85f058"></a><!-- doxytag: member="mwService::recv_create" ref="b203804ec5846ff3f14646d43c85f058" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="mw__service_8h.html#39b4834a00b1e19d98432fbfe9653ab8">mwService_funcRecvCreate</a> <a class="el" href="structmwService.html#b203804ec5846ff3f14646d43c85f058">recv_create</a><code> [related]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The service's channel create handler. 
<p>
Called when the session receives a channel create message with a service matching this service's type. 
</div>
</div><p>
<a class="anchor" name="60154d557db64b36a988befdca631fa4"></a><!-- doxytag: member="mwService::recv_destroy" ref="60154d557db64b36a988befdca631fa4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="mw__service_8h.html#4741b85ca24938110fb9d13d6682c497">mwService_funcRecvDestroy</a> <a class="el" href="structmwService.html#60154d557db64b36a988befdca631fa4">recv_destroy</a><code> [related]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The service's channel destroy handler. 
<p>
Called when the session receives a channel destroy message for a channel with a service matching this service's type. 
</div>
</div><p>
<a class="anchor" name="0c2badd2256155b2bee149fa4b57b7d6"></a><!-- doxytag: member="mwService::session" ref="0c2badd2256155b2bee149fa4b57b7d6" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct <a class="el" href="structmwSession.html">mwSession</a>* <a class="el" href="structmwService.html#0c2badd2256155b2bee149fa4b57b7d6">session</a><code> [related]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
session this service is attached to. 
<p>

</div>
</div><p>
<a class="anchor" name="bc050a99570b3255eb3822dbe8d70a9b"></a><!-- doxytag: member="mwService::start" ref="bc050a99570b3255eb3822dbe8d70a9b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="mw__service_8h.html#345848a5ac34f9fbe69a5dfea7fbc4b9">mwService_funcStart</a> <a class="el" href="structmwService.html#bc050a99570b3255eb3822dbe8d70a9b">start</a><code> [related]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The service's start handler. 
<p>
Called upon the receipt of a service available message. 
</div>
</div><p>
<a class="anchor" name="b5adc0f5a0cbeddaece7a4512ec66099"></a><!-- doxytag: member="mwService::state" ref="b5adc0f5a0cbeddaece7a4512ec66099" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="mw__service_8h.html#7ce6ac62b951a443c05f541c8ace90a9">mwServiceState</a> <a class="el" href="structmwService.html#b5adc0f5a0cbeddaece7a4512ec66099">state</a><code> [related]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
the state of this service. 
<p>
Determines whether or not the session should call the start function upon receipt of a service available message. Should not be set or checked by hand. 
</div>
</div><p>
<a class="anchor" name="4d237f5966d8c4b7ef92c8e0bbd82a20"></a><!-- doxytag: member="mwService::stop" ref="4d237f5966d8c4b7ef92c8e0bbd82a20" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="mw__service_8h.html#1179c7de60ece58e88a69e204d0de59e">mwService_funcStop</a> <a class="el" href="structmwService.html#4d237f5966d8c4b7ef92c8e0bbd82a20">stop</a><code> [related]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The service's stop handler. 
<p>
Called when the session is shutting down, or when the service is free'd. 
</div>
</div><p>
<hr><h2>Field Documentation</h2>
<a class="anchor" name="d2d3325c80ad007b9cf0e7ac8c7ec63f"></a><!-- doxytag: member="mwService::type" ref="d2d3325c80ad007b9cf0e7ac8c7ec63f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">guint32 <a class="el" href="structmwService.html#d2d3325c80ad007b9cf0e7ac8c7ec63f">mwService::type</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
the unique identifier by which this service is registered. 
<p>
The type value also relates to those channels which will be directed to this service 
</div>
</div><p>
<hr>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="mw__service_8h-source.html">mw_service.h</a></ul>
<hr size="1"><address style="text-align: right;"><small>Generated on Wed Dec 19 09:10:34 2007 for meanwhile by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.4 </small></address>
</body>
</html>