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_Vector_Base 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>Oscl_Vector_Base 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__vector_8h-source.html">oscl_vector.h</a>></code> 13<p> 14<p>Inheritance diagram for Oscl_Vector_Base: 15<p><center><img src="classOscl__Vector__Base.png" usemap="#Oscl_Vector_Base_map" border="0" alt=""></center> 16<map name="Oscl_Vector_Base_map"> 17<area href="classOscl__Vector.html" alt="Oscl_Vector< T, Alloc >" shape="rect" coords="0,56,276,80"> 18<area href="classOscl__Vector.html" alt="Oscl_Vector< TOsclReady, OsclReadyAlloc >" shape="rect" coords="286,56,562,80"> 19</map> 20<table border=0 cellpadding=0 cellspacing=0> 21<tr><td></td></tr> 22<tr><td colspan=2><br><h2>Public Methods</h2></td></tr> 23<tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#a0">size</a> () const</td></tr> 24<tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#a1">capacity</a> () const</td></tr> 25<tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#a2">empty</a> () const</td></tr> 26<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#a3">reserve</a> (uint32 n)</td></tr> 27<tr><td colspan=2><br><h2>Protected Methods</h2></td></tr> 28<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#b0">construct</a> (<a class="el" href="classOscl__Opaque__Type__Alloc.html">Oscl_Opaque_Type_Alloc</a> *aType)</td></tr> 29<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#b1">construct</a> (<a class="el" href="classOscl__Opaque__Type__Alloc.html">Oscl_Opaque_Type_Alloc</a> *aType, uint32 n)</td></tr> 30<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#b2">construct</a> (<a class="el" href="classOscl__Opaque__Type__Alloc.html">Oscl_Opaque_Type_Alloc</a> *aType, const Oscl_Vector_Base &x)</td></tr> 31<tr><td nowrap align=right valign=top>virtual </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#b3">~Oscl_Vector_Base</a> ()</td></tr> 32<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#b4">push_back</a> (const <a class="el" href="group__osclbase.html#a25">OsclAny</a> *x)</td></tr> 33<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#b5">pop_back</a> ()</td></tr> 34<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#b6">push_front</a> (const <a class="el" href="group__osclbase.html#a25">OsclAny</a> *x)</td></tr> 35<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF <a class="el" href="group__osclbase.html#a25">OsclAny</a> * </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#b7">insert</a> (<a class="el" href="group__osclbase.html#a25">OsclAny</a> *pos, const <a class="el" href="group__osclbase.html#a25">OsclAny</a> *x)</td></tr> 36<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF <a class="el" href="group__osclbase.html#a25">OsclAny</a> * </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#b8">erase</a> (<a class="el" href="group__osclbase.html#a25">OsclAny</a> *pos)</td></tr> 37<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF <a class="el" href="group__osclbase.html#a25">OsclAny</a> * </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#b9">erase</a> (<a class="el" href="group__osclbase.html#a25">OsclAny</a> *first, <a class="el" href="group__osclbase.html#a25">OsclAny</a> *last)</td></tr> 38<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#b10">assign_vector</a> (const Oscl_Vector_Base &x)</td></tr> 39<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#b11">destroy</a> ()</td></tr> 40<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr> 41<tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#n0">numelems</a></td></tr> 42<tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#n1">bufsize</a></td></tr> 43<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="classOscl__Vector__Base.html#n2">elems</a></td></tr> 44<tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#n3">sizeof_T</a></td></tr> 45<tr><td colspan=2><br><h2>Friends</h2></td></tr> 46<tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="classOscl__Vector__Base.html#l0">OsclPriorityQueueBase</a></td></tr> 47</table> 48<hr><a name="_details"></a><h2>Detailed Description</h2> 49Oscl_Vector_Base is a non-templatized base class for <a class="el" href="classOscl__Vector.html">Oscl_Vector</a>. The purpose of this base class is to avoid large inline routines in the <a class="el" href="classOscl__Vector.html">Oscl_Vector</a> implementation. This class is not intended for direct instantiation except by <a class="el" href="classOscl__Vector.html">Oscl_Vector</a>. 50<p> 51<hr><h2>Constructor & Destructor Documentation</h2> 52<a name="b3" doxytag="Oscl_Vector_Base::~Oscl_Vector_Base"></a><p> 53<table width="100%" cellpadding="2" cellspacing="0" border="0"> 54 <tr> 55 <td class="md"> 56 <table cellpadding="0" cellspacing="0" border="0"> 57 <tr> 58 <td class="md" nowrap valign="top"> virtual Oscl_Vector_Base::~Oscl_Vector_Base </td> 59 <td class="md" valign="top">( </td> 60 <td class="mdname1" valign="top" nowrap> </td> 61 <td class="md" valign="top">) </td> 62 <td class="md" nowrap><code> [inline, protected, virtual]</code></td> 63 </tr> 64 65 </table> 66 </td> 67 </tr> 68</table> 69<table cellspacing=5 cellpadding=0 border=0> 70 <tr> 71 <td> 72 73 </td> 74 <td> 75 76<p> 77The destructor. </td> 78 </tr> 79</table> 80<hr><h2>Member Function Documentation</h2> 81<a name="b10" doxytag="Oscl_Vector_Base::assign_vector"></a><p> 82<table width="100%" cellpadding="2" cellspacing="0" border="0"> 83 <tr> 84 <td class="md"> 85 <table cellpadding="0" cellspacing="0" border="0"> 86 <tr> 87 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void Oscl_Vector_Base::assign_vector </td> 88 <td class="md" valign="top">( </td> 89 <td class="md" nowrap valign="top">const Oscl_Vector_Base & </td> 90 <td class="mdname1" valign="top" nowrap> <em>x</em> </td> 91 <td class="md" valign="top">) </td> 92 <td class="md" nowrap><code> [protected]</code></td> 93 </tr> 94 95 </table> 96 </td> 97 </tr> 98</table> 99<table cellspacing=5 cellpadding=0 border=0> 100 <tr> 101 <td> 102 103 </td> 104 <td> 105 106<p> 107 </td> 108 </tr> 109</table> 110<a name="a1" doxytag="Oscl_Vector_Base::capacity"></a><p> 111<table width="100%" cellpadding="2" cellspacing="0" border="0"> 112 <tr> 113 <td class="md"> 114 <table cellpadding="0" cellspacing="0" border="0"> 115 <tr> 116 <td class="md" nowrap valign="top"> uint32 Oscl_Vector_Base::capacity </td> 117 <td class="md" valign="top">( </td> 118 <td class="mdname1" valign="top" nowrap> </td> 119 <td class="md" valign="top">) </td> 120 <td class="md" nowrap> const<code> [inline]</code></td> 121 </tr> 122 123 </table> 124 </td> 125 </tr> 126</table> 127<table cellspacing=5 cellpadding=0 border=0> 128 <tr> 129 <td> 130 131 </td> 132 <td> 133 134<p> 135Returns the allocated memory of the vector in units of number of elements. </td> 136 </tr> 137</table> 138<a name="b2" doxytag="Oscl_Vector_Base::construct"></a><p> 139<table width="100%" cellpadding="2" cellspacing="0" border="0"> 140 <tr> 141 <td class="md"> 142 <table cellpadding="0" cellspacing="0" border="0"> 143 <tr> 144 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void Oscl_Vector_Base::construct </td> 145 <td class="md" valign="top">( </td> 146 <td class="md" nowrap valign="top"><a class="el" href="classOscl__Opaque__Type__Alloc.html">Oscl_Opaque_Type_Alloc</a> * </td> 147 <td class="mdname" nowrap> <em>aType</em>, </td> 148 </tr> 149 <tr> 150 <td></td> 151 <td></td> 152 <td class="md" nowrap>const Oscl_Vector_Base & </td> 153 <td class="mdname" nowrap> <em>x</em></td> 154 </tr> 155 <tr> 156 <td></td> 157 <td class="md">) </td> 158 <td class="md" colspan="2"><code> [protected]</code></td> 159 </tr> 160 161 </table> 162 </td> 163 </tr> 164</table> 165<table cellspacing=5 cellpadding=0 border=0> 166 <tr> 167 <td> 168 169 </td> 170 <td> 171 172<p> 173 </td> 174 </tr> 175</table> 176<a name="b1" doxytag="Oscl_Vector_Base::construct"></a><p> 177<table width="100%" cellpadding="2" cellspacing="0" border="0"> 178 <tr> 179 <td class="md"> 180 <table cellpadding="0" cellspacing="0" border="0"> 181 <tr> 182 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void Oscl_Vector_Base::construct </td> 183 <td class="md" valign="top">( </td> 184 <td class="md" nowrap valign="top"><a class="el" href="classOscl__Opaque__Type__Alloc.html">Oscl_Opaque_Type_Alloc</a> * </td> 185 <td class="mdname" nowrap> <em>aType</em>, </td> 186 </tr> 187 <tr> 188 <td></td> 189 <td></td> 190 <td class="md" nowrap>uint32 </td> 191 <td class="mdname" nowrap> <em>n</em></td> 192 </tr> 193 <tr> 194 <td></td> 195 <td class="md">) </td> 196 <td class="md" colspan="2"><code> [protected]</code></td> 197 </tr> 198 199 </table> 200 </td> 201 </tr> 202</table> 203<table cellspacing=5 cellpadding=0 border=0> 204 <tr> 205 <td> 206 207 </td> 208 <td> 209 210<p> 211 </td> 212 </tr> 213</table> 214<a name="b0" doxytag="Oscl_Vector_Base::construct"></a><p> 215<table width="100%" cellpadding="2" cellspacing="0" border="0"> 216 <tr> 217 <td class="md"> 218 <table cellpadding="0" cellspacing="0" border="0"> 219 <tr> 220 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void Oscl_Vector_Base::construct </td> 221 <td class="md" valign="top">( </td> 222 <td class="md" nowrap valign="top"><a class="el" href="classOscl__Opaque__Type__Alloc.html">Oscl_Opaque_Type_Alloc</a> * </td> 223 <td class="mdname1" valign="top" nowrap> <em>aType</em> </td> 224 <td class="md" valign="top">) </td> 225 <td class="md" nowrap><code> [protected]</code></td> 226 </tr> 227 228 </table> 229 </td> 230 </tr> 231</table> 232<table cellspacing=5 cellpadding=0 border=0> 233 <tr> 234 <td> 235 236 </td> 237 <td> 238 239<p> 240 </td> 241 </tr> 242</table> 243<a name="b11" doxytag="Oscl_Vector_Base::destroy"></a><p> 244<table width="100%" cellpadding="2" cellspacing="0" border="0"> 245 <tr> 246 <td class="md"> 247 <table cellpadding="0" cellspacing="0" border="0"> 248 <tr> 249 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void Oscl_Vector_Base::destroy </td> 250 <td class="md" valign="top">( </td> 251 <td class="mdname1" valign="top" nowrap> </td> 252 <td class="md" valign="top">) </td> 253 <td class="md" nowrap><code> [protected]</code></td> 254 </tr> 255 256 </table> 257 </td> 258 </tr> 259</table> 260<table cellspacing=5 cellpadding=0 border=0> 261 <tr> 262 <td> 263 264 </td> 265 <td> 266 267<p> 268 269<p> 270Reimplemented in <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< T, Alloc ></a>, <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< OsclComponentRegistryElement, OsclMemAllocator ></a>, <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< uint32, OsclMemAllocator ></a>, <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< OsclSocketServRequestQElem, OsclMemAllocator ></a>, <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< Node *, Alloc ></a>, <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< OsclSocketRequest *, OsclMemAllocator ></a>, <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< entry_type *, Alloc ></a>, <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< OSCL_HeapString< OsclMemAllocator >, OsclMemAllocator ></a>, <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< OsclAsyncFileBuffer *, OsclMemAllocator ></a>, <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< MemPoolBufferInfo *, OsclMemAllocator ></a>, <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< OsclSharedPtr< PVLoggerFilter >, alloc_type ></a>, <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< TOsclReady, OsclReadyAlloc ></a>, <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< OsclSharedPtr< PVLoggerAppender >, alloc_type ></a>, <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< OsclNetworkAddress, OsclMemAllocator ></a>, and <a class="el" href="classOscl__Vector.html#a16">Oscl_Vector< OsclAny *, OsclMemAllocator ></a>. </td> 271 </tr> 272</table> 273<a name="a2" doxytag="Oscl_Vector_Base::empty"></a><p> 274<table width="100%" cellpadding="2" cellspacing="0" border="0"> 275 <tr> 276 <td class="md"> 277 <table cellpadding="0" cellspacing="0" border="0"> 278 <tr> 279 <td class="md" nowrap valign="top"> bool Oscl_Vector_Base::empty </td> 280 <td class="md" valign="top">( </td> 281 <td class="mdname1" valign="top" nowrap> </td> 282 <td class="md" valign="top">) </td> 283 <td class="md" nowrap> const<code> [inline]</code></td> 284 </tr> 285 286 </table> 287 </td> 288 </tr> 289</table> 290<table cellspacing=5 cellpadding=0 border=0> 291 <tr> 292 <td> 293 294 </td> 295 <td> 296 297<p> 298True if the vector's size is 0. </td> 299 </tr> 300</table> 301<a name="b9" doxytag="Oscl_Vector_Base::erase"></a><p> 302<table width="100%" cellpadding="2" cellspacing="0" border="0"> 303 <tr> 304 <td class="md"> 305 <table cellpadding="0" cellspacing="0" border="0"> 306 <tr> 307 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF <a class="el" href="group__osclbase.html#a25">OsclAny</a>* Oscl_Vector_Base::erase </td> 308 <td class="md" valign="top">( </td> 309 <td class="md" nowrap valign="top"><a class="el" href="group__osclbase.html#a25">OsclAny</a> * </td> 310 <td class="mdname" nowrap> <em>first</em>, </td> 311 </tr> 312 <tr> 313 <td></td> 314 <td></td> 315 <td class="md" nowrap><a class="el" href="group__osclbase.html#a25">OsclAny</a> * </td> 316 <td class="mdname" nowrap> <em>last</em></td> 317 </tr> 318 <tr> 319 <td></td> 320 <td class="md">) </td> 321 <td class="md" colspan="2"><code> [protected]</code></td> 322 </tr> 323 324 </table> 325 </td> 326 </tr> 327</table> 328<table cellspacing=5 cellpadding=0 border=0> 329 <tr> 330 <td> 331 332 </td> 333 <td> 334 335<p> 336Erases elements in range [first, last). Erasing an element invalidates all iterators pointing to elements following the deletion point. <dl compact><dt><b>Parameters: </b></dt><dd> 337<table border=0 cellspacing=2 cellpadding=0> 338<tr><td valign=top><em>first</em> </td><td> 339starting position </td></tr> 340<tr><td valign=top><em>last</em> </td><td> 341ending position, this position is not erased </td></tr> 342</table> 343</dl> </td> 344 </tr> 345</table> 346<a name="b8" doxytag="Oscl_Vector_Base::erase"></a><p> 347<table width="100%" cellpadding="2" cellspacing="0" border="0"> 348 <tr> 349 <td class="md"> 350 <table cellpadding="0" cellspacing="0" border="0"> 351 <tr> 352 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF <a class="el" href="group__osclbase.html#a25">OsclAny</a>* Oscl_Vector_Base::erase </td> 353 <td class="md" valign="top">( </td> 354 <td class="md" nowrap valign="top"><a class="el" href="group__osclbase.html#a25">OsclAny</a> * </td> 355 <td class="mdname1" valign="top" nowrap> <em>pos</em> </td> 356 <td class="md" valign="top">) </td> 357 <td class="md" nowrap><code> [protected]</code></td> 358 </tr> 359 360 </table> 361 </td> 362 </tr> 363</table> 364<table cellspacing=5 cellpadding=0 border=0> 365 <tr> 366 <td> 367 368 </td> 369 <td> 370 371<p> 372Erases the element pointed to by iterator pos. Erasing an element invalidates all iterators pointing to elements following the deletion point. <dl compact><dt><b>Parameters: </b></dt><dd> 373<table border=0 cellspacing=2 cellpadding=0> 374<tr><td valign=top><em>pos</em> </td><td> 375iterator at erase position </td></tr> 376</table> 377</dl> </td> 378 </tr> 379</table> 380<a name="b7" doxytag="Oscl_Vector_Base::insert"></a><p> 381<table width="100%" cellpadding="2" cellspacing="0" border="0"> 382 <tr> 383 <td class="md"> 384 <table cellpadding="0" cellspacing="0" border="0"> 385 <tr> 386 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF <a class="el" href="group__osclbase.html#a25">OsclAny</a>* Oscl_Vector_Base::insert </td> 387 <td class="md" valign="top">( </td> 388 <td class="md" nowrap valign="top"><a class="el" href="group__osclbase.html#a25">OsclAny</a> * </td> 389 <td class="mdname" nowrap> <em>pos</em>, </td> 390 </tr> 391 <tr> 392 <td></td> 393 <td></td> 394 <td class="md" nowrap>const <a class="el" href="group__osclbase.html#a25">OsclAny</a> * </td> 395 <td class="mdname" nowrap> <em>x</em></td> 396 </tr> 397 <tr> 398 <td></td> 399 <td class="md">) </td> 400 <td class="md" colspan="2"><code> [protected]</code></td> 401 </tr> 402 403 </table> 404 </td> 405 </tr> 406</table> 407<table cellspacing=5 cellpadding=0 border=0> 408 <tr> 409 <td> 410 411 </td> 412 <td> 413 414<p> 415Inserts a new element at a specific position. <dl compact><dt><b>Parameters: </b></dt><dd> 416<table border=0 cellspacing=2 cellpadding=0> 417<tr><td valign=top><em>pos</em> </td><td> 418iterator at insert position. </td></tr> 419<tr><td valign=top><em>x</em> </td><td> 420pointer to new element </td></tr> 421</table> 422</dl> </td> 423 </tr> 424</table> 425<a name="b5" doxytag="Oscl_Vector_Base::pop_back"></a><p> 426<table width="100%" cellpadding="2" cellspacing="0" border="0"> 427 <tr> 428 <td class="md"> 429 <table cellpadding="0" cellspacing="0" border="0"> 430 <tr> 431 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void Oscl_Vector_Base::pop_back </td> 432 <td class="md" valign="top">( </td> 433 <td class="mdname1" valign="top" nowrap> </td> 434 <td class="md" valign="top">) </td> 435 <td class="md" nowrap><code> [protected]</code></td> 436 </tr> 437 438 </table> 439 </td> 440 </tr> 441</table> 442<table cellspacing=5 cellpadding=0 border=0> 443 <tr> 444 <td> 445 446 </td> 447 <td> 448 449<p> 450Removes the last element. 451<p> 452Reimplemented in <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< T, Alloc ></a>, <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< OsclComponentRegistryElement, OsclMemAllocator ></a>, <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< uint32, OsclMemAllocator ></a>, <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< OsclSocketServRequestQElem, OsclMemAllocator ></a>, <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< Node *, Alloc ></a>, <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< OsclSocketRequest *, OsclMemAllocator ></a>, <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< entry_type *, Alloc ></a>, <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< OSCL_HeapString< OsclMemAllocator >, OsclMemAllocator ></a>, <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< OsclAsyncFileBuffer *, OsclMemAllocator ></a>, <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< MemPoolBufferInfo *, OsclMemAllocator ></a>, <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< OsclSharedPtr< PVLoggerFilter >, alloc_type ></a>, <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< TOsclReady, OsclReadyAlloc ></a>, <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< OsclSharedPtr< PVLoggerAppender >, alloc_type ></a>, <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< OsclNetworkAddress, OsclMemAllocator ></a>, and <a class="el" href="classOscl__Vector.html#a14">Oscl_Vector< OsclAny *, OsclMemAllocator ></a>. </td> 453 </tr> 454</table> 455<a name="b4" doxytag="Oscl_Vector_Base::push_back"></a><p> 456<table width="100%" cellpadding="2" cellspacing="0" border="0"> 457 <tr> 458 <td class="md"> 459 <table cellpadding="0" cellspacing="0" border="0"> 460 <tr> 461 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void Oscl_Vector_Base::push_back </td> 462 <td class="md" valign="top">( </td> 463 <td class="md" nowrap valign="top">const <a class="el" href="group__osclbase.html#a25">OsclAny</a> * </td> 464 <td class="mdname1" valign="top" nowrap> <em>x</em> </td> 465 <td class="md" valign="top">) </td> 466 <td class="md" nowrap><code> [protected]</code></td> 467 </tr> 468 469 </table> 470 </td> 471 </tr> 472</table> 473<table cellspacing=5 cellpadding=0 border=0> 474 <tr> 475 <td> 476 477 </td> 478 <td> 479 480<p> 481Inserts a new element at the end. Inserting an element invalidates all iterators if memory reallocation occurs as a result of the insertion. <dl compact><dt><b>Parameters: </b></dt><dd> 482<table border=0 cellspacing=2 cellpadding=0> 483<tr><td valign=top><em>x</em> </td><td> 484pointer to the new element </td></tr> 485</table> 486</dl> </td> 487 </tr> 488</table> 489<a name="b6" doxytag="Oscl_Vector_Base::push_front"></a><p> 490<table width="100%" cellpadding="2" cellspacing="0" border="0"> 491 <tr> 492 <td class="md"> 493 <table cellpadding="0" cellspacing="0" border="0"> 494 <tr> 495 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void Oscl_Vector_Base::push_front </td> 496 <td class="md" valign="top">( </td> 497 <td class="md" nowrap valign="top">const <a class="el" href="group__osclbase.html#a25">OsclAny</a> * </td> 498 <td class="mdname1" valign="top" nowrap> <em>x</em> </td> 499 <td class="md" valign="top">) </td> 500 <td class="md" nowrap><code> [protected]</code></td> 501 </tr> 502 503 </table> 504 </td> 505 </tr> 506</table> 507<table cellspacing=5 cellpadding=0 border=0> 508 <tr> 509 <td> 510 511 </td> 512 <td> 513 514<p> 515Inserts a new element at the front. Inserting an element invalidates all iterators if memory reallocation occurs as a result of the insertion. <dl compact><dt><b>Parameters: </b></dt><dd> 516<table border=0 cellspacing=2 cellpadding=0> 517<tr><td valign=top><em>x</em> </td><td> 518pointer to new element </td></tr> 519</table> 520</dl> </td> 521 </tr> 522</table> 523<a name="a3" doxytag="Oscl_Vector_Base::reserve"></a><p> 524<table width="100%" cellpadding="2" cellspacing="0" border="0"> 525 <tr> 526 <td class="md"> 527 <table cellpadding="0" cellspacing="0" border="0"> 528 <tr> 529 <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void Oscl_Vector_Base::reserve </td> 530 <td class="md" valign="top">( </td> 531 <td class="md" nowrap valign="top">uint32 </td> 532 <td class="mdname1" valign="top" nowrap> <em>n</em> </td> 533 <td class="md" valign="top">) </td> 534 <td class="md" nowrap></td> 535 </tr> 536 537 </table> 538 </td> 539 </tr> 540</table> 541<table cellspacing=5 cellpadding=0 border=0> 542 <tr> 543 <td> 544 545 </td> 546 <td> 547 548<p> 549Reallocates memory if necessary to a capacity of n elements. The main reason for reserve is efficiency. If you know the capacity to which your vector must grow, then it is more efficient to allocate the vector all at once rather than rely on the automatic reallocation scheme. This also helps cotrol the invalidation of iterators. <dl compact><dt><b>Parameters: </b></dt><dd> 550<table border=0 cellspacing=2 cellpadding=0> 551<tr><td valign=top><em>n</em> </td><td> 552size of vector </td></tr> 553</table> 554</dl> </td> 555 </tr> 556</table> 557<a name="a0" doxytag="Oscl_Vector_Base::size"></a><p> 558<table width="100%" cellpadding="2" cellspacing="0" border="0"> 559 <tr> 560 <td class="md"> 561 <table cellpadding="0" cellspacing="0" border="0"> 562 <tr> 563 <td class="md" nowrap valign="top"> uint32 Oscl_Vector_Base::size </td> 564 <td class="md" valign="top">( </td> 565 <td class="mdname1" valign="top" nowrap> </td> 566 <td class="md" valign="top">) </td> 567 <td class="md" nowrap> const<code> [inline]</code></td> 568 </tr> 569 570 </table> 571 </td> 572 </tr> 573</table> 574<table cellspacing=5 cellpadding=0 border=0> 575 <tr> 576 <td> 577 578 </td> 579 <td> 580 581<p> 582Returns the size of the vector in units of number of elements. </td> 583 </tr> 584</table> 585<hr><h2>Friends And Related Function Documentation</h2> 586<a name="l0" doxytag="Oscl_Vector_Base::OsclPriorityQueueBase"></a><p> 587<table width="100%" cellpadding="2" cellspacing="0" border="0"> 588 <tr> 589 <td class="md"> 590 <table cellpadding="0" cellspacing="0" border="0"> 591 <tr> 592 <td class="md" nowrap valign="top"> friend class OsclPriorityQueueBase<code> [friend]</code> 593 </table> 594 </td> 595 </tr> 596</table> 597<table cellspacing=5 cellpadding=0 border=0> 598 <tr> 599 <td> 600 601 </td> 602 <td> 603 604<p> 605 </td> 606 </tr> 607</table> 608<hr><h2>Field Documentation</h2> 609<a name="n1" doxytag="Oscl_Vector_Base::bufsize"></a><p> 610<table width="100%" cellpadding="2" cellspacing="0" border="0"> 611 <tr> 612 <td class="md"> 613 <table cellpadding="0" cellspacing="0" border="0"> 614 <tr> 615 <td class="md" nowrap valign="top"> uint32 Oscl_Vector_Base::bufsize<code> [protected]</code> 616 </table> 617 </td> 618 </tr> 619</table> 620<table cellspacing=5 cellpadding=0 border=0> 621 <tr> 622 <td> 623 624 </td> 625 <td> 626 627<p> 628 </td> 629 </tr> 630</table> 631<a name="n2" doxytag="Oscl_Vector_Base::elems"></a><p> 632<table width="100%" cellpadding="2" cellspacing="0" border="0"> 633 <tr> 634 <td class="md"> 635 <table cellpadding="0" cellspacing="0" border="0"> 636 <tr> 637 <td class="md" nowrap valign="top"> <a class="el" href="group__osclbase.html#a25">OsclAny</a>* Oscl_Vector_Base::elems<code> [protected]</code> 638 </table> 639 </td> 640 </tr> 641</table> 642<table cellspacing=5 cellpadding=0 border=0> 643 <tr> 644 <td> 645 646 </td> 647 <td> 648 649<p> 650 </td> 651 </tr> 652</table> 653<a name="n0" doxytag="Oscl_Vector_Base::numelems"></a><p> 654<table width="100%" cellpadding="2" cellspacing="0" border="0"> 655 <tr> 656 <td class="md"> 657 <table cellpadding="0" cellspacing="0" border="0"> 658 <tr> 659 <td class="md" nowrap valign="top"> uint32 Oscl_Vector_Base::numelems<code> [protected]</code> 660 </table> 661 </td> 662 </tr> 663</table> 664<table cellspacing=5 cellpadding=0 border=0> 665 <tr> 666 <td> 667 668 </td> 669 <td> 670 671<p> 672 </td> 673 </tr> 674</table> 675<a name="n3" doxytag="Oscl_Vector_Base::sizeof_T"></a><p> 676<table width="100%" cellpadding="2" cellspacing="0" border="0"> 677 <tr> 678 <td class="md"> 679 <table cellpadding="0" cellspacing="0" border="0"> 680 <tr> 681 <td class="md" nowrap valign="top"> uint32 Oscl_Vector_Base::sizeof_T<code> [protected]</code> 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> 694 </td> 695 </tr> 696</table> 697<hr>The documentation for this class was generated from the following file:<ul> 698<li><a class="el" href="oscl__vector_8h-source.html">oscl_vector.h</a></ul> 699<hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small> 700<address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small> 701</small></address> 702</body> 703</html> 704