<!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>Guard class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.2.17 --> <center> <a class="qindex" href="main.html">Main Page</a> <a class="qindex" href="namespaces.html">Namespace List</a> <a class="qindex" href="classes.html">Alphabetical List</a> <a class="qindex" href="annotated.html">Compound List</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Compound Members</a> <a class="qindex" href="globals.html">File Members</a> <a class="qindex" href="pages.html">Related Pages</a> </center> <hr><h1>Guard Class Reference</h1><code>#include <<a class="el" href="guard_8h-source.html">guard.h</a>></code> <p> <a href="classGuard-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> </td><td valign=bottom><a class="el" href="classGuard.html#a0">Guard</a> (CRITICAL_SECTION &l)</td></tr> <tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classGuard.html#a1">~Guard</a> ()</td></tr> <tr><td colspan=2><br><h2>Private Attributes</h2></td></tr> <tr><td nowrap align=right valign=top>CRITICAL_SECTION & </td><td valign=bottom><a class="el" href="classGuard.html#o0">Lock</a></td></tr> <tr><td> </td><td><font size=-1><em>Reference to Critical Section we are guarding.</em> <a href="#o0"></a><em></em></font><br><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> The Guard class implements a synchronization mechanism based on the aquistion and release of a CRITICAL_SECTION upon construction and destruction of a Guard object. <p> <dl compact><dt><b>Note: </b></dt><dd> Objects that wish to use this must have a Critical Section, must initialze it in their constructor (InitializeCriticalSection), and must destroy it in their destructor (DeleteCriticalSection).</dl><dl compact><dt><b>Remarks: </b></dt><dd> BSD and Unix would use mutexes here. </dl> <p> <p> Definition at line <a class="el" href="guard_8h-source.html#l00024">24</a> of file <a class="el" href="guard_8h-source.html">guard.h</a>.<hr><h2>Constructor & Destructor Documentation</h2> <a name="a0" doxytag="Guard::Guard"></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"> Guard::Guard </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">CRITICAL_SECTION & </td> <td class="mdname1" valign="top" nowrap> <em>l</em> </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> Constructor for Guard class.<dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>l</em> </td><td> A reference to the Object's Critical Section </td></tr> </table> </dl> <p> Definition at line <a class="el" href="guard_8h-source.html#l00032">32</a> of file <a class="el" href="guard_8h-source.html">guard.h</a>. <p> References <a class="el" href="guard_8h-source.html#l00025">Lock</a>. </td> </tr> </table> <a name="a1" doxytag="Guard::~Guard"></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"> Guard::~Guard </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> Destructor for Guard class. <p> Definition at line <a class="el" href="guard_8h-source.html#l00038">38</a> of file <a class="el" href="guard_8h-source.html">guard.h</a>. <p> References <a class="el" href="guard_8h-source.html#l00025">Lock</a>. </td> </tr> </table> <hr><h2>Member Data Documentation</h2> <a name="o0" doxytag="Guard::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"> CRITICAL_SECTION& Guard::Lock<code> [private]</code> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Reference to Critical Section we are guarding. <p> <p> Definition at line <a class="el" href="guard_8h-source.html#l00025">25</a> of file <a class="el" href="guard_8h-source.html">guard.h</a>. <p> Referenced by <a class="el" href="guard_8h-source.html#l00032">Guard</a>(), and <a class="el" href="guard_8h-source.html#l00038">~Guard</a>(). </td> </tr> </table> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="guard_8h-source.html">guard.h</a></ul> <hr><address style="align: right;"><small>Generated on Mon Mar 29 23:12:57 2004 for Paradigm by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.17 </small></address> </body> </html>