1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xml:lang="en-US" lang="en-US" xmlns="http://www.w3.org/1999/xhtml">
3  <head>
4    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5    <meta http-equiv="Content-Style-Type" content="text/css" />
6    <link rel="stylesheet" href="../../../css/manpage.css" type="text/css" />
7    <style type="text/css"><!--
8      span.static_style
9      {
10        font-size			: 8pt;
11        color				: white;
12        font-weight			: bold;
13        background			: #44f;
14        border-left			: solid 1px #aaf;
15        border-top			: solid 1px #aaf;
16        border-right		: solid 1px #00c;
17        border-bottom		: solid 1px #00c;
18        padding-left		: 2px;
19        padding-right		: 2px;
20      }
21
22      span.virtual_style
23      {
24        font-size			 : 8pt;
25        color				 : white;
26        font-weight			: bold;
27        background			: #0a0;
28        border-left			: solid 1px #0f0;
29        border-top			: solid 1px #0f0;
30        border-right		: solid 1px #060;
31        border-bottom		: solid 1px #060;
32        padding-left		: 2px;
33        padding-right		: 2px;
34      }
35
36      span.protected_style
37      {
38        font-size			 : 8pt;
39        color				 : white;
40        font-weight			: bold;
41        background			: #444;
42        border-left			: solid 1px #ccc;
43        border-top			: solid 1px #ccc;
44        border-right		: solid 1px #222;
45        border-bottom		: solid 1px #222;
46        padding-left		: 2px;
47        padding-right		: 2px;
48      }
49        --></style>
50<title>nn::os::Event</title>
51  </head>
52  <body>
53<h1><CODE>nn::os::Event</CODE> Class</h1>
54    <div class="section">
55<b>Header file: </b>nn/os.h</div>
56<h2>Syntax</h2>
57    <div class="section">
58      <pre class="definition">class Event : public <a href="../../../nn/os/EventBase/Overview.html">nn::os::EventBase</a></pre>
59    </div>
60<h2>Description</h2>
61    <div class="section">
62<p>Class for handling events. Events are synchronization objects that send notification that an event has occurred.</p><p>Generally, use the <CODE><a href="../../../nn/os/LightEvent/Overview.html">nn::os::LightEvent</a></CODE> class instead of <CODE><a href="../../../nn/os/Event/Overview.html">nn::os::Event</a></CODE>. The <CODE><a href="../../../nn/os/LightEvent/Overview.html">nn::os::LightEvent</a></CODE> class is better than the <CODE><a href="../../../nn/os/Event/Overview.html">nn::os::Event</a></CODE> class in most respects, except that it cannot wait for multiple synchronization objects at the same time.</p><p>An event has two possible states: signaled and non-signaled. The <CODE>Wait</CODE> operation for an <CODE><a href="../../../nn/os/Event/Overview.html">Event</a></CODE> waits until the event enters the signaled state.</p><p>There are two types of events: those that are manually reset and those that are automatically reset. This characteristic can be configured by parameters during initialization.</p><p>Manually resetting events always remain in the signaled state from the time they are signaled with <CODE><a href="../../../nn/os/Event/Signal.html">Signal</a></CODE> until <CODE><a href="../../../nn/os/Event/ClearSignal.html">ClearSignal</a></CODE> is called. When such events are in the signaled state, all <CODE>Wait</CODE> operations waiting for them are released.</p><p>When an automatically resetting event is signaled by <a href="../../../nn/os/Event/Signal.html"><CODE>Signal</CODE></a>, only one of the threads waiting on it is released: the thread with the highest priority among those threads that are able to be released. If there is more than one such thread with the highest priority, only one of them is released. No other threads are released.</p><!-- write here --></div>
63    <a name="function" id="function">
64<h2>Member Functions</h2>
65      <div class="section">
66        <table class="members">
67          <tr>
68            <td width="100">  </td>
69            <th>
70<a href="../../../nn/os/Event/Event.html"><CODE>Event</CODE></a>
71            </th>
72<td>Constructs and initializes an event.</td>
73          </tr>
74          <tr>
75            <td width="100">  </td>
76            <th>
77<a href="../../../nn/os/Event/Initialize.html"><CODE>Initialize</CODE></a>
78            </th>
79<td>Initializes an event.</td>
80          </tr>
81          <tr>
82            <td width="100">  </td>
83            <th>
84<a href="../../../nn/os/Event/Finalize.html"><CODE>Finalize</CODE></a>
85            </th>
86<td>Destroys an event.</td>
87          </tr>
88          <tr>
89            <td width="100">  </td>
90            <th>
91<a href="../../../nn/os/Event/~Event.html"><CODE>~Event</CODE></a>
92            </th>
93<td>Destructor.</td>
94          </tr>
95          <tr>
96            <td width="100">  </td>
97            <th>
98<a href="../../../nn/os/Event/Signal.html"><CODE>Signal</CODE></a>
99            </th>
100<td>Puts an event into the signaled state.</td>
101          </tr>
102          <tr>
103            <td width="100">  </td>
104            <th>
105<a href="../../../nn/os/Event/Wait.html"><CODE>Wait</CODE></a>
106            </th>
107<td>Waits for an event to enter the signaled state.</td>
108          </tr>
109          <tr>
110            <td width="100">  </td>
111            <th>
112<a href="../../../nn/os/Event/ClearSignal.html"><CODE>ClearSignal</CODE></a>
113            </th>
114<td>Clears an event manually.</td>
115          </tr> </table>
116      </div>
117    </a>
118<h2>Class Hierarchy</h2>
119    <div class="section">
120<p class="hierarchy"><span>ADLFireWall::NonCopyable</span><br />  <a href="../../../nn/os/HandleObject/Overview.html">nn::os::HandleObject</a><br />    <a href="../../../nn/os/WaitObject/Overview.html">nn::os::WaitObject</a><br />      <a href="../../../nn/os/InterruptEvent/Overview.html">nn::os::InterruptEvent</a><br />        <a href="../../../nn/os/EventBase/Overview.html">nn::os::EventBase</a><br />          <b>nn::os::Event</b>
121      </p>
122    </div>
123<h2>See Also</h2>
124    <div class="section">
125<p class="reference"><a href="../../../nn/os/Semaphore/Overview.html"><CODE>nn::os::Semaphore</CODE></a><br /> </p>
126    </div>
127<h2>Revision History</h2>
128    <div class="section">
129      <dl class="history">
130        <dt>2010/01/07</dt>
131<dd>Initial version.<br />
132        </dd>
133      </dl>
134    </div>
135  <hr><p>CONFIDENTIAL</p></body>
136</html>