blob: 237633b3ff8cad364e7b21b60269292dbc142c3b [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>OsclExecScheduler class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.2.18 -->
<center>
<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>
<hr><h1>OsclExecScheduler Class Reference<br>
<small>
[<a class="el" href="group__osclproc.html">OSCL Proc</a>]</small>
</h1><code>#include &lt;<a class="el" href="oscl__scheduler_8h-source.html">oscl_scheduler.h</a>&gt;</code>
<p>
<p>Inheritance diagram for OsclExecScheduler:
<p><center><img src="classOsclExecScheduler.png" usemap="#OsclExecScheduler_map" border="0" alt=""></center>
<map name="OsclExecScheduler_map">
<area href="classOsclExecSchedulerCommonBase.html" alt="OsclExecSchedulerCommonBase" shape="rect" coords="0,56,200,80">
<area href="classOsclExecSchedulerBase.html" alt="OsclExecSchedulerBase" shape="rect" coords="210,56,410,80">
<area href="class__OsclHeapBase.html" alt="_OsclHeapBase" shape="rect" coords="210,0,410,24">
</map>
<table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
<tr><td colspan=2><br><h2>Public Methods</h2></td></tr>
<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void&nbsp;</td><td valign=bottom><a class="el" href="classOsclExecScheduler.html#a0">RunSchedulerNonBlocking</a> (int32 aTargetCount, int32 &amp;aReady, uint32 &amp;aDelayMsec)</td></tr>
<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void&nbsp;</td><td valign=bottom><a class="el" href="classOsclExecScheduler.html#a1">RegisterForCallback</a> (<a class="el" href="classOsclSchedulerObserver.html">OsclSchedulerObserver</a> *aCallback, <a class="el" href="group__osclbase.html#a25">OsclAny</a> *aCallbackContext)</td></tr>
<tr><td colspan=2><br><h2>Static Public Methods</h2></td></tr>
<tr><td nowrap align=right valign=top>OSCL_IMPORT_REF OsclExecScheduler *&nbsp;</td><td valign=bottom><a class="el" href="classOsclExecScheduler.html#d0">Current</a> ()</td></tr>
<tr><td colspan=2><br><h2>Friends</h2></td></tr>
<tr><td nowrap align=right valign=top>class&nbsp;</td><td valign=bottom><a class="el" href="classOsclExecScheduler.html#l0">OsclScheduler</a></td></tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a name="d0" doxytag="OsclExecScheduler::Current"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> OSCL_IMPORT_REF OsclExecScheduler* OsclExecScheduler::Current </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap>&nbsp; </td>
<td class="md" valign="top">)&nbsp;</td>
<td class="md" nowrap><code> [static]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Get currently installed scheduler for calling thread, or NULL if no scheduler is installed. </td>
</tr>
</table>
<a name="a1" doxytag="OsclExecScheduler::RegisterForCallback"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> OSCL_IMPORT_REF void OsclExecScheduler::RegisterForCallback </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classOsclSchedulerObserver.html">OsclSchedulerObserver</a> *&nbsp;</td>
<td class="mdname" nowrap>&nbsp; <em>aCallback</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap><a class="el" href="group__osclbase.html#a25">OsclAny</a> *&nbsp;</td>
<td class="mdname" nowrap>&nbsp; <em>aCallbackContext</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Register for a notification when non-blocking scheduler needs to run again.
<p>
Note: On Symbian, non-blocking mode is not supported and this call will leave. </td>
</tr>
</table>
<a name="a0" doxytag="OsclExecScheduler::RunSchedulerNonBlocking"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> OSCL_IMPORT_REF void OsclExecScheduler::RunSchedulerNonBlocking </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int32&nbsp;</td>
<td class="mdname" nowrap>&nbsp; <em>aTargetCount</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>int32 &amp;&nbsp;</td>
<td class="mdname" nowrap>&nbsp; <em>aReady</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>uint32 &amp;&nbsp;</td>
<td class="mdname" nowrap>&nbsp; <em>aDelayMsec</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Run PV scheduler in non-blocking mode. This call returns when the desired number of Run calls have been made, or when there are no more active objects that are ready to run.<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>aTargetCount:</em>&nbsp;</td><td>
(input param) the maximum number of Run calls to make. </td></tr>
<tr><td valign=top><em>aReady:</em>&nbsp;</td><td>
(output param) tells the number of active objects that are currently ready to run. </td></tr>
<tr><td valign=top><em>aDelayMsec:</em>&nbsp;</td><td>
(output param) If no active objects are ready to run, but one or more active objects are waiting on timers, this parameter will tell the time interval from the current time until the first of the pending timer objects will be ready to run, in milliseconds.</td></tr>
</table>
</dl>Note: On Symbian, non-blocking mode is not supported and this call will leave. </td>
</tr>
</table>
<hr><h2>Friends And Related Function Documentation</h2>
<a name="l0" doxytag="OsclExecScheduler::OsclScheduler"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> friend class OsclScheduler<code> [friend]</code>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<p>
Reimplemented from <a class="el" href="classOsclExecSchedulerCommonBase.html#l0">OsclExecSchedulerCommonBase</a>. </td>
</tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="oscl__scheduler_8h-source.html">oscl_scheduler.h</a></ul>
<hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small>
<address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small>
</small></address>
</body>
</html>