• 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_mem_inst.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_mem_inst.h</h1><a href="oscl__mem__inst_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 _ M E M _ I N S T . H</span>
1300005
1400006 <span class="comment">// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =</span>
1500007
1600018 <span class="preprocessor">#ifndef OSCL_MEM_INST_H_INCLUDED</span>
1700019 <span class="preprocessor"></span><span class="preprocessor">#define OSCL_MEM_INST_H_INCLUDED</span>
1800020 <span class="preprocessor"></span>
1900021 <span class="preprocessor">#ifndef OSCLCONFIG_MEMORY_H_INCLUDED</span>
2000022 <span class="preprocessor"></span><span class="preprocessor">#include "<a class="code" href="osclconfig__memory_8h.html">osclconfig_memory.h</a>"</span>
2100023 <span class="preprocessor">#endif</span>
2200024 <span class="preprocessor"></span>
2300025 <span class="comment">/*</span>
2400026 <span class="comment">** PVMEM_INST_LEVEL controls the instrumentation level for</span>
2500027 <span class="comment">** memory leak tracking.  Detailed memory leak information (file</span>
2600028 <span class="comment">** and line # of each allocation) is compiled in or out depending</span>
2700029 <span class="comment">** on the level.  This information is an aid to debugging memory leaks,</span>
2800030 <span class="comment">** but compiling it in will increase code size and run-time overhead.</span>
2900031 <span class="comment">**</span>
3000032 <span class="comment">** Values are as follows</span>
3100033 <span class="comment">**   PVMEM_INST_LEVEL 0 -- detailed memory leak reporting information</span>
3200034 <span class="comment">**      is compiled out.</span>
3300035 <span class="comment">**   PVMEM_INST_LEVEL 1 -- detailed memory leak reporting information</span>
3400036 <span class="comment">**      is compiled in.</span>
3500037 <span class="comment">**</span>
3600038 <span class="comment">** The value can be defined in the osclconfig_memory.h file for the platform.</span>
3700039 <span class="comment">** In case PVMEM_INST_LEVEL is not defined for the platform, default</span>
3800040 <span class="comment">** values are defined here.</span>
3900041 <span class="comment">*/</span>
4000042 <span class="preprocessor">#ifndef PVMEM_INST_LEVEL</span>
4100043 <span class="preprocessor"></span><span class="preprocessor">#if defined(NDEBUG)</span>
4200044 <span class="preprocessor"></span><span class="comment">/* release mode-- no instrumentation */</span>
4300045 <span class="preprocessor">#define PVMEM_INST_LEVEL 0</span>
4400046 <span class="preprocessor"></span><span class="preprocessor">#else</span>
4500047 <span class="preprocessor"></span><span class="comment">/* debug mode-- full instrumentation */</span>
46<a name="l00048"></a><a class="code" href="group__osclbase.html#a104">00048</a> <span class="preprocessor">#define PVMEM_INST_LEVEL 1</span>
4700049 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
4800050 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
4900051 <span class="preprocessor"></span>
5000052 <span class="comment">/*</span>
5100053 <span class="comment">** When bypassing the Oscl memory manager, instrumentation</span>
5200054 <span class="comment">** is not needed, so should always be compiled out.</span>
5300055 <span class="comment">*/</span>
5400056 <span class="preprocessor">#if(OSCL_BYPASS_MEMMGT)</span>
5500057 <span class="preprocessor"></span><span class="preprocessor">#undef PVMEM_INST_LEVEL</span>
5600058 <span class="preprocessor"></span><span class="preprocessor">#define PVMEM_INST_LEVEL 0</span>
5700059 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
5800060 <span class="preprocessor"></span>
5900061
6000064 <span class="preprocessor">#endif</span>
61</pre></div><hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small>
62<address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small>
63</small></address>
64</body>
65</html>
66