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>MM_Audit_Imp 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>MM_Audit_Imp Class Reference<br> 10<small> 11[<a class="el" href="group__osclmemory.html">OSCL Memory</a>]</small> 12</h1><code>#include <<a class="el" href="oscl__mem__audit_8h-source.html">oscl_mem_audit.h</a>></code> 13<p> 14<table border=0 cellpadding=0 cellspacing=0> 15<tr><td></td></tr> 16<tr><td colspan=2><br><h2>Public Methods</h2></td></tr> 17<tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a0">MM_Audit_Imp</a> ()</td></tr> 18<tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a1">~MM_Audit_Imp</a> ()</td></tr> 19<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void * </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a2">MM_allocate</a> (const <a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> *statsNode, uint32 sizeIn, const char *pFileName, uint32 lineNumber, bool allocNodeTracking=false)</td></tr> 20<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF bool </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a3">MM_deallocate</a> (void *pMemBlockIn)</td></tr> 21<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF <a class="el" href="structMM__Stats__t.html">MM_Stats_t</a> * </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a4">MM_GetStats</a> (const char *const tagIn)</td></tr> 22<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF uint32 </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a5">MM_GetStatsInDepth</a> (const char *tagIn, <a class="el" href="structMM__Stats__CB.html">MM_Stats_CB</a> *array_ptr, uint32 max_nodes)</td></tr> 23<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF uint32 </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a6">MM_GetTreeNodes</a> (const char *tagIn)</td></tr> 24<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF bool </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a7">MM_AddTag</a> (const char *tagIn)</td></tr> 25<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF const <a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> * </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a8">MM_GetTagNode</a> (const char *tagIn)</td></tr> 26<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF const <a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> * </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a9">MM_GetExistingTag</a> (const char *tagIn)</td></tr> 27<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF const <a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> * </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a10">MM_GetRootNode</a> ()</td></tr> 28<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF <a class="el" href="structMM__AllocQueryInfo.html">MM_AllocQueryInfo</a> * </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a11">MM_CreateAllocNodeInfo</a> (uint32 max_array_size)</td></tr> 29<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a12">MM_ReleaseAllocNodeInfo</a> (<a class="el" href="structMM__AllocQueryInfo.html">MM_AllocQueryInfo</a> *info)</td></tr> 30<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF uint32 </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a13">MM_GetAllocNodeInfo</a> (<a class="el" href="structMM__AllocQueryInfo.html">MM_AllocQueryInfo</a> *output_array, uint32 max_array_size, uint32 offset)</td></tr> 31<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF bool </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a14">MM_Validate</a> (const void *ptrIn)</td></tr> 32<tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a15">MM_GetAllocNo</a> (void)</td></tr> 33<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a16">MM_GetOverheadStats</a> (<a class="el" href="structMM__AuditOverheadStats.html">MM_AuditOverheadStats</a> &stats)</td></tr> 34<tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a17">MM_GetNumAllocNodes</a> ()</td></tr> 35<tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a18">MM_GetMode</a> (void)</td></tr> 36<tr><td nowrap align=right valign=top>uint8 </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a19">MM_GetPrefillPattern</a> (void)</td></tr> 37<tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a20">MM_GetPostfillPattern</a> (void)</td></tr> 38<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a21">MM_SetMode</a> (uint32 inMode)</td></tr> 39<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a22">MM_SetPrefillPattern</a> (uint8 pattern)</td></tr> 40<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a23">MM_SetPostfillPattern</a> (uint8 pattern)</td></tr> 41<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a24">MM_SetTagLevel</a> (uint32 level)</td></tr> 42<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF bool </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a25">MM_SetFailurePoint</a> (const char *tagIn, uint32 alloc_number)</td></tr> 43<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a26">MM_UnsetFailurePoint</a> (const char *tagIn)</td></tr> 44<tr><td nowrap align=right valign=top><a class="el" href="structMM__AllocNode.html">MM_AllocNode</a> * </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a27">addAllocNode</a> (void *pMem, uint32 sizeIn, <a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> *pStatsNode, const char *pFileName, uint32 lineNumber)</td></tr> 45<tr><td nowrap align=right valign=top><a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> * </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a28">removeAllocNode</a> (void *pMemBlockIn, uint32 &size)</td></tr> 46<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a29">removeALLAllocNodes</a> ()</td></tr> 47<tr><td nowrap align=right valign=top><a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> * </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a30">createStatsNode</a> (const char *tagIn)</td></tr> 48<tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a31">updateStatsNode</a> (<a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> *pCurrStatsNode, const <a class="el" href="structMM__Stats__t.html">MM_Stats_t</a> &pDelta, bool bAdd)</td></tr> 49<tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a32">updateStatsNodeInFailure</a> (const char *tagIn)</td></tr> 50<tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a33">updateStatsNodeInFailure</a> (<a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> *pStatsNode)</td></tr> 51<tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a34">pruneSubtree</a> (<a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> *pNode)</td></tr> 52<tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a35">pruneSubtree</a> (const char *tagIn)</td></tr> 53<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a36">retrieveParentTag</a> (char *tag)</td></tr> 54<tr><td nowrap align=right valign=top>int32 </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a37">retrieveParentTagLength</a> (const char *tag, int32 bound)</td></tr> 55<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a38">makeValidTag</a> (const char *tagIn, <a class="el" href="group__osclmemory.html#a0">MMAuditCharAutoPtr</a> &autoptr)</td></tr> 56<tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a39">getTagActualSize</a> (const char *tagIn)</td></tr> 57<tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a40">isSetFailure</a> (const char *tagIn)</td></tr> 58<tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a41">isSetFailure</a> (<a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> *statsNode)</td></tr> 59<tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#a42">validate_all_heap</a> ()</td></tr> 60<tr><td colspan=2><br><h2>Static Public Methods</h2></td></tr> 61<tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#d0">validate</a> (void *ptrIn)</td></tr> 62<tr><td nowrap align=right valign=top><a class="el" href="classOsclMemAudit.html">OsclMemAudit</a> * </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#d1">getAuditRoot</a> (void *ptrIn)</td></tr> 63<tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classMM__Audit__Imp.html#d2">getSize</a> (void *ptrIn)</td></tr> 64</table> 65<hr><h2>Constructor & Destructor Documentation</h2> 66<a name="a0" doxytag="MM_Audit_Imp::MM_Audit_Imp"></a><p> 67<table width="100%" cellpadding="2" cellspacing="0" border="0"> 68 <tr> 69 <td class="md"> 70 <table cellpadding="0" cellspacing="0" border="0"> 71 <tr> 72 <td class="md" nowrap valign="top"> MM_Audit_Imp::MM_Audit_Imp </td> 73 <td class="md" valign="top">( </td> 74 <td class="mdname1" valign="top" nowrap> </td> 75 <td class="md" valign="top">) </td> 76 <td class="md" nowrap></td> 77 </tr> 78 79 </table> 80 </td> 81 </tr> 82</table> 83<table cellspacing=5 cellpadding=0 border=0> 84 <tr> 85 <td> 86 87 </td> 88 <td> 89 90<p> 91Constructor, create the root node in statistics table </td> 92 </tr> 93</table> 94<a name="a1" doxytag="MM_Audit_Imp::~MM_Audit_Imp"></a><p> 95<table width="100%" cellpadding="2" cellspacing="0" border="0"> 96 <tr> 97 <td class="md"> 98 <table cellpadding="0" cellspacing="0" border="0"> 99 <tr> 100 <td class="md" nowrap valign="top"> MM_Audit_Imp::~MM_Audit_Imp </td> 101 <td class="md" valign="top">( </td> 102 <td class="mdname1" valign="top" nowrap> </td> 103 <td class="md" valign="top">) </td> 104 <td class="md" nowrap></td> 105 </tr> 106 107 </table> 108 </td> 109 </tr> 110</table> 111<table cellspacing=5 cellpadding=0 border=0> 112 <tr> 113 <td> 114 115 </td> 116 <td> 117 118<p> 119A destructor, remove all the nodes in allocation andstatistics table </td> 120 </tr> 121</table> 122<hr><h2>Member Function Documentation</h2> 123<a name="a27" doxytag="MM_Audit_Imp::addAllocNode"></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"> <a class="el" href="structMM__AllocNode.html">MM_AllocNode</a>* MM_Audit_Imp::addAllocNode </td> 130 <td class="md" valign="top">( </td> 131 <td class="md" nowrap valign="top">void * </td> 132 <td class="mdname" nowrap> <em>pMem</em>, </td> 133 </tr> 134 <tr> 135 <td></td> 136 <td></td> 137 <td class="md" nowrap>uint32 </td> 138 <td class="mdname" nowrap> <em>sizeIn</em>, </td> 139 </tr> 140 <tr> 141 <td></td> 142 <td></td> 143 <td class="md" nowrap><a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> * </td> 144 <td class="mdname" nowrap> <em>pStatsNode</em>, </td> 145 </tr> 146 <tr> 147 <td></td> 148 <td></td> 149 <td class="md" nowrap>const char * </td> 150 <td class="mdname" nowrap> <em>pFileName</em>, </td> 151 </tr> 152 <tr> 153 <td></td> 154 <td></td> 155 <td class="md" nowrap>uint32 </td> 156 <td class="mdname" nowrap> <em>lineNumber</em></td> 157 </tr> 158 <tr> 159 <td></td> 160 <td class="md">) </td> 161 <td class="md" colspan="2"></td> 162 </tr> 163 164 </table> 165 </td> 166 </tr> 167</table> 168<table cellspacing=5 cellpadding=0 border=0> 169 <tr> 170 <td> 171 172 </td> 173 <td> 174 175<p> 176<dl compact><dt><b>Returns: </b></dt><dd> 177true if operation succeeds; </dl> </td> 178 </tr> 179</table> 180<a name="a30" doxytag="MM_Audit_Imp::createStatsNode"></a><p> 181<table width="100%" cellpadding="2" cellspacing="0" border="0"> 182 <tr> 183 <td class="md"> 184 <table cellpadding="0" cellspacing="0" border="0"> 185 <tr> 186 <td class="md" nowrap valign="top"> <a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a>* MM_Audit_Imp::createStatsNode </td> 187 <td class="md" valign="top">( </td> 188 <td class="md" nowrap valign="top">const char * </td> 189 <td class="mdname1" valign="top" nowrap> <em>tagIn</em> </td> 190 <td class="md" valign="top">) </td> 191 <td class="md" nowrap></td> 192 </tr> 193 194 </table> 195 </td> 196 </tr> 197</table> 198<table cellspacing=5 cellpadding=0 border=0> 199 <tr> 200 <td> 201 202 </td> 203 <td> 204 205<p> 206<dl compact><dt><b>Returns: </b></dt><dd> 207true if operation succeeds; </dl> </td> 208 </tr> 209</table> 210<a name="d1" doxytag="MM_Audit_Imp::getAuditRoot"></a><p> 211<table width="100%" cellpadding="2" cellspacing="0" border="0"> 212 <tr> 213 <td class="md"> 214 <table cellpadding="0" cellspacing="0" border="0"> 215 <tr> 216 <td class="md" nowrap valign="top"> <a class="el" href="classOsclMemAudit.html">OsclMemAudit</a>* MM_Audit_Imp::getAuditRoot </td> 217 <td class="md" valign="top">( </td> 218 <td class="md" nowrap valign="top">void * </td> 219 <td class="mdname1" valign="top" nowrap> <em>ptrIn</em> </td> 220 <td class="md" valign="top">) </td> 221 <td class="md" nowrap><code> [static]</code></td> 222 </tr> 223 224 </table> 225 </td> 226 </tr> 227</table> 228<table cellspacing=5 cellpadding=0 border=0> 229 <tr> 230 <td> 231 232 </td> 233 <td> 234 235<p> 236<dl compact><dt><b>Returns: </b></dt><dd> 237audit root pointer. </dl> </td> 238 </tr> 239</table> 240<a name="d2" doxytag="MM_Audit_Imp::getSize"></a><p> 241<table width="100%" cellpadding="2" cellspacing="0" border="0"> 242 <tr> 243 <td class="md"> 244 <table cellpadding="0" cellspacing="0" border="0"> 245 <tr> 246 <td class="md" nowrap valign="top"> uint32 MM_Audit_Imp::getSize </td> 247 <td class="md" valign="top">( </td> 248 <td class="md" nowrap valign="top">void * </td> 249 <td class="mdname1" valign="top" nowrap> <em>ptrIn</em> </td> 250 <td class="md" valign="top">) </td> 251 <td class="md" nowrap><code> [static]</code></td> 252 </tr> 253 254 </table> 255 </td> 256 </tr> 257</table> 258<table cellspacing=5 cellpadding=0 border=0> 259 <tr> 260 <td> 261 262 </td> 263 <td> 264 265<p> 266<dl compact><dt><b>Returns: </b></dt><dd> 267original block size. leaves if bad pointer. </dl> </td> 268 </tr> 269</table> 270<a name="a39" doxytag="MM_Audit_Imp::getTagActualSize"></a><p> 271<table width="100%" cellpadding="2" cellspacing="0" border="0"> 272 <tr> 273 <td class="md"> 274 <table cellpadding="0" cellspacing="0" border="0"> 275 <tr> 276 <td class="md" nowrap valign="top"> uint32 MM_Audit_Imp::getTagActualSize </td> 277 <td class="md" valign="top">( </td> 278 <td class="md" nowrap valign="top">const char * </td> 279 <td class="mdname1" valign="top" nowrap> <em>tagIn</em> </td> 280 <td class="md" valign="top">) </td> 281 <td class="md" nowrap></td> 282 </tr> 283 284 </table> 285 </td> 286 </tr> 287</table> 288<table cellspacing=5 cellpadding=0 border=0> 289 <tr> 290 <td> 291 292 </td> 293 <td> 294 295<p> 296<dl compact><dt><b>Returns: </b></dt><dd> 297the size of the truncated tag; 0 means NO truncation </dl> </td> 298 </tr> 299</table> 300<a name="a41" doxytag="MM_Audit_Imp::isSetFailure"></a><p> 301<table width="100%" cellpadding="2" cellspacing="0" border="0"> 302 <tr> 303 <td class="md"> 304 <table cellpadding="0" cellspacing="0" border="0"> 305 <tr> 306 <td class="md" nowrap valign="top"> bool MM_Audit_Imp::isSetFailure </td> 307 <td class="md" valign="top">( </td> 308 <td class="md" nowrap valign="top"><a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> * </td> 309 <td class="mdname1" valign="top" nowrap> <em>statsNode</em> </td> 310 <td class="md" valign="top">) </td> 311 <td class="md" nowrap></td> 312 </tr> 313 314 </table> 315 </td> 316 </tr> 317</table> 318<table cellspacing=5 cellpadding=0 border=0> 319 <tr> 320 <td> 321 322 </td> 323 <td> 324 325<p> 326 </td> 327 </tr> 328</table> 329<a name="a40" doxytag="MM_Audit_Imp::isSetFailure"></a><p> 330<table width="100%" cellpadding="2" cellspacing="0" border="0"> 331 <tr> 332 <td class="md"> 333 <table cellpadding="0" cellspacing="0" border="0"> 334 <tr> 335 <td class="md" nowrap valign="top"> bool MM_Audit_Imp::isSetFailure </td> 336 <td class="md" valign="top">( </td> 337 <td class="md" nowrap valign="top">const char * </td> 338 <td class="mdname1" valign="top" nowrap> <em>tagIn</em> </td> 339 <td class="md" valign="top">) </td> 340 <td class="md" nowrap></td> 341 </tr> 342 343 </table> 344 </td> 345 </tr> 346</table> 347<table cellspacing=5 cellpadding=0 border=0> 348 <tr> 349 <td> 350 351 </td> 352 <td> 353 354<p> 355<dl compact><dt><b>Returns: </b></dt><dd> 356true if operation succeeds; </dl> </td> 357 </tr> 358</table> 359<a name="a38" doxytag="MM_Audit_Imp::makeValidTag"></a><p> 360<table width="100%" cellpadding="2" cellspacing="0" border="0"> 361 <tr> 362 <td class="md"> 363 <table cellpadding="0" cellspacing="0" border="0"> 364 <tr> 365 <td class="md" nowrap valign="top"> void MM_Audit_Imp::makeValidTag </td> 366 <td class="md" valign="top">( </td> 367 <td class="md" nowrap valign="top">const char * </td> 368 <td class="mdname" nowrap> <em>tagIn</em>, </td> 369 </tr> 370 <tr> 371 <td></td> 372 <td></td> 373 <td class="md" nowrap><a class="el" href="group__osclmemory.html#a0">MMAuditCharAutoPtr</a> & </td> 374 <td class="mdname" nowrap> <em>autoptr</em></td> 375 </tr> 376 <tr> 377 <td></td> 378 <td class="md">) </td> 379 <td class="md" colspan="2"></td> 380 </tr> 381 382 </table> 383 </td> 384 </tr> 385</table> 386<table cellspacing=5 cellpadding=0 border=0> 387 <tr> 388 <td> 389 390 </td> 391 <td> 392 393<p> 394<dl compact><dt><b>Returns: </b></dt><dd> 395a valid tag; NULL will be converted into root tag </dl> </td> 396 </tr> 397</table> 398<a name="a7" doxytag="MM_Audit_Imp::MM_AddTag"></a><p> 399<table width="100%" cellpadding="2" cellspacing="0" border="0"> 400 <tr> 401 <td class="md"> 402 <table cellpadding="0" cellspacing="0" border="0"> 403 <tr> 404 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF bool MM_Audit_Imp::MM_AddTag </td> 405 <td class="md" valign="top">( </td> 406 <td class="md" nowrap valign="top">const char * </td> 407 <td class="mdname1" valign="top" nowrap> <em>tagIn</em> </td> 408 <td class="md" valign="top">) </td> 409 <td class="md" nowrap><code> [inline]</code></td> 410 </tr> 411 412 </table> 413 </td> 414 </tr> 415</table> 416<table cellspacing=5 cellpadding=0 border=0> 417 <tr> 418 <td> 419 420 </td> 421 <td> 422 423<p> 424API to add a node and zero out its counters; Note that this tag should be re-used <dl compact><dt><b>Parameters: </b></dt><dd> 425<table border=0 cellspacing=2 cellpadding=0> 426<tr><td valign=top><em>tagIn</em> </td><td> 427input tag </td></tr> 428</table> 429</dl><dl compact><dt><b>Returns: </b></dt><dd> 430true if operation succeeds; </dl> </td> 431 </tr> 432</table> 433<a name="a2" doxytag="MM_Audit_Imp::MM_allocate"></a><p> 434<table width="100%" cellpadding="2" cellspacing="0" border="0"> 435 <tr> 436 <td class="md"> 437 <table cellpadding="0" cellspacing="0" border="0"> 438 <tr> 439 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void* MM_Audit_Imp::MM_allocate </td> 440 <td class="md" valign="top">( </td> 441 <td class="md" nowrap valign="top">const <a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> * </td> 442 <td class="mdname" nowrap> <em>statsNode</em>, </td> 443 </tr> 444 <tr> 445 <td></td> 446 <td></td> 447 <td class="md" nowrap>uint32 </td> 448 <td class="mdname" nowrap> <em>sizeIn</em>, </td> 449 </tr> 450 <tr> 451 <td></td> 452 <td></td> 453 <td class="md" nowrap>const char * </td> 454 <td class="mdname" nowrap> <em>pFileName</em>, </td> 455 </tr> 456 <tr> 457 <td></td> 458 <td></td> 459 <td class="md" nowrap>uint32 </td> 460 <td class="mdname" nowrap> <em>lineNumber</em>, </td> 461 </tr> 462 <tr> 463 <td></td> 464 <td></td> 465 <td class="md" nowrap>bool </td> 466 <td class="mdname" nowrap> <em>allocNodeTracking</em> = false</td> 467 </tr> 468 <tr> 469 <td></td> 470 <td class="md">) </td> 471 <td class="md" colspan="2"></td> 472 </tr> 473 474 </table> 475 </td> 476 </tr> 477</table> 478<table cellspacing=5 cellpadding=0 border=0> 479 <tr> 480 <td> 481 482 </td> 483 <td> 484 485<p> 486The following are APIs t __nothrow_/ const __nothrow_ <dl compact><dt><b>Returns: </b></dt><dd> 487the memory pointer if operation succeeds. </dl> </td> 488 </tr> 489</table> 490<a name="a11" doxytag="MM_Audit_Imp::MM_CreateAllocNodeInfo"></a><p> 491<table width="100%" cellpadding="2" cellspacing="0" border="0"> 492 <tr> 493 <td class="md"> 494 <table cellpadding="0" cellspacing="0" border="0"> 495 <tr> 496 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF <a class="el" href="structMM__AllocQueryInfo.html">MM_AllocQueryInfo</a>* MM_Audit_Imp::MM_CreateAllocNodeInfo </td> 497 <td class="md" valign="top">( </td> 498 <td class="md" nowrap valign="top">uint32 </td> 499 <td class="mdname1" valign="top" nowrap> <em>max_array_size</em> </td> 500 <td class="md" valign="top">) </td> 501 <td class="md" nowrap></td> 502 </tr> 503 504 </table> 505 </td> 506 </tr> 507</table> 508<table cellspacing=5 cellpadding=0 border=0> 509 <tr> 510 <td> 511 512 </td> 513 <td> 514 515<p> 516These APIs will allocate and release space for alloc node info, to be used with the MM_GetAllocNodeInfo API. </td> 517 </tr> 518</table> 519<a name="a3" doxytag="MM_Audit_Imp::MM_deallocate"></a><p> 520<table width="100%" cellpadding="2" cellspacing="0" border="0"> 521 <tr> 522 <td class="md"> 523 <table cellpadding="0" cellspacing="0" border="0"> 524 <tr> 525 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF bool MM_Audit_Imp::MM_deallocate </td> 526 <td class="md" valign="top">( </td> 527 <td class="md" nowrap valign="top">void * </td> 528 <td class="mdname1" valign="top" nowrap> <em>pMemBlockIn</em> </td> 529 <td class="md" valign="top">) </td> 530 <td class="md" nowrap></td> 531 </tr> 532 533 </table> 534 </td> 535 </tr> 536</table> 537<table cellspacing=5 cellpadding=0 border=0> 538 <tr> 539 <td> 540 541 </td> 542 <td> 543 544<p> 545<dl compact><dt><b>Returns: </b></dt><dd> 546true if operation succeeds; </dl> </td> 547 </tr> 548</table> 549<a name="a15" doxytag="MM_Audit_Imp::MM_GetAllocNo"></a><p> 550<table width="100%" cellpadding="2" cellspacing="0" border="0"> 551 <tr> 552 <td class="md"> 553 <table cellpadding="0" cellspacing="0" border="0"> 554 <tr> 555 <td class="md" nowrap valign="top"> uint32 MM_Audit_Imp::MM_GetAllocNo </td> 556 <td class="md" valign="top">( </td> 557 <td class="md" nowrap valign="top">void </td> 558 <td class="mdname1" valign="top" nowrap> </td> 559 <td class="md" valign="top">) </td> 560 <td class="md" nowrap><code> [inline]</code></td> 561 </tr> 562 563 </table> 564 </td> 565 </tr> 566</table> 567<table cellspacing=5 cellpadding=0 border=0> 568 <tr> 569 <td> 570 571 </td> 572 <td> 573 574<p> 575API to get the current allocation number <dl compact><dt><b>Returns: </b></dt><dd> 576the current allocation number </dl> </td> 577 </tr> 578</table> 579<a name="a13" doxytag="MM_Audit_Imp::MM_GetAllocNodeInfo"></a><p> 580<table width="100%" cellpadding="2" cellspacing="0" border="0"> 581 <tr> 582 <td class="md"> 583 <table cellpadding="0" cellspacing="0" border="0"> 584 <tr> 585 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF uint32 MM_Audit_Imp::MM_GetAllocNodeInfo </td> 586 <td class="md" valign="top">( </td> 587 <td class="md" nowrap valign="top"><a class="el" href="structMM__AllocQueryInfo.html">MM_AllocQueryInfo</a> * </td> 588 <td class="mdname" nowrap> <em>output_array</em>, </td> 589 </tr> 590 <tr> 591 <td></td> 592 <td></td> 593 <td class="md" nowrap>uint32 </td> 594 <td class="mdname" nowrap> <em>max_array_size</em>, </td> 595 </tr> 596 <tr> 597 <td></td> 598 <td></td> 599 <td class="md" nowrap>uint32 </td> 600 <td class="mdname" nowrap> <em>offset</em></td> 601 </tr> 602 <tr> 603 <td></td> 604 <td class="md">) </td> 605 <td class="md" colspan="2"></td> 606 </tr> 607 608 </table> 609 </td> 610 </tr> 611</table> 612<table cellspacing=5 cellpadding=0 border=0> 613 <tr> 614 <td> 615 616 </td> 617 <td> 618 619<p> 620API to query the list of alloc nodes. It copies the information into the provided output array. <dl compact><dt><b>Parameters: </b></dt><dd> 621<table border=0 cellspacing=2 cellpadding=0> 622<tr><td valign=top><em>output_array</em> </td><td> 623the array where the data will be written </td></tr> 624<tr><td valign=top><em>max_array_size</em> </td><td> 625the max number of output array elements </td></tr> 626<tr><td valign=top><em>offset</em> </td><td> 627the offset into the alloc node list from which the data should begin. </td></tr> 628</table> 629</dl><dl compact><dt><b>Returns: </b></dt><dd> 630the number of valid nodes in the output array </dl> </td> 631 </tr> 632</table> 633<a name="a9" doxytag="MM_Audit_Imp::MM_GetExistingTag"></a><p> 634<table width="100%" cellpadding="2" cellspacing="0" border="0"> 635 <tr> 636 <td class="md"> 637 <table cellpadding="0" cellspacing="0" border="0"> 638 <tr> 639 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF const <a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a>* MM_Audit_Imp::MM_GetExistingTag </td> 640 <td class="md" valign="top">( </td> 641 <td class="md" nowrap valign="top">const char * </td> 642 <td class="mdname1" valign="top" nowrap> <em>tagIn</em> </td> 643 <td class="md" valign="top">) </td> 644 <td class="md" nowrap></td> 645 </tr> 646 647 </table> 648 </td> 649 </tr> 650</table> 651<table cellspacing=5 cellpadding=0 border=0> 652 <tr> 653 <td> 654 655 </td> 656 <td> 657 658<p> 659API to add a node and zero out its counters; Note that this tag should be re-used <dl compact><dt><b>Parameters: </b></dt><dd> 660<table border=0 cellspacing=2 cellpadding=0> 661<tr><td valign=top><em>tagIn</em> </td><td> 662input tag </td></tr> 663</table> 664</dl><dl compact><dt><b>Returns: </b></dt><dd> 665true if operation succeeds; </dl> </td> 666 </tr> 667</table> 668<a name="a18" doxytag="MM_Audit_Imp::MM_GetMode"></a><p> 669<table width="100%" cellpadding="2" cellspacing="0" border="0"> 670 <tr> 671 <td class="md"> 672 <table cellpadding="0" cellspacing="0" border="0"> 673 <tr> 674 <td class="md" nowrap valign="top"> uint32 MM_Audit_Imp::MM_GetMode </td> 675 <td class="md" valign="top">( </td> 676 <td class="md" nowrap valign="top">void </td> 677 <td class="mdname1" valign="top" nowrap> </td> 678 <td class="md" valign="top">) </td> 679 <td class="md" nowrap><code> [inline]</code></td> 680 </tr> 681 682 </table> 683 </td> 684 </tr> 685</table> 686<table cellspacing=5 cellpadding=0 border=0> 687 <tr> 688 <td> 689 690 </td> 691 <td> 692 693<p> 694API to get the operating mode of the mm_audit class. </td> 695 </tr> 696</table> 697<a name="a17" doxytag="MM_Audit_Imp::MM_GetNumAllocNodes"></a><p> 698<table width="100%" cellpadding="2" cellspacing="0" border="0"> 699 <tr> 700 <td class="md"> 701 <table cellpadding="0" cellspacing="0" border="0"> 702 <tr> 703 <td class="md" nowrap valign="top"> uint32 MM_Audit_Imp::MM_GetNumAllocNodes </td> 704 <td class="md" valign="top">( </td> 705 <td class="mdname1" valign="top" nowrap> </td> 706 <td class="md" valign="top">) </td> 707 <td class="md" nowrap><code> [inline]</code></td> 708 </tr> 709 710 </table> 711 </td> 712 </tr> 713</table> 714<table cellspacing=5 cellpadding=0 border=0> 715 <tr> 716 <td> 717 718 </td> 719 <td> 720 721<p> 722API to get the number of allocation nodes (records) for allocations that are being tracked individually. </td> 723 </tr> 724</table> 725<a name="a16" doxytag="MM_Audit_Imp::MM_GetOverheadStats"></a><p> 726<table width="100%" cellpadding="2" cellspacing="0" border="0"> 727 <tr> 728 <td class="md"> 729 <table cellpadding="0" cellspacing="0" border="0"> 730 <tr> 731 <td class="md" nowrap valign="top"> void MM_Audit_Imp::MM_GetOverheadStats </td> 732 <td class="md" valign="top">( </td> 733 <td class="md" nowrap valign="top"><a class="el" href="structMM__AuditOverheadStats.html">MM_AuditOverheadStats</a> & </td> 734 <td class="mdname1" valign="top" nowrap> <em>stats</em> </td> 735 <td class="md" valign="top">) </td> 736 <td class="md" nowrap><code> [inline]</code></td> 737 </tr> 738 739 </table> 740 </td> 741 </tr> 742</table> 743<table cellspacing=5 cellpadding=0 border=0> 744 <tr> 745 <td> 746 747 </td> 748 <td> 749 750<p> 751API to get the overhead statistics for the memory used by the mm_audit class. </td> 752 </tr> 753</table> 754<a name="a20" doxytag="MM_Audit_Imp::MM_GetPostfillPattern"></a><p> 755<table width="100%" cellpadding="2" cellspacing="0" border="0"> 756 <tr> 757 <td class="md"> 758 <table cellpadding="0" cellspacing="0" border="0"> 759 <tr> 760 <td class="md" nowrap valign="top"> uint32 MM_Audit_Imp::MM_GetPostfillPattern </td> 761 <td class="md" valign="top">( </td> 762 <td class="md" nowrap valign="top">void </td> 763 <td class="mdname1" valign="top" nowrap> </td> 764 <td class="md" valign="top">) </td> 765 <td class="md" nowrap><code> [inline]</code></td> 766 </tr> 767 768 </table> 769 </td> 770 </tr> 771</table> 772<table cellspacing=5 cellpadding=0 border=0> 773 <tr> 774 <td> 775 776 </td> 777 <td> 778 779<p> 780API to get the postfill pattern. The pattern is used to fill the memory before freeing it. </td> 781 </tr> 782</table> 783<a name="a19" doxytag="MM_Audit_Imp::MM_GetPrefillPattern"></a><p> 784<table width="100%" cellpadding="2" cellspacing="0" border="0"> 785 <tr> 786 <td class="md"> 787 <table cellpadding="0" cellspacing="0" border="0"> 788 <tr> 789 <td class="md" nowrap valign="top"> uint8 MM_Audit_Imp::MM_GetPrefillPattern </td> 790 <td class="md" valign="top">( </td> 791 <td class="md" nowrap valign="top">void </td> 792 <td class="mdname1" valign="top" nowrap> </td> 793 <td class="md" valign="top">) </td> 794 <td class="md" nowrap><code> [inline]</code></td> 795 </tr> 796 797 </table> 798 </td> 799 </tr> 800</table> 801<table cellspacing=5 cellpadding=0 border=0> 802 <tr> 803 <td> 804 805 </td> 806 <td> 807 808<p> 809API to get the prefill pattern. The pattern is used to fill the memory before returning it to the caller. </td> 810 </tr> 811</table> 812<a name="a10" doxytag="MM_Audit_Imp::MM_GetRootNode"></a><p> 813<table width="100%" cellpadding="2" cellspacing="0" border="0"> 814 <tr> 815 <td class="md"> 816 <table cellpadding="0" cellspacing="0" border="0"> 817 <tr> 818 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF const <a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a>* MM_Audit_Imp::MM_GetRootNode </td> 819 <td class="md" valign="top">( </td> 820 <td class="mdname1" valign="top" nowrap> </td> 821 <td class="md" valign="top">) </td> 822 <td class="md" nowrap><code> [inline]</code></td> 823 </tr> 824 825 </table> 826 </td> 827 </tr> 828</table> 829<table cellspacing=5 cellpadding=0 border=0> 830 <tr> 831 <td> 832 833 </td> 834 <td> 835 836<p> 837 </td> 838 </tr> 839</table> 840<a name="a4" doxytag="MM_Audit_Imp::MM_GetStats"></a><p> 841<table width="100%" cellpadding="2" cellspacing="0" border="0"> 842 <tr> 843 <td class="md"> 844 <table cellpadding="0" cellspacing="0" border="0"> 845 <tr> 846 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF <a class="el" href="structMM__Stats__t.html">MM_Stats_t</a>* MM_Audit_Imp::MM_GetStats </td> 847 <td class="md" valign="top">( </td> 848 <td class="md" nowrap valign="top">const char *const </td> 849 <td class="mdname1" valign="top" nowrap> <em>tagIn</em> </td> 850 <td class="md" valign="top">) </td> 851 <td class="md" nowrap></td> 852 </tr> 853 854 </table> 855 </td> 856 </tr> 857</table> 858<table cellspacing=5 cellpadding=0 border=0> 859 <tr> 860 <td> 861 862 </td> 863 <td> 864 865<p> 866API to get memory statistics through context string(tag) <dl compact><dt><b>Returns: </b></dt><dd> 867statistics pointer if operation succeeds </dl> </td> 868 </tr> 869</table> 870<a name="a5" doxytag="MM_Audit_Imp::MM_GetStatsInDepth"></a><p> 871<table width="100%" cellpadding="2" cellspacing="0" border="0"> 872 <tr> 873 <td class="md"> 874 <table cellpadding="0" cellspacing="0" border="0"> 875 <tr> 876 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF uint32 MM_Audit_Imp::MM_GetStatsInDepth </td> 877 <td class="md" valign="top">( </td> 878 <td class="md" nowrap valign="top">const char * </td> 879 <td class="mdname" nowrap> <em>tagIn</em>, </td> 880 </tr> 881 <tr> 882 <td></td> 883 <td></td> 884 <td class="md" nowrap><a class="el" href="structMM__Stats__CB.html">MM_Stats_CB</a> * </td> 885 <td class="mdname" nowrap> <em>array_ptr</em>, </td> 886 </tr> 887 <tr> 888 <td></td> 889 <td></td> 890 <td class="md" nowrap>uint32 </td> 891 <td class="mdname" nowrap> <em>max_nodes</em></td> 892 </tr> 893 <tr> 894 <td></td> 895 <td class="md">) </td> 896 <td class="md" colspan="2"></td> 897 </tr> 898 899 </table> 900 </td> 901 </tr> 902</table> 903<table cellspacing=5 cellpadding=0 border=0> 904 <tr> 905 <td> 906 907 </td> 908 <td> 909 910<p> 911API to get memory statistics in detail through context string(tag) including its subtree <dl compact><dt><b>Returns: </b></dt><dd> 912statistics pointer array and actual number of nodes if operation succeeds </dl> </td> 913 </tr> 914</table> 915<a name="a8" doxytag="MM_Audit_Imp::MM_GetTagNode"></a><p> 916<table width="100%" cellpadding="2" cellspacing="0" border="0"> 917 <tr> 918 <td class="md"> 919 <table cellpadding="0" cellspacing="0" border="0"> 920 <tr> 921 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF const <a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a>* MM_Audit_Imp::MM_GetTagNode </td> 922 <td class="md" valign="top">( </td> 923 <td class="md" nowrap valign="top">const char * </td> 924 <td class="mdname1" valign="top" nowrap> <em>tagIn</em> </td> 925 <td class="md" valign="top">) </td> 926 <td class="md" nowrap></td> 927 </tr> 928 929 </table> 930 </td> 931 </tr> 932</table> 933<table cellspacing=5 cellpadding=0 border=0> 934 <tr> 935 <td> 936 937 </td> 938 <td> 939 940<p> 941API to add a node and zero out its counters; Note that this tag should be re-used <dl compact><dt><b>Parameters: </b></dt><dd> 942<table border=0 cellspacing=2 cellpadding=0> 943<tr><td valign=top><em>tagIn</em> </td><td> 944input tag </td></tr> 945</table> 946</dl><dl compact><dt><b>Returns: </b></dt><dd> 947pointer to <a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> which should be passed to MM_allocate </dl> </td> 948 </tr> 949</table> 950<a name="a6" doxytag="MM_Audit_Imp::MM_GetTreeNodes"></a><p> 951<table width="100%" cellpadding="2" cellspacing="0" border="0"> 952 <tr> 953 <td class="md"> 954 <table cellpadding="0" cellspacing="0" border="0"> 955 <tr> 956 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF uint32 MM_Audit_Imp::MM_GetTreeNodes </td> 957 <td class="md" valign="top">( </td> 958 <td class="md" nowrap valign="top">const char * </td> 959 <td class="mdname1" valign="top" nowrap> <em>tagIn</em> </td> 960 <td class="md" valign="top">) </td> 961 <td class="md" nowrap></td> 962 </tr> 963 964 </table> 965 </td> 966 </tr> 967</table> 968<table cellspacing=5 cellpadding=0 border=0> 969 <tr> 970 <td> 971 972 </td> 973 <td> 974 975<p> 976API to get the number of tree nodes including the tag node and its subtree <dl compact><dt><b>Parameters: </b></dt><dd> 977<table border=0 cellspacing=2 cellpadding=0> 978<tr><td valign=top><em>tagIn</em> </td><td> 979input tag </td></tr> 980</table> 981</dl><dl compact><dt><b>Returns: </b></dt><dd> 982the number of tree nodes ; 0 means no tag node </dl> </td> 983 </tr> 984</table> 985<a name="a12" doxytag="MM_Audit_Imp::MM_ReleaseAllocNodeInfo"></a><p> 986<table width="100%" cellpadding="2" cellspacing="0" border="0"> 987 <tr> 988 <td class="md"> 989 <table cellpadding="0" cellspacing="0" border="0"> 990 <tr> 991 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void MM_Audit_Imp::MM_ReleaseAllocNodeInfo </td> 992 <td class="md" valign="top">( </td> 993 <td class="md" nowrap valign="top"><a class="el" href="structMM__AllocQueryInfo.html">MM_AllocQueryInfo</a> * </td> 994 <td class="mdname1" valign="top" nowrap> <em>info</em> </td> 995 <td class="md" valign="top">) </td> 996 <td class="md" nowrap></td> 997 </tr> 998 999 </table> 1000 </td> 1001 </tr> 1002</table> 1003<table cellspacing=5 cellpadding=0 border=0> 1004 <tr> 1005 <td> 1006 1007 </td> 1008 <td> 1009 1010<p> 1011 </td> 1012 </tr> 1013</table> 1014<a name="a25" doxytag="MM_Audit_Imp::MM_SetFailurePoint"></a><p> 1015<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1016 <tr> 1017 <td class="md"> 1018 <table cellpadding="0" cellspacing="0" border="0"> 1019 <tr> 1020 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF bool MM_Audit_Imp::MM_SetFailurePoint </td> 1021 <td class="md" valign="top">( </td> 1022 <td class="md" nowrap valign="top">const char * </td> 1023 <td class="mdname" nowrap> <em>tagIn</em>, </td> 1024 </tr> 1025 <tr> 1026 <td></td> 1027 <td></td> 1028 <td class="md" nowrap>uint32 </td> 1029 <td class="mdname" nowrap> <em>alloc_number</em></td> 1030 </tr> 1031 <tr> 1032 <td></td> 1033 <td class="md">) </td> 1034 <td class="md" colspan="2"></td> 1035 </tr> 1036 1037 </table> 1038 </td> 1039 </tr> 1040</table> 1041<table cellspacing=5 cellpadding=0 border=0> 1042 <tr> 1043 <td> 1044 1045 </td> 1046 <td> 1047 1048<p> 1049API to insert allocation failure deterministically according to allocation number associated with tag <dl compact><dt><b>Parameters: </b></dt><dd> 1050<table border=0 cellspacing=2 cellpadding=0> 1051<tr><td valign=top><em>tagIn</em> </td><td> 1052input tag </td></tr> 1053<tr><td valign=top><em>alloc_number</em> </td><td> 1054allocation number associated with tag </td></tr> 1055</table> 1056</dl><dl compact><dt><b>Returns: </b></dt><dd> 1057true if operation succeeds; </dl> </td> 1058 </tr> 1059</table> 1060<a name="a21" doxytag="MM_Audit_Imp::MM_SetMode"></a><p> 1061<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1062 <tr> 1063 <td class="md"> 1064 <table cellpadding="0" cellspacing="0" border="0"> 1065 <tr> 1066 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void MM_Audit_Imp::MM_SetMode </td> 1067 <td class="md" valign="top">( </td> 1068 <td class="md" nowrap valign="top">uint32 </td> 1069 <td class="mdname1" valign="top" nowrap> <em>inMode</em> </td> 1070 <td class="md" valign="top">) </td> 1071 <td class="md" nowrap></td> 1072 </tr> 1073 1074 </table> 1075 </td> 1076 </tr> 1077</table> 1078<table cellspacing=5 cellpadding=0 border=0> 1079 <tr> 1080 <td> 1081 1082 </td> 1083 <td> 1084 1085<p> 1086API to set the operating mode of the mm_audit class. </td> 1087 </tr> 1088</table> 1089<a name="a23" doxytag="MM_Audit_Imp::MM_SetPostfillPattern"></a><p> 1090<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1091 <tr> 1092 <td class="md"> 1093 <table cellpadding="0" cellspacing="0" border="0"> 1094 <tr> 1095 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void MM_Audit_Imp::MM_SetPostfillPattern </td> 1096 <td class="md" valign="top">( </td> 1097 <td class="md" nowrap valign="top">uint8 </td> 1098 <td class="mdname1" valign="top" nowrap> <em>pattern</em> </td> 1099 <td class="md" valign="top">) </td> 1100 <td class="md" nowrap></td> 1101 </tr> 1102 1103 </table> 1104 </td> 1105 </tr> 1106</table> 1107<table cellspacing=5 cellpadding=0 border=0> 1108 <tr> 1109 <td> 1110 1111 </td> 1112 <td> 1113 1114<p> 1115API to set the postfill pattern. </td> 1116 </tr> 1117</table> 1118<a name="a22" doxytag="MM_Audit_Imp::MM_SetPrefillPattern"></a><p> 1119<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1120 <tr> 1121 <td class="md"> 1122 <table cellpadding="0" cellspacing="0" border="0"> 1123 <tr> 1124 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void MM_Audit_Imp::MM_SetPrefillPattern </td> 1125 <td class="md" valign="top">( </td> 1126 <td class="md" nowrap valign="top">uint8 </td> 1127 <td class="mdname1" valign="top" nowrap> <em>pattern</em> </td> 1128 <td class="md" valign="top">) </td> 1129 <td class="md" nowrap></td> 1130 </tr> 1131 1132 </table> 1133 </td> 1134 </tr> 1135</table> 1136<table cellspacing=5 cellpadding=0 border=0> 1137 <tr> 1138 <td> 1139 1140 </td> 1141 <td> 1142 1143<p> 1144API to set the prefill pattern. </td> 1145 </tr> 1146</table> 1147<a name="a24" doxytag="MM_Audit_Imp::MM_SetTagLevel"></a><p> 1148<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1149 <tr> 1150 <td class="md"> 1151 <table cellpadding="0" cellspacing="0" border="0"> 1152 <tr> 1153 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void MM_Audit_Imp::MM_SetTagLevel </td> 1154 <td class="md" valign="top">( </td> 1155 <td class="md" nowrap valign="top">uint32 </td> 1156 <td class="mdname1" valign="top" nowrap> <em>level</em> </td> 1157 <td class="md" valign="top">) </td> 1158 <td class="md" nowrap></td> 1159 </tr> 1160 1161 </table> 1162 </td> 1163 </tr> 1164</table> 1165<table cellspacing=5 cellpadding=0 border=0> 1166 <tr> 1167 <td> 1168 1169 </td> 1170 <td> 1171 1172<p> 1173API to set the maximum tag level,i.e. tag level for a.b.c.d = 4 <dl compact><dt><b>Parameters: </b></dt><dd> 1174<table border=0 cellspacing=2 cellpadding=0> 1175<tr><td valign=top><em>level</em> </td><td> 1176input tag level to be set </td></tr> 1177</table> 1178</dl> </td> 1179 </tr> 1180</table> 1181<a name="a26" doxytag="MM_Audit_Imp::MM_UnsetFailurePoint"></a><p> 1182<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1183 <tr> 1184 <td class="md"> 1185 <table cellpadding="0" cellspacing="0" border="0"> 1186 <tr> 1187 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void MM_Audit_Imp::MM_UnsetFailurePoint </td> 1188 <td class="md" valign="top">( </td> 1189 <td class="md" nowrap valign="top">const char * </td> 1190 <td class="mdname1" valign="top" nowrap> <em>tagIn</em> </td> 1191 <td class="md" valign="top">) </td> 1192 <td class="md" nowrap></td> 1193 </tr> 1194 1195 </table> 1196 </td> 1197 </tr> 1198</table> 1199<table cellspacing=5 cellpadding=0 border=0> 1200 <tr> 1201 <td> 1202 1203 </td> 1204 <td> 1205 1206<p> 1207API to cancel the allocation failure point associated with tag <dl compact><dt><b>Parameters: </b></dt><dd> 1208<table border=0 cellspacing=2 cellpadding=0> 1209<tr><td valign=top><em>tagIn</em> </td><td> 1210input tag </td></tr> 1211</table> 1212</dl> </td> 1213 </tr> 1214</table> 1215<a name="a14" doxytag="MM_Audit_Imp::MM_Validate"></a><p> 1216<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1217 <tr> 1218 <td class="md"> 1219 <table cellpadding="0" cellspacing="0" border="0"> 1220 <tr> 1221 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF bool MM_Audit_Imp::MM_Validate </td> 1222 <td class="md" valign="top">( </td> 1223 <td class="md" nowrap valign="top">const void * </td> 1224 <td class="mdname1" valign="top" nowrap> <em>ptrIn</em> </td> 1225 <td class="md" valign="top">) </td> 1226 <td class="md" nowrap></td> 1227 </tr> 1228 1229 </table> 1230 </td> 1231 </tr> 1232</table> 1233<table cellspacing=5 cellpadding=0 border=0> 1234 <tr> 1235 <td> 1236 1237 </td> 1238 <td> 1239 1240<p> 1241API to check the input pointer is a valid pointer to a chunk of memory <dl compact><dt><b>Parameters: </b></dt><dd> 1242<table border=0 cellspacing=2 cellpadding=0> 1243<tr><td valign=top><em>ptrIn</em> </td><td> 1244input pointer to be validated </td></tr> 1245</table> 1246</dl><dl compact><dt><b>Returns: </b></dt><dd> 1247true if operation succeeds; </dl> </td> 1248 </tr> 1249</table> 1250<a name="a35" doxytag="MM_Audit_Imp::pruneSubtree"></a><p> 1251<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1252 <tr> 1253 <td class="md"> 1254 <table cellpadding="0" cellspacing="0" border="0"> 1255 <tr> 1256 <td class="md" nowrap valign="top"> bool MM_Audit_Imp::pruneSubtree </td> 1257 <td class="md" valign="top">( </td> 1258 <td class="md" nowrap valign="top">const char * </td> 1259 <td class="mdname1" valign="top" nowrap> <em>tagIn</em> </td> 1260 <td class="md" valign="top">) </td> 1261 <td class="md" nowrap></td> 1262 </tr> 1263 1264 </table> 1265 </td> 1266 </tr> 1267</table> 1268<table cellspacing=5 cellpadding=0 border=0> 1269 <tr> 1270 <td> 1271 1272 </td> 1273 <td> 1274 1275<p> 1276 </td> 1277 </tr> 1278</table> 1279<a name="a34" doxytag="MM_Audit_Imp::pruneSubtree"></a><p> 1280<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1281 <tr> 1282 <td class="md"> 1283 <table cellpadding="0" cellspacing="0" border="0"> 1284 <tr> 1285 <td class="md" nowrap valign="top"> bool MM_Audit_Imp::pruneSubtree </td> 1286 <td class="md" valign="top">( </td> 1287 <td class="md" nowrap valign="top"><a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> * </td> 1288 <td class="mdname1" valign="top" nowrap> <em>pNode</em> </td> 1289 <td class="md" valign="top">) </td> 1290 <td class="md" nowrap></td> 1291 </tr> 1292 1293 </table> 1294 </td> 1295 </tr> 1296</table> 1297<table cellspacing=5 cellpadding=0 border=0> 1298 <tr> 1299 <td> 1300 1301 </td> 1302 <td> 1303 1304<p> 1305<dl compact><dt><b>Returns: </b></dt><dd> 1306true if operation succeeds; </dl> </td> 1307 </tr> 1308</table> 1309<a name="a29" doxytag="MM_Audit_Imp::removeALLAllocNodes"></a><p> 1310<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1311 <tr> 1312 <td class="md"> 1313 <table cellpadding="0" cellspacing="0" border="0"> 1314 <tr> 1315 <td class="md" nowrap valign="top"> void MM_Audit_Imp::removeALLAllocNodes </td> 1316 <td class="md" valign="top">( </td> 1317 <td class="mdname1" valign="top" nowrap> </td> 1318 <td class="md" valign="top">) </td> 1319 <td class="md" nowrap></td> 1320 </tr> 1321 1322 </table> 1323 </td> 1324 </tr> 1325</table> 1326<table cellspacing=5 cellpadding=0 border=0> 1327 <tr> 1328 <td> 1329 1330 </td> 1331 <td> 1332 1333<p> 1334 </td> 1335 </tr> 1336</table> 1337<a name="a28" doxytag="MM_Audit_Imp::removeAllocNode"></a><p> 1338<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1339 <tr> 1340 <td class="md"> 1341 <table cellpadding="0" cellspacing="0" border="0"> 1342 <tr> 1343 <td class="md" nowrap valign="top"> <a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a>* MM_Audit_Imp::removeAllocNode </td> 1344 <td class="md" valign="top">( </td> 1345 <td class="md" nowrap valign="top">void * </td> 1346 <td class="mdname" nowrap> <em>pMemBlockIn</em>, </td> 1347 </tr> 1348 <tr> 1349 <td></td> 1350 <td></td> 1351 <td class="md" nowrap>uint32 & </td> 1352 <td class="mdname" nowrap> <em>size</em></td> 1353 </tr> 1354 <tr> 1355 <td></td> 1356 <td class="md">) </td> 1357 <td class="md" colspan="2"></td> 1358 </tr> 1359 1360 </table> 1361 </td> 1362 </tr> 1363</table> 1364<table cellspacing=5 cellpadding=0 border=0> 1365 <tr> 1366 <td> 1367 1368 </td> 1369 <td> 1370 1371<p> 1372<dl compact><dt><b>Returns: </b></dt><dd> 1373true if operation succeeds; </dl> </td> 1374 </tr> 1375</table> 1376<a name="a36" doxytag="MM_Audit_Imp::retrieveParentTag"></a><p> 1377<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1378 <tr> 1379 <td class="md"> 1380 <table cellpadding="0" cellspacing="0" border="0"> 1381 <tr> 1382 <td class="md" nowrap valign="top"> void MM_Audit_Imp::retrieveParentTag </td> 1383 <td class="md" valign="top">( </td> 1384 <td class="md" nowrap valign="top">char * </td> 1385 <td class="mdname1" valign="top" nowrap> <em>tag</em> </td> 1386 <td class="md" valign="top">) </td> 1387 <td class="md" nowrap></td> 1388 </tr> 1389 1390 </table> 1391 </td> 1392 </tr> 1393</table> 1394<table cellspacing=5 cellpadding=0 border=0> 1395 <tr> 1396 <td> 1397 1398 </td> 1399 <td> 1400 1401<p> 1402 </td> 1403 </tr> 1404</table> 1405<a name="a37" doxytag="MM_Audit_Imp::retrieveParentTagLength"></a><p> 1406<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1407 <tr> 1408 <td class="md"> 1409 <table cellpadding="0" cellspacing="0" border="0"> 1410 <tr> 1411 <td class="md" nowrap valign="top"> int32 MM_Audit_Imp::retrieveParentTagLength </td> 1412 <td class="md" valign="top">( </td> 1413 <td class="md" nowrap valign="top">const char * </td> 1414 <td class="mdname" nowrap> <em>tag</em>, </td> 1415 </tr> 1416 <tr> 1417 <td></td> 1418 <td></td> 1419 <td class="md" nowrap>int32 </td> 1420 <td class="mdname" nowrap> <em>bound</em></td> 1421 </tr> 1422 <tr> 1423 <td></td> 1424 <td class="md">) </td> 1425 <td class="md" colspan="2"></td> 1426 </tr> 1427 1428 </table> 1429 </td> 1430 </tr> 1431</table> 1432<table cellspacing=5 cellpadding=0 border=0> 1433 <tr> 1434 <td> 1435 1436 </td> 1437 <td> 1438 1439<p> 1440<dl compact><dt><b>Returns: </b></dt><dd> 1441the length of a immediate parent tag for the input tag </dl> </td> 1442 </tr> 1443</table> 1444<a name="a31" doxytag="MM_Audit_Imp::updateStatsNode"></a><p> 1445<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1446 <tr> 1447 <td class="md"> 1448 <table cellpadding="0" cellspacing="0" border="0"> 1449 <tr> 1450 <td class="md" nowrap valign="top"> bool MM_Audit_Imp::updateStatsNode </td> 1451 <td class="md" valign="top">( </td> 1452 <td class="md" nowrap valign="top"><a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> * </td> 1453 <td class="mdname" nowrap> <em>pCurrStatsNode</em>, </td> 1454 </tr> 1455 <tr> 1456 <td></td> 1457 <td></td> 1458 <td class="md" nowrap>const <a class="el" href="structMM__Stats__t.html">MM_Stats_t</a> & </td> 1459 <td class="mdname" nowrap> <em>pDelta</em>, </td> 1460 </tr> 1461 <tr> 1462 <td></td> 1463 <td></td> 1464 <td class="md" nowrap>bool </td> 1465 <td class="mdname" nowrap> <em>bAdd</em></td> 1466 </tr> 1467 <tr> 1468 <td></td> 1469 <td class="md">) </td> 1470 <td class="md" colspan="2"></td> 1471 </tr> 1472 1473 </table> 1474 </td> 1475 </tr> 1476</table> 1477<table cellspacing=5 cellpadding=0 border=0> 1478 <tr> 1479 <td> 1480 1481 </td> 1482 <td> 1483 1484<p> 1485<dl compact><dt><b>Returns: </b></dt><dd> 1486true if operation succeeds; </dl> </td> 1487 </tr> 1488</table> 1489<a name="a33" doxytag="MM_Audit_Imp::updateStatsNodeInFailure"></a><p> 1490<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1491 <tr> 1492 <td class="md"> 1493 <table cellpadding="0" cellspacing="0" border="0"> 1494 <tr> 1495 <td class="md" nowrap valign="top"> bool MM_Audit_Imp::updateStatsNodeInFailure </td> 1496 <td class="md" valign="top">( </td> 1497 <td class="md" nowrap valign="top"><a class="el" href="classOsclMemStatsNode.html">OsclMemStatsNode</a> * </td> 1498 <td class="mdname1" valign="top" nowrap> <em>pStatsNode</em> </td> 1499 <td class="md" valign="top">) </td> 1500 <td class="md" nowrap></td> 1501 </tr> 1502 1503 </table> 1504 </td> 1505 </tr> 1506</table> 1507<table cellspacing=5 cellpadding=0 border=0> 1508 <tr> 1509 <td> 1510 1511 </td> 1512 <td> 1513 1514<p> 1515 </td> 1516 </tr> 1517</table> 1518<a name="a32" doxytag="MM_Audit_Imp::updateStatsNodeInFailure"></a><p> 1519<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1520 <tr> 1521 <td class="md"> 1522 <table cellpadding="0" cellspacing="0" border="0"> 1523 <tr> 1524 <td class="md" nowrap valign="top"> bool MM_Audit_Imp::updateStatsNodeInFailure </td> 1525 <td class="md" valign="top">( </td> 1526 <td class="md" nowrap valign="top">const char * </td> 1527 <td class="mdname1" valign="top" nowrap> <em>tagIn</em> </td> 1528 <td class="md" valign="top">) </td> 1529 <td class="md" nowrap></td> 1530 </tr> 1531 1532 </table> 1533 </td> 1534 </tr> 1535</table> 1536<table cellspacing=5 cellpadding=0 border=0> 1537 <tr> 1538 <td> 1539 1540 </td> 1541 <td> 1542 1543<p> 1544<dl compact><dt><b>Returns: </b></dt><dd> 1545true if operation succeeds; </dl> </td> 1546 </tr> 1547</table> 1548<a name="d0" doxytag="MM_Audit_Imp::validate"></a><p> 1549<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1550 <tr> 1551 <td class="md"> 1552 <table cellpadding="0" cellspacing="0" border="0"> 1553 <tr> 1554 <td class="md" nowrap valign="top"> bool MM_Audit_Imp::validate </td> 1555 <td class="md" valign="top">( </td> 1556 <td class="md" nowrap valign="top">void * </td> 1557 <td class="mdname1" valign="top" nowrap> <em>ptrIn</em> </td> 1558 <td class="md" valign="top">) </td> 1559 <td class="md" nowrap><code> [static]</code></td> 1560 </tr> 1561 1562 </table> 1563 </td> 1564 </tr> 1565</table> 1566<table cellspacing=5 cellpadding=0 border=0> 1567 <tr> 1568 <td> 1569 1570 </td> 1571 <td> 1572 1573<p> 1574<dl compact><dt><b>Returns: </b></dt><dd> 1575true if operation succeeds; </dl> </td> 1576 </tr> 1577</table> 1578<a name="a42" doxytag="MM_Audit_Imp::validate_all_heap"></a><p> 1579<table width="100%" cellpadding="2" cellspacing="0" border="0"> 1580 <tr> 1581 <td class="md"> 1582 <table cellpadding="0" cellspacing="0" border="0"> 1583 <tr> 1584 <td class="md" nowrap valign="top"> bool MM_Audit_Imp::validate_all_heap </td> 1585 <td class="md" valign="top">( </td> 1586 <td class="mdname1" valign="top" nowrap> </td> 1587 <td class="md" valign="top">) </td> 1588 <td class="md" nowrap></td> 1589 </tr> 1590 1591 </table> 1592 </td> 1593 </tr> 1594</table> 1595<table cellspacing=5 cellpadding=0 border=0> 1596 <tr> 1597 <td> 1598 1599 </td> 1600 <td> 1601 1602<p> 1603<dl compact><dt><b>Returns: </b></dt><dd> 1604true if operation succeeds; </dl> </td> 1605 </tr> 1606</table> 1607<hr>The documentation for this class was generated from the following file:<ul> 1608<li><a class="el" href="oscl__mem__audit_8h-source.html">oscl_mem_audit.h</a></ul> 1609<hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small> 1610<address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small> 1611</small></address> 1612</body> 1613</html> 1614