<!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: mwSessionHandler 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 Page</span></a></li> <li class="current"><a href="classes.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="functions.html"><span>Data Fields</span></a></li> </ul> </div> <h1>mwSessionHandler Struct Reference</h1><!-- doxytag: class="mwSessionHandler" --><code>#include <<a class="el" href="mw__session_8h-source.html">mw_session.h</a>></code> <p> <hr><a name="_details"></a><h2>Detailed Description</h2> session handler. <p> Structure which interfaces a session with client code to provide I/O and event handling <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">void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmwSessionHandler.html#7732ee46c3a75c078366f04b9e942884">clear</a> )(struct <a class="el" href="structmwSession.html">mwSession</a> *)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">triggered by mwSession_free. <a href="#7732ee46c3a75c078366f04b9e942884"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmwSessionHandler.html#9f1194a806f6fe0d72ff8548937069e8">io_close</a> )(struct <a class="el" href="structmwSession.html">mwSession</a> *)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">close the server connection. <a href="#9f1194a806f6fe0d72ff8548937069e8"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmwSessionHandler.html#1486698a54d398ebc8b249845e4d963d">io_write</a> )(struct <a class="el" href="structmwSession.html">mwSession</a> *, const guchar *buf, gsize len)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">write data to the server connection. <a href="#1486698a54d398ebc8b249845e4d963d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmwSessionHandler.html#b2f7b56b4c70bf854a60c996e858b585">on_admin</a> )(struct <a class="el" href="structmwSession.html">mwSession</a> *, const char *text)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">called when an admin messages has been received <a href="#b2f7b56b4c70bf854a60c996e858b585"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmwSessionHandler.html#e8024cba10f63fd882c96b161d5692ac">on_announce</a> )(struct <a class="el" href="structmwSession.html">mwSession</a> *, struct <a class="el" href="structmwLoginInfo.html">mwLoginInfo</a> *from, gboolean may_reply, const char *text)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">called when an announcement arrives <a href="#e8024cba10f63fd882c96b161d5692ac"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmwSessionHandler.html#407f9f2eba98558659dc194af6863eb0">on_setPrivacyInfo</a> )(struct <a class="el" href="structmwSession.html">mwSession</a> *)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">called when privacy information has been sent or received <a href="#407f9f2eba98558659dc194af6863eb0"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmwSessionHandler.html#49a9eee40b0b0b006621d81a1171822b">on_setUserStatus</a> )(struct <a class="el" href="structmwSession.html">mwSession</a> *)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">called when user status has changed <a href="#49a9eee40b0b0b006621d81a1171822b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmwSessionHandler.html#855d0d5eaee87178480f84636cce3abb">on_stateChange</a> )(struct <a class="el" href="structmwSession.html">mwSession</a> *s, enum <a class="el" href="mw__session_8h.html#f27bba1d2fcb53358371c0eca6c57a8f">mwSessionState</a> state, gpointer info)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Called when the session has changed status. <a href="#855d0d5eaee87178480f84636cce3abb"></a><br></td></tr> </table> <hr><h2>Field Documentation</h2> <a class="anchor" name="7732ee46c3a75c078366f04b9e942884"></a><!-- doxytag: member="mwSessionHandler::clear" ref="7732ee46c3a75c078366f04b9e942884" args=")(struct mwSession *)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void(* <a class="el" href="structmwSessionHandler.html#7732ee46c3a75c078366f04b9e942884">mwSessionHandler::clear</a>)(struct <a class="el" href="structmwSession.html">mwSession</a> *) </td> </tr> </table> </div> <div class="memdoc"> <p> triggered by mwSession_free. <p> Optional. Put cleanup code here </div> </div><p> <a class="anchor" name="9f1194a806f6fe0d72ff8548937069e8"></a><!-- doxytag: member="mwSessionHandler::io_close" ref="9f1194a806f6fe0d72ff8548937069e8" args=")(struct mwSession *)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void(* <a class="el" href="structmwSessionHandler.html#9f1194a806f6fe0d72ff8548937069e8">mwSessionHandler::io_close</a>)(struct <a class="el" href="structmwSession.html">mwSession</a> *) </td> </tr> </table> </div> <div class="memdoc"> <p> close the server connection. <p> Required </div> </div><p> <a class="anchor" name="1486698a54d398ebc8b249845e4d963d"></a><!-- doxytag: member="mwSessionHandler::io_write" ref="1486698a54d398ebc8b249845e4d963d" args=")(struct mwSession *, const guchar *buf, gsize len)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* <a class="el" href="structmwSessionHandler.html#1486698a54d398ebc8b249845e4d963d">mwSessionHandler::io_write</a>)(struct <a class="el" href="structmwSession.html">mwSession</a> *, const guchar *buf, gsize len) </td> </tr> </table> </div> <div class="memdoc"> <p> write data to the server connection. <p> Required. Should return zero for success, non-zero for error </div> </div><p> <a class="anchor" name="b2f7b56b4c70bf854a60c996e858b585"></a><!-- doxytag: member="mwSessionHandler::on_admin" ref="b2f7b56b4c70bf854a60c996e858b585" args=")(struct mwSession *, const char *text)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void(* <a class="el" href="structmwSessionHandler.html#b2f7b56b4c70bf854a60c996e858b585">mwSessionHandler::on_admin</a>)(struct <a class="el" href="structmwSession.html">mwSession</a> *, const char *text) </td> </tr> </table> </div> <div class="memdoc"> <p> called when an admin messages has been received <p> </div> </div><p> <a class="anchor" name="e8024cba10f63fd882c96b161d5692ac"></a><!-- doxytag: member="mwSessionHandler::on_announce" ref="e8024cba10f63fd882c96b161d5692ac" args=")(struct mwSession *, struct mwLoginInfo *from, gboolean may_reply, const char *text)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void(* <a class="el" href="structmwSessionHandler.html#e8024cba10f63fd882c96b161d5692ac">mwSessionHandler::on_announce</a>)(struct <a class="el" href="structmwSession.html">mwSession</a> *, struct <a class="el" href="structmwLoginInfo.html">mwLoginInfo</a> *from, gboolean may_reply, const char *text) </td> </tr> </table> </div> <div class="memdoc"> <p> called when an announcement arrives <p> </div> </div><p> <a class="anchor" name="407f9f2eba98558659dc194af6863eb0"></a><!-- doxytag: member="mwSessionHandler::on_setPrivacyInfo" ref="407f9f2eba98558659dc194af6863eb0" args=")(struct mwSession *)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void(* <a class="el" href="structmwSessionHandler.html#407f9f2eba98558659dc194af6863eb0">mwSessionHandler::on_setPrivacyInfo</a>)(struct <a class="el" href="structmwSession.html">mwSession</a> *) </td> </tr> </table> </div> <div class="memdoc"> <p> called when privacy information has been sent or received <p> <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="mw__session_8h.html#f40d8491fa06d6386414f8bd54d33e04" title="direct reference to the session's internal privacy structure">mwSession_getPrivacyInfo</a> </dd></dl> </div> </div><p> <a class="anchor" name="49a9eee40b0b0b006621d81a1171822b"></a><!-- doxytag: member="mwSessionHandler::on_setUserStatus" ref="49a9eee40b0b0b006621d81a1171822b" args=")(struct mwSession *)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void(* <a class="el" href="structmwSessionHandler.html#49a9eee40b0b0b006621d81a1171822b">mwSessionHandler::on_setUserStatus</a>)(struct <a class="el" href="structmwSession.html">mwSession</a> *) </td> </tr> </table> </div> <div class="memdoc"> <p> called when user status has changed <p> <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="mw__session_8h.html#394f76a8608dedd50c4984364649c150">mwSession_getUserStatus</a> </dd></dl> </div> </div><p> <a class="anchor" name="855d0d5eaee87178480f84636cce3abb"></a><!-- doxytag: member="mwSessionHandler::on_stateChange" ref="855d0d5eaee87178480f84636cce3abb" args=")(struct mwSession *s, enum mwSessionState state, gpointer info)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void(* <a class="el" href="structmwSessionHandler.html#855d0d5eaee87178480f84636cce3abb">mwSessionHandler::on_stateChange</a>)(struct <a class="el" href="structmwSession.html">mwSession</a> *s, enum <a class="el" href="mw__session_8h.html#f27bba1d2fcb53358371c0eca6c57a8f">mwSessionState</a> state, gpointer info) </td> </tr> </table> </div> <div class="memdoc"> <p> Called when the session has changed status. <p> <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="mw__session_8h.html#4ccd4606756bf065c52ed31d59fb4482" title="additional status-specific information.">mwSession_getStateInfo</a> for uses of info field</dd></dl> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>s</em> </td><td>the session </td></tr> <tr><td valign="top"></td><td valign="top"><em>state</em> </td><td>the session's state </td></tr> <tr><td valign="top"></td><td valign="top"><em>info</em> </td><td>additional state information </td></tr> </table> </dl> </div> </div><p> <hr>The documentation for this struct was generated from the following file:<ul> <li><a class="el" href="mw__session_8h-source.html">mw_session.h</a></ul> <hr size="1"><address style="text-align: right;"><small>Generated on Wed Dec 19 09:10:34 2007 for meanwhile by <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>