• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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_base.h Source File</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>oscl_base.h</h1><a href="oscl__base_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">// -*- c++ -*-</span>
1000002 <span class="comment">// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =</span>
1100003
1200004 <span class="comment">//                           O S C L _ B A S E</span>
1300005
1400006 <span class="comment">// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =</span>
1500007
1600018 <span class="preprocessor">#ifndef OSCL_BASE_H_INCLUDED</span>
1700019 <span class="preprocessor"></span><span class="preprocessor">#define OSCL_BASE_H_INCLUDED</span>
1800020 <span class="preprocessor"></span>
1900021 <span class="preprocessor">#include "<a class="code" href="osclconfig_8h.html">osclconfig.h</a>"</span>
2000022 <span class="preprocessor">#include "<a class="code" href="oscl__base__macros_8h.html">oscl_base_macros.h</a>"</span>
2100023 <span class="preprocessor">#include "<a class="code" href="oscl__types_8h.html">oscl_types.h</a>"</span>
2200024 <span class="preprocessor">#include "<a class="code" href="osclconfig__check_8h.html">osclconfig_check.h</a>"</span>
2300025
2400026 <span class="preprocessor">#ifdef USE_CML2_CONFIG</span>
2500027 <span class="preprocessor"></span><span class="preprocessor">#include "pv_config.h"</span>
2600028 <span class="preprocessor">#endif</span>
2700029 <span class="preprocessor"></span>
2800030 <span class="comment">//singleton support derives from global var support.</span>
29<a name="l00031"></a><a class="code" href="group__osclbase.html#a79">00031</a> <span class="preprocessor">#define OSCL_HAS_SINGLETON_SUPPORT 1</span>
3000032 <span class="preprocessor"></span>
3100033 <span class="preprocessor">#ifdef __cplusplus</span>
3200034 <span class="preprocessor"></span>
3300035 <span class="keyword">class </span><a class="code" href="classOsclLockBase.html">OsclLockBase</a>;
3400036
3500037 <span class="keyword">class </span>OsclBase
3600038 {
3700039     <span class="keyword">public</span>:
3800054         OSCL_IMPORT_REF <span class="keyword">static</span> int32 Init();
3900055
4000062         OSCL_IMPORT_REF <span class="keyword">static</span> int32 Cleanup();
4100063 };
4200064
4300070 <span class="keyword">enum</span> TPVBaseErrorEnum
4400071 {
4500072     EPVErrorBaseNotInstalled = 1
4600073     , EPVErrorBaseAlreadyInstalled = 2
4700074     , EPVErrorBaseOutOfMemory = 3
4800075     , EPVErrorBaseSystemCallFailed = 4
4900076     , EPVErrorBaseTooManyThreads = 5
5000077 };
5100078
5200079 <span class="preprocessor">#include "<a class="code" href="oscl__lock__base_8h.html">oscl_lock_base.h</a>"</span>
5300080
5400086 <span class="preprocessor">#if (OSCL_HAS_BASIC_LOCK)</span>
5500087 <span class="preprocessor"></span><span class="keyword">class </span>_OsclBasicLock : <span class="keyword">public</span> <a class="code" href="classOsclLockBase.html">OsclLockBase</a>
5600088 {
5700089     <span class="keyword">public</span>:
5800090
5900094         OSCL_IMPORT_REF _OsclBasicLock();
6000095
6100099         OSCL_IMPORT_REF ~_OsclBasicLock();
6200100
6300105         OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classOsclLockBase.html#a0">Lock</a>();
6400106
6500111         OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classOsclLockBase.html#a1">Unlock</a>();
6600112
6700113
6800117         int32 iError;
6900118
7000119     <span class="keyword">private</span>:
7100120         TOsclBasicLockObject    ObjLock;
7200121
7300122 };
7400123 <span class="preprocessor">#else</span>
7500124 <span class="preprocessor"></span><span class="keyword">typedef</span> <a class="code" href="classOsclNullLock.html">OsclNullLock</a> _OsclBasicLock;
7600125 <span class="preprocessor">#endif</span>
7700126 <span class="preprocessor"></span>
7800127 <span class="preprocessor">#else</span>
7900128 <span class="preprocessor"></span>
8000136 <span class="keywordtype">void</span> <a class="code" href="group__osclbase.html#a36">PVOsclBase_Init</a>();
8100137
8200143 <span class="keywordtype">void</span> <a class="code" href="group__osclbase.html#a37">PVOsclBase_Cleanup</a>();
8300144
8400145 <span class="preprocessor">#endif</span>
8500146 <span class="preprocessor"></span>
8600149 <span class="preprocessor">#endif  // OSCL_BASE_H_INCLUDED</span>
87</pre></div><hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small>
88<address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small>
89</small></address>
90</body>
91</html>
92