[processor-sdk/performance-audio-sr.git] / psdk_cust / ipc_3_43_00_00_eng / docs / cdoc / ti / sdo / utils / NameServer.html
1 <html>
2 <head>
3 <title>module ti.sdo.utils.NameServer</title>
4 <meta name="description" content="Manages and serves names to remote/local processor">
5 <link rel="stylesheet" type="text/css" href="../../../xdoc.css" />
6 </head>
7 <body><div id="xdocWrapper"><div id="xdocContent">
8 <table class="xdocHdr"><tr>
9 <td class="xdocHdrTitle"><span class="xdoc-kw1">module</span> <span class="xdoc-id">ti.sdo.utils.</span><span class="xdoc-id">NameServer</span></td>
10 <td class="xdocHdrArrow">
11 <a class="xdocHdrLink" href="../../../ti/sdo/utils/MultiProc.html" title="module MultiProc"><img class="xdocHdrArrow" src="../../../Arrow_left.png"/></a></td>
12 <td class="xdocHdrArrow">
13 <a class="xdocHdrLink" href="../../../ti/sdo/utils/package.html" title="package ti.sdo.utils"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
14 <td class="xdocHdrArrow">
15 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServerRemoteNull.html" title="module NameServerRemoteNull"><img class="xdocHdrArrow" src="../../../Arrow_right.png"/></a></td>
16 </table>
17 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html">index URL</a></div>
18 <p class="xdocHdrSummary">Manages and serves names to remote/local processor</p>
19 <ul class="xdocToc">
20 <li class="xdocToc"><a class="xdocToc" href="#targ-synop">C synopsis</a></li>
21 <li class="xdocToc2"><a class="xdocToc" href="#xdocElems">Individual elements</a></li>
22 <li class="xdocToc"><a class="xdocToc" href="#xdoc-sect-1">DETAILS</a></li>
23 <li class="xdocToc"><a class="xdocToc" href="#xdoc-sect-2">NOTE</a></li>
24 <li class="xdocToc"><a class="xdocToc" href="#meta-synop">Configuration settings</a></li>
25 <li class="xdocToc2"><a class="xdocToc" href="#xdocMetaElems">Individual elements</a></li>
26 </ul>
27 <div class="xdocBrief">
28 This module has a common header that can be found in the <a class="xdoc-link" href="../../../ti/ipc/package.html" title="ti.ipc">ti.ipc</a>
29 package. Application code should include the common header file (not the
30 RTSC-generated one):
32 <PRE>#include <ti/ipc/NameServer.h></PRE>
34 The RTSC module must be used in the application's RTSC configuration file
35 (.cfg) if runtime APIs will be used in the application:
37 <PRE>NameServer = xdc.useModule('ti.sdo.ipc.NameServer');</PRE>
39 Documentation for all runtime APIs, instance configuration parameters,
40 error codes macros and type definitions available to the application
41 integrator can be found in the
42 <A HREF="../../../../doxygen/html/files.html">Doxygen documenation</A>
43 for the IPC product. However, the documentation presented on this page
44 should be referred to for information specific to the RTSC module, such as
45 module configuration, Errors, and Asserts.
46 [ <a class="xdocBrief" href="#xdoc-desc">more</a> ... ]
47 </div>
48 <span id='targ-synop'></span>
49 <table class="xdocLabel"><tr>
50 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2">C</span></tt> synopsis</td>
51 <td class="xdocLabelCenter">target-domain</td>
52 <td class="xdocLabelRight">sourced in <a class="xdocLink" href="../../../ti/sdo/utils/NameServer-src.html"><span class="xdocLabelFile">ti/sdo/utils/NameServer.xdc</span></a></td>
53 </tr></table>
54 <div class="xdocSynT">
55 <div class="xdocSynCode">
56 <tt></tt><span class="xdoc-kw3">#include</span> <span class="xdoc-id"><ti/sdo/utils/NameServer.h></span>
57 </div>
58 <table cellspacing="0" cellpadding="0" border="0">
59 <tr><td colspan='2'><div class='xdocSynTblHdr'>Functions</div></td></tr>
61 <tr valign="top"><td class="xdocSynDecl" nowrap><div class="xdocSynTblType"><tt></tt><span class="xdoc-kw2">Bool</span> </div></td><td class="xdocSynDecl"><div class="xdocSynTblDecl"><a class="xdocSynGo" href="#is.Registered"><span class="xdoc-id">NameServer_isRegistered</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Determines if a remote driver is registered for the specified id</span></span></a>(<span class="xdoc-kw2">UInt16</span> <span class="xdoc-id">procId</span>);</div></td></tr>
62 <tr valign="top"><td class="xdocSynDecl" nowrap><div class="xdocSynTblType"><tt></tt><span class="xdoc-kw2">Void</span> </div></td><td class="xdocSynDecl"><div class="xdocSynTblDecl"><a class="xdocSynGo" href="#per-instance_config_parameters"><span class="xdoc-id">NameServer_Params_init</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Initialize this config-params structure with supplier-specified defaults before instance creation</span></span></a>(<a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_config_parameters" title="ti.sdo.utils.NameServer.Params">NameServer_Params</a> *params);</div></td></tr>
63 <tr valign="top"><td class="xdocSynDecl" nowrap><div class="xdocSynTblType"><tt></tt><span class="xdoc-kw2">Int</span> </div></td><td class="xdocSynDecl"><div class="xdocSynTblDecl"><a class="xdocSynGo" href="#register.Remote.Driver"><span class="xdoc-id">NameServer_registerRemoteDriver</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Register the NameServer remote handle for the specified processor id</span></span></a>(<a class="xdoc-link" href="../../../ti/sdo/utils/INameServerRemote.html#per-instance_object_types" title="ti.sdo.utils.INameServerRemote.Handle">INameServerRemote_Handle</a> <span class="xdoc-id">handle</span>, <span class="xdoc-kw2">UInt16</span> <span class="xdoc-id">procId</span>);</div></td></tr>
64 <tr valign="top"><td class="xdocSynDecl" nowrap><div class="xdocSynTblType"><tt></tt><span class="xdoc-kw2">Void</span> </div></td><td class="xdocSynDecl"><div class="xdocSynTblDecl"><a class="xdocSynGo" href="#unregister.Remote.Driver"><span class="xdoc-id">NameServer_unregisterRemoteDriver</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Unregister the NameServer remote handle for the specified processor id</span></span></a>(<span class="xdoc-kw2">UInt16</span> <span class="xdoc-id">procId</span>);</div></td></tr>
65 <tr><td class="xdocSynFxnCat" colspan="2"><div class="xdocSynFxnCat">Functions common to all target instances</div></td></tr>
67 <tr>
68 <td></td>
69 <td>
70 <div class="xdocSynTblPack">
71 <a class="xdocSynGo" href="#per-instance_object_types"><span class="xdoc-id">NameServer_handle</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Convert this instance structure pointer into an instance handle</span></span></a>,
72 <a class="xdocSynGo" href="#per-instance_built-ins"><span class="xdoc-id">NameServer_Handle_label</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// The label associated with this instance object</span></span></a>,
73 <a class="xdocSynGo" href="#per-instance_built-ins"><span class="xdoc-id">NameServer_Handle_name</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// The name of this instance object</span></span></a>,
74 <a class="xdocSynGo" href="#per-instance_built-ins"><span class="xdoc-id">NameServer_Object_count</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// The number of statically-created instance objects</span></span></a>,
75 <a class="xdocSynGo" href="#per-instance_built-ins"><span class="xdoc-id">NameServer_Object_first</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// The handle of the first dynamically-created instance object, or NULL</span></span></a>,
76 <a class="xdocSynGo" href="#per-instance_built-ins"><span class="xdoc-id">NameServer_Object_get</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// The handle of the i-th statically-created instance object (array == NULL)</span></span></a>,
77 <a class="xdocSynGo" href="#per-instance_built-ins"><span class="xdoc-id">NameServer_Object_heap</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// The heap used to allocate dynamically-created instance objects</span></span></a>,
78 <a class="xdocSynGo" href="#per-instance_built-ins"><span class="xdoc-id">NameServer_Object_next</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// The handle of the next dynamically-created instance object, or NULL</span></span></a>,
79 <a class="xdocSynGo" href="#per-instance_object_types"><span class="xdoc-id">NameServer_struct</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Convert this instance handle into an instance structure pointer</span></span></a>
80 </div>
81 </td>
82 </tr>
83 <tr><td class="xdocSynFxnCat" colspan="2"><div class="xdocSynFxnCat">Functions common to all target modules</div></td></tr>
85 <tr>
86 <td></td>
87 <td>
88 <div class="xdocSynTblPack">
89 <a class="xdocSynGo" href="#module-wide_built-ins"><span class="xdoc-id">NameServer_Module_getMask</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Returns the diagnostics mask for this module</span></span></a>,
90 <a class="xdocSynGo" href="#module-wide_built-ins"><span class="xdoc-id">NameServer_Module_hasMask</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Test whether this module has a diagnostics mask</span></span></a>,
91 <a class="xdocSynGo" href="#module-wide_built-ins"><span class="xdoc-id">NameServer_Module_heap</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// The heap from which this module allocates memory</span></span></a>,
92 <a class="xdocSynGo" href="#module-wide_built-ins"><span class="xdoc-id">NameServer_Module_id</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Get this module's unique id</span></span></a>,
93 <a class="xdocSynGo" href="#module-wide_built-ins"><span class="xdoc-id">NameServer_Module_setMask</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Set the diagnostics mask for this module</span></span></a>,
94 <a class="xdocSynGo" href="#module-wide_built-ins"><span class="xdoc-id">NameServer_Module_startupDone</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Test if this module has completed startup</span></span></a>
95 </div>
96 </td>
97 </tr>
98 <tr><td colspan='2'><div class='xdocSynTblHdr'>Defines</div></td></tr>
100 <tr valign="top"><td class="xdocSynDecl" nowrap><div class="xdocSynTblType"><tt></tt><span class="xdoc-kw3">#define</span> </div></td><td class="xdocSynDecl"><div class="xdocSynTblDecl"><a class="xdocSynGo" href="#.A.L.L.O.W.G.R.O.W.T.H"><span class="xdoc-id">NameServer_ALLOWGROWTH</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Allow dynamic growth of the NameServer instance table</span></span></a> (<i><span class="xdoc-kw2">UInt</span></i>)(~0)</div></td></tr>
101 <tr><td colspan='2'><div class='xdocSynTblHdr'>Typedefs</div></td></tr>
103 <tr valign="top"><td class="xdocSynDecl" nowrap><div class="xdocSynTblType"><tt></tt><span class="xdoc-kw1">typedef</span> <a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_object_types" title="ti.sdo.utils.NameServer.Object">NameServer_Object</a> *</div></td><td class="xdocSynDecl"><div class="xdocSynTblDecl"><a class="xdocSynGo" href="#per-instance_object_types"><span class="xdoc-id">NameServer_Handle</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Client reference to an instance object</span></span></a>;</div></td></tr>
104 <tr valign="top"><td class="xdocSynDecl" nowrap><div class="xdocSynTblType"><tt></tt><span class="xdoc-kw1">typedef</span> <span class="xdoc-kw1">struct</span> </div></td><td class="xdocSynDecl"><div class="xdocSynTblDecl"><a class="xdocSynGo" href="#per-instance_object_types"><span class="xdoc-id">NameServer_Object</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Opaque internal representation of an instance object</span></span></a> <span class="xdoc-id">NameServer_Object</span>;</div></td></tr>
105 <tr valign="top"><td class="xdocSynDecl" nowrap><div class="xdocSynTblType"><tt></tt><span class="xdoc-kw1">typedef</span> <span class="xdoc-kw1">struct</span> </div></td><td class="xdocSynDecl"><div class="xdocSynTblDecl"><a class="xdocSynGo" href="#per-instance_config_parameters"><span class="xdoc-id">NameServer_Params</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Instance config-params structure</span></span></a> ...</div></td></tr>
106 <tr valign="top"><td class="xdocSynDecl" nowrap><div class="xdocSynTblType"><tt></tt><span class="xdoc-kw1">typedef</span> <span class="xdoc-kw1">struct</span> </div></td><td class="xdocSynDecl"><div class="xdocSynTblDecl"><a class="xdocSynGo" href="#per-instance_object_types"><span class="xdoc-id">NameServer_Struct</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Opaque client structure large enough to hold an instance object</span></span></a> <span class="xdoc-id">NameServer_Struct</span>;</div></td></tr>
107 <tr><td colspan='2'><div class='xdocSynTblHdr'>Constants</div></td></tr>
109 <tr valign="top"><td class="xdocSynDecl" nowrap><div class="xdocSynTblType"><tt></tt><span class="xdoc-kw1">extern const</span> <a class="xdoc-link" href="../../../xdc/runtime/Assert.html#.Id" title="xdc.runtime.Assert.Id">Assert_Id</a> </div></td><td class="xdocSynDecl"><div class="xdocSynTblDecl"><a class="xdocSynGo" href="#.A_invalid.Len"><span class="xdoc-id">NameServer_A_invalidLen</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Assert raised when the name or value is too long</span></span></a>;</div></td></tr>
110 <tr valign="top"><td class="xdocSynDecl" nowrap><div class="xdocSynTblType"><tt></tt><span class="xdoc-kw1">extern const</span> <a class="xdoc-link" href="../../../xdc/runtime/Assert.html#.Id" title="xdc.runtime.Assert.Id">Assert_Id</a> </div></td><td class="xdocSynDecl"><div class="xdocSynTblDecl"><a class="xdocSynGo" href="#.A_inv.Argument"><span class="xdoc-id">NameServer_A_invArgument</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Assert raised when an argument is invalid</span></span></a>;</div></td></tr>
111 <tr valign="top"><td class="xdocSynDecl" nowrap><div class="xdocSynTblType"><tt></tt><span class="xdoc-kw1">extern const</span> <a class="xdoc-link" href="../../../xdc/runtime/Error.html#.Id" title="xdc.runtime.Error.Id">Error_Id</a> </div></td><td class="xdocSynDecl"><div class="xdocSynTblDecl"><a class="xdocSynGo" href="#.E_entry.Exists"><span class="xdoc-id">NameServer_E_entryExists</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Error raised when the name already exists in the instance
112 Name/Value table</span></span></a>;</div></td></tr>
113 <tr valign="top"><td class="xdocSynDecl" nowrap><div class="xdocSynTblType"><tt></tt><span class="xdoc-kw1">extern const</span> <a class="xdoc-link" href="../../../xdc/runtime/Error.html#.Id" title="xdc.runtime.Error.Id">Error_Id</a> </div></td><td class="xdocSynDecl"><div class="xdocSynTblDecl"><a class="xdocSynGo" href="#.E_max.Reached"><span class="xdoc-id">NameServer_E_maxReached</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Error raised if all the entries in the instance Name/Value table
114 are taken</span></span></a>;</div></td></tr>
115 <tr valign="top"><td class="xdocSynDecl" nowrap><div class="xdocSynTblType"><tt></tt><span class="xdoc-kw1">extern const</span> <a class="xdoc-link" href="../../../xdc/runtime/Error.html#.Id" title="xdc.runtime.Error.Id">Error_Id</a> </div></td><td class="xdocSynDecl"><div class="xdocSynTblDecl"><a class="xdocSynGo" href="#.E_param.Mismatch"><span class="xdoc-id">NameServer_E_paramMismatch</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Error raised when creation parameters do not match those of an
116 existing NameServer</span></span></a>;</div></td></tr>
117 </table>
118 <div class="xdocSynSpacer"> </div>
119 </div>
120 <span id="xdoc-desc"></span>
121 <span id="xdoc-sect-1"></span>
122 <div class="xdocSect">DETAILS</div>
123 <div class="xdocText">This module has a common header that can be found in the <a class="xdoc-link" href="../../../ti/ipc/package.html" title="ti.ipc">ti.ipc</a>
124 package. Application code should include the common header file (not the
125 RTSC-generated one):
127 <PRE>#include <ti/ipc/NameServer.h></PRE>
129 The RTSC module must be used in the application's RTSC configuration file
130 (.cfg) if runtime APIs will be used in the application:
132 <PRE>NameServer = xdc.useModule('ti.sdo.ipc.NameServer');</PRE>
134 Documentation for all runtime APIs, instance configuration parameters,
135 error codes macros and type definitions available to the application
136 integrator can be found in the
137 <A HREF="../../../../doxygen/html/files.html">Doxygen documenation</A>
138 for the IPC product. However, the documentation presented on this page
139 should be referred to for information specific to the RTSC module, such as
140 module configuration, Errors, and Asserts.</div>
141 <span id="xdoc-sect-2"></span>
142 <div class="xdocSect">NOTE</div>
143 <div class="xdocText">This modules reflects upon the <a class="xdoc-link" href="../../../ti/sdo/utils/MultiProc.html#proc.Addr.Mode" title="ti.sdo.utils.MultiProc.procAddrMode">ti.sdo.utils.MultiProc.procAddrMode</a>
144 configuration parameter. Some internal data structure allocations are
145 optimized for the given processor address mode. For example, when using
146 MultiProc.ProcAddrMode_Global, resource is allocated for every processor
147 in the system. When using MultiProc.ProcAddrMode_Cluster, resources are
148 only allocated for processors in the cluster. A side-effect is that when
149 using Cluster mode, name queries cannot be addressed to processors
150 outside of the cluster.</div>
151 <div id="xdocSep">
152 </div>
153 <div id="xdocElems">
154 <div class="xdocSynSpacer"> </div>
155 <a class="xdocAnchor" id=".A.L.L.O.W.G.R.O.W.T.H"></a>
156 <table class="xdocHdr"><tr>
157 <td class="xdocHdrTitle"><span class="xdoc-kw1">const</span> <span class="xdoc-id">NameServer_</span><span class="xdoc-id">ALLOWGROWTH</span></td>
158 <td class="xdocHdrArrow">
159 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
160 </table>
161 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#.A.L.L.O.W.G.R.O.W.T.H">index URL</a></div>
162 <p class="xdocHdrSummaryDcl">Allow dynamic growth of the NameServer instance table</p>
163 <span id='targ-synop'></span>
164 <table class="xdocLabel"><tr>
165 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
166 <td class="xdocLabelRight">target-domain</td>
167 </tr></table>
168 <div class="xdocSynTdcl">
169 <div class="xdocSynCode">
170 <tt></tt><tt></tt><span class="xdoc-kw3">#define</span> <span class="xdoc-id">NameServer_ALLOWGROWTH</span> (<i><span class="xdoc-kw2">UInt</span></i>)(~0)
171 </div>
172 </div>
173 <div class="xdocSynSpacer"> </div>
174 <span id="xdoc-sect-1"></span>
175 <div class="xdocSect">DETAILS</div>
176 <div class="xdocText">This value can be used to set the <a class="xdoc-link" href="NameServer.html#max.Runtime.Entries" title="maxRuntimeEntries">maxRuntimeEntries</a>.
177 This flag tells NameServer to allow dynamic growth
178 of the table.</div>
179 <div class="xdocSynSpacer"> </div>
180 <a class="xdocAnchor" id=".A_inv.Argument"></a>
181 <table class="xdocHdr"><tr>
182 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer_</span><span class="xdoc-id">A_invArgument</span> <small><span class="xdocSynSum">// module-wide</span></small></td>
183 <td class="xdocHdrArrow">
184 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
185 </table>
186 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#.A_inv.Argument">index URL</a></div>
187 <p class="xdocHdrSummaryDcl">Assert raised when an argument is invalid</p>
188 <span id='targ-synop'></span>
189 <table class="xdocLabel"><tr>
190 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
191 <td class="xdocLabelRight">target-domain</td>
192 </tr></table>
193 <div class="xdocSynTdcl">
194 <div class="xdocSynCode">
195 <tt></tt><tt></tt><span class="xdoc-kw1">extern const</span> <a class="xdoc-link" href="../../../xdc/runtime/Assert.html#.Id" title="xdc.runtime.Assert.Id">Assert_Id</a> <span class="xdoc-id">NameServer_A_invArgument</span>;
196 </div>
197 </div>
198 <div class="xdocSynSpacer"> </div>
199 <div class="xdocSynSpacer"> </div>
200 <a class="xdocAnchor" id=".A_invalid.Len"></a>
201 <table class="xdocHdr"><tr>
202 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer_</span><span class="xdoc-id">A_invalidLen</span> <small><span class="xdocSynSum">// module-wide</span></small></td>
203 <td class="xdocHdrArrow">
204 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
205 </table>
206 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#.A_invalid.Len">index URL</a></div>
207 <p class="xdocHdrSummaryDcl">Assert raised when the name or value is too long</p>
208 <span id='targ-synop'></span>
209 <table class="xdocLabel"><tr>
210 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
211 <td class="xdocLabelRight">target-domain</td>
212 </tr></table>
213 <div class="xdocSynTdcl">
214 <div class="xdocSynCode">
215 <tt></tt><tt></tt><span class="xdoc-kw1">extern const</span> <a class="xdoc-link" href="../../../xdc/runtime/Assert.html#.Id" title="xdc.runtime.Assert.Id">Assert_Id</a> <span class="xdoc-id">NameServer_A_invalidLen</span>;
216 </div>
217 </div>
218 <div class="xdocSynSpacer"> </div>
219 <div class="xdocSynSpacer"> </div>
220 <a class="xdocAnchor" id=".E_entry.Exists"></a>
221 <table class="xdocHdr"><tr>
222 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer_</span><span class="xdoc-id">E_entryExists</span> <small><span class="xdocSynSum">// module-wide</span></small></td>
223 <td class="xdocHdrArrow">
224 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
225 </table>
226 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#.E_entry.Exists">index URL</a></div>
227 <p class="xdocHdrSummaryDcl">Error raised when the name already exists in the instance
228 Name/Value table</p>
229 <span id='targ-synop'></span>
230 <table class="xdocLabel"><tr>
231 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
232 <td class="xdocLabelRight">target-domain</td>
233 </tr></table>
234 <div class="xdocSynTdcl">
235 <div class="xdocSynCode">
236 <tt></tt><tt></tt><span class="xdoc-kw1">extern const</span> <a class="xdoc-link" href="../../../xdc/runtime/Error.html#.Id" title="xdc.runtime.Error.Id">Error_Id</a> <span class="xdoc-id">NameServer_E_entryExists</span>;
237 </div>
238 </div>
239 <div class="xdocSynSpacer"> </div>
240 <div class="xdocSynSpacer"> </div>
241 <a class="xdocAnchor" id=".E_max.Reached"></a>
242 <table class="xdocHdr"><tr>
243 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer_</span><span class="xdoc-id">E_maxReached</span> <small><span class="xdocSynSum">// module-wide</span></small></td>
244 <td class="xdocHdrArrow">
245 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
246 </table>
247 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#.E_max.Reached">index URL</a></div>
248 <p class="xdocHdrSummaryDcl">Error raised if all the entries in the instance Name/Value table
249 are taken</p>
250 <span id='targ-synop'></span>
251 <table class="xdocLabel"><tr>
252 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
253 <td class="xdocLabelRight">target-domain</td>
254 </tr></table>
255 <div class="xdocSynTdcl">
256 <div class="xdocSynCode">
257 <tt></tt><tt></tt><span class="xdoc-kw1">extern const</span> <a class="xdoc-link" href="../../../xdc/runtime/Error.html#.Id" title="xdc.runtime.Error.Id">Error_Id</a> <span class="xdoc-id">NameServer_E_maxReached</span>;
258 </div>
259 </div>
260 <div class="xdocSynSpacer"> </div>
261 <div class="xdocSynSpacer"> </div>
262 <a class="xdocAnchor" id=".E_param.Mismatch"></a>
263 <table class="xdocHdr"><tr>
264 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer_</span><span class="xdoc-id">E_paramMismatch</span> <small><span class="xdocSynSum">// module-wide</span></small></td>
265 <td class="xdocHdrArrow">
266 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
267 </table>
268 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#.E_param.Mismatch">index URL</a></div>
269 <p class="xdocHdrSummaryDcl">Error raised when creation parameters do not match those of an
270 existing NameServer</p>
271 <span id='targ-synop'></span>
272 <table class="xdocLabel"><tr>
273 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
274 <td class="xdocLabelRight">target-domain</td>
275 </tr></table>
276 <div class="xdocSynTdcl">
277 <div class="xdocSynCode">
278 <tt></tt><tt></tt><span class="xdoc-kw1">extern const</span> <a class="xdoc-link" href="../../../xdc/runtime/Error.html#.Id" title="xdc.runtime.Error.Id">Error_Id</a> <span class="xdoc-id">NameServer_E_paramMismatch</span>;
279 </div>
280 </div>
281 <div class="xdocSynSpacer"> </div>
282 <div class="xdocSynSpacer"> </div>
283 <a class="xdocAnchor" id="is.Registered"></a>
284 <table class="xdocHdr"><tr>
285 <td class="xdocHdrTitle"><span class="xdoc-id">NameServer_</span><span class="xdoc-id">isRegistered</span>() <small><span class="xdocSynSum">// module-wide</span></small></td>
286 <td class="xdocHdrArrow">
287 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
288 </table>
289 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#is.Registered">index URL</a></div>
290 <p class="xdocHdrSummaryDcl">Determines if a remote driver is registered for the specified id</p>
291 <span id='targ-synop'></span>
292 <table class="xdocLabel"><tr>
293 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
294 <td class="xdocLabelRight">target-domain</td>
295 </tr></table>
296 <div class="xdocSynTdcl">
297 <div class="xdocSynCode">
298 <tt></tt><tt></tt><span class="xdoc-kw2">Bool</span> <span class="xdoc-id">NameServer_isRegistered</span>(<span class="xdoc-kw2">UInt16</span> <span class="xdoc-id">procId</span>);
299 </div>
300 </div>
301 <div class="xdocSynSpacer"> </div>
302 <span id="xdoc-sect-1"></span>
303 <div class="xdocSect">ARGUMENTS</div>
304 <div class="xdocChild"><span class="xdocChildId">procId</span>
305 <span class="xdocChildSum">— The remote processor id.</span>
306 </div>
307 <div class="xdocSynSpacer"> </div>
308 <a class="xdocAnchor" id="register.Remote.Driver"></a>
309 <table class="xdocHdr"><tr>
310 <td class="xdocHdrTitle"><span class="xdoc-id">NameServer_</span><span class="xdoc-id">registerRemoteDriver</span>() <small><span class="xdocSynSum">// module-wide</span></small></td>
311 <td class="xdocHdrArrow">
312 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
313 </table>
314 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#register.Remote.Driver">index URL</a></div>
315 <p class="xdocHdrSummaryDcl">Register the NameServer remote handle for the specified processor id</p>
316 <span id='targ-synop'></span>
317 <table class="xdocLabel"><tr>
318 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
319 <td class="xdocLabelRight">target-domain</td>
320 </tr></table>
321 <div class="xdocSynTdcl">
322 <div class="xdocSynCode">
323 <tt></tt><tt></tt><span class="xdoc-kw2">Int</span> <span class="xdoc-id">NameServer_registerRemoteDriver</span>(<a class="xdoc-link" href="../../../ti/sdo/utils/INameServerRemote.html#per-instance_object_types" title="ti.sdo.utils.INameServerRemote.Handle">INameServerRemote_Handle</a> <span class="xdoc-id">handle</span>, <span class="xdoc-kw2">UInt16</span> <span class="xdoc-id">procId</span>);
324 </div>
325 </div>
326 <div class="xdocSynSpacer"> </div>
327 <span id="xdoc-sect-1"></span>
328 <div class="xdocSect">ARGUMENTS</div>
329 <div class="xdocChild"><span class="xdocChildId">handle</span>
330 <span class="xdocChildSum">— The handle for a NameServer remote driver instance.</span>
331 </div>
332 <div class="xdocChild"><span class="xdocChildId">procId</span>
333 <span class="xdocChildSum">— The remote processor id.</span>
334 </div>
335 <span id="xdoc-sect-2"></span>
336 <div class="xdocSect">RETURNS</div>
337 <div class="xdocText">Returns <a class="xdoc-link" href="NameServer.html#.Status_.S.U.C.C.E.S.S" title="Status_SUCCESS">Status_SUCCESS</a> if successful or
338 <a class="xdoc-link" href="NameServer.html#.Status_.F.A.I.L" title="Status_FAIL">Status_FAIL</a> if the processor id has already
339 been set.</div>
340 <span id="xdoc-sect-3"></span>
341 <div class="xdocSect">DETAILS</div>
342 <div class="xdocText">This function is used by NameServer remote driver to register
343 themselves with NameServer. Only one remote driver can be registered
344 with a remote processor. The API returns <a class="xdoc-link" href="NameServer.html#.Status_.F.A.I.L" title="Status_FAIL">Status_FAIL</a> if there
345 is already a registered remote driver for the processor id.</div>
346 <div class="xdocSynSpacer"> </div>
347 <a class="xdocAnchor" id="unregister.Remote.Driver"></a>
348 <table class="xdocHdr"><tr>
349 <td class="xdocHdrTitle"><span class="xdoc-id">NameServer_</span><span class="xdoc-id">unregisterRemoteDriver</span>() <small><span class="xdocSynSum">// module-wide</span></small></td>
350 <td class="xdocHdrArrow">
351 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
352 </table>
353 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#unregister.Remote.Driver">index URL</a></div>
354 <p class="xdocHdrSummaryDcl">Unregister the NameServer remote handle for the specified processor id</p>
355 <span id='targ-synop'></span>
356 <table class="xdocLabel"><tr>
357 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
358 <td class="xdocLabelRight">target-domain</td>
359 </tr></table>
360 <div class="xdocSynTdcl">
361 <div class="xdocSynCode">
362 <tt></tt><tt></tt><span class="xdoc-kw2">Void</span> <span class="xdoc-id">NameServer_unregisterRemoteDriver</span>(<span class="xdoc-kw2">UInt16</span> <span class="xdoc-id">procId</span>);
363 </div>
364 </div>
365 <div class="xdocSynSpacer"> </div>
366 <span id="xdoc-sect-1"></span>
367 <div class="xdocSect">ARGUMENTS</div>
368 <div class="xdocChild"><span class="xdocChildId">procId</span>
369 <span class="xdocChildSum">— The remote processor id to unregister.</span>
370 </div>
371 <span id="xdoc-sect-2"></span>
372 <div class="xdocSect">DETAILS</div>
373 <div class="xdocText">This function is used by NameServer Remote implementations to unregister
374 themselves with NameServer.</div>
375 <a class="xdocAnchor" id="module-wide_built-ins"></a>
376 <table class="xdocHdr"><tr>
377 <td class="xdocHdrTitle"><span class="xdocSynSum">Module-Wide Built-Ins</span></td>
378 <td class="xdocHdrArrow">
379 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
380 </table>
381 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#module-wide_built-ins">index URL</a></div>
382 <p class="xdocHdrSummary"></p>
383 <span id='targ-synop'></span>
384 <table class="xdocLabel"><tr>
385 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
386 <td class="xdocLabelRight">target-domain</td>
387 </tr></table>
388 <div class="xdocSynTdcl">
389 <div class="xdocSynCode">
390 <tt></tt><tt></tt><a class="xdoc-link" href="../../../xdc/runtime/Types.html#.Module.Id" title="xdc.runtime.Types.ModuleId">Types_ModuleId</a> <span class="xdoc-id">NameServer_Module_id</span>();
391 </div>
392 <div class='xdocSynSum'><tt></tt><tt></tt>// Get this module's unique id</div>
393 <div class="xdocSynSpacer"> </div>
394 <div class="xdocSynCode">
395 <tt></tt><tt></tt><span class="xdoc-kw2">Bool</span> <span class="xdoc-id">NameServer_Module_startupDone</span>();
396 </div>
397 <div class='xdocSynSum'><tt></tt><tt></tt>// Test if this module has completed startup</div>
398 <div class="xdocSynSpacer"> </div>
399 <div class="xdocSynCode">
400 <tt></tt><tt></tt><a class="xdoc-link" href="../../../xdc/runtime/IHeap.html#per-instance_object_types" title="xdc.runtime.IHeap.Handle">IHeap_Handle</a> <span class="xdoc-id">NameServer_Module_heap</span>();
401 </div>
402 <div class='xdocSynSum'><tt></tt><tt></tt>// The heap from which this module allocates memory</div>
403 <div class="xdocSynSpacer"> </div>
404 <div class="xdocSynCode">
405 <tt></tt><tt></tt><span class="xdoc-kw2">Bool</span> <span class="xdoc-id">NameServer_Module_hasMask</span>();
406 </div>
407 <div class='xdocSynSum'><tt></tt><tt></tt>// Test whether this module has a diagnostics mask</div>
408 <div class="xdocSynSpacer"> </div>
409 <div class="xdocSynCode">
410 <tt></tt><tt></tt><span class="xdoc-kw2">Bits16</span> <span class="xdoc-id">NameServer_Module_getMask</span>();
411 </div>
412 <div class='xdocSynSum'><tt></tt><tt></tt>// Returns the diagnostics mask for this module</div>
413 <div class="xdocSynSpacer"> </div>
414 <div class="xdocSynCode">
415 <tt></tt><tt></tt><span class="xdoc-kw2">Void</span> <span class="xdoc-id">NameServer_Module_setMask</span>(<span class="xdoc-kw2">Bits16</span> <span class="xdoc-id">mask</span>);
416 </div>
417 <div class='xdocSynSum'><tt></tt><tt></tt>// Set the diagnostics mask for this module</div>
418 </div>
419 <a class="xdocAnchor" id="per-instance_object_types"></a>
420 <table class="xdocHdr"><tr>
421 <td class="xdocHdrTitle"><span class="xdocSynSum">Instance Object Types</span></td>
422 <td class="xdocHdrArrow">
423 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
424 </table>
425 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#per-instance_object_types">index URL</a></div>
426 <p class="xdocHdrSummary"></p>
427 <span id='targ-synop'></span>
428 <table class="xdocLabel"><tr>
429 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
430 <td class="xdocLabelRight">target-domain</td>
431 </tr></table>
432 <div class="xdocSynTdcl">
433 <div class="xdocSynCode">
434 <tt></tt><tt></tt><span class="xdoc-kw1">typedef</span> <span class="xdoc-kw1">struct</span> <span class="xdoc-id">NameServer_Object</span> <span class="xdoc-id">NameServer_Object</span>;
435 </div>
436 <div class='xdocSynSum'><tt></tt><tt></tt>// Opaque internal representation of an instance object</div>
437 <div class="xdocSynSpacer"> </div>
438 <div class="xdocSynCode">
439 <tt></tt><tt></tt><span class="xdoc-kw1">typedef</span> <a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_object_types" title="ti.sdo.utils.NameServer.Object">NameServer_Object</a> *<span class="xdoc-id">NameServer_Handle</span>;
440 </div>
441 <div class='xdocSynSum'><tt></tt><tt></tt>// Client reference to an instance object</div>
442 <div class="xdocSynSpacer"> </div>
443 <div class="xdocSynCode">
444 <tt></tt><tt></tt><span class="xdoc-kw1">typedef</span> <span class="xdoc-kw1">struct</span> <span class="xdoc-id">NameServer_Struct</span> <span class="xdoc-id">NameServer_Struct</span>;
445 </div>
446 <div class='xdocSynSum'><tt></tt><tt></tt>// Opaque client structure large enough to hold an instance object</div>
447 <div class="xdocSynSpacer"> </div>
448 <div class="xdocSynCode">
449 <tt></tt><tt></tt><a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_object_types" title="ti.sdo.utils.NameServer.Handle">NameServer_Handle</a> <span class="xdoc-id">NameServer_handle</span>(<a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_object_types" title="ti.sdo.utils.NameServer.Struct">NameServer_Struct</a> *structP);
450 </div>
451 <div class='xdocSynSum'><tt></tt><tt></tt>// Convert this instance structure pointer into an instance handle</div>
452 <div class="xdocSynSpacer"> </div>
453 <div class="xdocSynCode">
454 <tt></tt><tt></tt><a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_object_types" title="ti.sdo.utils.NameServer.Struct">NameServer_Struct</a> *<span class="xdoc-id">NameServer_struct</span>(<a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_object_types" title="ti.sdo.utils.NameServer.Handle">NameServer_Handle</a> handle);
455 </div>
456 <div class='xdocSynSum'><tt></tt><tt></tt>// Convert this instance handle into an instance structure pointer</div>
457 </div>
458 <a class="xdocAnchor" id="per-instance_config_parameters"></a>
459 <table class="xdocHdr"><tr>
460 <td class="xdocHdrTitle"><span class="xdocSynSum">Instance Config Parameters</span></td>
461 <td class="xdocHdrArrow">
462 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
463 </table>
464 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#per-instance_config_parameters">index URL</a></div>
465 <p class="xdocHdrSummary"></p>
466 <span id='targ-synop'></span>
467 <table class="xdocLabel"><tr>
468 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
469 <td class="xdocLabelRight">target-domain</td>
470 </tr></table>
471 <div class="xdocSynTdcl">
472 <div class="xdocSynCode">
473 <tt></tt><tt></tt><span class="xdoc-kw1">typedef</span> <span class="xdoc-kw1">struct</span> <span class="xdoc-id">NameServer_Params</span> {
474 </div>
475 <div class='xdocSynSum'><tt></tt><tt></tt>// Instance config-params structure</div>
476 <div class="xdocSynCode">
477 <tt></tt><tt> </tt><a class="xdoc-link" href="../../../xdc/runtime/IInstance.html#per-instance_config_parameters" title="xdc.runtime.IInstance.Params">IInstance_Params</a> *instance;
478 </div>
479 <div class='xdocSynSum'><tt></tt><tt> </tt>// Common per-instance configs</div>
480 <div class="xdocSynCode">
481 <tt></tt><tt> </tt><span class="xdoc-kw2">Bool</span> <span class="xdoc-id">checkExisting</span>;
482 </div>
483 <div class='xdocSynSum'><tt></tt><tt> </tt>// Check if a name already exists in the name/value table</div>
484 <div class="xdocSynCode">
485 <tt></tt><tt> </tt><span class="xdoc-kw2">UInt</span> <span class="xdoc-id">maxNameLen</span>;
486 </div>
487 <div class='xdocSynSum'><tt></tt><tt> </tt>// Length, in MAUs, of the name field in the table</div>
488 <div class="xdocSynCode">
489 <tt></tt><tt> </tt><span class="xdoc-kw2">UInt</span> <span class="xdoc-id">maxRuntimeEntries</span>;
490 </div>
491 <div class='xdocSynSum'><tt></tt><tt> </tt>// Maximum number of name/value pairs that can be dynamically created</div>
492 <div class="xdocSynCode">
493 <tt></tt><tt> </tt><span class="xdoc-kw2">UInt</span> <span class="xdoc-id">maxValueLen</span>;
494 </div>
495 <div class='xdocSynSum'><tt></tt><tt> </tt>// Length, in MAUs, of the value field in the table</div>
496 <div class="xdocSynCode">
497 <tt></tt><tt> </tt><a class="xdoc-link" href="../../../xdc/runtime/IHeap.html#per-instance_object_types" title="xdc.runtime.IHeap.Handle">IHeap_Handle</a> <span class="xdoc-id">tableHeap</span>;
498 </div>
499 <div class='xdocSynSum'><tt></tt><tt> </tt>// Name/value table is allocated from this heap</div>
500 <div class="xdocSynCode">
501 <tt></tt><tt></tt>} <span class="xdoc-id">NameServer_Params</span>;
502 </div>
503 <div class="xdocSynSpacer"> </div>
504 <div class="xdocSynCode">
505 <tt></tt><tt></tt><span class="xdoc-kw2">Void</span> <span class="xdoc-id">NameServer_Params_init</span>(<a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_config_parameters" title="ti.sdo.utils.NameServer.Params">NameServer_Params</a> *params);
506 </div>
507 <div class='xdocSynSum'><tt></tt><tt></tt>// Initialize this config-params structure with supplier-specified defaults before instance creation</div>
508 </div>
509 <div class="xdocSynSpacer"> </div>
510 <a class="xdocAnchor" id="check.Existing"></a>
511 <table class="xdocHdr"><tr>
512 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer_Params.</span><span class="xdoc-id">checkExisting</span> <small><span class="xdocSynSum">// instance</span></small></td>
513 <td class="xdocHdrArrow">
514 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
515 </table>
516 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#check.Existing">index URL</a></div>
517 <p class="xdocHdrSummaryDcl">Check if a name already exists in the name/value table</p>
518 <span id='targ-synop'></span>
519 <table class="xdocLabel"><tr>
520 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
521 <td class="xdocLabelRight">target-domain</td>
522 </tr></table>
523 <div class="xdocSynTdcl">
524 <div class="xdocSynCode">
525 <tt></tt><tt></tt><span class="xdoc-kw1">struct</span> <a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_config_parameters" title="ti.sdo.utils.NameServer.Params">NameServer_Params</a> {
526 </div>
527 <div class="xdocSynCode">
528 <tt></tt><tt> </tt><b> ...</b>
529 </div>
530 <div class="xdocSynCode">
531 <tt></tt><tt> </tt><span class="xdoc-kw2">Bool</span> <span class="xdoc-id">checkExisting</span>;
532 </div>
533 </div>
534 <div class="xdocSynSpacer"> </div>
535 <span id="xdoc-sect-1"></span>
536 <div class="xdocSect">DETAILS</div>
537 <div class="xdocText">When a name/value pair is added during runtime, if this boolean is true,
538 the table is searched to see if the name already exists. If it does,
539 the name is not added and the <a class="xdoc-link" href="NameServer.html#.E_entry.Exists" title="E_entryExists">E_entryExists</a> error is raised.</div>
540 <div class="xdocText">If this flag is false, the table will not be checked to see if the name
541 already exists. It will simply be added. This mode has better
542 performance at the expense of potentially having non-unique names in the
543 table.</div>
544 <div class="xdocText">This flag is used for runtime adds only. Adding non-unique names during
545 configuration results in a build error.</div>
546 <div class="xdocSynSpacer"> </div>
547 <a class="xdocAnchor" id="max.Name.Len"></a>
548 <table class="xdocHdr"><tr>
549 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer_Params.</span><span class="xdoc-id">maxNameLen</span> <small><span class="xdocSynSum">// instance</span></small></td>
550 <td class="xdocHdrArrow">
551 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
552 </table>
553 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#max.Name.Len">index URL</a></div>
554 <p class="xdocHdrSummaryDcl">Length, in MAUs, of the name field in the table</p>
555 <span id='targ-synop'></span>
556 <table class="xdocLabel"><tr>
557 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
558 <td class="xdocLabelRight">target-domain</td>
559 </tr></table>
560 <div class="xdocSynTdcl">
561 <div class="xdocSynCode">
562 <tt></tt><tt></tt><span class="xdoc-kw1">struct</span> <a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_config_parameters" title="ti.sdo.utils.NameServer.Params">NameServer_Params</a> {
563 </div>
564 <div class="xdocSynCode">
565 <tt></tt><tt> </tt><b> ...</b>
566 </div>
567 <div class="xdocSynCode">
568 <tt></tt><tt> </tt><span class="xdoc-kw2">UInt</span> <span class="xdoc-id">maxNameLen</span>;
569 </div>
570 </div>
571 <div class="xdocSynSpacer"> </div>
572 <span id="xdoc-sect-1"></span>
573 <div class="xdocSect">DETAILS</div>
574 <div class="xdocText">The maximum length of the name portion of the name/value
575 pair. The length includes the null terminator ('\0').</div>
576 <div class="xdocSynSpacer"> </div>
577 <a class="xdocAnchor" id="max.Runtime.Entries"></a>
578 <table class="xdocHdr"><tr>
579 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer_Params.</span><span class="xdoc-id">maxRuntimeEntries</span> <small><span class="xdocSynSum">// instance</span></small></td>
580 <td class="xdocHdrArrow">
581 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
582 </table>
583 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#max.Runtime.Entries">index URL</a></div>
584 <p class="xdocHdrSummaryDcl">Maximum number of name/value pairs that can be dynamically created</p>
585 <span id='targ-synop'></span>
586 <table class="xdocLabel"><tr>
587 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
588 <td class="xdocLabelRight">target-domain</td>
589 </tr></table>
590 <div class="xdocSynTdcl">
591 <div class="xdocSynCode">
592 <tt></tt><tt></tt><span class="xdoc-kw1">struct</span> <a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_config_parameters" title="ti.sdo.utils.NameServer.Params">NameServer_Params</a> {
593 </div>
594 <div class="xdocSynCode">
595 <tt></tt><tt> </tt><b> ...</b>
596 </div>
597 <div class="xdocSynCode">
598 <tt></tt><tt> </tt><span class="xdoc-kw2">UInt</span> <span class="xdoc-id">maxRuntimeEntries</span>;
599 </div>
600 </div>
601 <div class="xdocSynSpacer"> </div>
602 <span id="xdoc-sect-1"></span>
603 <div class="xdocSect">DETAILS</div>
604 <div class="xdocText">This parameter allows NameServer to pre-allocate memory.
605 When NameServer_add or NameServer_addUInt32 is called, no memory
606 allocation occurs.</div>
607 <div class="xdocText">If the number of pairs is not known at configuration time, set this
608 value to <a class="xdoc-link" href="NameServer.html#.A.L.L.O.W.G.R.O.W.T.H" title="ALLOWGROWTH">ALLOWGROWTH</a>. This instructs NameServer to grow the
609 table as needed. NameServer will allocate memory from the
610 <a class="xdoc-link" href="NameServer.html#table.Heap" title="tableHeap">tableHeap</a> when a name/value pair is added.</div>
611 <div class="xdocText">The default is <a class="xdoc-link" href="NameServer.html#.A.L.L.O.W.G.R.O.W.T.H" title="ALLOWGROWTH">ALLOWGROWTH</a>.</div>
612 <div class="xdocSynSpacer"> </div>
613 <a class="xdocAnchor" id="max.Value.Len"></a>
614 <table class="xdocHdr"><tr>
615 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer_Params.</span><span class="xdoc-id">maxValueLen</span> <small><span class="xdocSynSum">// instance</span></small></td>
616 <td class="xdocHdrArrow">
617 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
618 </table>
619 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#max.Value.Len">index URL</a></div>
620 <p class="xdocHdrSummaryDcl">Length, in MAUs, of the value field in the table</p>
621 <span id='targ-synop'></span>
622 <table class="xdocLabel"><tr>
623 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
624 <td class="xdocLabelRight">target-domain</td>
625 </tr></table>
626 <div class="xdocSynTdcl">
627 <div class="xdocSynCode">
628 <tt></tt><tt></tt><span class="xdoc-kw1">struct</span> <a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_config_parameters" title="ti.sdo.utils.NameServer.Params">NameServer_Params</a> {
629 </div>
630 <div class="xdocSynCode">
631 <tt></tt><tt> </tt><b> ...</b>
632 </div>
633 <div class="xdocSynCode">
634 <tt></tt><tt> </tt><span class="xdoc-kw2">UInt</span> <span class="xdoc-id">maxValueLen</span>;
635 </div>
636 </div>
637 <div class="xdocSynSpacer"> </div>
638 <span id="xdoc-sect-1"></span>
639 <div class="xdocSect">DETAILS</div>
640 <div class="xdocText">Any value less than sizeof(UInt32) will be rounded up to sizeof(UInt32).</div>
641 <div class="xdocSynSpacer"> </div>
642 <a class="xdocAnchor" id="table.Heap"></a>
643 <table class="xdocHdr"><tr>
644 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer_Params.</span><span class="xdoc-id">tableHeap</span> <small><span class="xdocSynSum">// instance</span></small></td>
645 <td class="xdocHdrArrow">
646 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
647 </table>
648 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#table.Heap">index URL</a></div>
649 <p class="xdocHdrSummaryDcl">Name/value table is allocated from this heap</p>
650 <span id='targ-synop'></span>
651 <table class="xdocLabel"><tr>
652 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
653 <td class="xdocLabelRight">target-domain</td>
654 </tr></table>
655 <div class="xdocSynTdcl">
656 <div class="xdocSynCode">
657 <tt></tt><tt></tt><span class="xdoc-kw1">struct</span> <a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_config_parameters" title="ti.sdo.utils.NameServer.Params">NameServer_Params</a> {
658 </div>
659 <div class="xdocSynCode">
660 <tt></tt><tt> </tt><b> ...</b>
661 </div>
662 <div class="xdocSynCode">
663 <tt></tt><tt> </tt><a class="xdoc-link" href="../../../xdc/runtime/IHeap.html#per-instance_object_types" title="xdc.runtime.IHeap.Handle">IHeap_Handle</a> <span class="xdoc-id">tableHeap</span>;
664 </div>
665 </div>
666 <div class="xdocSynSpacer"> </div>
667 <span id="xdoc-sect-1"></span>
668 <div class="xdocSect">DETAILS</div>
669 <div class="xdocText">The instance table and related buffers are allocated out of this heap
670 during the dynamic create. This heap is also used to allocate new
671 name/value pairs when <a class="xdoc-link" href="NameServer.html#.A.L.L.O.W.G.R.O.W.T.H" title="ALLOWGROWTH">ALLOWGROWTH</a> for
672 <a class="xdoc-link" href="NameServer.html#max.Runtime.Entries" title="maxRuntimeEntries">maxRuntimeEntries</a></div>
673 <div class="xdocText">The default is to use the same heap that instances are allocated
674 from which can be configured via the
675 NameServer.common$.instanceHeap configuration parameter.</div>
676 <a class="xdocAnchor" id="per-instance_built-ins"></a>
677 <table class="xdocHdr"><tr>
678 <td class="xdocHdrTitle"><span class="xdocSynSum">Instance Built-Ins</span></td>
679 <td class="xdocHdrArrow">
680 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
681 </table>
682 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#per-instance_built-ins">index URL</a></div>
683 <p class="xdocHdrSummary"></p>
684 <span id='targ-synop'></span>
685 <table class="xdocLabel"><tr>
686 <td class="xdocLabelLeft"><tt><span class="xdoc-id-targ2dcl">C</span></tt> synopsis</td>
687 <td class="xdocLabelRight">target-domain</td>
688 </tr></table>
689 <div class="xdocSynTdcl">
690 <div class="xdocSynCode">
691 <tt></tt><tt></tt><span class="xdoc-kw2">Int</span> <span class="xdoc-id">NameServer_Object_count</span>();
692 </div>
693 <div class='xdocSynSum'><tt></tt><tt></tt>// The number of statically-created instance objects</div>
694 <div class="xdocSynSpacer"> </div>
695 <div class="xdocSynCode">
696 <tt></tt><tt></tt><a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_object_types" title="ti.sdo.utils.NameServer.Handle">NameServer_Handle</a> <span class="xdoc-id">NameServer_Object_get</span>(<a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_object_types" title="ti.sdo.utils.NameServer.Object">NameServer_Object</a> *array, <span class="xdoc-kw2">Int</span> i);
697 </div>
698 <div class='xdocSynSum'><tt></tt><tt></tt>// The handle of the i-th statically-created instance object (array == NULL)</div>
699 <div class="xdocSynSpacer"> </div>
700 <div class="xdocSynCode">
701 <tt></tt><tt></tt><a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_object_types" title="ti.sdo.utils.NameServer.Handle">NameServer_Handle</a> <span class="xdoc-id">NameServer_Object_first</span>();
702 </div>
703 <div class='xdocSynSum'><tt></tt><tt></tt>// The handle of the first dynamically-created instance object, or NULL</div>
704 <div class="xdocSynSpacer"> </div>
705 <div class="xdocSynCode">
706 <tt></tt><tt></tt><a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_object_types" title="ti.sdo.utils.NameServer.Handle">NameServer_Handle</a> <span class="xdoc-id">NameServer_Object_next</span>(<a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_object_types" title="ti.sdo.utils.NameServer.Handle">NameServer_Handle</a> handle);
707 </div>
708 <div class='xdocSynSum'><tt></tt><tt></tt>// The handle of the next dynamically-created instance object, or NULL</div>
709 <div class="xdocSynSpacer"> </div>
710 <div class="xdocSynCode">
711 <tt></tt><tt></tt><a class="xdoc-link" href="../../../xdc/runtime/IHeap.html#per-instance_object_types" title="xdc.runtime.IHeap.Handle">IHeap_Handle</a> <span class="xdoc-id">NameServer_Object_heap</span>();
712 </div>
713 <div class='xdocSynSum'><tt></tt><tt></tt>// The heap used to allocate dynamically-created instance objects</div>
714 <div class="xdocSynSpacer"> </div>
715 <div class="xdocSynCode">
716 <tt></tt><tt></tt><a class="xdoc-link" href="../../../xdc/runtime/Types.html#.Label" title="xdc.runtime.Types.Label">Types_Label</a> *<span class="xdoc-id">NameServer_Handle_label</span>(<a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_object_types" title="ti.sdo.utils.NameServer.Handle">NameServer_Handle</a> handle, <a class="xdoc-link" href="../../../xdc/runtime/Types.html#.Label" title="xdc.runtime.Types.Label">Types_Label</a> *buf);
717 </div>
718 <div class='xdocSynSum'><tt></tt><tt></tt>// The label associated with this instance object</div>
719 <div class="xdocSynSpacer"> </div>
720 <div class="xdocSynCode">
721 <tt></tt><tt></tt><span class="xdoc-kw2">String</span> <span class="xdoc-id">NameServer_Handle_name</span>(<a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#per-instance_object_types" title="ti.sdo.utils.NameServer.Handle">NameServer_Handle</a> handle);
722 </div>
723 <div class='xdocSynSum'><tt></tt><tt></tt>// The name of this instance object</div>
724 </div>
725 </div>
726 <div class="xdocSynSpacer"> </div>
727 <span id='meta-synop'></span>
728 <table class="xdocLabel"><tr>
729 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2"></span></tt>Configuration settings</td>
730 <td class="xdocLabelRight">sourced in <a class="xdocLink" href="../../../ti/sdo/utils/NameServer-src.html"><span class="xdocLabelFile">ti/sdo/utils/NameServer.xdc</span></a></td>
731 </tr></table>
732 <div class="xdocSynM">
733 <div class="xdocSynCode">
734 <tt></tt><span class="xdoc-kw1">var</span> NameServer = <span class="xdoc-kw3">xdc.useModule</span>(<span class="xdoc-id">'ti.sdo.utils.NameServer'</span>);
735 </div>
736 <div class='xdocSynHdr'>local proxy modules</div>
738 <div class="xdocSynCode">
739 <tt> </tt><tt></tt><a class="xdocSynGo" href="#.Setup.Proxy">NameServer.<span class="xdoc-id">SetupProxy</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// NameServer setup proxy</span></span></a> = <i><a class="xdoc-link" href="../../../ti/sdo/utils/INameServerRemote.html" title="ti.sdo.utils.INameServerRemote">INameServerRemote</a>.Module</i> <span class="xdoc-kw2">null</span>
740 </div>
741 <div class="xdocSynCode">
742 <tt> </tt><tt> </tt><a class="xdocSynGo" href="#.Setup.Proxy" title="ti.sdo.utils.NameServer.SetupProxy">NameServer.<span class="xdoc-id">SetupProxy</span></a>.delegate$ = <i><a class="xdoc-link" href="../../../ti/sdo/utils/INameServerRemote.html" title="ti.sdo.utils.INameServerRemote">INameServerRemote</a>.Module</i> <span class="xdoc-kw2">null</span>
743 </div>
744 <div class="xdocSynCode">
745 <tt> </tt><tt> </tt><a class="xdocSynGo" href="#.Setup.Proxy" title="ti.sdo.utils.NameServer.SetupProxy">NameServer.<span class="xdoc-id">SetupProxy</span></a>.abstractInstances$ = <span class="xdoc-kw2">false</span>
746 </div>
747 <div class='xdocSynHdr'>module-wide constants & types</div>
749 <div class="xdocSynCode">
750 <tt> </tt><tt></tt><span class="xdoc-kw1">const</span> <a class="xdocSynGo" href="#meta.A.L.L.O.W.G.R.O.W.T.H">NameServer.<span class="xdoc-id">ALLOWGROWTH</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Allow dynamic growth of the NameServer instance table</span></span></a> = (~0);
751 </div>
752 <div class="xdocSynSpacer"> </div>
753 <div class="xdocSynCode">
754 <tt> </tt><tt></tt><span class="xdoc-kw1">var</span> <i>obj</i> = <span class="xdoc-kw1">new</span> <a class="xdocSynGo" href="#.Entry">NameServer.<span class="xdoc-id">Entry</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Structure of entry in Name/Value table</span></span></a>;
755 </div>
756 <div class="xdocSynCode">
757 <tt> </tt><tt> </tt><i>obj</i>.<a class="xdocSynGo" href="#.Entry" title="ti.sdo.utils.NameServer.Entry"><span class="xdoc-id">name</span></a> = <i><span class="xdoc-kw2">String</span></i><b> ...</b>
758 </div>
759 <div class="xdocSynCode">
760 <tt> </tt><tt> </tt><i>obj</i>.<a class="xdocSynGo" href="#.Entry" title="ti.sdo.utils.NameServer.Entry"><span class="xdoc-id">len</span></a> = <i><span class="xdoc-kw2">UInt</span></i><b> ...</b>
761 </div>
762 <div class="xdocSynCode">
763 <tt> </tt><tt> </tt><i>obj</i>.<a class="xdocSynGo" href="#.Entry" title="ti.sdo.utils.NameServer.Entry"><span class="xdoc-id">value</span></a> = <i><span class="xdoc-kw2">UArg</span></i><b> ...</b>
764 </div>
765 <div class='xdocSynHdr'>module-wide config parameters</div>
767 <div class="xdocSynCode">
768 <tt> </tt><tt></tt><a class="xdocSynGo" href="#meta.A_inv.Argument">NameServer.<span class="xdoc-id">A_invArgument</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Assert raised when an argument is invalid</span></span></a> = <i><a class="xdoc-link" href="../../../xdc/runtime/Assert.html#.Desc" title="xdc.runtime.Assert.Desc">Assert.Desc</a></i> {
769 </div>
770 <div class="xdocSynCode">
771 <tt> </tt><tt> </tt>msg: "A_invArgument: Invalid argument supplied"
772 </div>
773 <div class="xdocSynCode">
774 <tt> </tt><tt></tt>};
775 </div>
776 <div class="xdocSynCode">
777 <tt> </tt><tt></tt><a class="xdocSynGo" href="#meta.A_invalid.Len">NameServer.<span class="xdoc-id">A_invalidLen</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Assert raised when the name or value is too long</span></span></a> = <i><a class="xdoc-link" href="../../../xdc/runtime/Assert.html#.Desc" title="xdc.runtime.Assert.Desc">Assert.Desc</a></i> {
778 </div>
779 <div class="xdocSynCode">
780 <tt> </tt><tt> </tt>msg: "A_invalidLen: Invalid length"
781 </div>
782 <div class="xdocSynCode">
783 <tt> </tt><tt></tt>};
784 </div>
785 <div class="xdocSynCode">
786 <tt> </tt><tt></tt><a class="xdocSynGo" href="#meta.E_entry.Exists">NameServer.<span class="xdoc-id">E_entryExists</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Error raised when the name already exists in the instance
787 Name/Value table</span></span></a> = <i><a class="xdoc-link" href="../../../xdc/runtime/Error.html#.Desc" title="xdc.runtime.Error.Desc">Error.Desc</a></i> {
788 </div>
789 <div class="xdocSynCode">
790 <tt> </tt><tt> </tt>msg: "E_entryExists: %s name already in table "
791 </div>
792 <div class="xdocSynCode">
793 <tt> </tt><tt></tt>};
794 </div>
795 <div class="xdocSynCode">
796 <tt> </tt><tt></tt><a class="xdocSynGo" href="#meta.E_max.Reached">NameServer.<span class="xdoc-id">E_maxReached</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Error raised if all the entries in the instance Name/Value table
797 are taken</span></span></a> = <i><a class="xdoc-link" href="../../../xdc/runtime/Error.html#.Desc" title="xdc.runtime.Error.Desc">Error.Desc</a></i> {
798 </div>
799 <div class="xdocSynCode">
800 <tt> </tt><tt> </tt>msg: "E_maxReached: All entries in use. NameServer.maxRuntimeEntries is %d"
801 </div>
802 <div class="xdocSynCode">
803 <tt> </tt><tt></tt>};
804 </div>
805 <div class="xdocSynCode">
806 <tt> </tt><tt></tt><a class="xdocSynGo" href="#meta.E_param.Mismatch">NameServer.<span class="xdoc-id">E_paramMismatch</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Error raised when creation parameters do not match those of an
807 existing NameServer</span></span></a> = <i><a class="xdoc-link" href="../../../xdc/runtime/Error.html#.Desc" title="xdc.runtime.Error.Desc">Error.Desc</a></i> {
808 </div>
809 <div class="xdocSynCode">
810 <tt> </tt><tt> </tt>msg: "E_paramMismatch: parameters do not match existing NameServer %s "
811 </div>
812 <div class="xdocSynCode">
813 <tt> </tt><tt></tt>};
814 </div>
815 <div class="xdocSynSpacer"> </div>
816 <div class="xdocSynCode">
817 <tt> </tt><tt></tt><a class="xdocSynGo" href="#common$">NameServer.<span class="xdoc-id">common$</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Common module configuration parameters</span></span></a> = <i><a class="xdoc-link" href="../../../xdc/runtime/Types.html#.Common$" title="xdc.runtime.Types.Common$">Types.Common$</a></i> <span class="xdoc-kw2">undefined</span>;
818 </div>
819 <div class='xdocSynHdr'>module-wide functions</div>
821 <div class="xdocSynCode">
822 <tt> </tt><tt></tt><a class="xdocSynGo" href="#mod.Add.Meta">NameServer.<span class="xdoc-id">modAddMeta</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Add a name/value pair into the specified instance's table during
823 configuration</span></span></a>(<i><span class="xdoc-kw2">String</span></i> <span class="xdoc-id">instName</span>, <i><span class="xdoc-kw2">String</span></i> <span class="xdoc-id">name</span>, <i><span class="xdoc-kw2">Any</span></i> <span class="xdoc-id">value</span>, <i><span class="xdoc-kw2">UInt</span></i> <span class="xdoc-id">len</span>) <i>returns</i> <i><span class="xdoc-kw2">Void</span></i>
824 </div>
825 <div class='xdocSynHdr'>per-instance config parameters</div>
827 <div class="xdocSynCode">
828 <tt> </tt><tt></tt><span class="xdoc-kw1">var</span> params = <span class="xdoc-kw1">new</span> NameServer.<a class="xdocSynGo" href="#metaper-instance_config_parameters"><span class="xdoc-id">Params</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Instance config-params object</span></span></a>;
829 </div>
830 <div class="xdocSynCode">
831 <tt> </tt><tt> </tt>params.<a class="xdocSynGo" href="#metacheck.Existing"><span class="xdoc-id">checkExisting</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Check if a name already exists in the name/value table</span></span></a> = <i><span class="xdoc-kw2">Bool</span></i> <span class="xdoc-kw2">true</span>;
832 </div>
833 <div class="xdocSynCode">
834 <tt> </tt><tt> </tt>params.<a class="xdocSynGo" href="#metamax.Name.Len"><span class="xdoc-id">maxNameLen</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Length, in MAUs, of the name field in the table</span></span></a> = <i><span class="xdoc-kw2">UInt</span></i> 16;
835 </div>
836 <div class="xdocSynCode">
837 <tt> </tt><tt> </tt>params.<a class="xdocSynGo" href="#metamax.Runtime.Entries"><span class="xdoc-id">maxRuntimeEntries</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Maximum number of name/value pairs that can be dynamically created</span></span></a> = <i><span class="xdoc-kw2">UInt</span></i> <a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#.A.L.L.O.W.G.R.O.W.T.H" title="ti.sdo.utils.NameServer.ALLOWGROWTH">NameServer.ALLOWGROWTH</a>;
838 </div>
839 <div class="xdocSynCode">
840 <tt> </tt><tt> </tt>params.<a class="xdocSynGo" href="#metamax.Value.Len"><span class="xdoc-id">maxValueLen</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Length, in MAUs, of the value field in the table</span></span></a> = <i><span class="xdoc-kw2">UInt</span></i> 0;
841 </div>
842 <div class="xdocSynCode">
843 <tt> </tt><tt> </tt>params.<a class="xdocSynGo" href="#metatable.Heap"><span class="xdoc-id">tableHeap</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Name/value table is allocated from this heap</span></span></a> = <i><a class="xdoc-link" href="../../../xdc/runtime/IHeap.html#per-instance_object_types" title="xdc.runtime.IHeap.Handle">IHeap.Handle</a></i> <span class="xdoc-kw2">null</span>;
844 </div>
845 <div class="xdocSynCode">
846 <tt> </tt><tt> </tt>params.<a class="xdocSynGo" href="#table.Section"><span class="xdoc-id">tableSection</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Name/value table is placed into this section on static creates</span></span></a> = <i><span class="xdoc-kw2">String</span></i> <span class="xdoc-kw2">null</span>;
847 </div>
848 <div class='xdocSynHdr'>per-instance functions</div>
850 <div class="xdocSynCode">
851 <tt> </tt><tt></tt><a class="xdocSynGo" href="#add.Meta">inst.<span class="xdoc-id">addMeta</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Add a name/value pair into the instance's table during configuration</span></span></a>(<i><span class="xdoc-kw2">String</span></i> <span class="xdoc-id">name</span>, <i><span class="xdoc-kw2">Any</span></i> <span class="xdoc-id">value</span>, <i><span class="xdoc-kw2">UInt</span></i> <span class="xdoc-id">len</span>) <i>returns</i> <i><span class="xdoc-kw2">Void</span></i>
852 </div>
853 <div class="xdocSynCode">
854 <tt> </tt><tt></tt><a class="xdocSynGo" href="#add.U.Int32.Meta">inst.<span class="xdoc-id">addUInt32Meta</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Add a name/value pair into the instance's table during configuration</span></span></a>(<i><span class="xdoc-kw2">String</span></i> <span class="xdoc-id">name</span>, <i><span class="xdoc-kw2">Any</span></i> <span class="xdoc-id">value</span>) <i>returns</i> <i><span class="xdoc-kw2">Void</span></i>
855 </div>
856 <div class="xdocSynCode">
857 <tt> </tt><tt></tt><a class="xdocSynGo" href="#get.Meta">inst.<span class="xdoc-id">getMeta</span><span class="xdocSynHoverShadow"><span class="xdocSynHover">// Retrieves the name/value entry</span></span></a>(<i><span class="xdoc-kw2">String</span></i> <span class="xdoc-id">name</span>) <i>returns</i> <i><a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#.Entry" title="ti.sdo.utils.NameServer.Entry">NameServer.Entry</a></i>
858 </div>
859 <div class="xdocSynSpacer"> </div>
860 </div>
861 <div id="xdocSep">
862 </div>
863 <div id="xdocMetaElems">
864 <div class="xdocSynSpacer"> </div>
865 <a class="xdocAnchor" id=".Setup.Proxy"></a>
866 <table class="xdocHdr"><tr>
867 <td class="xdocHdrTitle"><span class="xdoc-kw1">proxy</span> <span class="xdoc-id">NameServer.</span><span class="xdoc-id">SetupProxy</span></td>
868 <td class="xdocHdrArrow">
869 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
870 </table>
871 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#.Setup.Proxy">index URL</a></div>
872 <p class="xdocHdrSummaryDcl">NameServer setup proxy</p>
873 <span id='meta-synop'></span>
874 <table class="xdocLabel"><tr>
875 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
876 <td class="xdocLabelRight"></td>
877 </tr></table>
878 <div class="xdocSynMdcl">
879 <div class="xdocSynCode">
880 <tt></tt><tt></tt>NameServer.<span class="xdoc-id">SetupProxy</span> = <i><a class="xdoc-link" href="../../../ti/sdo/utils/INameServerRemote.html" title="ti.sdo.utils.INameServerRemote">INameServerRemote</a>.Module</i> <span class="xdoc-kw2">null</span>
881 </div>
882 <div class='xdocSynSum'><tt></tt><tt></tt>// some delegate module inheriting the <a class="xdoc-link" href="../../../ti/sdo/utils/INameServerRemote.html" title="ti.sdo.utils.INameServerRemote">INameServerRemote</a> interface</div>
883 <div class="xdocSynCode">
884 <tt></tt><tt> </tt>NameServer.<span class="xdoc-id">SetupProxy</span>.delegate$ = <i><a class="xdoc-link" href="../../../ti/sdo/utils/INameServerRemote.html" title="ti.sdo.utils.INameServerRemote">INameServerRemote</a>.Module</i> <span class="xdoc-kw2">null</span>
885 </div>
886 <div class='xdocSynSum'><tt></tt><tt> </tt>// explicit access to the currently bound delegate module</div>
887 <div class="xdocSynCode">
888 <tt></tt><tt> </tt>NameServer.<span class="xdoc-id">SetupProxy</span>.abstractInstances$ = <span class="xdoc-kw2">false</span>
889 </div>
890 <div class='xdocSynSum'><tt></tt><tt> </tt>// use indirect runtime function calls if true</div>
891 </div>
892 <div class="xdocSynSpacer"> </div>
893 <div class="xdocSynSpacer"> </div>
894 <a class="xdocAnchor" id="meta.A.L.L.O.W.G.R.O.W.T.H"></a>
895 <table class="xdocHdr"><tr>
896 <td class="xdocHdrTitle"><span class="xdoc-kw1">const</span> <span class="xdoc-id">NameServer.</span><span class="xdoc-id">ALLOWGROWTH</span></td>
897 <td class="xdocHdrArrow">
898 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
899 </table>
900 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#.A.L.L.O.W.G.R.O.W.T.H">index URL</a></div>
901 <p class="xdocHdrSummaryDcl">Allow dynamic growth of the NameServer instance table</p>
902 <span id='meta-synop'></span>
903 <table class="xdocLabel"><tr>
904 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
905 <td class="xdocLabelRight"></td>
906 </tr></table>
907 <div class="xdocSynMdcl">
908 <div class="xdocSynCode">
909 <tt></tt><tt></tt><span class="xdoc-kw1">const</span> NameServer.<span class="xdoc-id">ALLOWGROWTH</span> = (~0);
910 </div>
911 </div>
912 <div class="xdocSynSpacer"> </div>
913 <span id="xdoc-sect-1"></span>
914 <div class="xdocSect">DETAILS</div>
915 <div class="xdocText">This value can be used to set the <a class="xdoc-link" href="NameServer.html#max.Runtime.Entries" title="maxRuntimeEntries">maxRuntimeEntries</a>.
916 This flag tells NameServer to allow dynamic growth
917 of the table.</div>
918 <div class="xdocSect">C SYNOPSIS</div>
919 <div class="xdocText"><a class="xdoc-link" href="#.A.L.L.O.W.G.R.O.W.T.H" title="NameServer_ALLOWGROWTH">NameServer_ALLOWGROWTH</a></div>
920 <div class="xdocSynSpacer"> </div>
921 <a class="xdocAnchor" id=".Entry"></a>
922 <table class="xdocHdr"><tr>
923 <td class="xdocHdrTitle"><span class="xdoc-kw1">metaonly </span><span class="xdoc-kw1">struct</span> <span class="xdoc-id">NameServer.</span><span class="xdoc-id">Entry</span></td>
924 <td class="xdocHdrArrow">
925 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
926 </table>
927 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#.Entry">index URL</a></div>
928 <p class="xdocHdrSummaryDcl">Structure of entry in Name/Value table</p>
929 <span id='meta-synop'></span>
930 <table class="xdocLabel"><tr>
931 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
932 <td class="xdocLabelRight"></td>
933 </tr></table>
934 <div class="xdocSynMdcl">
935 <div class="xdocSynCode">
936 <tt></tt><tt></tt><span class="xdoc-kw1">var</span> <i>obj</i> = <span class="xdoc-kw1">new</span> NameServer.<span class="xdoc-id">Entry</span>;
937 </div>
938 <div class="xdocSynSpacer"> </div>
939 <div class="xdocSynCode">
940 <tt></tt><tt> </tt><i>obj</i>.<span class="xdoc-id">name</span> = <i><span class="xdoc-kw2">String</span></i><b> ...</b>
941 </div>
942 <div class="xdocSynCode">
943 <tt></tt><tt> </tt><i>obj</i>.<span class="xdoc-id">len</span> = <i><span class="xdoc-kw2">UInt</span></i><b> ...</b>
944 </div>
945 <div class="xdocSynCode">
946 <tt></tt><tt> </tt><i>obj</i>.<span class="xdoc-id">value</span> = <i><span class="xdoc-kw2">UArg</span></i><b> ...</b>
947 </div>
948 </div>
949 <div class="xdocSynSpacer"> </div>
950 <span id="xdoc-sect-1"></span>
951 <div class="xdocSect">FIELDS</div>
952 <div class="xdocChild"><span class="xdocChildId">name</span>
953 <span class="xdocChildSum">— Name portion of the name/value pair.</span>
954 </div>
955 <div class="xdocChild"><span class="xdocChildId">len</span>
956 <span class="xdocChildSum">— Length of the value field.</span>
957 </div>
958 <div class="xdocChild"><span class="xdocChildId">value</span>
959 <span class="xdocChildSum">— Value portion of the name/value entry.</span>
960 </div>
961 <span id="xdoc-sect-2"></span>
962 <div class="xdocSect">DETAILS</div>
963 <div class="xdocText">This structure is returned from the <a class="xdoc-link" href="NameServer.html#get.Meta" title="getMeta">getMeta</a>
964 API.</div>
965 <div class="xdocSynSpacer"> </div>
966 <a class="xdocAnchor" id="meta.A_inv.Argument"></a>
967 <table class="xdocHdr"><tr>
968 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer.</span><span class="xdoc-id">A_invArgument</span> <small><span class="xdocSynSum">// module-wide</span></small></td>
969 <td class="xdocHdrArrow">
970 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
971 </table>
972 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#.A_inv.Argument">index URL</a></div>
973 <p class="xdocHdrSummaryDcl">Assert raised when an argument is invalid</p>
974 <span id='meta-synop'></span>
975 <table class="xdocLabel"><tr>
976 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
977 <td class="xdocLabelRight"></td>
978 </tr></table>
979 <div class="xdocSynMdcl">
980 <div class="xdocSynCode">
981 <tt></tt><tt></tt>NameServer.<span class="xdoc-id">A_invArgument</span> = <i><a class="xdoc-link" href="../../../xdc/runtime/Assert.html#.Desc" title="xdc.runtime.Assert.Desc">Assert.Desc</a></i> {
982 </div>
983 <div class="xdocSynCode">
984 <tt></tt><tt> </tt>msg: "A_invArgument: Invalid argument supplied"
985 </div>
986 <div class="xdocSynCode">
987 <tt></tt><tt></tt>};
988 </div>
989 </div>
990 <div class="xdocSynSpacer"> </div>
991 <div class="xdocSect">C SYNOPSIS</div>
992 <div class="xdocText"><a class="xdoc-link" href="#.A_inv.Argument" title="NameServer_A_invArgument">NameServer_A_invArgument</a></div>
993 <div class="xdocSynSpacer"> </div>
994 <a class="xdocAnchor" id="meta.A_invalid.Len"></a>
995 <table class="xdocHdr"><tr>
996 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer.</span><span class="xdoc-id">A_invalidLen</span> <small><span class="xdocSynSum">// module-wide</span></small></td>
997 <td class="xdocHdrArrow">
998 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
999 </table>
1000 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#.A_invalid.Len">index URL</a></div>
1001 <p class="xdocHdrSummaryDcl">Assert raised when the name or value is too long</p>
1002 <span id='meta-synop'></span>
1003 <table class="xdocLabel"><tr>
1004 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1005 <td class="xdocLabelRight"></td>
1006 </tr></table>
1007 <div class="xdocSynMdcl">
1008 <div class="xdocSynCode">
1009 <tt></tt><tt></tt>NameServer.<span class="xdoc-id">A_invalidLen</span> = <i><a class="xdoc-link" href="../../../xdc/runtime/Assert.html#.Desc" title="xdc.runtime.Assert.Desc">Assert.Desc</a></i> {
1010 </div>
1011 <div class="xdocSynCode">
1012 <tt></tt><tt> </tt>msg: "A_invalidLen: Invalid length"
1013 </div>
1014 <div class="xdocSynCode">
1015 <tt></tt><tt></tt>};
1016 </div>
1017 </div>
1018 <div class="xdocSynSpacer"> </div>
1019 <div class="xdocSect">C SYNOPSIS</div>
1020 <div class="xdocText"><a class="xdoc-link" href="#.A_invalid.Len" title="NameServer_A_invalidLen">NameServer_A_invalidLen</a></div>
1021 <div class="xdocSynSpacer"> </div>
1022 <a class="xdocAnchor" id="meta.E_entry.Exists"></a>
1023 <table class="xdocHdr"><tr>
1024 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer.</span><span class="xdoc-id">E_entryExists</span> <small><span class="xdocSynSum">// module-wide</span></small></td>
1025 <td class="xdocHdrArrow">
1026 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1027 </table>
1028 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#.E_entry.Exists">index URL</a></div>
1029 <p class="xdocHdrSummaryDcl">Error raised when the name already exists in the instance
1030 Name/Value table</p>
1031 <span id='meta-synop'></span>
1032 <table class="xdocLabel"><tr>
1033 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1034 <td class="xdocLabelRight"></td>
1035 </tr></table>
1036 <div class="xdocSynMdcl">
1037 <div class="xdocSynCode">
1038 <tt></tt><tt></tt>NameServer.<span class="xdoc-id">E_entryExists</span> = <i><a class="xdoc-link" href="../../../xdc/runtime/Error.html#.Desc" title="xdc.runtime.Error.Desc">Error.Desc</a></i> {
1039 </div>
1040 <div class="xdocSynCode">
1041 <tt></tt><tt> </tt>msg: "E_entryExists: %s name already in table "
1042 </div>
1043 <div class="xdocSynCode">
1044 <tt></tt><tt></tt>};
1045 </div>
1046 </div>
1047 <div class="xdocSynSpacer"> </div>
1048 <div class="xdocSect">C SYNOPSIS</div>
1049 <div class="xdocText"><a class="xdoc-link" href="#.E_entry.Exists" title="NameServer_E_entryExists">NameServer_E_entryExists</a></div>
1050 <div class="xdocSynSpacer"> </div>
1051 <a class="xdocAnchor" id="meta.E_max.Reached"></a>
1052 <table class="xdocHdr"><tr>
1053 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer.</span><span class="xdoc-id">E_maxReached</span> <small><span class="xdocSynSum">// module-wide</span></small></td>
1054 <td class="xdocHdrArrow">
1055 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1056 </table>
1057 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#.E_max.Reached">index URL</a></div>
1058 <p class="xdocHdrSummaryDcl">Error raised if all the entries in the instance Name/Value table
1059 are taken</p>
1060 <span id='meta-synop'></span>
1061 <table class="xdocLabel"><tr>
1062 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1063 <td class="xdocLabelRight"></td>
1064 </tr></table>
1065 <div class="xdocSynMdcl">
1066 <div class="xdocSynCode">
1067 <tt></tt><tt></tt>NameServer.<span class="xdoc-id">E_maxReached</span> = <i><a class="xdoc-link" href="../../../xdc/runtime/Error.html#.Desc" title="xdc.runtime.Error.Desc">Error.Desc</a></i> {
1068 </div>
1069 <div class="xdocSynCode">
1070 <tt></tt><tt> </tt>msg: "E_maxReached: All entries in use. NameServer.maxRuntimeEntries is %d"
1071 </div>
1072 <div class="xdocSynCode">
1073 <tt></tt><tt></tt>};
1074 </div>
1075 </div>
1076 <div class="xdocSynSpacer"> </div>
1077 <div class="xdocSect">C SYNOPSIS</div>
1078 <div class="xdocText"><a class="xdoc-link" href="#.E_max.Reached" title="NameServer_E_maxReached">NameServer_E_maxReached</a></div>
1079 <div class="xdocSynSpacer"> </div>
1080 <a class="xdocAnchor" id="meta.E_param.Mismatch"></a>
1081 <table class="xdocHdr"><tr>
1082 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer.</span><span class="xdoc-id">E_paramMismatch</span> <small><span class="xdocSynSum">// module-wide</span></small></td>
1083 <td class="xdocHdrArrow">
1084 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1085 </table>
1086 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#.E_param.Mismatch">index URL</a></div>
1087 <p class="xdocHdrSummaryDcl">Error raised when creation parameters do not match those of an
1088 existing NameServer</p>
1089 <span id='meta-synop'></span>
1090 <table class="xdocLabel"><tr>
1091 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1092 <td class="xdocLabelRight"></td>
1093 </tr></table>
1094 <div class="xdocSynMdcl">
1095 <div class="xdocSynCode">
1096 <tt></tt><tt></tt>NameServer.<span class="xdoc-id">E_paramMismatch</span> = <i><a class="xdoc-link" href="../../../xdc/runtime/Error.html#.Desc" title="xdc.runtime.Error.Desc">Error.Desc</a></i> {
1097 </div>
1098 <div class="xdocSynCode">
1099 <tt></tt><tt> </tt>msg: "E_paramMismatch: parameters do not match existing NameServer %s "
1100 </div>
1101 <div class="xdocSynCode">
1102 <tt></tt><tt></tt>};
1103 </div>
1104 </div>
1105 <div class="xdocSynSpacer"> </div>
1106 <div class="xdocSect">C SYNOPSIS</div>
1107 <div class="xdocText"><a class="xdoc-link" href="#.E_param.Mismatch" title="NameServer_E_paramMismatch">NameServer_E_paramMismatch</a></div>
1108 <div class="xdocSynSpacer"> </div>
1109 <a class="xdocAnchor" id="common$"></a>
1110 <table class="xdocHdr"><tr>
1111 <td class="xdocHdrTitle"><span class="xdoc-kw1">metaonly </span><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer.</span><span class="xdoc-id">common$</span> <small><span class="xdocSynSum">// module-wide</span></small></td>
1112 <td class="xdocHdrArrow">
1113 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1114 </table>
1115 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#common$">index URL</a></div>
1116 <p class="xdocHdrSummaryDcl">Common module configuration parameters</p>
1117 <span id='meta-synop'></span>
1118 <table class="xdocLabel"><tr>
1119 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1120 <td class="xdocLabelRight"></td>
1121 </tr></table>
1122 <div class="xdocSynMdcl">
1123 <div class="xdocSynCode">
1124 <tt></tt><tt></tt>NameServer.<span class="xdoc-id">common$</span> = <i><a class="xdoc-link" href="../../../xdc/runtime/Types.html#.Common$" title="xdc.runtime.Types.Common$">Types.Common$</a></i> <span class="xdoc-kw2">undefined</span>;
1125 </div>
1126 </div>
1127 <div class="xdocSynSpacer"> </div>
1128 <span id="xdoc-sect-1"></span>
1129 <div class="xdocSect">DETAILS</div>
1130 <div class="xdocText">All modules have this configuration parameter. Its name
1131 contains the '$' character to ensure it does not conflict with
1132 configuration parameters declared by the module. This allows
1133 new configuration parameters to be added in the future without
1134 any chance of breaking existing modules.</div>
1135 <div class="xdocSynSpacer"> </div>
1136 <a class="xdocAnchor" id="mod.Add.Meta"></a>
1137 <table class="xdocHdr"><tr>
1138 <td class="xdocHdrTitle"><span class="xdoc-kw1">metaonly </span><span class="xdoc-id">NameServer.</span><span class="xdoc-id">modAddMeta</span>() <small><span class="xdocSynSum">// module-wide</span></small></td>
1139 <td class="xdocHdrArrow">
1140 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1141 </table>
1142 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#mod.Add.Meta">index URL</a></div>
1143 <p class="xdocHdrSummaryDcl">Add a name/value pair into the specified instance's table during
1144 configuration</p>
1145 <span id='meta-synop'></span>
1146 <table class="xdocLabel"><tr>
1147 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1148 <td class="xdocLabelRight"></td>
1149 </tr></table>
1150 <div class="xdocSynMdcl">
1151 <div class="xdocSynCode">
1152 <tt></tt><tt></tt>NameServer.<span class="xdoc-id">modAddMeta</span>(<i><span class="xdoc-kw2">String</span></i> <span class="xdoc-id">instName</span>, <i><span class="xdoc-kw2">String</span></i> <span class="xdoc-id">name</span>, <i><span class="xdoc-kw2">Any</span></i> <span class="xdoc-id">value</span>, <i><span class="xdoc-kw2">UInt</span></i> <span class="xdoc-id">len</span>) <i>returns</i> <i><span class="xdoc-kw2">Void</span></i>
1153 </div>
1154 </div>
1155 <div class="xdocSynSpacer"> </div>
1156 <span id="xdoc-sect-1"></span>
1157 <div class="xdocSect">ARGUMENTS</div>
1158 <div class="xdocChild"><span class="xdocChildId">instName</span>
1159 <span class="xdocChildSum">— NameServer instance name</span>
1160 </div>
1161 <div class="xdocChild"><span class="xdocChildId">name</span>
1162 <span class="xdocChildSum">— Name portion of the name/value pair</span>
1163 </div>
1164 <div class="xdocChild"><span class="xdocChildId">value</span>
1165 <span class="xdocChildSum">— Value portion of the name/value pair</span>
1166 </div>
1167 <div class="xdocChild"><span class="xdocChildId">len</span>
1168 <span class="xdocChildSum">— Length of the value buffer</span>
1169 </div>
1170 <span id="xdoc-sect-2"></span>
1171 <div class="xdocSect">DETAILS</div>
1172 <div class="xdocText">This function adds any length value into the local table. The function
1173 makes sure the name does not already exist in the local table.</div>
1174 <div class="xdocText">This function should be used by modules when adding into a NameServer
1175 instance. The application configuration file, should
1176 use <a class="xdoc-link" href="NameServer.html#add.Meta" title="addMeta">addMeta</a>.</div>
1177 <div class="xdocText">The function does not query remote processors to make sure the
1178 name is unique.</div>
1179 <a class="xdocAnchor" id="metaper-instance_config_parameters"></a>
1180 <table class="xdocHdr"><tr>
1181 <td class="xdocHdrTitle"><span class="xdocSynSum">Instance Config Parameters</span></td>
1182 <td class="xdocHdrArrow">
1183 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1184 </table>
1185 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#per-instance_config_parameters">index URL</a></div>
1186 <p class="xdocHdrSummary"></p>
1187 <span id='meta-synop'></span>
1188 <table class="xdocLabel"><tr>
1189 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1190 <td class="xdocLabelRight"></td>
1191 </tr></table>
1192 <div class="xdocSynMdcl">
1193 <div class="xdocSynCode">
1194 <tt></tt><tt></tt><span class="xdoc-kw1">var</span> params = <span class="xdoc-kw1">new</span> NameServer.<span class="xdoc-id">Params</span>;
1195 </div>
1196 <div class='xdocSynSum'><tt></tt><tt></tt>// Instance config-params object</div>
1197 <div class="xdocSynCode">
1198 <tt></tt><tt> </tt>params.<span class="xdoc-id">checkExisting</span> = <i><span class="xdoc-kw2">Bool</span></i> <span class="xdoc-kw2">true</span>;
1199 </div>
1200 <div class='xdocSynSum'><tt></tt><tt> </tt>// Check if a name already exists in the name/value table</div>
1201 <div class="xdocSynCode">
1202 <tt></tt><tt> </tt>params.<span class="xdoc-id">maxNameLen</span> = <i><span class="xdoc-kw2">UInt</span></i> 16;
1203 </div>
1204 <div class='xdocSynSum'><tt></tt><tt> </tt>// Length, in MAUs, of the name field in the table</div>
1205 <div class="xdocSynCode">
1206 <tt></tt><tt> </tt>params.<span class="xdoc-id">maxRuntimeEntries</span> = <i><span class="xdoc-kw2">UInt</span></i> <a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#.A.L.L.O.W.G.R.O.W.T.H" title="ti.sdo.utils.NameServer.ALLOWGROWTH">NameServer.ALLOWGROWTH</a>;
1207 </div>
1208 <div class='xdocSynSum'><tt></tt><tt> </tt>// Maximum number of name/value pairs that can be dynamically created</div>
1209 <div class="xdocSynCode">
1210 <tt></tt><tt> </tt>params.<span class="xdoc-id">maxValueLen</span> = <i><span class="xdoc-kw2">UInt</span></i> 0;
1211 </div>
1212 <div class='xdocSynSum'><tt></tt><tt> </tt>// Length, in MAUs, of the value field in the table</div>
1213 <div class="xdocSynCode">
1214 <tt></tt><tt> </tt>params.<span class="xdoc-id">tableHeap</span> = <i><a class="xdoc-link" href="../../../xdc/runtime/IHeap.html#per-instance_object_types" title="xdc.runtime.IHeap.Handle">IHeap.Handle</a></i> <span class="xdoc-kw2">null</span>;
1215 </div>
1216 <div class='xdocSynSum'><tt></tt><tt> </tt>// Name/value table is allocated from this heap</div>
1217 <div class="xdocSynCode">
1218 <tt></tt><tt> </tt>params.<span class="xdoc-id">tableSection</span> = <i><span class="xdoc-kw2">String</span></i> <span class="xdoc-kw2">null</span>;
1219 </div>
1220 <div class='xdocSynSum'><tt></tt><tt> </tt>// Name/value table is placed into this section on static creates</div>
1221 </div>
1222 <div class="xdocSynSpacer"> </div>
1223 <a class="xdocAnchor" id="metacheck.Existing"></a>
1224 <table class="xdocHdr"><tr>
1225 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer.Params.</span><span class="xdoc-id">checkExisting</span> <small><span class="xdocSynSum">// instance</span></small></td>
1226 <td class="xdocHdrArrow">
1227 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1228 </table>
1229 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#check.Existing">index URL</a></div>
1230 <p class="xdocHdrSummaryDcl">Check if a name already exists in the name/value table</p>
1231 <span id='meta-synop'></span>
1232 <table class="xdocLabel"><tr>
1233 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1234 <td class="xdocLabelRight"></td>
1235 </tr></table>
1236 <div class="xdocSynMdcl">
1237 <div class="xdocSynCode">
1238 <tt></tt><tt></tt><span class="xdoc-kw1">var</span> params = <span class="xdoc-kw1">new</span> NameServer.<span class="xdoc-id">Params</span>;
1239 </div>
1240 <div class="xdocSynCode">
1241 <tt></tt><tt></tt><b> ...</b>
1242 </div>
1243 <div class="xdocSynCode">
1244 <tt></tt><tt></tt>params.<span class="xdoc-id">checkExisting</span> = <i><span class="xdoc-kw2">Bool</span></i> <span class="xdoc-kw2">true</span>;
1245 </div>
1246 </div>
1247 <div class="xdocSynSpacer"> </div>
1248 <span id="xdoc-sect-1"></span>
1249 <div class="xdocSect">DETAILS</div>
1250 <div class="xdocText">When a name/value pair is added during runtime, if this boolean is true,
1251 the table is searched to see if the name already exists. If it does,
1252 the name is not added and the <a class="xdoc-link" href="NameServer.html#.E_entry.Exists" title="E_entryExists">E_entryExists</a> error is raised.</div>
1253 <div class="xdocText">If this flag is false, the table will not be checked to see if the name
1254 already exists. It will simply be added. This mode has better
1255 performance at the expense of potentially having non-unique names in the
1256 table.</div>
1257 <div class="xdocText">This flag is used for runtime adds only. Adding non-unique names during
1258 configuration results in a build error.</div>
1259 <div class="xdocSect">C SYNOPSIS</div>
1260 <div class="xdocText"><a class="xdoc-link" href="#check.Existing" title="NameServer_Params.checkExisting">NameServer_Params.checkExisting</a></div>
1261 <div class="xdocSynSpacer"> </div>
1262 <a class="xdocAnchor" id="metamax.Name.Len"></a>
1263 <table class="xdocHdr"><tr>
1264 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer.Params.</span><span class="xdoc-id">maxNameLen</span> <small><span class="xdocSynSum">// instance</span></small></td>
1265 <td class="xdocHdrArrow">
1266 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1267 </table>
1268 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#max.Name.Len">index URL</a></div>
1269 <p class="xdocHdrSummaryDcl">Length, in MAUs, of the name field in the table</p>
1270 <span id='meta-synop'></span>
1271 <table class="xdocLabel"><tr>
1272 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1273 <td class="xdocLabelRight"></td>
1274 </tr></table>
1275 <div class="xdocSynMdcl">
1276 <div class="xdocSynCode">
1277 <tt></tt><tt></tt><span class="xdoc-kw1">var</span> params = <span class="xdoc-kw1">new</span> NameServer.<span class="xdoc-id">Params</span>;
1278 </div>
1279 <div class="xdocSynCode">
1280 <tt></tt><tt></tt><b> ...</b>
1281 </div>
1282 <div class="xdocSynCode">
1283 <tt></tt><tt></tt>params.<span class="xdoc-id">maxNameLen</span> = <i><span class="xdoc-kw2">UInt</span></i> 16;
1284 </div>
1285 </div>
1286 <div class="xdocSynSpacer"> </div>
1287 <span id="xdoc-sect-1"></span>
1288 <div class="xdocSect">DETAILS</div>
1289 <div class="xdocText">The maximum length of the name portion of the name/value
1290 pair. The length includes the null terminator ('\0').</div>
1291 <div class="xdocSect">C SYNOPSIS</div>
1292 <div class="xdocText"><a class="xdoc-link" href="#max.Name.Len" title="NameServer_Params.maxNameLen">NameServer_Params.maxNameLen</a></div>
1293 <div class="xdocSynSpacer"> </div>
1294 <a class="xdocAnchor" id="metamax.Runtime.Entries"></a>
1295 <table class="xdocHdr"><tr>
1296 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer.Params.</span><span class="xdoc-id">maxRuntimeEntries</span> <small><span class="xdocSynSum">// instance</span></small></td>
1297 <td class="xdocHdrArrow">
1298 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1299 </table>
1300 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#max.Runtime.Entries">index URL</a></div>
1301 <p class="xdocHdrSummaryDcl">Maximum number of name/value pairs that can be dynamically created</p>
1302 <span id='meta-synop'></span>
1303 <table class="xdocLabel"><tr>
1304 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1305 <td class="xdocLabelRight"></td>
1306 </tr></table>
1307 <div class="xdocSynMdcl">
1308 <div class="xdocSynCode">
1309 <tt></tt><tt></tt><span class="xdoc-kw1">var</span> params = <span class="xdoc-kw1">new</span> NameServer.<span class="xdoc-id">Params</span>;
1310 </div>
1311 <div class="xdocSynCode">
1312 <tt></tt><tt></tt><b> ...</b>
1313 </div>
1314 <div class="xdocSynCode">
1315 <tt></tt><tt></tt>params.<span class="xdoc-id">maxRuntimeEntries</span> = <i><span class="xdoc-kw2">UInt</span></i> <a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#.A.L.L.O.W.G.R.O.W.T.H" title="ti.sdo.utils.NameServer.ALLOWGROWTH">NameServer.ALLOWGROWTH</a>;
1316 </div>
1317 </div>
1318 <div class="xdocSynSpacer"> </div>
1319 <span id="xdoc-sect-1"></span>
1320 <div class="xdocSect">DETAILS</div>
1321 <div class="xdocText">This parameter allows NameServer to pre-allocate memory.
1322 When NameServer_add or NameServer_addUInt32 is called, no memory
1323 allocation occurs.</div>
1324 <div class="xdocText">If the number of pairs is not known at configuration time, set this
1325 value to <a class="xdoc-link" href="NameServer.html#.A.L.L.O.W.G.R.O.W.T.H" title="ALLOWGROWTH">ALLOWGROWTH</a>. This instructs NameServer to grow the
1326 table as needed. NameServer will allocate memory from the
1327 <a class="xdoc-link" href="NameServer.html#table.Heap" title="tableHeap">tableHeap</a> when a name/value pair is added.</div>
1328 <div class="xdocText">The default is <a class="xdoc-link" href="NameServer.html#.A.L.L.O.W.G.R.O.W.T.H" title="ALLOWGROWTH">ALLOWGROWTH</a>.</div>
1329 <div class="xdocSect">C SYNOPSIS</div>
1330 <div class="xdocText"><a class="xdoc-link" href="#max.Runtime.Entries" title="NameServer_Params.maxRuntimeEntries">NameServer_Params.maxRuntimeEntries</a></div>
1331 <div class="xdocSynSpacer"> </div>
1332 <a class="xdocAnchor" id="metamax.Value.Len"></a>
1333 <table class="xdocHdr"><tr>
1334 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer.Params.</span><span class="xdoc-id">maxValueLen</span> <small><span class="xdocSynSum">// instance</span></small></td>
1335 <td class="xdocHdrArrow">
1336 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1337 </table>
1338 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#max.Value.Len">index URL</a></div>
1339 <p class="xdocHdrSummaryDcl">Length, in MAUs, of the value field in the table</p>
1340 <span id='meta-synop'></span>
1341 <table class="xdocLabel"><tr>
1342 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1343 <td class="xdocLabelRight"></td>
1344 </tr></table>
1345 <div class="xdocSynMdcl">
1346 <div class="xdocSynCode">
1347 <tt></tt><tt></tt><span class="xdoc-kw1">var</span> params = <span class="xdoc-kw1">new</span> NameServer.<span class="xdoc-id">Params</span>;
1348 </div>
1349 <div class="xdocSynCode">
1350 <tt></tt><tt></tt><b> ...</b>
1351 </div>
1352 <div class="xdocSynCode">
1353 <tt></tt><tt></tt>params.<span class="xdoc-id">maxValueLen</span> = <i><span class="xdoc-kw2">UInt</span></i> 0;
1354 </div>
1355 </div>
1356 <div class="xdocSynSpacer"> </div>
1357 <span id="xdoc-sect-1"></span>
1358 <div class="xdocSect">DETAILS</div>
1359 <div class="xdocText">Any value less than sizeof(UInt32) will be rounded up to sizeof(UInt32).</div>
1360 <div class="xdocSect">C SYNOPSIS</div>
1361 <div class="xdocText"><a class="xdoc-link" href="#max.Value.Len" title="NameServer_Params.maxValueLen">NameServer_Params.maxValueLen</a></div>
1362 <div class="xdocSynSpacer"> </div>
1363 <a class="xdocAnchor" id="metatable.Heap"></a>
1364 <table class="xdocHdr"><tr>
1365 <td class="xdocHdrTitle"><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer.Params.</span><span class="xdoc-id">tableHeap</span> <small><span class="xdocSynSum">// instance</span></small></td>
1366 <td class="xdocHdrArrow">
1367 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1368 </table>
1369 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#table.Heap">index URL</a></div>
1370 <p class="xdocHdrSummaryDcl">Name/value table is allocated from this heap</p>
1371 <span id='meta-synop'></span>
1372 <table class="xdocLabel"><tr>
1373 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1374 <td class="xdocLabelRight"></td>
1375 </tr></table>
1376 <div class="xdocSynMdcl">
1377 <div class="xdocSynCode">
1378 <tt></tt><tt></tt><span class="xdoc-kw1">var</span> params = <span class="xdoc-kw1">new</span> NameServer.<span class="xdoc-id">Params</span>;
1379 </div>
1380 <div class="xdocSynCode">
1381 <tt></tt><tt></tt><b> ...</b>
1382 </div>
1383 <div class="xdocSynCode">
1384 <tt></tt><tt></tt>params.<span class="xdoc-id">tableHeap</span> = <i><a class="xdoc-link" href="../../../xdc/runtime/IHeap.html#per-instance_object_types" title="xdc.runtime.IHeap.Handle">IHeap.Handle</a></i> <span class="xdoc-kw2">null</span>;
1385 </div>
1386 </div>
1387 <div class="xdocSynSpacer"> </div>
1388 <span id="xdoc-sect-1"></span>
1389 <div class="xdocSect">DETAILS</div>
1390 <div class="xdocText">The instance table and related buffers are allocated out of this heap
1391 during the dynamic create. This heap is also used to allocate new
1392 name/value pairs when <a class="xdoc-link" href="NameServer.html#.A.L.L.O.W.G.R.O.W.T.H" title="ALLOWGROWTH">ALLOWGROWTH</a> for
1393 <a class="xdoc-link" href="NameServer.html#max.Runtime.Entries" title="maxRuntimeEntries">maxRuntimeEntries</a></div>
1394 <div class="xdocText">The default is to use the same heap that instances are allocated
1395 from which can be configured via the
1396 NameServer.common$.instanceHeap configuration parameter.</div>
1397 <div class="xdocSect">C SYNOPSIS</div>
1398 <div class="xdocText"><a class="xdoc-link" href="#table.Heap" title="NameServer_Params.tableHeap">NameServer_Params.tableHeap</a></div>
1399 <div class="xdocSynSpacer"> </div>
1400 <a class="xdocAnchor" id="table.Section"></a>
1401 <table class="xdocHdr"><tr>
1402 <td class="xdocHdrTitle"><span class="xdoc-kw1">metaonly </span><span class="xdoc-kw1">config</span> <span class="xdoc-id">NameServer.Params.</span><span class="xdoc-id">tableSection</span> <small><span class="xdocSynSum">// instance</span></small></td>
1403 <td class="xdocHdrArrow">
1404 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1405 </table>
1406 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#table.Section">index URL</a></div>
1407 <p class="xdocHdrSummaryDcl">Name/value table is placed into this section on static creates</p>
1408 <span id='meta-synop'></span>
1409 <table class="xdocLabel"><tr>
1410 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1411 <td class="xdocLabelRight"></td>
1412 </tr></table>
1413 <div class="xdocSynMdcl">
1414 <div class="xdocSynCode">
1415 <tt></tt><tt></tt><span class="xdoc-kw1">var</span> params = <span class="xdoc-kw1">new</span> NameServer.<span class="xdoc-id">Params</span>;
1416 </div>
1417 <div class="xdocSynCode">
1418 <tt></tt><tt></tt><b> ...</b>
1419 </div>
1420 <div class="xdocSynCode">
1421 <tt></tt><tt></tt>params.<span class="xdoc-id">tableSection</span> = <i><span class="xdoc-kw2">String</span></i> <span class="xdoc-kw2">null</span>;
1422 </div>
1423 </div>
1424 <div class="xdocSynSpacer"> </div>
1425 <span id="xdoc-sect-1"></span>
1426 <div class="xdocSect">DETAILS</div>
1427 <div class="xdocText">The instance table and related buffers are placed into this section
1428 during the static create.</div>
1429 <div class="xdocText">The default is no explicit section placement.</div>
1430 <div class="xdocSynSpacer"> </div>
1431 <a class="xdocAnchor" id="add.Meta"></a>
1432 <table class="xdocHdr"><tr>
1433 <td class="xdocHdrTitle"><span class="xdoc-kw1">metaonly </span><span class="xdoc-id">NameServer.</span><span class="xdoc-id">addMeta</span>() <small><span class="xdocSynSum">// instance</span></small></td>
1434 <td class="xdocHdrArrow">
1435 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1436 </table>
1437 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#add.Meta">index URL</a></div>
1438 <p class="xdocHdrSummaryDcl">Add a name/value pair into the instance's table during configuration</p>
1439 <span id='meta-synop'></span>
1440 <table class="xdocLabel"><tr>
1441 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1442 <td class="xdocLabelRight"></td>
1443 </tr></table>
1444 <div class="xdocSynMdcl">
1445 <div class="xdocSynCode">
1446 <tt></tt><tt></tt>inst.<span class="xdoc-id">addMeta</span>(<i><span class="xdoc-kw2">String</span></i> <span class="xdoc-id">name</span>, <i><span class="xdoc-kw2">Any</span></i> <span class="xdoc-id">value</span>, <i><span class="xdoc-kw2">UInt</span></i> <span class="xdoc-id">len</span>) <i>returns</i> <i><span class="xdoc-kw2">Void</span></i>
1447 </div>
1448 </div>
1449 <div class="xdocSynSpacer"> </div>
1450 <span id="xdoc-sect-1"></span>
1451 <div class="xdocSect">ARGUMENTS</div>
1452 <div class="xdocChild"><span class="xdocChildId">name</span>
1453 <span class="xdocChildSum">— Name portion of the name/value pair</span>
1454 </div>
1455 <div class="xdocChild"><span class="xdocChildId">value</span>
1456 <span class="xdocChildSum">— Value portion of the name/value pair</span>
1457 </div>
1458 <div class="xdocChild"><span class="xdocChildId">len</span>
1459 <span class="xdocChildSum">— Length of the value buffer</span>
1460 </div>
1461 <span id="xdoc-sect-2"></span>
1462 <div class="xdocSect">DETAILS</div>
1463 <div class="xdocText">This function adds any length value into the local table. The function
1464 makes sure the name does not already exist in the local table.</div>
1465 <div class="xdocText">This function should be used by within the application configuration
1466 file. XDC modules should use <a class="xdoc-link" href="NameServer.html#mod.Add.Meta" title="modAddMeta">modAddMeta</a>.</div>
1467 <div class="xdocText">The function does not query remote processors to make sure the
1468 name is unique.</div>
1469 <div class="xdocSynSpacer"> </div>
1470 <a class="xdocAnchor" id="add.U.Int32.Meta"></a>
1471 <table class="xdocHdr"><tr>
1472 <td class="xdocHdrTitle"><span class="xdoc-kw1">metaonly </span><span class="xdoc-id">NameServer.</span><span class="xdoc-id">addUInt32Meta</span>() <small><span class="xdocSynSum">// instance</span></small></td>
1473 <td class="xdocHdrArrow">
1474 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1475 </table>
1476 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#add.U.Int32.Meta">index URL</a></div>
1477 <p class="xdocHdrSummaryDcl">Add a name/value pair into the instance's table during configuration</p>
1478 <span id='meta-synop'></span>
1479 <table class="xdocLabel"><tr>
1480 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1481 <td class="xdocLabelRight"></td>
1482 </tr></table>
1483 <div class="xdocSynMdcl">
1484 <div class="xdocSynCode">
1485 <tt></tt><tt></tt>inst.<span class="xdoc-id">addUInt32Meta</span>(<i><span class="xdoc-kw2">String</span></i> <span class="xdoc-id">name</span>, <i><span class="xdoc-kw2">Any</span></i> <span class="xdoc-id">value</span>) <i>returns</i> <i><span class="xdoc-kw2">Void</span></i>
1486 </div>
1487 </div>
1488 <div class="xdocSynSpacer"> </div>
1489 <span id="xdoc-sect-1"></span>
1490 <div class="xdocSect">ARGUMENTS</div>
1491 <div class="xdocChild"><span class="xdocChildId">name</span>
1492 <span class="xdocChildSum">— Name portion of the name/value pair</span>
1493 </div>
1494 <div class="xdocChild"><span class="xdocChildId">value</span>
1495 <span class="xdocChildSum">— Value portion of the name/value pair</span>
1496 </div>
1497 <span id="xdoc-sect-2"></span>
1498 <div class="xdocSect">DETAILS</div>
1499 <div class="xdocText">This function adds a UInt32 value into the local table. The function
1500 makes sure the name does not already exist in the local table.</div>
1501 <div class="xdocText">The function does not query remote processors to make sure the
1502 name is unique.</div>
1503 <div class="xdocSynSpacer"> </div>
1504 <a class="xdocAnchor" id="get.Meta"></a>
1505 <table class="xdocHdr"><tr>
1506 <td class="xdocHdrTitle"><span class="xdoc-kw1">metaonly </span><span class="xdoc-id">NameServer.</span><span class="xdoc-id">getMeta</span>() <small><span class="xdocSynSum">// instance</span></small></td>
1507 <td class="xdocHdrArrow">
1508 <a class="xdocHdrLink" href="../../../ti/sdo/utils/NameServer.html" title="module NameServer"><img class="xdocHdrArrow" src="../../../Arrow_up.png"/></a></td>
1509 </table>
1510 <div class=xdocHdrIndex><a class=xdocHdrIndex title="right-click to capture" href="../../../index.html#ti/sdo/utils/NameServer.html#get.Meta">index URL</a></div>
1511 <p class="xdocHdrSummaryDcl">Retrieves the name/value entry</p>
1512 <span id='meta-synop'></span>
1513 <table class="xdocLabel"><tr>
1514 <td class="xdocLabelLeft"><tt><span class="xdoc-id-meta2dcl"></span></tt>Configuration settings</td>
1515 <td class="xdocLabelRight"></td>
1516 </tr></table>
1517 <div class="xdocSynMdcl">
1518 <div class="xdocSynCode">
1519 <tt></tt><tt></tt>inst.<span class="xdoc-id">getMeta</span>(<i><span class="xdoc-kw2">String</span></i> <span class="xdoc-id">name</span>) <i>returns</i> <i><a class="xdoc-link" href="../../../ti/sdo/utils/NameServer.html#.Entry" title="ti.sdo.utils.NameServer.Entry">NameServer.Entry</a></i>
1520 </div>
1521 </div>
1522 <div class="xdocSynSpacer"> </div>
1523 <span id="xdoc-sect-1"></span>
1524 <div class="xdocSect">ARGUMENTS</div>
1525 <div class="xdocChild"><span class="xdocChildId">name</span>
1526 <span class="xdocChildSum">— Name in question</span>
1527 </div>
1528 <span id="xdoc-sect-2"></span>
1529 <div class="xdocSect">RETURNS</div>
1530 <div class="xdocText">Name/value entry</div>
1531 <span id="xdoc-sect-3"></span>
1532 <div class="xdocSect">DETAILS</div>
1533 <div class="xdocText">If the name is found, the entry is returned. The caller can parse the
1534 entry as needed. If the name is not found, null is returned.</div>
1535 <div class="xdocText">The search only occurs on the local table.</div>
1536 </div>
1537 <div id="xdocDate">generated on Mon, 23 May 2016 14:31:10 GMT</div>
1538 </div></div></body>
1539 </html>