<!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>OsclMutex class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.2.18 --> <center> <a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="modules.html">Modules</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="annotated.html">Data Structures</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Data Fields</a> <a class="qindex" href="globals.html">Globals</a> </center> <hr><h1>OsclMutex Class Reference</h1><code>#include <<a class="el" href="oscl__mutex_8h-source.html">oscl_mutex.h</a>></code> <p> <p>Inheritance diagram for OsclMutex: <p><center><img src="classOsclMutex.png" usemap="#OsclMutex_map" border="0" alt=""></center> <map name="OsclMutex_map"> <area href="classOsclLockBase.html" alt="OsclLockBase" shape="rect" coords="0,0,93,24"> </map> <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>OSCL_IMPORT_REF </td><td valign=bottom><a class="el" href="classOsclMutex.html#a0">OsclMutex</a> ()</td></tr> <tr><td nowrap align=right valign=top>virtual OSCL_IMPORT_REF </td><td valign=bottom><a class="el" href="classOsclMutex.html#a1">~OsclMutex</a> ()</td></tr> <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF <a class="el" href="classOsclProcStatus.html#s35">OsclProcStatus::eOsclProcError</a> </td><td valign=bottom><a class="el" href="classOsclMutex.html#a2">Create</a> (void)</td></tr> <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classOsclMutex.html#a3">Lock</a> ()</td></tr> <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF <a class="el" href="classOsclProcStatus.html#s35">OsclProcStatus::eOsclProcError</a> </td><td valign=bottom><a class="el" href="classOsclMutex.html#a4">TryLock</a> ()</td></tr> <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classOsclMutex.html#a5">Unlock</a> ()</td></tr> <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF <a class="el" href="classOsclProcStatus.html#s35">OsclProcStatus::eOsclProcError</a> </td><td valign=bottom><a class="el" href="classOsclMutex.html#a6">Close</a> (void)</td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Class OsclMutex <p> <hr><h2>Constructor & Destructor Documentation</h2> <a name="a0" doxytag="OsclMutex::OsclMutex"></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"> OSCL_IMPORT_REF OsclMutex::OsclMutex </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> Class constructor </td> </tr> </table> <a name="a1" doxytag="OsclMutex::~OsclMutex"></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"> virtual OSCL_IMPORT_REF OsclMutex::~OsclMutex </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> [virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Class destructor </td> </tr> </table> <hr><h2>Member Function Documentation</h2> <a name="a6" doxytag="OsclMutex::Close"></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"> OSCL_IMPORT_REF <a class="el" href="classOsclProcStatus.html#s35">OsclProcStatus::eOsclProcError</a> OsclMutex::Close </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">void </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> Closes the Mutex<dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>It</em> </td><td> wont take any prameters</td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> Returns the Error whether it is success or failure. Incase of failure it will return what is the specific error </dl> </td> </tr> </table> <a name="a2" doxytag="OsclMutex::Create"></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"> OSCL_IMPORT_REF <a class="el" href="classOsclProcStatus.html#s35">OsclProcStatus::eOsclProcError</a> OsclMutex::Create </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">void </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> Creates the Mutex<dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>No</em> </td><td> input arguments</td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> Returns the Error whether it is success or failure. Incase of failure it will return what is the specific error </dl> </td> </tr> </table> <a name="a3" doxytag="OsclMutex::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"> OSCL_IMPORT_REF void OsclMutex::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><code> [virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Locks the Mutex<dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>It</em> </td><td> wont take any parameters</td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> Returns nothing </dl> <p> Implements <a class="el" href="classOsclLockBase.html#a0">OsclLockBase</a>. </td> </tr> </table> <a name="a4" doxytag="OsclMutex::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"> OSCL_IMPORT_REF <a class="el" href="classOsclProcStatus.html#s35">OsclProcStatus::eOsclProcError</a> OsclMutex::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> Try to lock the mutex,if the Mutex is already locked calling thread immediately returns with out blocking <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>It</em> </td><td> wont take any parameters</td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> Returns SUCCESS_ERROR if the mutex was acquired, MUTEX_LOCKED_ERROR if the mutex cannot be acquired without waiting, or an error code if the operation failed. Note: this function may not be supported on all platforms, and may return NOT_IMPLEMENTED. </dl> </td> </tr> </table> <a name="a5" doxytag="OsclMutex::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"> OSCL_IMPORT_REF void OsclMutex::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><code> [virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Releases the Mutex<dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>It</em> </td><td> wont take any parameters</td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> Returns nothing </dl> <p> Implements <a class="el" href="classOsclLockBase.html#a1">OsclLockBase</a>. </td> </tr> </table> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="oscl__mutex_8h-source.html">oscl_mutex.h</a></ul> <hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small> <address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small> </small></address> </body> </html>