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>OsclRefCounterMemFrag 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>OsclRefCounterMemFrag Class Reference<br> 10<small> 11[<a class="el" href="group__osclbase.html">OSCL Base</a>]</small> 12</h1><code>#include <<a class="el" href="oscl__refcounter__memfrag_8h-source.html">oscl_refcounter_memfrag.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="classOsclRefCounterMemFrag.html#a0">OsclRefCounterMemFrag</a> (<a class="el" href="structOsclMemoryFragment.html">OsclMemoryFragment</a> &m, <a class="el" href="classOsclRefCounter.html">OsclRefCounter</a> *r, uint32 in_capacity)</td></tr> 18<tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a1">OsclRefCounterMemFrag</a> (const OsclRefCounterMemFrag &x)</td></tr> 19<tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a2">OsclRefCounterMemFrag</a> ()</td></tr> 20<tr><td nowrap align=right valign=top>OsclRefCounterMemFrag & </td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a3">operator=</a> (const OsclRefCounterMemFrag &x)</td></tr> 21<tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a4">~OsclRefCounterMemFrag</a> ()</td></tr> 22<tr><td nowrap align=right valign=top><a class="el" href="classOsclRefCounter.html">OsclRefCounter</a> * </td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a5">getRefCounter</a> ()</td></tr> 23<tr><td nowrap align=right valign=top><a class="el" href="structOsclMemoryFragment.html">OsclMemoryFragment</a> & </td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a6">getMemFrag</a> ()</td></tr> 24<tr><td nowrap align=right valign=top><a class="el" href="group__osclbase.html#a25">OsclAny</a> * </td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a7">getMemFragPtr</a> ()</td></tr> 25<tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a8">getMemFragSize</a> ()</td></tr> 26<tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a9">getCapacity</a> ()</td></tr> 27<tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a10">getCount</a> ()</td></tr> 28</table> 29<hr><a name="_details"></a><h2>Detailed Description</h2> 30Class to contain a memory fragment with it's associated reference counter. 31<p> 32<hr><h2>Constructor & Destructor Documentation</h2> 33<a name="a0" doxytag="OsclRefCounterMemFrag::OsclRefCounterMemFrag"></a><p> 34<table width="100%" cellpadding="2" cellspacing="0" border="0"> 35 <tr> 36 <td class="md"> 37 <table cellpadding="0" cellspacing="0" border="0"> 38 <tr> 39 <td class="md" nowrap valign="top"> OsclRefCounterMemFrag::OsclRefCounterMemFrag </td> 40 <td class="md" valign="top">( </td> 41 <td class="md" nowrap valign="top"><a class="el" href="structOsclMemoryFragment.html">OsclMemoryFragment</a> & </td> 42 <td class="mdname" nowrap> <em>m</em>, </td> 43 </tr> 44 <tr> 45 <td></td> 46 <td></td> 47 <td class="md" nowrap><a class="el" href="classOsclRefCounter.html">OsclRefCounter</a> * </td> 48 <td class="mdname" nowrap> <em>r</em>, </td> 49 </tr> 50 <tr> 51 <td></td> 52 <td></td> 53 <td class="md" nowrap>uint32 </td> 54 <td class="mdname" nowrap> <em>in_capacity</em></td> 55 </tr> 56 <tr> 57 <td></td> 58 <td class="md">) </td> 59 <td class="md" colspan="2"><code> [inline]</code></td> 60 </tr> 61 62 </table> 63 </td> 64 </tr> 65</table> 66<table cellspacing=5 cellpadding=0 border=0> 67 <tr> 68 <td> 69 70 </td> 71 <td> 72 73<p> 74Constructor. A valid memory fragment and reference counter are required as input. The memory fragment structure will be copied locally.<dl compact><dt><b>Parameters: </b></dt><dd> 75<table border=0 cellspacing=2 cellpadding=0> 76<tr><td valign=top><em>m</em> </td><td> 77reference to memory fragment </td></tr> 78<tr><td valign=top><em>r</em> </td><td> 79pointer to the reference counter associated with the memory fragment. </td></tr> 80</table> 81</dl> </td> 82 </tr> 83</table> 84<a name="a1" doxytag="OsclRefCounterMemFrag::OsclRefCounterMemFrag"></a><p> 85<table width="100%" cellpadding="2" cellspacing="0" border="0"> 86 <tr> 87 <td class="md"> 88 <table cellpadding="0" cellspacing="0" border="0"> 89 <tr> 90 <td class="md" nowrap valign="top"> OsclRefCounterMemFrag::OsclRefCounterMemFrag </td> 91 <td class="md" valign="top">( </td> 92 <td class="md" nowrap valign="top">const OsclRefCounterMemFrag & </td> 93 <td class="mdname1" valign="top" nowrap> <em>x</em> </td> 94 <td class="md" valign="top">) </td> 95 <td class="md" nowrap><code> [inline]</code></td> 96 </tr> 97 98 </table> 99 </td> 100 </tr> 101</table> 102<table cellspacing=5 cellpadding=0 border=0> 103 <tr> 104 <td> 105 106 </td> 107 <td> 108 109<p> 110Copy constructor. </td> 111 </tr> 112</table> 113<a name="a2" doxytag="OsclRefCounterMemFrag::OsclRefCounterMemFrag"></a><p> 114<table width="100%" cellpadding="2" cellspacing="0" border="0"> 115 <tr> 116 <td class="md"> 117 <table cellpadding="0" cellspacing="0" border="0"> 118 <tr> 119 <td class="md" nowrap valign="top"> OsclRefCounterMemFrag::OsclRefCounterMemFrag </td> 120 <td class="md" valign="top">( </td> 121 <td class="mdname1" valign="top" nowrap> </td> 122 <td class="md" valign="top">) </td> 123 <td class="md" nowrap><code> [inline]</code></td> 124 </tr> 125 126 </table> 127 </td> 128 </tr> 129</table> 130<table cellspacing=5 cellpadding=0 border=0> 131 <tr> 132 <td> 133 134 </td> 135 <td> 136 137<p> 138Default constructor. </td> 139 </tr> 140</table> 141<a name="a4" doxytag="OsclRefCounterMemFrag::~OsclRefCounterMemFrag"></a><p> 142<table width="100%" cellpadding="2" cellspacing="0" border="0"> 143 <tr> 144 <td class="md"> 145 <table cellpadding="0" cellspacing="0" border="0"> 146 <tr> 147 <td class="md" nowrap valign="top"> OsclRefCounterMemFrag::~OsclRefCounterMemFrag </td> 148 <td class="md" valign="top">( </td> 149 <td class="mdname1" valign="top" nowrap> </td> 150 <td class="md" valign="top">) </td> 151 <td class="md" nowrap><code> [inline]</code></td> 152 </tr> 153 154 </table> 155 </td> 156 </tr> 157</table> 158<table cellspacing=5 cellpadding=0 border=0> 159 <tr> 160 <td> 161 162 </td> 163 <td> 164 165<p> 166Destructor. Removes this object's reference from the reference counter. The reference counter will not be deleted. The reference counter is designed to self-delete when it's reference count reaches 0. </td> 167 </tr> 168</table> 169<hr><h2>Member Function Documentation</h2> 170<a name="a9" doxytag="OsclRefCounterMemFrag::getCapacity"></a><p> 171<table width="100%" cellpadding="2" cellspacing="0" border="0"> 172 <tr> 173 <td class="md"> 174 <table cellpadding="0" cellspacing="0" border="0"> 175 <tr> 176 <td class="md" nowrap valign="top"> uint32 OsclRefCounterMemFrag::getCapacity </td> 177 <td class="md" valign="top">( </td> 178 <td class="mdname1" valign="top" nowrap> </td> 179 <td class="md" valign="top">) </td> 180 <td class="md" nowrap><code> [inline]</code></td> 181 </tr> 182 183 </table> 184 </td> 185 </tr> 186</table> 187<table cellspacing=5 cellpadding=0 border=0> 188 <tr> 189 <td> 190 191 </td> 192 <td> 193 194<p> 195Returns the capacity of the memory fragment 196<p> 197<dl compact><dt><b>Returns: </b></dt><dd> 198</dl> </td> 199 </tr> 200</table> 201<a name="a10" doxytag="OsclRefCounterMemFrag::getCount"></a><p> 202<table width="100%" cellpadding="2" cellspacing="0" border="0"> 203 <tr> 204 <td class="md"> 205 <table cellpadding="0" cellspacing="0" border="0"> 206 <tr> 207 <td class="md" nowrap valign="top"> uint32 OsclRefCounterMemFrag::getCount </td> 208 <td class="md" valign="top">( </td> 209 <td class="mdname1" valign="top" nowrap> </td> 210 <td class="md" valign="top">) </td> 211 <td class="md" nowrap><code> [inline]</code></td> 212 </tr> 213 214 </table> 215 </td> 216 </tr> 217</table> 218<table cellspacing=5 cellpadding=0 border=0> 219 <tr> 220 <td> 221 222 </td> 223 <td> 224 225<p> 226Returns the reference counter's current count. </td> 227 </tr> 228</table> 229<a name="a6" doxytag="OsclRefCounterMemFrag::getMemFrag"></a><p> 230<table width="100%" cellpadding="2" cellspacing="0" border="0"> 231 <tr> 232 <td class="md"> 233 <table cellpadding="0" cellspacing="0" border="0"> 234 <tr> 235 <td class="md" nowrap valign="top"> <a class="el" href="structOsclMemoryFragment.html">OsclMemoryFragment</a>& OsclRefCounterMemFrag::getMemFrag </td> 236 <td class="md" valign="top">( </td> 237 <td class="mdname1" valign="top" nowrap> </td> 238 <td class="md" valign="top">) </td> 239 <td class="md" nowrap><code> [inline]</code></td> 240 </tr> 241 242 </table> 243 </td> 244 </tr> 245</table> 246<table cellspacing=5 cellpadding=0 border=0> 247 <tr> 248 <td> 249 250 </td> 251 <td> 252 253<p> 254Returns a reference to the contained memory fragment structure. </td> 255 </tr> 256</table> 257<a name="a7" doxytag="OsclRefCounterMemFrag::getMemFragPtr"></a><p> 258<table width="100%" cellpadding="2" cellspacing="0" border="0"> 259 <tr> 260 <td class="md"> 261 <table cellpadding="0" cellspacing="0" border="0"> 262 <tr> 263 <td class="md" nowrap valign="top"> <a class="el" href="group__osclbase.html#a25">OsclAny</a>* OsclRefCounterMemFrag::getMemFragPtr </td> 264 <td class="md" valign="top">( </td> 265 <td class="mdname1" valign="top" nowrap> </td> 266 <td class="md" valign="top">) </td> 267 <td class="md" nowrap><code> [inline]</code></td> 268 </tr> 269 270 </table> 271 </td> 272 </tr> 273</table> 274<table cellspacing=5 cellpadding=0 border=0> 275 <tr> 276 <td> 277 278 </td> 279 <td> 280 281<p> 282Returns a pointer to the memory fragment data. </td> 283 </tr> 284</table> 285<a name="a8" doxytag="OsclRefCounterMemFrag::getMemFragSize"></a><p> 286<table width="100%" cellpadding="2" cellspacing="0" border="0"> 287 <tr> 288 <td class="md"> 289 <table cellpadding="0" cellspacing="0" border="0"> 290 <tr> 291 <td class="md" nowrap valign="top"> uint32 OsclRefCounterMemFrag::getMemFragSize </td> 292 <td class="md" valign="top">( </td> 293 <td class="mdname1" valign="top" nowrap> </td> 294 <td class="md" valign="top">) </td> 295 <td class="md" nowrap><code> [inline]</code></td> 296 </tr> 297 298 </table> 299 </td> 300 </tr> 301</table> 302<table cellspacing=5 cellpadding=0 border=0> 303 <tr> 304 <td> 305 306 </td> 307 <td> 308 309<p> 310Returns the size of the memory fragment data which equals its filled size. 311<p> 312<dl compact><dt><b>Returns: </b></dt><dd> 313</dl> </td> 314 </tr> 315</table> 316<a name="a5" doxytag="OsclRefCounterMemFrag::getRefCounter"></a><p> 317<table width="100%" cellpadding="2" cellspacing="0" border="0"> 318 <tr> 319 <td class="md"> 320 <table cellpadding="0" cellspacing="0" border="0"> 321 <tr> 322 <td class="md" nowrap valign="top"> <a class="el" href="classOsclRefCounter.html">OsclRefCounter</a>* OsclRefCounterMemFrag::getRefCounter </td> 323 <td class="md" valign="top">( </td> 324 <td class="mdname1" valign="top" nowrap> </td> 325 <td class="md" valign="top">) </td> 326 <td class="md" nowrap><code> [inline]</code></td> 327 </tr> 328 329 </table> 330 </td> 331 </tr> 332</table> 333<table cellspacing=5 cellpadding=0 border=0> 334 <tr> 335 <td> 336 337 </td> 338 <td> 339 340<p> 341Returns a pointer to the contained reference counter object </td> 342 </tr> 343</table> 344<a name="a3" doxytag="OsclRefCounterMemFrag::operator="></a><p> 345<table width="100%" cellpadding="2" cellspacing="0" border="0"> 346 <tr> 347 <td class="md"> 348 <table cellpadding="0" cellspacing="0" border="0"> 349 <tr> 350 <td class="md" nowrap valign="top"> OsclRefCounterMemFrag& OsclRefCounterMemFrag::operator= </td> 351 <td class="md" valign="top">( </td> 352 <td class="md" nowrap valign="top">const OsclRefCounterMemFrag & </td> 353 <td class="mdname1" valign="top" nowrap> <em>x</em> </td> 354 <td class="md" valign="top">) </td> 355 <td class="md" nowrap><code> [inline]</code></td> 356 </tr> 357 358 </table> 359 </td> 360 </tr> 361</table> 362<table cellspacing=5 cellpadding=0 border=0> 363 <tr> 364 <td> 365 366 </td> 367 <td> 368 369<p> 370Assignment Operator </td> 371 </tr> 372</table> 373<hr>The documentation for this class was generated from the following file:<ul> 374<li><a class="el" href="oscl__refcounter__memfrag_8h-source.html">oscl_refcounter_memfrag.h</a></ul> 375<hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small> 376<address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small> 377</small></address> 378</body> 379</html> 380