1<?xml version="1.0" encoding="utf-8"?>
2<html><head>
3    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
4    <meta http-equiv="Content-Style-Type" content="text/css" />
5    <title>Namespaces in the SDK</title>
6    <link rel="stylesheet" href="../css/page.css" type="text/css" />
7    <style>
8    pre
9    {
10        margin-top: 0;
11        margin-left: 3em;
12    }
13    </style>
14</head><body>
15    <h1>Namespaces in the SDK</h1>
16    <h2>Description</h2>
17    <p>
18        The CTR-SDK uses the following namespaces. Be sure to avoid name collisions.
19    </p>
20    <h3>Prefixes for Global Names</h3>
21    <p>
22        Functions that do not belong to a namespace have names that start with <CODE>nn</CODE>.
23    </p>
24    <p>
25        Example:
26    </p>
27<pre>
28nngxInitialize
29</pre>
30    <p>
31        However, functions that are compatible with OpenGL ES use names that start with <CODE>gl</CODE>.
32    </p>
33    <p>
34        Example:
35    </p>
36<pre>
37glDrawElements
38</pre>
39    <p>
40        Constants and macros that do not belong to a namespace have names that start with <CODE>NN_</CODE>.
41    </p>
42    <p>
43        Example:
44    </p>
45<pre>
46NN_LOG
47</pre>
48    <h3>Global Namespaces</h3>
49    <p>
50        The namespace <CODE>nn</CODE> is used for the C++ namespace. All API functions in the SDK belong to the <CODE>nn</CODE> namespace.
51    </p>
52    <p>
53        Example:
54    </p>
55<pre>
56nn::os
57nn::fnd
58nn::fs::MountRom
59</pre>
60    <h3>Basic Types</h3>
61    <p>
62        As an exception to the above, <a href="../nn_types/Overview.html">basic type definitions</a> are defined using their respective names in the global namespace.
63    </p>
64    <h2>Revision History</h2>
65    <div class="section">
66        <dl class="history">
67            <dt>2011/12/12</dt>
68            <dd>Initial version.</dd>
69        </dl>
70    </div>
71<hr><p>CONFIDENTIAL</p></body></html>
72