aboutsummaryrefslogtreecommitdiff
path: root/doc/oscl_html/classOsclSchedulerObserver.html
blob: f7146edaba6aa5f3399fee6f54bc7617274db5a8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>oscl: OsclSchedulerObserver Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.3 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>OsclSchedulerObserver Class Reference<br/>
<small>
[<a class="el" href="group__osclproc.html">OSCL Proc</a>]</small>
</h1><!-- doxytag: class="OsclSchedulerObserver" -->
<p><code>#include &lt;<a class="el" href="oscl__scheduler_8h_source.html">oscl_scheduler.h</a>&gt;</code></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOsclSchedulerObserver.html#ac6e3a2785d9fb62c020e5787fe91a330">OsclSchedulerTimerCallback</a> (<a class="el" href="group__osclbase.html#ga3bac54662348f5e6c08b97ca97066b89">OsclAny</a> *aContext, uint32 aDelayMsec)=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOsclSchedulerObserver.html#ae1a13f87e3ac7e4de305f3fd2d462bd5">OsclSchedulerReadyCallback</a> (<a class="el" href="group__osclbase.html#ga3bac54662348f5e6c08b97ca97066b89">OsclAny</a> *aContext)=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOsclSchedulerObserver.html#a0acb91379f3d11f2fbf39bf740ad960c">~OsclSchedulerObserver</a> ()</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p><a class="el" href="classOsclSchedulerObserver.html">OsclSchedulerObserver</a> is an observer class for use when running scheduler in non-blocking mode. The scheduler observer can register for callbacks so it will be notified when it is necessary to run scheduler again. Note: non-blocking mode and scheduler callbacks are not supported on Symbian. </p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a0acb91379f3d11f2fbf39bf740ad960c"></a><!-- doxytag: member="OsclSchedulerObserver::~OsclSchedulerObserver" ref="a0acb91379f3d11f2fbf39bf740ad960c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual OsclSchedulerObserver::~OsclSchedulerObserver </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ae1a13f87e3ac7e4de305f3fd2d462bd5"></a><!-- doxytag: member="OsclSchedulerObserver::OsclSchedulerReadyCallback" ref="ae1a13f87e3ac7e4de305f3fd2d462bd5" args="(OsclAny *aContext)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void OsclSchedulerObserver::OsclSchedulerReadyCallback </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__osclbase.html#ga3bac54662348f5e6c08b97ca97066b89">OsclAny</a> *&nbsp;</td>
          <td class="paramname"> <em>aContext</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>OsclSchedulerReadyCallback is called when the ready queue is updated, meaning an AO is ready to run. Scheduler needs to be run ASAP. Calling context may be any thread, so be careful!</p>
<p>The current observer is cleared before making the callback, so the observer must call RegisterForCallback again if it wants further notifications. </p>

</div>
</div>
<a class="anchor" id="ac6e3a2785d9fb62c020e5787fe91a330"></a><!-- doxytag: member="OsclSchedulerObserver::OsclSchedulerTimerCallback" ref="ac6e3a2785d9fb62c020e5787fe91a330" args="(OsclAny *aContext, uint32 aDelayMsec)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void OsclSchedulerObserver::OsclSchedulerTimerCallback </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__osclbase.html#ga3bac54662348f5e6c08b97ca97066b89">OsclAny</a> *&nbsp;</td>
          <td class="paramname"> <em>aContext</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32&nbsp;</td>
          <td class="paramname"> <em>aDelayMsec</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>OsclSchedulerTimerCallback is called when the front of the timer queue is updated. This means the minimum delay has changed and scheduler needs to be run again after aDelayMsec. Calling context is in-thread.</p>
<p>The current observer is cleared before making the callback, so the observer must call RegisterForCallback again if it wants further notifications. </p>

</div>
</div>
<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></li>
</ul>
</div>
<hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small>
<address style="align: left;"><small>Posting Version: CORE_9.002.1.1 </small>
</small></address>
</body>
</html>