<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>Glib::StaticRWLock struct Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head> <body bgcolor="#ffffff"> <table border="0" width="100%"> <tr> <td width="10%" height="40"><img src="../../images/gtkmm_logo.gif" alt="logo" border="0" width="100%" height="100%"/></td> <td width="90%" height="40"><img src="../../images/top.gif" alt="top" width="100%" height="40"/></td> </tr> </table> <center> <a class="qindex" href="../../index.html">Main Page</a> <a href="group__Widgets.html">Widgets</a> <a class="qindex" href="namespaces.html"> Namespaces</a> <a href="../../tutorial/html/index.html"> Book</a> </center> <hr width="100%"/> <!-- Generated by Doxygen 1.3-rc1 --> <h1>Glib::StaticRWLock Struct Reference<br> <small> [<a class="el" href="group__Threads.html">Threads</a>]</small> </h1>Like <a class="el" href="classGlib_1_1RWLock.html">Glib::RWLock</a>, but can be defined at compile time. <a href="#_details">More...</a> <p> Inheritance diagram for Glib::StaticRWLock:<p><center><img src="structGlib_1_1StaticRWLock__inherit__graph.png" border="0" usemap="#Glib_1_1StaticRWLock__inherit__map" alt="Inheritance graph"></center> <map name="Glib_1_1StaticRWLock__inherit__map"> <area href="classGlib_1_1RWLock.html" shape="rect" coords="24,87,117,105" alt=""> </map> <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="structGlib_1_1StaticRWLock-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0> <tr><td></td></tr> <tr><td colspan=2><br><h2>Public Methods</h2></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="structGlib_1_1StaticRWLock.html#a0">reader_lock</a> ()</td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="structGlib_1_1StaticRWLock.html#a1">reader_trylock</a> ()</td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="structGlib_1_1StaticRWLock.html#a2">reader_unlock</a> ()</td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="structGlib_1_1StaticRWLock.html#a3">writer_lock</a> ()</td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="structGlib_1_1StaticRWLock.html#a4">writer_trylock</a> ()</td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="structGlib_1_1StaticRWLock.html#a5">writer_unlock</a> ()</td></tr> <tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="structGlib_1_1StaticRWLock.html#a6">operator RWLock&</a> ()</td></tr> <tr><td nowrap align=right valign=top>GStaticRWLock* </td><td valign=bottom><a class="el" href="structGlib_1_1StaticRWLock.html#a7">gobj</a> ()</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 nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="structGlib_1_1StaticRWLock.html#k0">GLIBMM_STATIC_RW_LOCK_INIT</a></td></tr> <tr><td> </td><td><font size=-1><em>Initializer macro for Glib::StaticRWLock.</em> <a href="#k0"></a><em></em></font><br><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Like <a class="el" href="classGlib_1_1RWLock.html">Glib::RWLock</a>, but can be defined at compile time. <p> Use <code>GLIBMM_STATIC_RW_LOCK_INIT</code> to initialize a StaticRWLock: <div class="fragment"><pre> <a class="code" href="structGlib_1_1StaticRWLock.html">Glib::StaticRWLock</a> rw_lock = <a class="code" href="structGlib_1_1StaticRWLock.html#k0">GLIBMM_STATIC_RW_LOCK_INIT</a>; </pre></div>A <a class="el" href="structGlib_1_1StaticRWLock.html">StaticRWLock</a> can be used without calling <a class="el" href="group__Threads.html#a0">Glib::thread_init()</a>, it will silently do nothing then. That will also work when using the implicit conversion to <a class="el" href="classGlib_1_1RWLock.html">RWLock</a>&, thus you can safely use <a class="el" href="classGlib_1_1RWLock_1_1ReaderLock.html">RWLock::ReaderLock</a> and <a class="el" href="classGlib_1_1RWLock_1_1WriterLock.html">RWLock::WriterLock</a> with a <a class="el" href="structGlib_1_1StaticRWLock.html">StaticRWLock</a>. <p> <hr><h2>Member Function Documentation</h2> <a name="a7" doxytag="Glib::StaticRWLock::gobj"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> GStaticRWLock* Glib::StaticRWLock::gobj </td> <td class="md" valign="top">(</td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap><code> [inline]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a6" doxytag="Glib::StaticRWLock::operator RWLock &"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> Glib::StaticRWLock::operator <a class="el" href="classGlib_1_1RWLock.html">RWLock</a>& </td> <td class="md" valign="top">(</td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a0" doxytag="Glib::StaticRWLock::reader_lock"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void Glib::StaticRWLock::reader_lock </td> <td class="md" valign="top">(</td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a1" doxytag="Glib::StaticRWLock::reader_trylock"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> bool Glib::StaticRWLock::reader_trylock </td> <td class="md" valign="top">(</td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a2" doxytag="Glib::StaticRWLock::reader_unlock"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void Glib::StaticRWLock::reader_unlock </td> <td class="md" valign="top">(</td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a3" doxytag="Glib::StaticRWLock::writer_lock"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void Glib::StaticRWLock::writer_lock </td> <td class="md" valign="top">(</td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a4" doxytag="Glib::StaticRWLock::writer_trylock"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> bool Glib::StaticRWLock::writer_trylock </td> <td class="md" valign="top">(</td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="a5" doxytag="Glib::StaticRWLock::writer_unlock"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void Glib::StaticRWLock::writer_unlock </td> <td class="md" valign="top">(</td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <hr><h2>Friends And Related Function Documentation</h2> <a name="k0" doxytag="Glib::StaticRWLock::GLIBMM_STATIC_RW_LOCK_INIT"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> GLIBMM_STATIC_RW_LOCK_INIT<code> [related]</code> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Initializer macro for Glib::StaticRWLock. <p> </td> </tr> </table> <hr>The documentation for this struct was generated from the following file:<ul> <li><a class="el" href="thread_8h.html">thread.h</a></ul> <hr><address><small> Generated for gtkmm by <a href="http://www.doxygen.org/index.html"> Doxygen</a> 1.3-rc1 © 1997-2001</small></address> </body> </html>