Home | History | Annotate | Download | only in oscl_html
      1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
      2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
      3 <title>OsclMutex class Reference</title>
      4 <link href="doxygen.css" rel="stylesheet" type="text/css">
      5 </head><body>
      6 <!-- Generated by Doxygen 1.2.18 -->
      7 <center>
      8 <a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="modules.html">Modules</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="annotated.html">Data Structures</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Data Fields</a> &nbsp; <a class="qindex" href="globals.html">Globals</a> &nbsp; </center>
      9 <hr><h1>OsclMutex Class Reference</h1><code>#include &lt;<a class="el" href="oscl__mutex_8h-source.html">oscl_mutex.h</a>&gt;</code>
     10 <p>
     11 <p>Inheritance diagram for OsclMutex:
     12 <p><center><img src="classOsclMutex.png" usemap="#OsclMutex_map" border="0" alt=""></center>
     13 <map name="OsclMutex_map">
     14 <area href="classOsclLockBase.html" alt="OsclLockBase" shape="rect" coords="0,0,93,24">
     15 </map>
     16 <table border=0 cellpadding=0 cellspacing=0>
     17 <tr><td></td></tr>
     18 <tr><td colspan=2><br><h2>Public Methods</h2></td></tr>
     19 <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF&nbsp;</td><td valign=bottom><a class="el" href="classOsclMutex.html#a0">OsclMutex</a> ()</td></tr>
     20 <tr><td nowrap align=right valign=top>virtual OSCL_IMPORT_REF&nbsp;</td><td valign=bottom><a class="el" href="classOsclMutex.html#a1">~OsclMutex</a> ()</td></tr>
     21 <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF <a class="el" href="classOsclProcStatus.html#s35">OsclProcStatus::eOsclProcError</a>&nbsp;</td><td valign=bottom><a class="el" href="classOsclMutex.html#a2">Create</a> (void)</td></tr>
     22 <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void&nbsp;</td><td valign=bottom><a class="el" href="classOsclMutex.html#a3">Lock</a> ()</td></tr>
     23 <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF <a class="el" href="classOsclProcStatus.html#s35">OsclProcStatus::eOsclProcError</a>&nbsp;</td><td valign=bottom><a class="el" href="classOsclMutex.html#a4">TryLock</a> ()</td></tr>
     24 <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void&nbsp;</td><td valign=bottom><a class="el" href="classOsclMutex.html#a5">Unlock</a> ()</td></tr>
     25 <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF <a class="el" href="classOsclProcStatus.html#s35">OsclProcStatus::eOsclProcError</a>&nbsp;</td><td valign=bottom><a class="el" href="classOsclMutex.html#a6">Close</a> (void)</td></tr>
     26 </table>
     27 <hr><a name="_details"></a><h2>Detailed Description</h2>
     28 Class OsclMutex 
     29 <p>
     30 <hr><h2>Constructor &amp; Destructor Documentation</h2>
     31 <a name="a0" doxytag="OsclMutex::OsclMutex"></a><p>
     32 <table width="100%" cellpadding="2" cellspacing="0" border="0">
     33   <tr>
     34     <td class="md">
     35       <table cellpadding="0" cellspacing="0" border="0">
     36         <tr>
     37           <td class="md" nowrap valign="top"> OSCL_IMPORT_REF OsclMutex::OsclMutex </td>
     38           <td class="md" valign="top">(&nbsp;</td>
     39           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
     40           <td class="md" valign="top">)&nbsp;</td>
     41           <td class="md" nowrap></td>
     42         </tr>
     43 
     44       </table>
     45     </td>
     46   </tr>
     47 </table>
     48 <table cellspacing=5 cellpadding=0 border=0>
     49   <tr>
     50     <td>
     51       &nbsp;
     52     </td>
     53     <td>
     54 
     55 <p>
     56 Class constructor     </td>
     57   </tr>
     58 </table>
     59 <a name="a1" doxytag="OsclMutex::~OsclMutex"></a><p>
     60 <table width="100%" cellpadding="2" cellspacing="0" border="0">
     61   <tr>
     62     <td class="md">
     63       <table cellpadding="0" cellspacing="0" border="0">
     64         <tr>
     65           <td class="md" nowrap valign="top"> virtual OSCL_IMPORT_REF OsclMutex::~OsclMutex </td>
     66           <td class="md" valign="top">(&nbsp;</td>
     67           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
     68           <td class="md" valign="top">)&nbsp;</td>
     69           <td class="md" nowrap><code> [virtual]</code></td>
     70         </tr>
     71 
     72       </table>
     73     </td>
     74   </tr>
     75 </table>
     76 <table cellspacing=5 cellpadding=0 border=0>
     77   <tr>
     78     <td>
     79       &nbsp;
     80     </td>
     81     <td>
     82 
     83 <p>
     84 Class destructor     </td>
     85   </tr>
     86 </table>
     87 <hr><h2>Member Function Documentation</h2>
     88 <a name="a6" doxytag="OsclMutex::Close"></a><p>
     89 <table width="100%" cellpadding="2" cellspacing="0" border="0">
     90   <tr>
     91     <td class="md">
     92       <table cellpadding="0" cellspacing="0" border="0">
     93         <tr>
     94           <td class="md" nowrap valign="top"> OSCL_IMPORT_REF <a class="el" href="classOsclProcStatus.html#s35">OsclProcStatus::eOsclProcError</a> OsclMutex::Close </td>
     95           <td class="md" valign="top">(&nbsp;</td>
     96           <td class="md" nowrap valign="top">void&nbsp;</td>
     97           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
     98           <td class="md" valign="top">)&nbsp;</td>
     99           <td class="md" nowrap></td>
    100         </tr>
    101 
    102       </table>
    103     </td>
    104   </tr>
    105 </table>
    106 <table cellspacing=5 cellpadding=0 border=0>
    107   <tr>
    108     <td>
    109       &nbsp;
    110     </td>
    111     <td>
    112 
    113 <p>
    114 Closes the Mutex<dl compact><dt><b>Parameters: </b></dt><dd>
    115 <table border=0 cellspacing=2 cellpadding=0>
    116 <tr><td valign=top><em>It</em>&nbsp;</td><td>
    117 wont take any prameters</td></tr>
    118 </table>
    119 </dl><dl compact><dt><b>Returns: </b></dt><dd>
    120 Returns the Error whether it is success or failure. Incase of failure it will return what is the specific error </dl>    </td>
    121   </tr>
    122 </table>
    123 <a name="a2" doxytag="OsclMutex::Create"></a><p>
    124 <table width="100%" cellpadding="2" cellspacing="0" border="0">
    125   <tr>
    126     <td class="md">
    127       <table cellpadding="0" cellspacing="0" border="0">
    128         <tr>
    129           <td class="md" nowrap valign="top"> OSCL_IMPORT_REF <a class="el" href="classOsclProcStatus.html#s35">OsclProcStatus::eOsclProcError</a> OsclMutex::Create </td>
    130           <td class="md" valign="top">(&nbsp;</td>
    131           <td class="md" nowrap valign="top">void&nbsp;</td>
    132           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
    133           <td class="md" valign="top">)&nbsp;</td>
    134           <td class="md" nowrap></td>
    135         </tr>
    136 
    137       </table>
    138     </td>
    139   </tr>
    140 </table>
    141 <table cellspacing=5 cellpadding=0 border=0>
    142   <tr>
    143     <td>
    144       &nbsp;
    145     </td>
    146     <td>
    147 
    148 <p>
    149 Creates the Mutex<dl compact><dt><b>Parameters: </b></dt><dd>
    150 <table border=0 cellspacing=2 cellpadding=0>
    151 <tr><td valign=top><em>No</em>&nbsp;</td><td>
    152 input arguments</td></tr>
    153 </table>
    154 </dl><dl compact><dt><b>Returns: </b></dt><dd>
    155 Returns the Error whether it is success or failure. Incase of failure it will return what is the specific error </dl>    </td>
    156   </tr>
    157 </table>
    158 <a name="a3" doxytag="OsclMutex::Lock"></a><p>
    159 <table width="100%" cellpadding="2" cellspacing="0" border="0">
    160   <tr>
    161     <td class="md">
    162       <table cellpadding="0" cellspacing="0" border="0">
    163         <tr>
    164           <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void OsclMutex::Lock </td>
    165           <td class="md" valign="top">(&nbsp;</td>
    166           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
    167           <td class="md" valign="top">)&nbsp;</td>
    168           <td class="md" nowrap><code> [virtual]</code></td>
    169         </tr>
    170 
    171       </table>
    172     </td>
    173   </tr>
    174 </table>
    175 <table cellspacing=5 cellpadding=0 border=0>
    176   <tr>
    177     <td>
    178       &nbsp;
    179     </td>
    180     <td>
    181 
    182 <p>
    183 Locks the Mutex<dl compact><dt><b>Parameters: </b></dt><dd>
    184 <table border=0 cellspacing=2 cellpadding=0>
    185 <tr><td valign=top><em>It</em>&nbsp;</td><td>
    186 wont take any parameters</td></tr>
    187 </table>
    188 </dl><dl compact><dt><b>Returns: </b></dt><dd>
    189 Returns nothing </dl>
    190 <p>
    191 Implements <a class="el" href="classOsclLockBase.html#a0">OsclLockBase</a>.    </td>
    192   </tr>
    193 </table>
    194 <a name="a4" doxytag="OsclMutex::TryLock"></a><p>
    195 <table width="100%" cellpadding="2" cellspacing="0" border="0">
    196   <tr>
    197     <td class="md">
    198       <table cellpadding="0" cellspacing="0" border="0">
    199         <tr>
    200           <td class="md" nowrap valign="top"> OSCL_IMPORT_REF <a class="el" href="classOsclProcStatus.html#s35">OsclProcStatus::eOsclProcError</a> OsclMutex::TryLock </td>
    201           <td class="md" valign="top">(&nbsp;</td>
    202           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
    203           <td class="md" valign="top">)&nbsp;</td>
    204           <td class="md" nowrap></td>
    205         </tr>
    206 
    207       </table>
    208     </td>
    209   </tr>
    210 </table>
    211 <table cellspacing=5 cellpadding=0 border=0>
    212   <tr>
    213     <td>
    214       &nbsp;
    215     </td>
    216     <td>
    217 
    218 <p>
    219 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>
    220 <table border=0 cellspacing=2 cellpadding=0>
    221 <tr><td valign=top><em>It</em>&nbsp;</td><td>
    222 wont take any parameters</td></tr>
    223 </table>
    224 </dl><dl compact><dt><b>Returns: </b></dt><dd>
    225 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>
    226   </tr>
    227 </table>
    228 <a name="a5" doxytag="OsclMutex::Unlock"></a><p>
    229 <table width="100%" cellpadding="2" cellspacing="0" border="0">
    230   <tr>
    231     <td class="md">
    232       <table cellpadding="0" cellspacing="0" border="0">
    233         <tr>
    234           <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void OsclMutex::Unlock </td>
    235           <td class="md" valign="top">(&nbsp;</td>
    236           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
    237           <td class="md" valign="top">)&nbsp;</td>
    238           <td class="md" nowrap><code> [virtual]</code></td>
    239         </tr>
    240 
    241       </table>
    242     </td>
    243   </tr>
    244 </table>
    245 <table cellspacing=5 cellpadding=0 border=0>
    246   <tr>
    247     <td>
    248       &nbsp;
    249     </td>
    250     <td>
    251 
    252 <p>
    253 Releases the Mutex<dl compact><dt><b>Parameters: </b></dt><dd>
    254 <table border=0 cellspacing=2 cellpadding=0>
    255 <tr><td valign=top><em>It</em>&nbsp;</td><td>
    256 wont take any parameters</td></tr>
    257 </table>
    258 </dl><dl compact><dt><b>Returns: </b></dt><dd>
    259 Returns nothing </dl>
    260 <p>
    261 Implements <a class="el" href="classOsclLockBase.html#a1">OsclLockBase</a>.    </td>
    262   </tr>
    263 </table>
    264 <hr>The documentation for this class was generated from the following file:<ul>
    265 <li><a class="el" href="oscl__mutex_8h-source.html">oscl_mutex.h</a></ul>
    266 <hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small>
    267 <address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small>
    268 </small></address>
    269 </body>
    270 </html>
    271