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      span.virtual_style
22      {
23        font-size			 : 8pt;
24        color				 : white;
25        font-weight			: bold;
26        background			: #0a0;
27        border-left			: solid 1px #0f0;
28        border-top			: solid 1px #0f0;
29        border-right		: solid 1px #060;
30        border-bottom		: solid 1px #060;
31        padding-left		: 2px;
32        padding-right		: 2px;
33      }
34      span.protected_style
35      {
36        font-size			 : 8pt;
37        color				 : white;
38        font-weight			: bold;
39        background			: #444;
40        border-left			: solid 1px #ccc;
41        border-top			: solid 1px #ccc;
42        border-right		: solid 1px #222;
43        border-bottom		: solid 1px #222;
44        padding-left		: 2px;
45        padding-right		: 2px;
46      }
47        --></style>
48<title>nn::os::LightEvent</title>
49  </head>
50  <body>
51<h1><CODE><a href="../../../nn/Overview.html">nn</a>::<a href="../../../nn/os/Overview.html">os</a>::LightEvent</CODE> Class</h1>
52    <div class="section">
53<b>Header file: </b>nn/os.h</div>
54<h2>Syntax</h2>
55    <div class="section">
56<pre class="definition">class LightEvent : private <a href="../../../nn/util/NonCopyable/Overview.html">nn::util::NonCopyable< LightEvent ></a></pre>
57    </div>
58<h2>Description</h2>
59    <div class="section">
60<p>Synchronization mechanism for communicating flags between threads.</p><p>The class has an internal flag that multiple threads can control in a safe manner. It can also be used to wait for the flag to be set.</p><p>The <a href="../../../nn/os/LightEvent/Overview.html"><CODE>nn::os::LightEvent</CODE></a> class is superior to the <a href="../../../nn/os/Event/Overview.html"><CODE>nn::os::Event</CODE></a> class and should therefore be used in normal cases. Its only disadvantage is the fact that it is unable to wait for multiple synchronization objects simultaneously.</p><p>All member functions of this class are thread-safe except for the <CODE>Initialize</CODE> and <CODE>Finalize</CODE> functions.</p><!-- write here --></div>
61    <a name="function" id="function">
62<h2>Member Functions</h2>
63      <div class="section">
64        <table class="members">
65          <tr>
66<th class="category" colspan="3">Initialization/Finalization</th>
67          </tr>
68          <tr>
69            <td width="100">  </td>
70            <th>
71<a href="../../../nn/os/LightEvent/LightEvent.html"><CODE>LightEvent</CODE></a>
72            </th>
73<td>Constructor.</td>
74          </tr>
75          <tr>
76            <td width="100">  </td>
77            <th>
78<a href="../../../nn/os/LightEvent/Initialize.html"><CODE>Initialize</CODE></a>
79            </th>
80<td>Performs initialization.</td>
81          </tr>
82          <tr>
83            <td width="100">  </td>
84            <th>
85<a href="../../../nn/os/LightEvent/Finalize.html"><CODE>Finalize</CODE></a>
86            </th>
87<td>Performs finalization.</td>
88          </tr>
89          <tr>
90<th class="category" colspan="3">Obtaining Debug Info</th>
91          </tr>
92          <tr>
93            <td width="100">  </td>
94            <th>
95<a href="../../../nn/os/LightEvent/IsSignaled.html"><CODE>IsSignaled</CODE></a>
96            </th>
97<td>Obtains whether the flag is set.</td>
98          </tr>
99          <tr>
100            <td width="100">  </td>
101            <th>
102<a href="../../../nn/os/LightEvent/IsManualReset.html"><CODE>IsManualReset</CODE></a>
103            </th>
104<td>Determines whether an event is a manually resetting event.</td>
105          </tr>
106          <tr>
107<th class="category" colspan="3">Flag Operations and Blocking</th>
108          </tr>
109          <tr>
110            <td width="100">  </td>
111            <th>
112<a href="../../../nn/os/LightEvent/TryWait.html"><CODE>TryWait</CODE></a>
113            </th>
114<td>Gets whether the flag is set.</td>
115          </tr>
116          <tr>
117            <td width="100">  </td>
118            <th>
119<a href="../../../nn/os/LightEvent/Wait.html"><CODE>Wait</CODE></a>
120            </th>
121<td>Waits until the flag is set.</td>
122          </tr>
123          <tr>
124            <td width="100">  </td>
125            <th>
126<a href="../../../nn/os/LightEvent/Signal.html"><CODE>Signal</CODE></a>
127            </th>
128<td>Sets the flag.</td>
129          </tr>
130          <tr>
131            <td width="100">  </td>
132            <th>
133<a href="../../../nn/os/LightEvent/Pulse.html"><CODE>Pulse</CODE></a>
134            </th>
135<td>Deallocates threads that are waiting for the flag to be set.</td>
136          </tr>
137          <tr>
138            <td width="100">  </td>
139            <th>
140<a href="../../../nn/os/LightEvent/ClearSignal.html"><CODE>ClearSignal</CODE></a>
141            </th>
142<td>Clears the flag.</td>
143          </tr> </table>
144      </div>
145    </a>
146<h2>Class Hierarchy</h2>
147    <div class="section">
148<p class="hierarchy"><CODE><a href="../../../nn/util/NonCopyable/Overview.html">nn::util::NonCopyable</a></CODE><br />&nbsp;&nbsp;<b><CODE>nn::os::LightEvent</CODE></b>
149      </p>
150    </div>
151<h2>Revision History</h2>
152    <div class="section">
153      <dl class="history">
154        <dt>2010/06/14</dt>
155<dd>Initial version.<br />
156        </dd>
157      </dl>
158    </div>
159  <hr><p>CONFIDENTIAL</p></body>
160</html>
161