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>OsclAsyncFile 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>OsclAsyncFile Class Reference</h1><code>#include <<a class="el" href="oscl__file__async__read_8h-source.html">oscl_file_async_read.h</a>></code> 10 <p> 11 <p>Inheritance diagram for OsclAsyncFile: 12 <p><center><img src="classOsclAsyncFile.png" usemap="#OsclAsyncFile_map" border="0" alt=""></center> 13 <map name="OsclAsyncFile_map"> 14 <area href="classOsclActiveObject.html" alt="OsclActiveObject" shape="rect" coords="60,112,171,136"> 15 <area href="classHeapBase.html" alt="HeapBase" shape="rect" coords="0,56,111,80"> 16 <area href="classPVActiveBase.html" alt="PVActiveBase" shape="rect" coords="121,56,232,80"> 17 <area href="class__OsclHeapBase.html" alt="_OsclHeapBase" shape="rect" coords="0,0,111,24"> 18 </map> 19 <table border=0 cellpadding=0 cellspacing=0> 20 <tr><td></td></tr> 21 <tr><td colspan=2><br><h2>Public Methods</h2></td></tr> 22 <tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#a0">~OsclAsyncFile</a> ()</td></tr> 23 <tr><td nowrap align=right valign=top>int32 </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#a1">Open</a> (const <a class="el" href="group__osclbase.html#a32">oscl_wchar</a> *filename, uint32 mode, const <a class="el" href="classOsclNativeFileParams.html">OsclNativeFileParams</a> &params, <a class="el" href="classOscl__FileServer.html">Oscl_FileServer</a> &fileserv)</td></tr> 24 <tr><td nowrap align=right valign=top>int32 </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#a2">Open</a> (const char *filename, uint32 mode, const <a class="el" href="classOsclNativeFileParams.html">OsclNativeFileParams</a> &params, <a class="el" href="classOscl__FileServer.html">Oscl_FileServer</a> &fileserv)</td></tr> 25 <tr><td nowrap align=right valign=top>int32 </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#a3">Seek</a> (<a class="el" href="osclconfig__io_8h.html#a48">TOsclFileOffset</a> offset, <a class="el" href="classOscl__File.html#s11">Oscl_File::seek_type</a> origin)</td></tr> 26 <tr><td nowrap align=right valign=top><a class="el" href="osclconfig__io_8h.html#a48">TOsclFileOffset</a> </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#a4">Tell</a> ()</td></tr> 27 <tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#a5">Read</a> (<a class="el" href="group__osclbase.html#a25">OsclAny</a> *aBuffer1, uint32 aDataSize, uint32 aNumElements)</td></tr> 28 <tr><td nowrap align=right valign=top>int32 </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#a6">EndOfFile</a> ()</td></tr> 29 <tr><td nowrap align=right valign=top><a class="el" href="osclconfig__io_8h.html#a48">TOsclFileOffset</a> </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#a7">Size</a> ()</td></tr> 30 <tr><td nowrap align=right valign=top>int32 </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#a8">Close</a> ()</td></tr> 31 <tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#a9">Write</a> (const <a class="el" href="group__osclbase.html#a25">OsclAny</a> *aBuffer1, uint32 aDataSize, uint32 aNumElements)</td></tr> 32 <tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#a10">Flush</a> ()</td></tr> 33 <tr><td colspan=2><br><h2>Static Public Methods</h2></td></tr> 34 <tr><td nowrap align=right valign=top>OsclAsyncFile * </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#d0">NewL</a> (<a class="el" href="classOsclNativeFile.html">OsclNativeFile</a> &aAsyncFile, int32 aCacheSize, <a class="el" href="classPVLogger.html">PVLogger</a> *)</td></tr> 35 <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#d1">Delete</a> (OsclAsyncFile *)</td></tr> 36 <tr><td colspan=2><br><h2>Data Fields</h2></td></tr> 37 <tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#m0">iNumOfRun</a></td></tr> 38 <tr><td nowrap align=right valign=top>uint32 </td><td valign=bottom><a class="el" href="classOsclAsyncFile.html#m1">iNumOfRunErr</a></td></tr> 39 </table> 40 <hr><a name="_details"></a><h2>Detailed Description</h2> 41 OsclAsyncFile 42 <p> 43 <hr><h2>Constructor & Destructor Documentation</h2> 44 <a name="a0" doxytag="OsclAsyncFile::~OsclAsyncFile"></a><p> 45 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 46 <tr> 47 <td class="md"> 48 <table cellpadding="0" cellspacing="0" border="0"> 49 <tr> 50 <td class="md" nowrap valign="top"> OsclAsyncFile::~OsclAsyncFile </td> 51 <td class="md" valign="top">( </td> 52 <td class="mdname1" valign="top" nowrap> </td> 53 <td class="md" valign="top">) </td> 54 <td class="md" nowrap></td> 55 </tr> 56 57 </table> 58 </td> 59 </tr> 60 </table> 61 <table cellspacing=5 cellpadding=0 border=0> 62 <tr> 63 <td> 64 65 </td> 66 <td> 67 68 <p> 69 Destructor. </td> 70 </tr> 71 </table> 72 <hr><h2>Member Function Documentation</h2> 73 <a name="a8" doxytag="OsclAsyncFile::Close"></a><p> 74 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 75 <tr> 76 <td class="md"> 77 <table cellpadding="0" cellspacing="0" border="0"> 78 <tr> 79 <td class="md" nowrap valign="top"> int32 OsclAsyncFile::Close </td> 80 <td class="md" valign="top">( </td> 81 <td class="mdname1" valign="top" nowrap> </td> 82 <td class="md" valign="top">) </td> 83 <td class="md" nowrap></td> 84 </tr> 85 86 </table> 87 </td> 88 </tr> 89 </table> 90 <table cellspacing=5 cellpadding=0 border=0> 91 <tr> 92 <td> 93 94 </td> 95 <td> 96 97 <p> 98 </td> 99 </tr> 100 </table> 101 <a name="d1" doxytag="OsclAsyncFile::Delete"></a><p> 102 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 103 <tr> 104 <td class="md"> 105 <table cellpadding="0" cellspacing="0" border="0"> 106 <tr> 107 <td class="md" nowrap valign="top"> void OsclAsyncFile::Delete </td> 108 <td class="md" valign="top">( </td> 109 <td class="md" nowrap valign="top">OsclAsyncFile * </td> 110 <td class="mdname1" valign="top" nowrap> </td> 111 <td class="md" valign="top">) </td> 112 <td class="md" nowrap><code> [static]</code></td> 113 </tr> 114 115 </table> 116 </td> 117 </tr> 118 </table> 119 <table cellspacing=5 cellpadding=0 border=0> 120 <tr> 121 <td> 122 123 </td> 124 <td> 125 126 <p> 127 </td> 128 </tr> 129 </table> 130 <a name="a6" doxytag="OsclAsyncFile::EndOfFile"></a><p> 131 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 132 <tr> 133 <td class="md"> 134 <table cellpadding="0" cellspacing="0" border="0"> 135 <tr> 136 <td class="md" nowrap valign="top"> int32 OsclAsyncFile::EndOfFile </td> 137 <td class="md" valign="top">( </td> 138 <td class="mdname1" valign="top" nowrap> </td> 139 <td class="md" valign="top">) </td> 140 <td class="md" nowrap></td> 141 </tr> 142 143 </table> 144 </td> 145 </tr> 146 </table> 147 <table cellspacing=5 cellpadding=0 border=0> 148 <tr> 149 <td> 150 151 </td> 152 <td> 153 154 <p> 155 </td> 156 </tr> 157 </table> 158 <a name="a10" doxytag="OsclAsyncFile::Flush"></a><p> 159 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 160 <tr> 161 <td class="md"> 162 <table cellpadding="0" cellspacing="0" border="0"> 163 <tr> 164 <td class="md" nowrap valign="top"> uint32 OsclAsyncFile::Flush </td> 165 <td class="md" valign="top">( </td> 166 <td class="mdname1" valign="top" nowrap> </td> 167 <td class="md" valign="top">) </td> 168 <td class="md" nowrap><code> [inline]</code></td> 169 </tr> 170 171 </table> 172 </td> 173 </tr> 174 </table> 175 <table cellspacing=5 cellpadding=0 border=0> 176 <tr> 177 <td> 178 179 </td> 180 <td> 181 182 <p> 183 </td> 184 </tr> 185 </table> 186 <a name="d0" doxytag="OsclAsyncFile::NewL"></a><p> 187 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 188 <tr> 189 <td class="md"> 190 <table cellpadding="0" cellspacing="0" border="0"> 191 <tr> 192 <td class="md" nowrap valign="top"> OsclAsyncFile* OsclAsyncFile::NewL </td> 193 <td class="md" valign="top">( </td> 194 <td class="md" nowrap valign="top"><a class="el" href="classOsclNativeFile.html">OsclNativeFile</a> & </td> 195 <td class="mdname" nowrap> <em>aAsyncFile</em>, </td> 196 </tr> 197 <tr> 198 <td></td> 199 <td></td> 200 <td class="md" nowrap>int32 </td> 201 <td class="mdname" nowrap> <em>aCacheSize</em>, </td> 202 </tr> 203 <tr> 204 <td></td> 205 <td></td> 206 <td class="md" nowrap><a class="el" href="classPVLogger.html">PVLogger</a> * </td> 207 <td class="mdname" nowrap> </td> 208 </tr> 209 <tr> 210 <td></td> 211 <td class="md">) </td> 212 <td class="md" colspan="2"><code> [static]</code></td> 213 </tr> 214 215 </table> 216 </td> 217 </tr> 218 </table> 219 <table cellspacing=5 cellpadding=0 border=0> 220 <tr> 221 <td> 222 223 </td> 224 <td> 225 226 <p> 227 Two-phased constructor.<dl compact><dt><b>Parameters: </b></dt><dd> 228 <table border=0 cellspacing=2 cellpadding=0> 229 <tr><td valign=top><em>aAsyncFile:</em> </td><td> 230 open handle for async file read. Note: it is the caller's job to open/close this file handle.</td></tr> 231 <tr><td valign=top><em>aSyncFile:</em> </td><td> 232 duplicate open handle for sync file read. Note: it is the caller's job to open this file handle, but this class will close the handle.</td></tr> 233 <tr><td valign=top><em>aCacheSize:</em> </td><td> 234 size of one of the individual cache buffers. The total cached data size will be larger, since multiple buffers are used.</td></tr> 235 <tr><td valign=top><em>aStartAsyncRead:</em> </td><td> 236 When true, async file read will start immediately. When false, read will not begin until StartAsyncRead is called. </td></tr> 237 </table> 238 </dl> </td> 239 </tr> 240 </table> 241 <a name="a2" doxytag="OsclAsyncFile::Open"></a><p> 242 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 243 <tr> 244 <td class="md"> 245 <table cellpadding="0" cellspacing="0" border="0"> 246 <tr> 247 <td class="md" nowrap valign="top"> int32 OsclAsyncFile::Open </td> 248 <td class="md" valign="top">( </td> 249 <td class="md" nowrap valign="top">const char * </td> 250 <td class="mdname" nowrap> <em>filename</em>, </td> 251 </tr> 252 <tr> 253 <td></td> 254 <td></td> 255 <td class="md" nowrap>uint32 </td> 256 <td class="mdname" nowrap> <em>mode</em>, </td> 257 </tr> 258 <tr> 259 <td></td> 260 <td></td> 261 <td class="md" nowrap>const <a class="el" href="classOsclNativeFileParams.html">OsclNativeFileParams</a> & </td> 262 <td class="mdname" nowrap> <em>params</em>, </td> 263 </tr> 264 <tr> 265 <td></td> 266 <td></td> 267 <td class="md" nowrap><a class="el" href="classOscl__FileServer.html">Oscl_FileServer</a> & </td> 268 <td class="mdname" nowrap> <em>fileserv</em></td> 269 </tr> 270 <tr> 271 <td></td> 272 <td class="md">) </td> 273 <td class="md" colspan="2"></td> 274 </tr> 275 276 </table> 277 </td> 278 </tr> 279 </table> 280 <table cellspacing=5 cellpadding=0 border=0> 281 <tr> 282 <td> 283 284 </td> 285 <td> 286 287 <p> 288 </td> 289 </tr> 290 </table> 291 <a name="a1" doxytag="OsclAsyncFile::Open"></a><p> 292 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 293 <tr> 294 <td class="md"> 295 <table cellpadding="0" cellspacing="0" border="0"> 296 <tr> 297 <td class="md" nowrap valign="top"> int32 OsclAsyncFile::Open </td> 298 <td class="md" valign="top">( </td> 299 <td class="md" nowrap valign="top">const <a class="el" href="group__osclbase.html#a32">oscl_wchar</a> * </td> 300 <td class="mdname" nowrap> <em>filename</em>, </td> 301 </tr> 302 <tr> 303 <td></td> 304 <td></td> 305 <td class="md" nowrap>uint32 </td> 306 <td class="mdname" nowrap> <em>mode</em>, </td> 307 </tr> 308 <tr> 309 <td></td> 310 <td></td> 311 <td class="md" nowrap>const <a class="el" href="classOsclNativeFileParams.html">OsclNativeFileParams</a> & </td> 312 <td class="mdname" nowrap> <em>params</em>, </td> 313 </tr> 314 <tr> 315 <td></td> 316 <td></td> 317 <td class="md" nowrap><a class="el" href="classOscl__FileServer.html">Oscl_FileServer</a> & </td> 318 <td class="mdname" nowrap> <em>fileserv</em></td> 319 </tr> 320 <tr> 321 <td></td> 322 <td class="md">) </td> 323 <td class="md" colspan="2"></td> 324 </tr> 325 326 </table> 327 </td> 328 </tr> 329 </table> 330 <table cellspacing=5 cellpadding=0 border=0> 331 <tr> 332 <td> 333 334 </td> 335 <td> 336 337 <p> 338 </td> 339 </tr> 340 </table> 341 <a name="a5" doxytag="OsclAsyncFile::Read"></a><p> 342 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 343 <tr> 344 <td class="md"> 345 <table cellpadding="0" cellspacing="0" border="0"> 346 <tr> 347 <td class="md" nowrap valign="top"> uint32 OsclAsyncFile::Read </td> 348 <td class="md" valign="top">( </td> 349 <td class="md" nowrap valign="top"><a class="el" href="group__osclbase.html#a25">OsclAny</a> * </td> 350 <td class="mdname" nowrap> <em>aBuffer1</em>, </td> 351 </tr> 352 <tr> 353 <td></td> 354 <td></td> 355 <td class="md" nowrap>uint32 </td> 356 <td class="mdname" nowrap> <em>aDataSize</em>, </td> 357 </tr> 358 <tr> 359 <td></td> 360 <td></td> 361 <td class="md" nowrap>uint32 </td> 362 <td class="mdname" nowrap> <em>aNumElements</em></td> 363 </tr> 364 <tr> 365 <td></td> 366 <td class="md">) </td> 367 <td class="md" colspan="2"></td> 368 </tr> 369 370 </table> 371 </td> 372 </tr> 373 </table> 374 <table cellspacing=5 cellpadding=0 border=0> 375 <tr> 376 <td> 377 378 </td> 379 <td> 380 381 <p> 382 </td> 383 </tr> 384 </table> 385 <a name="a3" doxytag="OsclAsyncFile::Seek"></a><p> 386 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 387 <tr> 388 <td class="md"> 389 <table cellpadding="0" cellspacing="0" border="0"> 390 <tr> 391 <td class="md" nowrap valign="top"> int32 OsclAsyncFile::Seek </td> 392 <td class="md" valign="top">( </td> 393 <td class="md" nowrap valign="top"><a class="el" href="osclconfig__io_8h.html#a48">TOsclFileOffset</a> </td> 394 <td class="mdname" nowrap> <em>offset</em>, </td> 395 </tr> 396 <tr> 397 <td></td> 398 <td></td> 399 <td class="md" nowrap><a class="el" href="classOscl__File.html#s11">Oscl_File::seek_type</a> </td> 400 <td class="mdname" nowrap> <em>origin</em></td> 401 </tr> 402 <tr> 403 <td></td> 404 <td class="md">) </td> 405 <td class="md" colspan="2"></td> 406 </tr> 407 408 </table> 409 </td> 410 </tr> 411 </table> 412 <table cellspacing=5 cellpadding=0 border=0> 413 <tr> 414 <td> 415 416 </td> 417 <td> 418 419 <p> 420 </td> 421 </tr> 422 </table> 423 <a name="a7" doxytag="OsclAsyncFile::Size"></a><p> 424 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 425 <tr> 426 <td class="md"> 427 <table cellpadding="0" cellspacing="0" border="0"> 428 <tr> 429 <td class="md" nowrap valign="top"> <a class="el" href="osclconfig__io_8h.html#a48">TOsclFileOffset</a> OsclAsyncFile::Size </td> 430 <td class="md" valign="top">( </td> 431 <td class="mdname1" valign="top" nowrap> </td> 432 <td class="md" valign="top">) </td> 433 <td class="md" nowrap></td> 434 </tr> 435 436 </table> 437 </td> 438 </tr> 439 </table> 440 <table cellspacing=5 cellpadding=0 border=0> 441 <tr> 442 <td> 443 444 </td> 445 <td> 446 447 <p> 448 </td> 449 </tr> 450 </table> 451 <a name="a4" doxytag="OsclAsyncFile::Tell"></a><p> 452 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 453 <tr> 454 <td class="md"> 455 <table cellpadding="0" cellspacing="0" border="0"> 456 <tr> 457 <td class="md" nowrap valign="top"> <a class="el" href="osclconfig__io_8h.html#a48">TOsclFileOffset</a> OsclAsyncFile::Tell </td> 458 <td class="md" valign="top">( </td> 459 <td class="mdname1" valign="top" nowrap> </td> 460 <td class="md" valign="top">) </td> 461 <td class="md" nowrap></td> 462 </tr> 463 464 </table> 465 </td> 466 </tr> 467 </table> 468 <table cellspacing=5 cellpadding=0 border=0> 469 <tr> 470 <td> 471 472 </td> 473 <td> 474 475 <p> 476 </td> 477 </tr> 478 </table> 479 <a name="a9" doxytag="OsclAsyncFile::Write"></a><p> 480 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 481 <tr> 482 <td class="md"> 483 <table cellpadding="0" cellspacing="0" border="0"> 484 <tr> 485 <td class="md" nowrap valign="top"> uint32 OsclAsyncFile::Write </td> 486 <td class="md" valign="top">( </td> 487 <td class="md" nowrap valign="top">const <a class="el" href="group__osclbase.html#a25">OsclAny</a> * </td> 488 <td class="mdname" nowrap> <em>aBuffer1</em>, </td> 489 </tr> 490 <tr> 491 <td></td> 492 <td></td> 493 <td class="md" nowrap>uint32 </td> 494 <td class="mdname" nowrap> <em>aDataSize</em>, </td> 495 </tr> 496 <tr> 497 <td></td> 498 <td></td> 499 <td class="md" nowrap>uint32 </td> 500 <td class="mdname" nowrap> <em>aNumElements</em></td> 501 </tr> 502 <tr> 503 <td></td> 504 <td class="md">) </td> 505 <td class="md" colspan="2"><code> [inline]</code></td> 506 </tr> 507 508 </table> 509 </td> 510 </tr> 511 </table> 512 <table cellspacing=5 cellpadding=0 border=0> 513 <tr> 514 <td> 515 516 </td> 517 <td> 518 519 <p> 520 </td> 521 </tr> 522 </table> 523 <hr><h2>Field Documentation</h2> 524 <a name="m0" doxytag="OsclAsyncFile::iNumOfRun"></a><p> 525 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 526 <tr> 527 <td class="md"> 528 <table cellpadding="0" cellspacing="0" border="0"> 529 <tr> 530 <td class="md" nowrap valign="top"> uint32 OsclAsyncFile::iNumOfRun 531 </table> 532 </td> 533 </tr> 534 </table> 535 <table cellspacing=5 cellpadding=0 border=0> 536 <tr> 537 <td> 538 539 </td> 540 <td> 541 542 <p> 543 </td> 544 </tr> 545 </table> 546 <a name="m1" doxytag="OsclAsyncFile::iNumOfRunErr"></a><p> 547 <table width="100%" cellpadding="2" cellspacing="0" border="0"> 548 <tr> 549 <td class="md"> 550 <table cellpadding="0" cellspacing="0" border="0"> 551 <tr> 552 <td class="md" nowrap valign="top"> uint32 OsclAsyncFile::iNumOfRunErr 553 </table> 554 </td> 555 </tr> 556 </table> 557 <table cellspacing=5 cellpadding=0 border=0> 558 <tr> 559 <td> 560 561 </td> 562 <td> 563 564 <p> 565 </td> 566 </tr> 567 </table> 568 <hr>The documentation for this class was generated from the following file:<ul> 569 <li><a class="el" href="oscl__file__async__read_8h-source.html">oscl_file_async_read.h</a></ul> 570 <hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small> 571 <address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small> 572 </small></address> 573 </body> 574 </html> 575