<!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: mw_srvc_aware.h File 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><a href="classes.html"><span>Data Structures</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> </ul> </div> <h1>mw_srvc_aware.h File Reference</h1><hr><a name="_details"></a><h2>Detailed Description</h2> The aware service. <p> ..<p> <dl compact><dt><b><a class="el" href="todo.html#_todo000005">Todo:</a></b></dt><dd>remove the whole idea of an instantiated <a class="el" href="structmwAwareList.html" title="Instance of an Aware List.">mwAwareList</a> and instead use arbitrary pointers (including NULL) as keys to internally stored lists. This removes the problem of the service free'ing its lists and invalidating <a class="el" href="structmwAwareList.html" title="Instance of an Aware List.">mwAwareList</a> references from client code. </dd></dl> <p> <code>#include "<a class="el" href="mw__common_8h-source.html">mw_common.h</a>"</code><br> <p> <a href="mw__srvc__aware_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Data Structures</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structmwAwareHandler.html">mwAwareHandler</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structmwAwareListHandler.html">mwAwareListHandler</a></td></tr> <tr><td colspan="2"><br><h2>Defines</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#9673ef57609cdfc52d0f53d77018a5cb">mwService_AWARE</a> 0x00000011</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Type identifier for the aware service. <a href="#9673ef57609cdfc52d0f53d77018a5cb"></a><br></td></tr> <tr><td colspan="2"><br><h2>Typedefs</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#a7277370bc330a93280748cffabb611c">mwAwareAttributeHandler</a> )(struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> *srvc, struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> *attrib)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#c399c4fd166c3be73879d0a989322ea0">mwAwareIdAttributeHandler</a> )(struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list, struct <a class="el" href="structmwAwareIdBlock.html">mwAwareIdBlock</a> *id, struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> *attrib)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Appropriate function type for the on-option signal. <a href="#c399c4fd166c3be73879d0a989322ea0"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#b612bd2e0ae1619269280b6850b382d9">mwAwareSnapshotHandler</a> )(struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list, struct <a class="el" href="structmwAwareSnapshot.html">mwAwareSnapshot</a> *id)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Appropriate function type for the on-aware signal. <a href="#b612bd2e0ae1619269280b6850b382d9"></a><br></td></tr> <tr><td colspan="2"><br><h2>Enumerations</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#d8092d618186e59148fc837325f1d1c8">mwAwareAttributeKeys</a> { <br> <a class="el" href="mw__srvc__aware_8h.html#d8092d618186e59148fc837325f1d1c835df5690450f7a15d5f9c67c6e678a4b">mwAttribute_AV_PREFS_SET</a> = 0x01, <br> <a class="el" href="mw__srvc__aware_8h.html#d8092d618186e59148fc837325f1d1c8db1d5c2cca3454bc04356fa76366099e">mwAttribute_MICROPHONE</a> = 0x02, <br> <a class="el" href="mw__srvc__aware_8h.html#d8092d618186e59148fc837325f1d1c83ea3994c8654686923257569bf1f2c4b">mwAttribute_SPEAKERS</a> = 0x03, <br> <a class="el" href="mw__srvc__aware_8h.html#d8092d618186e59148fc837325f1d1c85a65cfdc1159fc3334a0153a71bc36ea">mwAttribute_VIDEO_CAMERA</a> = 0x04, <br> <a class="el" href="mw__srvc__aware_8h.html#d8092d618186e59148fc837325f1d1c8176fb6c3a5ec356d38ed837da0033741">mwAttribute_FILE_TRANSFER</a> = 0x06 <br> }</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Predefined keys appropriate for a <a class="el" href="structmwAwareAttribute.html" title="Key/Opaque pair indicating an identity's attribute.">mwAwareAttribute</a>. <a href="mw__srvc__aware_8h.html#d8092d618186e59148fc837325f1d1c8">More...</a><br></td></tr> <tr><td colspan="2"><br><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">gboolean </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#f0c4c5116240026e2cbdd1a9e39b083f">mwAwareAttribute_asBoolean</a> (const struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> *attrib)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">guint32 </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#178680ed401229ba8756f7643145ebb4">mwAwareAttribute_asInteger</a> (const struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> *attrib)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct <a class="el" href="structmwOpaque.html">mwOpaque</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#a97de2edb78a4bca8fb029bb93a27698">mwAwareAttribute_asOpaque</a> (const struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> *attrib)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Direct access to an attribute's underlying opaque. <a href="#a97de2edb78a4bca8fb029bb93a27698"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#05212b8e1eb916ffaade2dc98a9a0f2c">mwAwareAttribute_asString</a> (const struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> *attrib)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Copy of attribute string, must be g_free'd. <a href="#05212b8e1eb916ffaade2dc98a9a0f2c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">guint32 </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#6844d407e56c5000eba88839d69683f3">mwAwareAttribute_getKey</a> (const struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> *attrib)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#6b4e9cf5303953420f2036590a5fceaa">mwAwareList_addAware</a> (struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list, GList *id_list)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add a collection of user IDs to an aware list. <a href="#6b4e9cf5303953420f2036590a5fceaa"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#4f2246c23927b6e383ca43db0c695482">mwAwareList_free</a> (struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Clean and free an aware list. <a href="#4f2246c23927b6e383ca43db0c695482"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">gpointer </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#d418dda7970b946a359e30c198bc51c8">mwAwareList_getClientData</a> (struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct <a class="el" href="structmwAwareListHandler.html">mwAwareListHandler</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#90cd1deb7eb33a76b50d78e87ee34179">mwAwareList_getHandler</a> (struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">guint32 * </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#5f9ee152e1b0b6f9e1234e411aece237">mwAwareList_getWatchedAttributes</a> (struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#ec598a3fea70191db7eda085d9029458">mwAwareList_new</a> (struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> *srvc, struct <a class="el" href="structmwAwareListHandler.html">mwAwareListHandler</a> *handler)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Allocate and initialize an aware list. <a href="#ec598a3fea70191db7eda085d9029458"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#f120a3a385b9c1ddd7cb21c6a9192d12">mwAwareList_removeAllAware</a> (struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#1fae01874bb8231532d3afad8a400d39">mwAwareList_removeAware</a> (struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list, GList *id_list)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Remove a collection of user IDs from an aware list. <a href="#1fae01874bb8231532d3afad8a400d39"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#b93ebcd6a559f2958d9f121cf44ea9de">mwAwareList_removeClientData</a> (struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#2193b27bace4f8d2144d14c50e2ca051">mwAwareList_setClientData</a> (struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list, gpointer data, GDestroyNotify cleanup)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#2925fa791450aed0d944cae7ecd794b7">mwAwareList_unwatchAllAttributes</a> (struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">remove all watched attributes <a href="#2925fa791450aed0d944cae7ecd794b7"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#0edcfa5b39f1b07e89f286825060de6d">mwAwareList_unwatchAttributeArray</a> (struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list, guint32 *keys)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">stop watching a NULL terminated array of keys <a href="#0edcfa5b39f1b07e89f286825060de6d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#770ee5f5cab511be3afc1c15d859877f">mwAwareList_unwatchAttributes</a> (struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list, guint32 key,...)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">stop watching a NULL terminated list of keys <a href="#770ee5f5cab511be3afc1c15d859877f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#4c9fe3fd20cb23f378852e5557193f5b">mwAwareList_watchAttributeArray</a> (struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list, guint32 *keys)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">watch an NULL terminated array of keys <a href="#4c9fe3fd20cb23f378852e5557193f5b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#131ac4aa6a0bc27f41c38336f2f1e32c">mwAwareList_watchAttributes</a> (struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list, guint32 key,...)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">watch a NULL terminated list of keys <a href="#131ac4aa6a0bc27f41c38336f2f1e32c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#0e7822840f738d742cc89ac2eceaeafb">mwServiceAware_getAttribute</a> (struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> *srvc, struct <a class="el" href="structmwAwareIdBlock.html">mwAwareIdBlock</a> *user, guint32 key)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">look up the last known copy of an attribute for a user by the attribute's key <a href="#0e7822840f738d742cc89ac2eceaeafb"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#45b8200265bdbe10bc6eb4d2be1c863a">mwServiceAware_getText</a> (struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> *srvc, struct <a class="el" href="structmwAwareIdBlock.html">mwAwareIdBlock</a> *user)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">look up the status description for a user <a href="#45b8200265bdbe10bc6eb4d2be1c863a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#14b0405dc36ca3156d9bdd0526d20378">mwServiceAware_new</a> (struct <a class="el" href="structmwSession.html">mwSession</a> *<a class="el" href="structmwService.html#0c2badd2256155b2bee149fa4b57b7d6">session</a>, struct <a class="el" href="structmwAwareHandler.html">mwAwareHandler</a> *handler)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#afab0ffd455f248ea7ec5e09aa3b430b">mwServiceAware_setAttribute</a> (struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> *srvc, guint32 key, struct <a class="el" href="structmwOpaque.html">mwOpaque</a> *opaque)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set an attribute value for this session. <a href="#afab0ffd455f248ea7ec5e09aa3b430b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#56b5e71c7e14bbef1bc8483036a57de2">mwServiceAware_setAttributeBoolean</a> (struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> *srvc, guint32 key, gboolean val)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#723af5134b3937cc515988e65330e3ae">mwServiceAware_setAttributeInteger</a> (struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> *srvc, guint32 key, guint32 val)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#d56699f75da3373b46fad1555976ff47">mwServiceAware_setAttributeString</a> (struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> *srvc, guint32 key, const char *str)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#5a17b054331f6a0ff4fbe8e242f62738">mwServiceAware_setStatus</a> (struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> *srvc, struct <a class="el" href="structmwAwareIdBlock.html">mwAwareIdBlock</a> *user, struct <a class="el" href="structmwUserStatus.html">mwUserStatus</a> *stat)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">trigger a got_aware event constructed from the passed user and status information. <a href="#5a17b054331f6a0ff4fbe8e242f62738"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="mw__srvc__aware_8h.html#5474b312ec1d7018f2290510afd09a8e">mwServiceAware_unsetAttribute</a> (struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> *srvc, guint32 key)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Unset an attribute for this session. <a href="#5474b312ec1d7018f2290510afd09a8e"></a><br></td></tr> </table> <hr><h2>Define Documentation</h2> <a class="anchor" name="9673ef57609cdfc52d0f53d77018a5cb"></a><!-- doxytag: member="mw_srvc_aware.h::mwService_AWARE" ref="9673ef57609cdfc52d0f53d77018a5cb" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define mwService_AWARE 0x00000011 </td> </tr> </table> </div> <div class="memdoc"> <p> Type identifier for the aware service. <p> </div> </div><p> <hr><h2>Typedef Documentation</h2> <a class="anchor" name="a7277370bc330a93280748cffabb611c"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareAttributeHandler" ref="a7277370bc330a93280748cffabb611c" args=")(struct mwServiceAware *srvc, struct mwAwareAttribute *attrib)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef void(* <a class="el" href="mw__srvc__aware_8h.html#a7277370bc330a93280748cffabb611c">mwAwareAttributeHandler</a>)(struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> *srvc, struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> *attrib) </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="c399c4fd166c3be73879d0a989322ea0"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareIdAttributeHandler" ref="c399c4fd166c3be73879d0a989322ea0" args=")(struct mwAwareList *list, struct mwAwareIdBlock *id, struct mwAwareAttribute *attrib)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef void(* <a class="el" href="mw__srvc__aware_8h.html#c399c4fd166c3be73879d0a989322ea0">mwAwareIdAttributeHandler</a>)(struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list, struct <a class="el" href="structmwAwareIdBlock.html">mwAwareIdBlock</a> *id, struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> *attrib) </td> </tr> </table> </div> <div class="memdoc"> <p> Appropriate function type for the on-option signal. <p> The option's value may need to be explicitly loaded in some instances, resulting in this handler being triggered again.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>list</em> </td><td><a class="el" href="structmwAwareList.html" title="Instance of an Aware List.">mwAwareList</a> emiting the signal </td></tr> <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>awareness the attribute belongs to </td></tr> <tr><td valign="top"></td><td valign="top"><em>attrib</em> </td><td>attribute </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="b612bd2e0ae1619269280b6850b382d9"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareSnapshotHandler" ref="b612bd2e0ae1619269280b6850b382d9" args=")(struct mwAwareList *list, struct mwAwareSnapshot *id)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef void(* <a class="el" href="mw__srvc__aware_8h.html#b612bd2e0ae1619269280b6850b382d9">mwAwareSnapshotHandler</a>)(struct <a class="el" href="structmwAwareList.html">mwAwareList</a> *list, struct <a class="el" href="structmwAwareSnapshot.html">mwAwareSnapshot</a> *id) </td> </tr> </table> </div> <div class="memdoc"> <p> Appropriate function type for the on-aware signal. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>list</em> </td><td><a class="el" href="structmwAwareList.html" title="Instance of an Aware List.">mwAwareList</a> emiting the signal </td></tr> <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>awareness status information </td></tr> <tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>user-specified data </td></tr> </table> </dl> </div> </div><p> <hr><h2>Enumeration Type Documentation</h2> <a class="anchor" name="d8092d618186e59148fc837325f1d1c8"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareAttributeKeys" ref="d8092d618186e59148fc837325f1d1c8" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="mw__srvc__aware_8h.html#d8092d618186e59148fc837325f1d1c8">mwAwareAttributeKeys</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Predefined keys appropriate for a <a class="el" href="structmwAwareAttribute.html" title="Key/Opaque pair indicating an identity's attribute.">mwAwareAttribute</a>. <p> <dl compact><dt><b>Enumerator: </b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"><em><a class="anchor" name="d8092d618186e59148fc837325f1d1c835df5690450f7a15d5f9c67c6e678a4b"></a><!-- doxytag: member="mwAttribute_AV_PREFS_SET" ref="d8092d618186e59148fc837325f1d1c835df5690450f7a15d5f9c67c6e678a4b" args="" -->mwAttribute_AV_PREFS_SET</em> </td><td> A/V prefs specified, gboolean. </td></tr> <tr><td valign="top"><em><a class="anchor" name="d8092d618186e59148fc837325f1d1c8db1d5c2cca3454bc04356fa76366099e"></a><!-- doxytag: member="mwAttribute_MICROPHONE" ref="d8092d618186e59148fc837325f1d1c8db1d5c2cca3454bc04356fa76366099e" args="" -->mwAttribute_MICROPHONE</em> </td><td> has a microphone, gboolean </td></tr> <tr><td valign="top"><em><a class="anchor" name="d8092d618186e59148fc837325f1d1c83ea3994c8654686923257569bf1f2c4b"></a><!-- doxytag: member="mwAttribute_SPEAKERS" ref="d8092d618186e59148fc837325f1d1c83ea3994c8654686923257569bf1f2c4b" args="" -->mwAttribute_SPEAKERS</em> </td><td> has speakers, gboolean </td></tr> <tr><td valign="top"><em><a class="anchor" name="d8092d618186e59148fc837325f1d1c85a65cfdc1159fc3334a0153a71bc36ea"></a><!-- doxytag: member="mwAttribute_VIDEO_CAMERA" ref="d8092d618186e59148fc837325f1d1c85a65cfdc1159fc3334a0153a71bc36ea" args="" -->mwAttribute_VIDEO_CAMERA</em> </td><td> has a video camera, gboolean </td></tr> <tr><td valign="top"><em><a class="anchor" name="d8092d618186e59148fc837325f1d1c8176fb6c3a5ec356d38ed837da0033741"></a><!-- doxytag: member="mwAttribute_FILE_TRANSFER" ref="d8092d618186e59148fc837325f1d1c8176fb6c3a5ec356d38ed837da0033741" args="" -->mwAttribute_FILE_TRANSFER</em> </td><td> supports file transfers, gboolean </td></tr> </table> </dl> </div> </div><p> <hr><h2>Function Documentation</h2> <a class="anchor" name="f0c4c5116240026e2cbdd1a9e39b083f"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareAttribute_asBoolean" ref="f0c4c5116240026e2cbdd1a9e39b083f" args="(const struct mwAwareAttribute *attrib)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">gboolean mwAwareAttribute_asBoolean </td> <td>(</td> <td class="paramtype">const struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> * </td> <td class="paramname"> <em>attrib</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="178680ed401229ba8756f7643145ebb4"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareAttribute_asInteger" ref="178680ed401229ba8756f7643145ebb4" args="(const struct mwAwareAttribute *attrib)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">guint32 mwAwareAttribute_asInteger </td> <td>(</td> <td class="paramtype">const struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> * </td> <td class="paramname"> <em>attrib</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="a97de2edb78a4bca8fb029bb93a27698"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareAttribute_asOpaque" ref="a97de2edb78a4bca8fb029bb93a27698" args="(const struct mwAwareAttribute *attrib)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">struct <a class="el" href="structmwOpaque.html">mwOpaque</a>* mwAwareAttribute_asOpaque </td> <td>(</td> <td class="paramtype">const struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> * </td> <td class="paramname"> <em>attrib</em> </td> <td> ) </td> <td width="100%"><code> [read]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Direct access to an attribute's underlying opaque. <p> </div> </div><p> <a class="anchor" name="05212b8e1eb916ffaade2dc98a9a0f2c"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareAttribute_asString" ref="05212b8e1eb916ffaade2dc98a9a0f2c" args="(const struct mwAwareAttribute *attrib)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">char* mwAwareAttribute_asString </td> <td>(</td> <td class="paramtype">const struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> * </td> <td class="paramname"> <em>attrib</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Copy of attribute string, must be g_free'd. <p> If the attribute's content cannot be loaded as a string, returns NULL </div> </div><p> <a class="anchor" name="6844d407e56c5000eba88839d69683f3"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareAttribute_getKey" ref="6844d407e56c5000eba88839d69683f3" args="(const struct mwAwareAttribute *attrib)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">guint32 mwAwareAttribute_getKey </td> <td>(</td> <td class="paramtype">const struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a> * </td> <td class="paramname"> <em>attrib</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="6b4e9cf5303953420f2036590a5fceaa"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_addAware" ref="6b4e9cf5303953420f2036590a5fceaa" args="(struct mwAwareList *list, GList *id_list)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mwAwareList_addAware </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td> <td class="paramname"> <em>list</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">GList * </td> <td class="paramname"> <em>id_list</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Add a collection of user IDs to an aware list. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>list</em> </td><td><a class="el" href="structmwAwareList.html" title="Instance of an Aware List.">mwAwareList</a> to add user ID to </td></tr> <tr><td valign="top"></td><td valign="top"><em>id_list</em> </td><td><a class="el" href="structmwAwareIdBlock.html">mwAwareIdBlock</a> list of user IDs to add </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, non-zero to indicate an error. </dd></dl> </div> </div><p> <a class="anchor" name="4f2246c23927b6e383ca43db0c695482"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_free" ref="4f2246c23927b6e383ca43db0c695482" args="(struct mwAwareList *list)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void mwAwareList_free </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td> <td class="paramname"> <em>list</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Clean and free an aware list. <p> </div> </div><p> <a class="anchor" name="d418dda7970b946a359e30c198bc51c8"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_getClientData" ref="d418dda7970b946a359e30c198bc51c8" args="(struct mwAwareList *list)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">gpointer mwAwareList_getClientData </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td> <td class="paramname"> <em>list</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="90cd1deb7eb33a76b50d78e87ee34179"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_getHandler" ref="90cd1deb7eb33a76b50d78e87ee34179" args="(struct mwAwareList *list)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">struct <a class="el" href="structmwAwareListHandler.html">mwAwareListHandler</a>* mwAwareList_getHandler </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td> <td class="paramname"> <em>list</em> </td> <td> ) </td> <td width="100%"><code> [read]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="5f9ee152e1b0b6f9e1234e411aece237"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_getWatchedAttributes" ref="5f9ee152e1b0b6f9e1234e411aece237" args="(struct mwAwareList *list)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">guint32* mwAwareList_getWatchedAttributes </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td> <td class="paramname"> <em>list</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="ec598a3fea70191db7eda085d9029458"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_new" ref="ec598a3fea70191db7eda085d9029458" args="(struct mwServiceAware *srvc, struct mwAwareListHandler *handler)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">struct <a class="el" href="structmwAwareList.html">mwAwareList</a>* mwAwareList_new </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> * </td> <td class="paramname"> <em>srvc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structmwAwareListHandler.html">mwAwareListHandler</a> * </td> <td class="paramname"> <em>handler</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [read]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Allocate and initialize an aware list. <p> </div> </div><p> <a class="anchor" name="f120a3a385b9c1ddd7cb21c6a9192d12"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_removeAllAware" ref="f120a3a385b9c1ddd7cb21c6a9192d12" args="(struct mwAwareList *list)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mwAwareList_removeAllAware </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td> <td class="paramname"> <em>list</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="1fae01874bb8231532d3afad8a400d39"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_removeAware" ref="1fae01874bb8231532d3afad8a400d39" args="(struct mwAwareList *list, GList *id_list)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mwAwareList_removeAware </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td> <td class="paramname"> <em>list</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">GList * </td> <td class="paramname"> <em>id_list</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Remove a collection of user IDs from an aware list. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>list</em> </td><td><a class="el" href="structmwAwareList.html" title="Instance of an Aware List.">mwAwareList</a> to remove user ID from </td></tr> <tr><td valign="top"></td><td valign="top"><em>id_list</em> </td><td><a class="el" href="structmwAwareIdBlock.html">mwAwareIdBlock</a> list of user IDs to remove </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, non-zero to indicate an error. </dd></dl> </div> </div><p> <a class="anchor" name="b93ebcd6a559f2958d9f121cf44ea9de"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_removeClientData" ref="b93ebcd6a559f2958d9f121cf44ea9de" args="(struct mwAwareList *list)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void mwAwareList_removeClientData </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td> <td class="paramname"> <em>list</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="2193b27bace4f8d2144d14c50e2ca051"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_setClientData" ref="2193b27bace4f8d2144d14c50e2ca051" args="(struct mwAwareList *list, gpointer data, GDestroyNotify cleanup)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void mwAwareList_setClientData </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td> <td class="paramname"> <em>list</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">gpointer </td> <td class="paramname"> <em>data</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">GDestroyNotify </td> <td class="paramname"> <em>cleanup</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="2925fa791450aed0d944cae7ecd794b7"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_unwatchAllAttributes" ref="2925fa791450aed0d944cae7ecd794b7" args="(struct mwAwareList *list)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mwAwareList_unwatchAllAttributes </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td> <td class="paramname"> <em>list</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> remove all watched attributes <p> </div> </div><p> <a class="anchor" name="0edcfa5b39f1b07e89f286825060de6d"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_unwatchAttributeArray" ref="0edcfa5b39f1b07e89f286825060de6d" args="(struct mwAwareList *list, guint32 *keys)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mwAwareList_unwatchAttributeArray </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td> <td class="paramname"> <em>list</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">guint32 * </td> <td class="paramname"> <em>keys</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> stop watching a NULL terminated array of keys <p> </div> </div><p> <a class="anchor" name="770ee5f5cab511be3afc1c15d859877f"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_unwatchAttributes" ref="770ee5f5cab511be3afc1c15d859877f" args="(struct mwAwareList *list, guint32 key,...)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mwAwareList_unwatchAttributes </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td> <td class="paramname"> <em>list</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">guint32 </td> <td class="paramname"> <em>key</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname"> <em>...</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> stop watching a NULL terminated list of keys <p> </div> </div><p> <a class="anchor" name="4c9fe3fd20cb23f378852e5557193f5b"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_watchAttributeArray" ref="4c9fe3fd20cb23f378852e5557193f5b" args="(struct mwAwareList *list, guint32 *keys)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mwAwareList_watchAttributeArray </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td> <td class="paramname"> <em>list</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">guint32 * </td> <td class="paramname"> <em>keys</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> watch an NULL terminated array of keys <p> </div> </div><p> <a class="anchor" name="131ac4aa6a0bc27f41c38336f2f1e32c"></a><!-- doxytag: member="mw_srvc_aware.h::mwAwareList_watchAttributes" ref="131ac4aa6a0bc27f41c38336f2f1e32c" args="(struct mwAwareList *list, guint32 key,...)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mwAwareList_watchAttributes </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwAwareList.html">mwAwareList</a> * </td> <td class="paramname"> <em>list</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">guint32 </td> <td class="paramname"> <em>key</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname"> <em>...</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> watch a NULL terminated list of keys <p> </div> </div><p> <a class="anchor" name="0e7822840f738d742cc89ac2eceaeafb"></a><!-- doxytag: member="mw_srvc_aware.h::mwServiceAware_getAttribute" ref="0e7822840f738d742cc89ac2eceaeafb" args="(struct mwServiceAware *srvc, struct mwAwareIdBlock *user, guint32 key)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">struct <a class="el" href="structmwAwareAttribute.html">mwAwareAttribute</a>* mwServiceAware_getAttribute </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> * </td> <td class="paramname"> <em>srvc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structmwAwareIdBlock.html">mwAwareIdBlock</a> * </td> <td class="paramname"> <em>user</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">guint32 </td> <td class="paramname"> <em>key</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [read]</code></td> </tr> </table> </div> <div class="memdoc"> <p> look up the last known copy of an attribute for a user by the attribute's key <p> </div> </div><p> <a class="anchor" name="45b8200265bdbe10bc6eb4d2be1c863a"></a><!-- doxytag: member="mw_srvc_aware.h::mwServiceAware_getText" ref="45b8200265bdbe10bc6eb4d2be1c863a" args="(struct mwServiceAware *srvc, struct mwAwareIdBlock *user)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char* mwServiceAware_getText </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> * </td> <td class="paramname"> <em>srvc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structmwAwareIdBlock.html">mwAwareIdBlock</a> * </td> <td class="paramname"> <em>user</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> look up the status description for a user <p> </div> </div><p> <a class="anchor" name="14b0405dc36ca3156d9bdd0526d20378"></a><!-- doxytag: member="mw_srvc_aware.h::mwServiceAware_new" ref="14b0405dc36ca3156d9bdd0526d20378" args="(struct mwSession *session, struct mwAwareHandler *handler)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a>* mwServiceAware_new </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwSession.html">mwSession</a> * </td> <td class="paramname"> <em>session</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structmwAwareHandler.html">mwAwareHandler</a> * </td> <td class="paramname"> <em>handler</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [read]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="afab0ffd455f248ea7ec5e09aa3b430b"></a><!-- doxytag: member="mw_srvc_aware.h::mwServiceAware_setAttribute" ref="afab0ffd455f248ea7ec5e09aa3b430b" args="(struct mwServiceAware *srvc, guint32 key, struct mwOpaque *opaque)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mwServiceAware_setAttribute </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> * </td> <td class="paramname"> <em>srvc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">guint32 </td> <td class="paramname"> <em>key</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structmwOpaque.html">mwOpaque</a> * </td> <td class="paramname"> <em>opaque</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Set an attribute value for this session. <p> </div> </div><p> <a class="anchor" name="56b5e71c7e14bbef1bc8483036a57de2"></a><!-- doxytag: member="mw_srvc_aware.h::mwServiceAware_setAttributeBoolean" ref="56b5e71c7e14bbef1bc8483036a57de2" args="(struct mwServiceAware *srvc, guint32 key, gboolean val)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mwServiceAware_setAttributeBoolean </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> * </td> <td class="paramname"> <em>srvc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">guint32 </td> <td class="paramname"> <em>key</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">gboolean </td> <td class="paramname"> <em>val</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="723af5134b3937cc515988e65330e3ae"></a><!-- doxytag: member="mw_srvc_aware.h::mwServiceAware_setAttributeInteger" ref="723af5134b3937cc515988e65330e3ae" args="(struct mwServiceAware *srvc, guint32 key, guint32 val)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mwServiceAware_setAttributeInteger </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> * </td> <td class="paramname"> <em>srvc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">guint32 </td> <td class="paramname"> <em>key</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">guint32 </td> <td class="paramname"> <em>val</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="d56699f75da3373b46fad1555976ff47"></a><!-- doxytag: member="mw_srvc_aware.h::mwServiceAware_setAttributeString" ref="d56699f75da3373b46fad1555976ff47" args="(struct mwServiceAware *srvc, guint32 key, const char *str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mwServiceAware_setAttributeString </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> * </td> <td class="paramname"> <em>srvc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">guint32 </td> <td class="paramname"> <em>key</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>str</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="5a17b054331f6a0ff4fbe8e242f62738"></a><!-- doxytag: member="mw_srvc_aware.h::mwServiceAware_setStatus" ref="5a17b054331f6a0ff4fbe8e242f62738" args="(struct mwServiceAware *srvc, struct mwAwareIdBlock *user, struct mwUserStatus *stat)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void mwServiceAware_setStatus </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> * </td> <td class="paramname"> <em>srvc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structmwAwareIdBlock.html">mwAwareIdBlock</a> * </td> <td class="paramname"> <em>user</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structmwUserStatus.html">mwUserStatus</a> * </td> <td class="paramname"> <em>stat</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> trigger a got_aware event constructed from the passed user and status information. <p> Useful for adding false users and having the getText function work for them </div> </div><p> <a class="anchor" name="5474b312ec1d7018f2290510afd09a8e"></a><!-- doxytag: member="mw_srvc_aware.h::mwServiceAware_unsetAttribute" ref="5474b312ec1d7018f2290510afd09a8e" args="(struct mwServiceAware *srvc, guint32 key)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mwServiceAware_unsetAttribute </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structmwServiceAware.html">mwServiceAware</a> * </td> <td class="paramname"> <em>srvc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">guint32 </td> <td class="paramname"> <em>key</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Unset an attribute for this session. <p> </div> </div><p> <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>