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</title>
51  </head>
52  <body>
53<h1>nn::os Namespace</h1>
54<h2>Description</h2>
55    <div class="section">
56<p>Namespace for the operating system API.</p><!-- write here --></div>
57    <a name="namespace" id="namespace">
58<h2>Namespaces</h2>
59      <div class="section">
60        <table class="members">
61          <tr>
62            <th>
63<a href="../../nn/os/ARM/Overview.html">nn::os::ARM</a>
64            </th>
65<td>Namespace for functions specific to the ARM processor (the <CODE>::ARM</CODE> portion may be omitted).</td>
66          </tr>
67          <tr>
68            <th>
69<a href="../../nn/os/CTR/Overview.html">nn::os::CTR</a>
70            </th>
71<td>Namespace for functions specific to the CTR platform (the <CODE>::CTR</CODE> portion can be omitted).</td>
72          </tr> </table>
73      </div>
74    </a> <a name="class" id="class">
75<h2>Classes</h2>
76      <div class="section">
77        <table class="members">
78          <tr>
79            <th>
80<a href="../../nn/os/Alarm/Overview.html"><CODE>nn::os::Alarm</CODE></a>
81            </th>
82<td>Class for handling alarms.</td>
83          </tr>
84          <tr>
85            <th>
86<a href="../../nn/os/BlockingQueue/Overview.html"><CODE>nn::os::BlockingQueue</CODE></a>
87            </th>
88<td>Class for handling blocking queues.</td>
89          </tr>
90          <tr>
91            <th>
92<a href="../../nn/os/SafeBlockingQueue/Overview.html"><CODE>nn::os::SafeBlockingQueue</CODE></a>
93            </th>
94<td>Class for handling blocking queues.</td>
95          </tr>
96          <tr>
97            <th>
98<a href="../../nn/os/CriticalSection/Overview.html"><CODE>nn::os::CriticalSection</CODE></a>
99            </th>
100<td>Class for handling critical sections. Critical sections are synchronization objects used for providing mutual exclusion.</td>
101          </tr>
102          <tr>
103            <th>
104<a href="../../nn/os/EventBase/Overview.html"><CODE>nn::os::EventBase</CODE></a>
105            </th>
106<td>Class that is used internally by the library. Do not use this class directly.</td>
107          </tr>
108          <tr>
109            <th>
110<a href="../../nn/os/Event/Overview.html"><CODE>nn::os::Event</CODE></a>
111            </th>
112<td>Class for handling events. Events are synchronization objects that send notification that an event has occurred.</td>
113          </tr>
114          <tr>
115            <th>
116<a href="../../nn/os/HandleObject/Overview.html"><CODE>nn::os::HandleObject</CODE></a>
117            </th>
118<td>Abstract base class that represents an object managed by the OS.</td>
119          </tr>
120          <tr>
121            <th>
122<a href="../../nn/os/LightBarrier/Overview.html"><CODE>nn::os::LightBarrier</CODE></a>
123            </th>
124<td>Synchronization mechanism that waits for the arrival of multiple threads.</td>
125          </tr>
126          <tr>
127            <th>
128<a href="../../nn/os/LightEvent/Overview.html"><CODE>nn::os::LightEvent</CODE></a>
129            </th>
130<td>Synchronization mechanism for communicating flags between threads.</td>
131          </tr>
132          <tr>
133            <th>
134<a href="../../nn/os/LightSemaphore/Overview.html"><CODE>nn::os::LightSemaphore</CODE></a>
135            </th>
136<td>Synchronization mechanism for mutual exclusion of the number of resources between threads.</td>
137          </tr>
138          <tr>
139            <th>
140<a href="../../nn/os/MemoryBlock/Overview.html"><CODE>nn::os::MemoryBlock</CODE></a>
141            </th>
142<td>Class allocating memory from the specified region in the heap.</td>
143          </tr>
144          <tr>
145            <th>
146<a href="../../nn/os/MemoryBlockBase/Overview.html"><CODE>nn::os::MemoryBlockBase</CODE></a>
147            </th>
148<td>Base class for classes handling contiguous memory regions.</td>
149          </tr>
150          <tr>
151            <th>
152<a href="../../nn/os/Mutex/Overview.html"><CODE>nn::os::Mutex</CODE></a>
153            </th>
154<td>Class for handling mutexes. Mutexes are synchronization objects used for providing mutual exclusion.</td>
155          </tr>
156          <tr>
157            <th>
158<a href="../../nn/os/Semaphore/Overview.html"><CODE>nn::os::Semaphore</CODE></a>
159            </th>
160<td>Class for handling semaphores. Semaphores are synchronization objects that have counters.</td>
161          </tr>
162          <tr>
163            <th>
164<a href="../../nn/os/StackMemory/Overview.html"><CODE>nn::os::StackMemory</CODE></a>
165            </th>
166<td>Class that partitions a specified memory region for use as a stack.</td>
167          </tr>
168          <tr>
169            <th>
170<a href="../../nn/os/StackMemoryBlock/Overview.html"><CODE>nn::os::StackMemoryBlock</CODE></a>
171            </th>
172<td>Class allocating stack memory from the heap in the specified region.</td>
173          </tr>
174          <tr>
175            <th>
176<a href="../../nn/os/WaitObject/Overview.html"><CODE>nn::os::WaitObject</CODE></a>
177            </th>
178<td>Base class for objects that are able to wait.</td>
179          </tr>
180          <tr>
181            <th>
182<a href="../../nn/os/InterruptEvent/Overview.html"><CODE>nn::os::InterruptEvent</CODE></a>
183            </th>
184<td>Abstract class used internally by the library. Do not use it directly.</td>
185          </tr>
186          <tr>
187            <th>
188<a href="../../nn/os/Thread/Overview.html"><CODE>nn::os::Thread</CODE></a>
189            </th>
190<td>Class for representing threads.</td>
191          </tr>
192          <tr>
193            <th>
194<a href="../../nn/os/StackBuffer/Overview.html"><CODE>nn::os::StackBuffer</CODE></a>
195            </th>
196<td>Class template used for placing the thread stack in locations such as within a static region or a structure.</td>
197          </tr>
198          <tr>
199            <th>
200<a href="../../nn/os/ThreadLocalStorage/Overview.html"><CODE>nn::os::ThreadLocalStorage</CODE></a>
201            </th>
202<td>Class that represents thread-local storage with the same size as the <CODE>uptr</CODE> type.</td>
203          </tr>
204          <tr>
205            <th>
206<a href="../../nn/os/Tick/Overview.html"><CODE>nn::os::Tick</CODE></a>
207            </th>
208<td>Class for handling system ticks.</td>
209          </tr>
210          <tr>
211            <th>
212<a href="../../nn/os/Timer/Overview.html"><CODE>nn::os::Timer</CODE></a>
213            </th>
214<td>Class for representing timers.</td>
215          </tr> </table>
216      </div>
217    </a> <a name="struct" id="struct">
218<h2>Structures</h2>
219      <div class="section">
220        <table class="members">
221          <tr>
222            <th>
223<a href="../../nn/os/LockPolicy/Overview.html"><CODE>nn::os::LockPolicy</CODE></a>
224            </th>
225<td>Container class used for operations related to lock policies.</td>
226          </tr> </table>
227      </div>
228    </a> <a name="typedef" id="typedef">
229<h2><CODE>typedef</CODE> Definitions</h2>
230      <div class="section">
231        <table class="members">
232          <tr>
233            <td width="100" />
234            <th>
235<a href="../../nn/os/AlarmHandler.html"><CODE>AlarmHandler</CODE></a>
236            </th>
237<td>Type representing handlers that are run for alarms.</td>
238          </tr> </table>
239      </div>
240    </a> <a name="constant" id="constant">
241<h2>Constants</h2>
242      <div class="section">
243        <table class="members">
244          <tr>
245            <td width="100"> </td>
246            <th>
247<span class="argument"><a href="../../nn/os/NN_ATTRIBUTE_DEPRECATED.html"><CODE>NN_ATTRIBUTE_DEPRECATED</CODE></a></span>
248            </th>
249<td>This constant will be eliminated in the future.</td>
250          </tr>
251          <tr>
252            <td width="100"> </td>
253            <th>
254<span class="argument"><a href="../../nn/os/ALLOCATE_OPTION_LINEAR.html"><CODE>ALLOCATE_OPTION_LINEAR</CODE></a></span>
255            </th>
256<td>Option passed to the <CODE>AllocateMemoryBlock</CODE> function. This allocates a contiguous block of physical memory.</td>
257          </tr>
258          <tr>
259            <td width="100"> </td>
260            <th>
261<span class="argument"><a href="../../nn/os/WAIT_INFINITE.html"><CODE>WAIT_INFINITE</CODE></a></span>
262            </th>
263<td>The function continues running until a result is obtained. (Used by applet library functions that specify a time.)</td>
264          </tr> </table>
265      </div>
266    </a> <a name="function" id="function">
267<h2>Functions</h2>
268      <div class="section">
269        <table class="members">
270          <tr>
271            <td width="100">  </td>
272            <th>
273<a href="../../nn/os/InitializeAlarmSystem.html"><CODE>InitializeAlarmSystem</CODE></a>
274            </th>
275<td>Initializes the alarm system.</td>
276          </tr>
277          <tr>
278            <td width="100">  </td>
279            <th>
280<a href="../../nn/os/GetAppMemorySize.html">GetAppMemorySize</a>
281            </th>
282<td>Gets the maximum total amount of memory that the application can use.</td>
283          </tr>
284          <tr>
285            <td width="100">  </td>
286            <th>
287<a href="../../nn/os/GetUsingMemorySize.html">GetUsingMemorySize</a>
288            </th>
289<td>Gets the total size of memory currently allocated to the program.</td>
290          </tr>
291          <tr>
292            <td width="100">  </td>
293            <th>
294<a href="../../nn/os/InitializeDeviceMemory.html"><CODE>InitializeDeviceMemory</CODE></a>
295            </th>
296<td>This function will be eliminated in the future.</td>
297          </tr>
298          <tr>
299            <td width="100">  </td>
300            <th>
301<a href="../../nn/os/SetupHeapForMemoryBlock.html"><CODE>SetupHeapForMemoryBlock</CODE></a>
302            </th>
303<td>This function sets up the OS to emulate the same memory environment that was used in CTR-SDK 0.9 and prior versions.</td>
304          </tr>
305          <tr>
306            <td width="100">  </td>
307            <th>
308<a href="../../nn/os/GetDeviceMemoryAddress.html"><CODE>GetDeviceMemoryAddress</CODE></a>
309            </th>
310<td>Gets the starting address of the device memory.</td>
311          </tr>
312          <tr>
313            <td width="100">  </td>
314            <th>
315<a href="../../nn/os/SetDeviceMemorySize.html"><CODE>SetDeviceMemorySize</CODE></a>
316            </th>
317<td>Changes the size of the device memory.</td>
318          </tr>
319          <tr>
320            <td width="100">  </td>
321            <th>
322<a href="../../nn/os/GetDeviceMemorySize.html"><CODE>GetDeviceMemorySize</CODE></a>
323            </th>
324<td>Gets the size of the device memory.</td>
325          </tr>
326          <tr>
327            <td width="100">  </td>
328            <th>
329<a href="../../nn/os/GetHeapAddress.html"><CODE>GetHeapAddress</CODE></a>
330            </th>
331<td>Gets the starting address of the heap.</td>
332          </tr>
333          <tr>
334            <td width="100">  </td>
335            <th>
336<a href="../../nn/os/SetHeapSize.html"><CODE>SetHeapSize</CODE></a>
337            </th>
338<td>Changes the size of the heap.</td>
339          </tr>
340          <tr>
341            <td width="100">  </td>
342            <th>
343<a href="../../nn/os/GetHeapSize.html"><CODE>GetHeapSize</CODE></a>
344            </th>
345<td>Gets the size of the heap.</td>
346          </tr>
347          <tr>
348            <td width="100">  </td>
349            <th>
350<a href="../../nn/os/InitializeMemoryBlock.html"><CODE>InitializeMemoryBlock</CODE></a>
351            </th>
352<td>Allows use of the <a href="../../nn/os/MemoryBlock/Overview.html"><CODE>MemoryBlock</CODE></a> and <a href="../../nn/os/StackMemoryBlock/Overview.html"><CODE>StackMemoryBlock</CODE></a> classes.</td>
353          </tr> </table>
354      </div>
355    </a>
356<h2>Revision History</h2>
357    <div class="section">
358      <dl class="history">
359        <dt>2010/01/07</dt>
360<dd>Initial version.<br />
361        </dd>
362      </dl>
363    </div>
364  <hr><p>CONFIDENTIAL</p></body>
365</html>