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>oscl_lock_base.h File 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>oscl_lock_base.h File Reference</h1>This file defines an abstract lock class, <a class="el" href="classOsclLockBase.html">OsclLockBase</a>, that is used for APIs potentially requiring multi-thread safety. A null-lock implementation, <a class="el" href="classOsclNullLock.html">OsclNullLock</a>, is also provided for single-thread configurations (basically a noop for lock/unlock). Also provides the <a class="el" href="classOsclScopedLock.html">OsclScopedLock</a> class which is template class takes care of freeing the lock when the class goes out of scope. 10<a href="#_details">More...</a> 11<p> 12 13<p> 14<a href="oscl__lock__base_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0> 15<tr><td></td></tr> 16<tr><td colspan=2><br><h2>Data Structures</h2></td></tr> 17<tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="classOsclLockBase.html">OsclLockBase</a></td></tr> 18<tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="classOsclNullLock.html">OsclNullLock</a></td></tr> 19<tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="classOsclScopedLock.html">OsclScopedLock</a></td></tr> 20<tr><td> </td><td><font size=-1><em>The OsclScopedLock class is a template class that handles unlocking an abstract class on destruction. This is very useful for ensuring that the lock is released when the OsclScopedLock goes out of scope.</em> <a href="classOsclScopedLock.html#_details">More...</a><em></em></font><br><br></td></tr> 21</table> 22<hr><a name="_details"></a><h2>Detailed Description</h2> 23This file defines an abstract lock class, <a class="el" href="classOsclLockBase.html">OsclLockBase</a>, that is used for APIs potentially requiring multi-thread safety. A null-lock implementation, <a class="el" href="classOsclNullLock.html">OsclNullLock</a>, is also provided for single-thread configurations (basically a noop for lock/unlock). Also provides the <a class="el" href="classOsclScopedLock.html">OsclScopedLock</a> class which is template class takes care of freeing the lock when the class goes out of scope. 24<p> 25 26<p> 27<hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small> 28<address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small> 29</small></address> 30</body> 31</html> 32