summaryrefslogtreecommitdiffstats
path: root/ucs2-lib/doc/html/_p__u_m__s_t_a_r_t_e_d__m_g_r.html
diff options
context:
space:
mode:
authorFulup Ar Foll <fulup@iot.bzh>2017-05-26 18:45:56 +0200
committerFulup Ar Foll <fulup@iot.bzh>2017-05-26 18:45:56 +0200
commitd2e42029ec04c3f224580f8007cdfbbfe0fc47a6 (patch)
treead2ccf167cf7997c84191d41e6ba55cb2efd6bed /ucs2-lib/doc/html/_p__u_m__s_t_a_r_t_e_d__m_g_r.html
parent18e393e1443fd4c38b34979888fb55d30448cf31 (diff)
Initial Commit
Diffstat (limited to 'ucs2-lib/doc/html/_p__u_m__s_t_a_r_t_e_d__m_g_r.html')
-rw-r--r--ucs2-lib/doc/html/_p__u_m__s_t_a_r_t_e_d__m_g_r.html223
1 files changed, 223 insertions, 0 deletions
diff --git a/ucs2-lib/doc/html/_p__u_m__s_t_a_r_t_e_d__m_g_r.html b/ucs2-lib/doc/html/_p__u_m__s_t_a_r_t_e_d__m_g_r.html
new file mode 100644
index 0000000..045ec09
--- /dev/null
+++ b/ucs2-lib/doc/html/_p__u_m__s_t_a_r_t_e_d__m_g_r.html
@@ -0,0 +1,223 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>UNICENS: Manager</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link rel="shortcut icon" type="image/x-icon" href="favicon.ico">
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="style_html.css" rel="stylesheet" type="text/css" />
+<link href="inic.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div class="GlobalWrapper">
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr>
+ <td><a href="index.html"><img alt="Logo" src="logo.png"/></a></td>
+ <td>
+ <div id="projectname">UNICENS&#160;<span id="projectnumber">V2.1.0-3491</span></div>
+ <div id="projectbrief">User Manual and API Reference</div>
+ <div id="searchbox"> <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.2 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_p__u_m__s_t_a_r_t_e_d__m_g_r.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Pages</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Manager </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><h1>Introduction</h1>
+<p>The Manager is an optional component that automatically handles the following tasks:</p>
+<ul>
+<li>Force the network to available state</li>
+<li>Re-initialization of nodes if necessary</li>
+<li>Automatically starts the NodeDiscovery and the RoutingManagement</li>
+<li>Automatically handles the NodeDiscovery tasks according to a preset list of nodes</li>
+<li>Automatically announces nodes as available/not available to the RoutingManagement</li>
+</ul>
+<p>If the application uses a dynamic approach for the RoutingManagement it is recommended to use the function <a class="el" href="group___g___u_c_s___r_o_u_t_i_n_g_gabb9185254132bb29ee0af137c36f50b8.html#gabb9185254132bb29ee0af137c36f50b8" title="Sets the given route to active respectively inactive and triggers the routing process to handle the r...">Ucs_Rm_SetRouteActive()</a> together with Manager component.</p>
+<p>Enable the Manager in the initialization structure. </p>
+<div class="fragment"><div class="line">init_data.<a class="code" href="struct_ucs___init_data__t_a517c2ec800639c8a91183e70189b1875.html#a517c2ec800639c8a91183e70189b1875" title="The initialization data of the Manager.">mgr</a>.<a class="code" href="struct_ucs___mgr___init_data__t_a8740ba80e30dd75e71d09fa1dcf04f3d.html#a8740ba80e30dd75e71d09fa1dcf04f3d" title="If set to false the application must handle network startup, node discovery and rooting by hand...">enabled</a> = <span class="keyword">true</span>;</div>
+</div><!-- fragment --><dl class="section note"><dt>Note</dt><dd>Since the manager already handles a set of tasks that may also be done by hand it is necessary to <em>enable</em> the Manager and to not access the API which as handles by the Manager.</dd></dl>
+<p>Do not access the following functions if the Manager is enabled:</p>
+<ul>
+<li><a class="el" href="group___g___u_c_s___n_e_t_ga83c2e74a4cc216aa10d7c6a1a517d459.html#ga83c2e74a4cc216aa10d7c6a1a517d459" title="Starts up the MOST Network.">Ucs_Network_Startup()</a></li>
+<li><a class="el" href="group___g___u_c_s___n_e_t_ga1e49ce81a42f09bcecc2202edc2b93fc.html#ga1e49ce81a42f09bcecc2202edc2b93fc" title="Switches of the MOST Network.">Ucs_Network_Shutdown()</a></li>
+<li><a class="el" href="group___g___u_c_s___n_e_t_ga3a71b7772ce265a77eefa7ad069c4819.html#ga3a71b7772ce265a77eefa7ad069c4819" title="Triggers the INIC to force the NotAvailable state.">Ucs_Network_ForceNotAvailable()</a></li>
+<li><a class="el" href="group___g___u_c_s___n_o_d_e___d_i_s_c_o_v_e_r_y_ga50a5b00d5bbd1ad324478509dc524eec.html#ga50a5b00d5bbd1ad324478509dc524eec" title="Starts the Node Discovery service.">Ucs_Nd_Start()</a></li>
+<li><a class="el" href="group___g___u_c_s___n_o_d_e___d_i_s_c_o_v_e_r_y_ga637e441520f7b203e551274f17febfb6.html#ga637e441520f7b203e551274f17febfb6" title="Stops the Node Discovery service.">Ucs_Nd_Stop()</a></li>
+<li><a class="el" href="group___g___u_c_s___n_o_d_e___d_i_s_c_o_v_e_r_y_gabab6c431e235fe0211f5f1525f9cff2e.html#gabab6c431e235fe0211f5f1525f9cff2e" title="Initializes all nodes.">Ucs_Nd_InitAll()</a></li>
+<li><a class="el" href="group___g___u_c_s___r_o_u_t_i_n_g_gaaa23aca8279da197192210fe11889452.html#gaaa23aca8279da197192210fe11889452" title="Initializes the routing process with the given routes list information and starts the process to hand...">Ucs_Rm_Start()</a></li>
+<li><a class="el" href="group___g___u_c_s___r_o_u_t_i_n_g_ga57ca34a488f06d57f2219be23fa0259f.html#ga57ca34a488f06d57f2219be23fa0259f" title="Sets the availability attribute (available or not available) of the given node and triggers the routi...">Ucs_Rm_SetNodeAvailable()</a></li>
+</ul>
+<p>The following callback functions will not work if the Manager is enabled:</p>
+<ul>
+<li><a class="el" href="struct_ucs___nd___init_data__t.html">init_data.nd.eval_fptr</a></li>
+<li><a class="el" href="struct_ucs___nd___init_data__t.html">init_data.nd.report_fptr</a></li>
+</ul>
+<table class="mns_ic_table">
+<tr>
+<td id="mns_ic_api">&#160;</td><td>See also <em>API Reference</em>, section <a class="el" href="group___g___u_c_s___m_g_r.html">Manager</a>. </td></tr>
+</table>
+<h1>Declaration of Nodes and Routes</h1>
+<p>The application must define a set of structures that are required as input for the Manager. Basically the application must provide a list of nodes and a list of routes.</p>
+<dl class="section note"><dt>Note</dt><dd>It is important that each node in the "list of nodes" has a valid pointer to a node signature. Within the node signature the <code>node_address</code> attribute must be set to the value as set in the "identification string" of the respective node (INIC). Each node must be configured with a unique <code>node_address</code>. Other values inside the identification string are not evaluated by the Manager.</dd></dl>
+<p>The code below shows a setup of two nodes and one route for synchronous streaming. Since the route is initialized as "active" it is automatically created as soon as both nodes are available. The application does not need to activate this route at a certain time.</p>
+<div class="fragment"><div class="line"><span class="comment">/*------------------------------------------------------------------------------------------------*/</span></div>
+<div class="line"><span class="comment">/* Nodes */</span></div>
+<div class="line"><span class="comment">/*------------------------------------------------------------------------------------------------*/</span></div>
+<div class="line"><span class="preprocessor">#define APP_NODES_NUM 2U</span></div>
+<div class="line"><span class="preprocessor"></span><span class="keyword">static</span> <a class="code" href="struct_ucs___signature__t.html" title="This structure holds the signature of the Hello, Welcome and Signature messages. It supports the sign...">Ucs_Signature_t</a> signature201 = {0x201U <span class="comment">/*node_address*/</span>}; </div>
+<div class="line"><span class="keyword">static</span> <a class="code" href="struct_ucs___signature__t.html" title="This structure holds the signature of the Hello, Welcome and Signature messages. It supports the sign...">Ucs_Signature_t</a> signature205 = {0x205U <span class="comment">/*node_address*/</span>};</div>
+<div class="line"><span class="keyword">static</span> <a class="code" href="struct_ucs___rm___node__t.html" title="Configuration structure of a Node.">Ucs_Rm_Node_t</a> app_nodes[APP_NODES_NUM] = {{&amp;signature201, NULL, 0U}, {&amp;signature205, NULL, 0U}};</div>
+<div class="line"></div>
+<div class="line"><span class="comment">/*------------------------------------------------------------------------------------------------*/</span></div>
+<div class="line"><span class="comment">/* Routes */</span></div>
+<div class="line"><span class="comment">/*------------------------------------------------------------------------------------------------*/</span></div>
+<div class="line"><span class="comment">/* Specification of XRM JOB OUT */</span></div>
+<div class="line"><span class="keyword">static</span> <a class="code" href="struct_ucs___xrm___most_socket__t.html" title="Configuration structure of a MOST socket.">Ucs_Xrm_MostSocket_t</a> Xrm_Most_Sckt_Out = {<a class="code" href="group___g___u_c_s___x_r_m___t_y_p_e_s_gac238d98be8f9df6340eb4ee72de36ccc.html#ggac238d98be8f9df6340eb4ee72de36cccaeebb673b9abc5172f688f8e9e692441c" title="MOST socket.">UCS_XRM_RC_TYPE_MOST_SOCKET</a>, 0x0D00U, <a class="code" href="group___g___u_c_s___x_r_m___e_n_u_m_ga28477f727fe10f9d6fd21cfc98a9c115.html#gga28477f727fe10f9d6fd21cfc98a9c115aa14fc95a1f8c5f54aa6d601614a887fe" title="Socket transfers data out of INIC.">UCS_SOCKET_DIR_OUTPUT</a>, </div>
+<div class="line"> <a class="code" href="group___g___u_c_s___x_r_m___e_n_u_m_gab29e10223e27331045485facbe4102ee.html#ggab29e10223e27331045485facbe4102eea345ad57d9919545fa5e5bf8393b0224f" title="Specifies the synchronous streaming data type.">UCS_MOST_SCKT_SYNC_DATA</a>, 2U };</div>
+<div class="line"><span class="keyword">static</span> <a class="code" href="struct_ucs___xrm___default_created_port__t.html" title="Configuration structure of a default created port. This structure is used for ports that are configur...">Ucs_Xrm_DefaultCreatedPort_t</a> Xrm_Usb_Port_1 = {<a class="code" href="group___g___u_c_s___x_r_m___t_y_p_e_s_gac238d98be8f9df6340eb4ee72de36ccc.html#ggac238d98be8f9df6340eb4ee72de36cccacf416b59b369504088ef6810b4c545e1" title="Default created port.">UCS_XRM_RC_TYPE_DC_PORT</a>, <a class="code" href="group___g___u_c_s___x_r_m___t_y_p_e_s_ga50384bb32b088e9cfd50c889ef562015.html#gga50384bb32b088e9cfd50c889ef562015a7b31f75e1806723739f4d7fd2bc483d3" title="USB Port.">UCS_XRM_PORT_TYPE_USB</a>, 0U};</div>
+<div class="line"><span class="keyword">static</span> <a class="code" href="struct_ucs___xrm___usb_socket__t.html" title="Configuration structure of a USB socket.">Ucs_Xrm_UsbSocket_t</a> Xrm_Usb_Socket_In = {<a class="code" href="group___g___u_c_s___x_r_m___t_y_p_e_s_gac238d98be8f9df6340eb4ee72de36ccc.html#ggac238d98be8f9df6340eb4ee72de36ccca5e2f20f818f67af2502a600f06b9ab11" title="USB socket.">UCS_XRM_RC_TYPE_USB_SOCKET</a>, &amp;Xrm_Usb_Port_1, </div>
+<div class="line"> <a class="code" href="group___g___u_c_s___x_r_m___e_n_u_m_ga28477f727fe10f9d6fd21cfc98a9c115.html#gga28477f727fe10f9d6fd21cfc98a9c115a02fdd605a809a4a660e25cfd888347c7" title="Socket transfers data into INIC.">UCS_SOCKET_DIR_INPUT</a>, <a class="code" href="group___g___u_c_s___x_r_m___e_n_u_m_gafd56377a5a1f782e64260d18caf17dc9.html#ggafd56377a5a1f782e64260d18caf17dc9a4df4e4d4848358e18a3ef6386db80acf" title="Specifies the synchronous streaming data type.">UCS_USB_SCKT_SYNC_DATA</a> , </div>
+<div class="line"> 0x01U<span class="comment">/*endpoint*/</span>, 0x0007U <span class="comment">/*frames*/</span> };</div>
+<div class="line"><span class="keyword">static</span> <a class="code" href="struct_ucs___xrm___sync_con__t.html" title="Configuration structure of a synchronous data connection.">Ucs_Xrm_SyncCon_t</a> Xrm_Sync_Conn_Src = {<a class="code" href="group___g___u_c_s___x_r_m___t_y_p_e_s_gac238d98be8f9df6340eb4ee72de36ccc.html#ggac238d98be8f9df6340eb4ee72de36ccca47342ee294555a9b7e738c9fc34b5265" title="Synchronous data connection.">UCS_XRM_RC_TYPE_SYNC_CON</a>, &amp;Xrm_Usb_Socket_In, </div>
+<div class="line"> &amp;Xrm_Most_Sckt_Out, <a class="code" href="group___g___u_c_s___x_r_m___e_n_u_m_gaef12892b897a1cd1013357cfe63f2434.html#ggaef12892b897a1cd1013357cfe63f2434a6e21656de3fa891d522f272307fca772" title="No mute monitoring.">UCS_SYNC_MUTE_MODE_NO_MUTING</a>, 0U };</div>
+<div class="line"></div>
+<div class="line"><span class="comment">/* Specification of XRM JOB IN */</span></div>
+<div class="line"><span class="keyword">static</span> <a class="code" href="struct_ucs___xrm___most_socket__t.html" title="Configuration structure of a MOST socket.">Ucs_Xrm_MostSocket_t</a> Xrm_Most_Sckt_In = {<a class="code" href="group___g___u_c_s___x_r_m___t_y_p_e_s_gac238d98be8f9df6340eb4ee72de36ccc.html#ggac238d98be8f9df6340eb4ee72de36cccaeebb673b9abc5172f688f8e9e692441c" title="MOST socket.">UCS_XRM_RC_TYPE_MOST_SOCKET</a>, 0x0D00U, <a class="code" href="group___g___u_c_s___x_r_m___e_n_u_m_ga28477f727fe10f9d6fd21cfc98a9c115.html#gga28477f727fe10f9d6fd21cfc98a9c115a02fdd605a809a4a660e25cfd888347c7" title="Socket transfers data into INIC.">UCS_SOCKET_DIR_INPUT</a>,</div>
+<div class="line"> <a class="code" href="group___g___u_c_s___x_r_m___e_n_u_m_gab29e10223e27331045485facbe4102ee.html#ggab29e10223e27331045485facbe4102eea345ad57d9919545fa5e5bf8393b0224f" title="Specifies the synchronous streaming data type.">UCS_MOST_SCKT_SYNC_DATA</a>, 2U };</div>
+<div class="line"><span class="keyword">static</span> <a class="code" href="struct_ucs___xrm___default_created_port__t.html" title="Configuration structure of a default created port. This structure is used for ports that are configur...">Ucs_Xrm_DefaultCreatedPort_t</a> Xrm_Usb_Port_2 = {<a class="code" href="group___g___u_c_s___x_r_m___t_y_p_e_s_gac238d98be8f9df6340eb4ee72de36ccc.html#ggac238d98be8f9df6340eb4ee72de36cccacf416b59b369504088ef6810b4c545e1" title="Default created port.">UCS_XRM_RC_TYPE_DC_PORT</a>, <a class="code" href="group___g___u_c_s___x_r_m___t_y_p_e_s_ga50384bb32b088e9cfd50c889ef562015.html#gga50384bb32b088e9cfd50c889ef562015a7b31f75e1806723739f4d7fd2bc483d3" title="USB Port.">UCS_XRM_PORT_TYPE_USB</a>, 0U};</div>
+<div class="line"><span class="keyword">static</span> <a class="code" href="struct_ucs___xrm___usb_socket__t.html" title="Configuration structure of a USB socket.">Ucs_Xrm_UsbSocket_t</a> Xrm_Usb_Socket_Out = {<a class="code" href="group___g___u_c_s___x_r_m___t_y_p_e_s_gac238d98be8f9df6340eb4ee72de36ccc.html#ggac238d98be8f9df6340eb4ee72de36ccca5e2f20f818f67af2502a600f06b9ab11" title="USB socket.">UCS_XRM_RC_TYPE_USB_SOCKET</a>, &amp;Xrm_Usb_Port_2, </div>
+<div class="line"> <a class="code" href="group___g___u_c_s___x_r_m___e_n_u_m_ga28477f727fe10f9d6fd21cfc98a9c115.html#gga28477f727fe10f9d6fd21cfc98a9c115aa14fc95a1f8c5f54aa6d601614a887fe" title="Socket transfers data out of INIC.">UCS_SOCKET_DIR_OUTPUT</a>, <a class="code" href="group___g___u_c_s___x_r_m___e_n_u_m_gafd56377a5a1f782e64260d18caf17dc9.html#ggafd56377a5a1f782e64260d18caf17dc9a4df4e4d4848358e18a3ef6386db80acf" title="Specifies the synchronous streaming data type.">UCS_USB_SCKT_SYNC_DATA</a> ,</div>
+<div class="line"> 0x81U<span class="comment">/*endpoint*/</span>, 0x0007U <span class="comment">/*frames*/</span> };</div>
+<div class="line"><span class="keyword">static</span> <a class="code" href="struct_ucs___xrm___sync_con__t.html" title="Configuration structure of a synchronous data connection.">Ucs_Xrm_SyncCon_t</a> Xrm_Sync_Conn_Sink = {<a class="code" href="group___g___u_c_s___x_r_m___t_y_p_e_s_gac238d98be8f9df6340eb4ee72de36ccc.html#ggac238d98be8f9df6340eb4ee72de36ccca47342ee294555a9b7e738c9fc34b5265" title="Synchronous data connection.">UCS_XRM_RC_TYPE_SYNC_CON</a>, &amp;Xrm_Most_Sckt_In, </div>
+<div class="line"> &amp;Xrm_Usb_Socket_Out, <a class="code" href="group___g___u_c_s___x_r_m___e_n_u_m_gaef12892b897a1cd1013357cfe63f2434.html#ggaef12892b897a1cd1013357cfe63f2434a6e21656de3fa891d522f272307fca772" title="No mute monitoring.">UCS_SYNC_MUTE_MODE_NO_MUTING</a>, 0U };</div>
+<div class="line"></div>
+<div class="line"><span class="comment">/* Specification of the XRM jobs lists */</span></div>
+<div class="line"><span class="keyword">static</span> <a class="code" href="group___g___u_c_s___x_r_m___t_y_p_e_s_ga74e06fedcde6bc971088b2cb21405173.html#ga74e06fedcde6bc971088b2cb21405173" title="INIC Resource Object used for Extended Resource Manager jobs.">Ucs_Xrm_ResObject_t</a> * xrm_job_out[] = { &amp;Xrm_Most_Sckt_Out, &amp;Xrm_Usb_Port_1, &amp;Xrm_Usb_Socket_In, </div>
+<div class="line"> &amp;Xrm_Sync_Conn_Src, NULL };</div>
+<div class="line"><span class="keyword">static</span> <a class="code" href="group___g___u_c_s___x_r_m___t_y_p_e_s_ga74e06fedcde6bc971088b2cb21405173.html#ga74e06fedcde6bc971088b2cb21405173" title="INIC Resource Object used for Extended Resource Manager jobs.">Ucs_Xrm_ResObject_t</a> * xrm_job_in [] = { &amp;Xrm_Most_Sckt_In, &amp;Xrm_Usb_Port_2, &amp;Xrm_Usb_Socket_Out, </div>
+<div class="line"> &amp;Xrm_Sync_Conn_Sink, NULL };</div>
+<div class="line"></div>
+<div class="line"><span class="comment">/* Source and Sink Endpoints */</span></div>
+<div class="line"><span class="keyword">static</span> <a class="code" href="struct_ucs___rm___end_point__t.html" title="Configuration structure of a Connection EndPoint.">Ucs_Rm_EndPoint_t</a> endpoint_src = { <a class="code" href="group___g___u_c_s___r_o_u_t_i_n_g___t_y_p_e_s_ga127a72f023d3c0289ab74b001f6edc25.html#gga127a72f023d3c0289ab74b001f6edc25ac1244d5bc6a569137f6f9132b8b0a3da" title="Specifies the source endpoint.">UCS_RM_EP_SOURCE</a>, &amp;xrm_job_out[0], &amp;app_nodes[0] };</div>
+<div class="line"><span class="keyword">static</span> <a class="code" href="struct_ucs___rm___end_point__t.html" title="Configuration structure of a Connection EndPoint.">Ucs_Rm_EndPoint_t</a> endpoint_sink = { <a class="code" href="group___g___u_c_s___r_o_u_t_i_n_g___t_y_p_e_s_ga127a72f023d3c0289ab74b001f6edc25.html#gga127a72f023d3c0289ab74b001f6edc25a63c4dfa3683ce8122d760c4e2d580138" title="Specifies the sink endpoint.">UCS_RM_EP_SINK</a>, &amp;xrm_job_in[0], &amp;app_nodes[1] };</div>
+<div class="line"></div>
+<div class="line"><span class="comment">/* Routes Specification */</span></div>
+<div class="line"><span class="preprocessor">#define APP_ROUTES_NUM 1U</span></div>
+<div class="line"><span class="preprocessor">static Ucs_Rm_Route_t app_routes[APP_ROUTES_NUM] = { {&amp;endpoint_src, &amp;endpoint_sink, true </span><span class="comment">/*is_active*/</span><span class="preprocessor">, 66U} };</span></div>
+</div><!-- fragment --><h1>Initialization</h1>
+<p>The code below shows a possible initialization sequence of the Application Message Service.</p>
+<div class="fragment"><div class="line"><span class="keywordtype">void</span> App_Initialize(<span class="keywordtype">void</span>)</div>
+<div class="line">{</div>
+<div class="line"> <a class="code" href="struct_ucs___init_data__t.html" title="UNICENS initialization structure used by function Ucs_Init().">Ucs_InitData_t</a> init_data;</div>
+<div class="line"> <a class="code" href="group___g___u_c_s___i_n_i_t___a_n_d___s_r_v_ga64b50780725a0dc8693b5b73f8345ad6.html#ga64b50780725a0dc8693b5b73f8345ad6" title="Assigns default values to a provided UNICENS init structure.">Ucs_SetDefaultConfig</a>(&amp;init_data);</div>
+<div class="line"></div>
+<div class="line"> init_data.<a class="code" href="struct_ucs___init_data__t_a517c2ec800639c8a91183e70189b1875.html#a517c2ec800639c8a91183e70189b1875" title="The initialization data of the Manager.">mgr</a>.<a class="code" href="struct_ucs___mgr___init_data__t_a8740ba80e30dd75e71d09fa1dcf04f3d.html#a8740ba80e30dd75e71d09fa1dcf04f3d" title="If set to false the application must handle network startup, node discovery and rooting by hand...">enabled</a> = <span class="keyword">true</span>;</div>
+<div class="line"> init_data.<a class="code" href="struct_ucs___init_data__t_a517c2ec800639c8a91183e70189b1875.html#a517c2ec800639c8a91183e70189b1875" title="The initialization data of the Manager.">mgr</a>.<a class="code" href="struct_ucs___mgr___init_data__t_ac5131dba874debb5bb76b7f3b5a31818.html#ac5131dba874debb5bb76b7f3b5a31818" title="Optional callback function notifying node events.">report_fptr</a> = &amp;App_OnMgrReport;</div>
+<div class="line"> init_data.<a class="code" href="struct_ucs___init_data__t_a517c2ec800639c8a91183e70189b1875.html#a517c2ec800639c8a91183e70189b1875" title="The initialization data of the Manager.">mgr</a>.<a class="code" href="struct_ucs___mgr___init_data__t_a980d5ec2fe728b8ca99de235be7858d2.html#a980d5ec2fe728b8ca99de235be7858d2" title="The desired packet bandwidth.">packet_bw</a> = 52U;</div>
+<div class="line"> init_data.<a class="code" href="struct_ucs___init_data__t_a517c2ec800639c8a91183e70189b1875.html#a517c2ec800639c8a91183e70189b1875" title="The initialization data of the Manager.">mgr</a>.<a class="code" href="struct_ucs___mgr___init_data__t_ae261d2df7a2be21b4e8e4a582113643c.html#ae261d2df7a2be21b4e8e4a582113643c" title="Reference to the list of nodes.">nodes_list_ptr</a> = &amp;app_nodes[0];</div>
+<div class="line"> init_data.<a class="code" href="struct_ucs___init_data__t_a517c2ec800639c8a91183e70189b1875.html#a517c2ec800639c8a91183e70189b1875" title="The initialization data of the Manager.">mgr</a>.<a class="code" href="struct_ucs___mgr___init_data__t_ab0ad9592908a66a29460d67bf3146114.html#ab0ad9592908a66a29460d67bf3146114" title="Number of nodes in the list.">nodes_list_size</a> = APP_NODES_NUM;</div>
+<div class="line"> init_data.<a class="code" href="struct_ucs___init_data__t_a517c2ec800639c8a91183e70189b1875.html#a517c2ec800639c8a91183e70189b1875" title="The initialization data of the Manager.">mgr</a>.<a class="code" href="struct_ucs___mgr___init_data__t_a4bda15e771fef671a47cd88a09707030.html#a4bda15e771fef671a47cd88a09707030" title="Reference to a list of routes.">routes_list_ptr</a> = &amp;app_routes[0];</div>
+<div class="line"> init_data.<a class="code" href="struct_ucs___init_data__t_a517c2ec800639c8a91183e70189b1875.html#a517c2ec800639c8a91183e70189b1875" title="The initialization data of the Manager.">mgr</a>.<a class="code" href="struct_ucs___mgr___init_data__t_a30588f13e23cf04757b91e979e55c369.html#a30588f13e23cf04757b91e979e55c369" title="Number of routes in the list.">routes_list_size</a> = APP_ROUTES_NUM;</div>
+<div class="line"></div>
+<div class="line"> <span class="comment">/* ... further initialization ... */</span></div>
+<div class="line"></div>
+<div class="line"> <a class="code" href="group___g___u_c_s___i_n_i_t___a_n_d___s_r_v_gaea8d7735d41853167a2befdc06febe43.html#gaea8d7735d41853167a2befdc06febe43" title="UNICENS initialization function.">Ucs_Init</a>(&amp;init_data, &amp;App_OnInitResult);</div>
+<div class="line">}</div>
+</div><!-- fragment --><table class="mns_ic_table">
+<tr>
+<td id="mns_ic_started">&#160;</td><td>See also <em>Getting Started</em>, section <a class="el" href="_p__u_m__s_t_a_r_t_e_d__i_n_i_t.html">Initialization</a>. </td></tr>
+</table>
+<h1>Status Reports</h1>
+<p>If the application logic requires information about the availability of nodes, it is possible to register an optional callback function <a class="el" href="group___g___u_c_s___m_g_r_gad54678ad2a4671ec224422a8647b20f6.html#gad54678ad2a4671ec224422a8647b20f6">mgr.report_fptr</a>. See also the initialization code above. The following code shows an implementation of this function. </p>
+<div class="fragment"><div class="line"><span class="keyword">static</span> <span class="keywordtype">void</span> App_OnMgrReport(<a class="code" href="group___g___u_c_s___m_g_r_gab85aa9ce377050505124af5e9549e445.html#gab85aa9ce377050505124af5e9549e445" title="Manager report codes.">Ucs_MgrReport_t</a> code, uint16_t node_address, <a class="code" href="struct_ucs___rm___node__t.html" title="Configuration structure of a Node.">Ucs_Rm_Node_t</a> *node_ptr, <span class="keywordtype">void</span> *user_ptr)</div>
+<div class="line">{</div>
+<div class="line"> (void)printf(<span class="stringliteral">&quot;App_OnMgrReport(): code=%d, node_addr=0x%04X, node_ptr=%p\n&quot;</span>, code, node_address, node_ptr);</div>
+<div class="line">}</div>
+</div><!-- fragment --> </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">&copy; 2017 Microchip Technology Inc. All rights reserved. <a href="http://www.microchip.com" target="_blank">www.microchip.com</a></li>
+ </ul>
+</div>
+</body>
+<!--
+Generated on Mon Apr 3 2017 13:52:59 for UNICENS by
+Doxygen 1.8.2
+-->
+<script language="javascript">
+<!--
+$('#MSearchResults').wrap('<div style="position: absolute; margin-left: 444px;"></div>');
+-->
+</script>
+</html>