• 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>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> &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>OsclRefCounterMemFrag Class Reference<br>
10<small>
11[<a class="el" href="group__osclbase.html">OSCL Base</a>]</small>
12</h1><code>#include &lt;<a class="el" href="oscl__refcounter__memfrag_8h-source.html">oscl_refcounter_memfrag.h</a>&gt;</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>&nbsp;</td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a0">OsclRefCounterMemFrag</a> (<a class="el" href="structOsclMemoryFragment.html">OsclMemoryFragment</a> &amp;m, <a class="el" href="classOsclRefCounter.html">OsclRefCounter</a> *r, uint32 in_capacity)</td></tr>
18<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a1">OsclRefCounterMemFrag</a> (const OsclRefCounterMemFrag &amp;x)</td></tr>
19<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a2">OsclRefCounterMemFrag</a> ()</td></tr>
20<tr><td nowrap align=right valign=top>OsclRefCounterMemFrag &amp;&nbsp;</td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a3">operator=</a> (const OsclRefCounterMemFrag &amp;x)</td></tr>
21<tr><td nowrap align=right valign=top>&nbsp;</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> *&nbsp;</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> &amp;&nbsp;</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> *&nbsp;</td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a7">getMemFragPtr</a> ()</td></tr>
25<tr><td nowrap align=right valign=top>uint32&nbsp;</td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a8">getMemFragSize</a> ()</td></tr>
26<tr><td nowrap align=right valign=top>uint32&nbsp;</td><td valign=bottom><a class="el" href="classOsclRefCounterMemFrag.html#a9">getCapacity</a> ()</td></tr>
27<tr><td nowrap align=right valign=top>uint32&nbsp;</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 &amp; 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">(&nbsp;</td>
41          <td class="md" nowrap valign="top"><a class="el" href="structOsclMemoryFragment.html">OsclMemoryFragment</a> &amp;&nbsp;</td>
42          <td class="mdname" nowrap>&nbsp; <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> *&nbsp;</td>
48          <td class="mdname" nowrap>&nbsp; <em>r</em>, </td>
49        </tr>
50        <tr>
51          <td></td>
52          <td></td>
53          <td class="md" nowrap>uint32&nbsp;</td>
54          <td class="mdname" nowrap>&nbsp; <em>in_capacity</em></td>
55        </tr>
56        <tr>
57          <td></td>
58          <td class="md">)&nbsp;</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      &nbsp;
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>&nbsp;</td><td>
77reference to memory fragment </td></tr>
78<tr><td valign=top><em>r</em>&nbsp;</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">(&nbsp;</td>
92          <td class="md" nowrap valign="top">const OsclRefCounterMemFrag &amp;&nbsp;</td>
93          <td class="mdname1" valign="top" nowrap>&nbsp; <em>x</em>          </td>
94          <td class="md" valign="top">)&nbsp;</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      &nbsp;
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">(&nbsp;</td>
121          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
122          <td class="md" valign="top">)&nbsp;</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      &nbsp;
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">(&nbsp;</td>
149          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
150          <td class="md" valign="top">)&nbsp;</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      &nbsp;
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">(&nbsp;</td>
178          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
179          <td class="md" valign="top">)&nbsp;</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      &nbsp;
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">(&nbsp;</td>
209          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
210          <td class="md" valign="top">)&nbsp;</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      &nbsp;
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>&amp; OsclRefCounterMemFrag::getMemFrag </td>
236          <td class="md" valign="top">(&nbsp;</td>
237          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
238          <td class="md" valign="top">)&nbsp;</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      &nbsp;
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">(&nbsp;</td>
265          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
266          <td class="md" valign="top">)&nbsp;</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      &nbsp;
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">(&nbsp;</td>
293          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
294          <td class="md" valign="top">)&nbsp;</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      &nbsp;
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">(&nbsp;</td>
324          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
325          <td class="md" valign="top">)&nbsp;</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      &nbsp;
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&amp; OsclRefCounterMemFrag::operator= </td>
351          <td class="md" valign="top">(&nbsp;</td>
352          <td class="md" nowrap valign="top">const OsclRefCounterMemFrag &amp;&nbsp;</td>
353          <td class="mdname1" valign="top" nowrap>&nbsp; <em>x</em>          </td>
354          <td class="md" valign="top">)&nbsp;</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      &nbsp;
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