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> <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> 9 <hr><h1>OsclMutex Class Reference</h1><code>#include <<a class="el" href="oscl__mutex_8h-source.html">oscl_mutex.h</a>></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 </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 </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> </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 </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> </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 </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> </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 & 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">( </td> 39 <td class="mdname1" valign="top" nowrap> </td> 40 <td class="md" valign="top">) </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 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">( </td> 67 <td class="mdname1" valign="top" nowrap> </td> 68 <td class="md" valign="top">) </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 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">( </td> 96 <td class="md" nowrap valign="top">void </td> 97 <td class="mdname1" valign="top" nowrap> </td> 98 <td class="md" valign="top">) </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 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> </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">( </td> 131 <td class="md" nowrap valign="top">void </td> 132 <td class="mdname1" valign="top" nowrap> </td> 133 <td class="md" valign="top">) </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 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> </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">( </td> 166 <td class="mdname1" valign="top" nowrap> </td> 167 <td class="md" valign="top">) </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 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> </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">( </td> 202 <td class="mdname1" valign="top" nowrap> </td> 203 <td class="md" valign="top">) </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 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> </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">( </td> 236 <td class="mdname1" valign="top" nowrap> </td> 237 <td class="md" valign="top">) </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 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> </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