blob: 1dfc050d9debfbfc6c7a5244c96928e60cf64cee [file] [log] [blame]
Nikhil Raj1dc83fe2024-05-16 09:47:51 +01001<!-- HTML header for doxygen 1.8.17-->
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml">
4<head>
5<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
6<meta http-equiv="X-UA-Compatible" content="IE=9"/>
7<meta name="generator" content="Doxygen 1.8.17"/>
8<meta name="viewport" content="width=device-width, initial-scale=1"/>
9<title>Arm NN: NetworkImpl Class Reference</title>
10<link href="tabs.css" rel="stylesheet" type="text/css"/>
11<script type="text/javascript" src="jquery.js"></script>
12<script type="text/javascript" src="dynsections.js"></script>
13<link href="navtree.css" rel="stylesheet" type="text/css"/>
14<script type="text/javascript" src="resize.js"></script>
15<script type="text/javascript" src="navtreedata.js"></script>
16<script type="text/javascript" src="navtree.js"></script>
17<link href="search/search.css" rel="stylesheet" type="text/css"/>
18<script type="text/javascript" src="search/searchdata.js"></script>
19<script type="text/javascript" src="search/search.js"></script>
20<script type="text/x-mathjax-config">
21 MathJax.Hub.Config({
22 extensions: ["tex2jax.js"],
23 jax: ["input/TeX","output/HTML-CSS"],
24});
25</script>
26<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
27<link href="doxygen.css" rel="stylesheet" type="text/css" />
28<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
29</head>
30<body>
31<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
32<div id="titlearea">
33<table cellspacing="0" cellpadding="0">
34 <tbody>
35 <tr style="height: 56px;">
36 <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 15rem; margin-top: .5rem; margin-left 13px"/>
37 <td id="projectalign" style="padding-left: 0.9em;">
38 <div id="projectname">
39 &#160;<span id="projectnumber">24.05</span>
40 </div>
41 </td>
42 </tr>
43 </tbody>
44</table>
45</div>
46<!-- end header part -->
47<!-- Generated by Doxygen 1.8.17 -->
48<script type="text/javascript">
49/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
50var searchBox = new SearchBox("searchBox", "search",false,'Search');
51/* @license-end */
52</script>
53<script type="text/javascript" src="menudata.js"></script>
54<script type="text/javascript" src="menu.js"></script>
55<script type="text/javascript">
56/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
57$(function() {
58 initMenu('',true,false,'search.php','Search');
59 $(document).ready(function() { init_search(); });
60});
61/* @license-end */</script>
62<div id="main-nav"></div>
63</div><!-- top -->
64<div id="side-nav" class="ui-resizable side-nav-resizable">
65 <div id="nav-tree">
66 <div id="nav-tree-contents">
67 <div id="nav-sync" class="sync"></div>
68 </div>
69 </div>
70 <div id="splitbar" style="-moz-user-select:none;"
71 class="ui-resizable-handle">
72 </div>
73</div>
74<script type="text/javascript">
75/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
76$(document).ready(function(){initNavTree('classarmnn_1_1_network_impl.html',''); initResizable(); });
77/* @license-end */
78</script>
79<div id="doc-content">
80<!-- window showing the filter options -->
81<div id="MSearchSelectWindow"
82 onmouseover="return searchBox.OnSearchSelectShow()"
83 onmouseout="return searchBox.OnSearchSelectHide()"
84 onkeydown="return searchBox.OnSearchSelectKey(event)">
85</div>
86
87<!-- iframe showing the search results (closed by default) -->
88<div id="MSearchResultsWindow">
89<iframe src="javascript:void(0)" frameborder="0"
90 name="MSearchResults" id="MSearchResults">
91</iframe>
92</div>
93
94<div class="header">
95 <div class="summary">
96<a href="#pub-methods">Public Member Functions</a> &#124;
97<a href="classarmnn_1_1_network_impl-members.html">List of all members</a> </div>
98 <div class="headertitle">
99<div class="title">NetworkImpl Class Reference</div> </div>
100</div><!--header-->
101<div class="contents">
102
103<p>Private implementation of <a class="el" href="classarmnn_1_1_i_network.html" title="Main network class which provides the interface for building up a neural network.">INetwork</a>.
104 <a href="classarmnn_1_1_network_impl.html#details">More...</a></p>
105
106<p><code>#include &lt;<a class="el" href="_network_8hpp_source.html">Network.hpp</a>&gt;</code></p>
107<table class="memberdecls">
108<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
109Public Member Functions</h2></td></tr>
110<tr class="memitem:a1ba03515c88a4c042bffa446d306caf0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a1ba03515c88a4c042bffa446d306caf0">NetworkImpl</a> (const <a class="el" href="namespacearmnn.html#a4de71c3661093e5c4ae7775114f43413">NetworkOptions</a> &amp;networkOptions={})</td></tr>
111<tr class="separator:a1ba03515c88a4c042bffa446d306caf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
112<tr class="memitem:ad443897d51b291c83d81d809af07f4e0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#ad443897d51b291c83d81d809af07f4e0">~NetworkImpl</a> ()</td></tr>
113<tr class="separator:ad443897d51b291c83d81d809af07f4e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
114<tr class="memitem:afe0a4f719f9752a405e71878da7012ba"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarmnn_1_1_graph.html">Graph</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#afe0a4f719f9752a405e71878da7012ba">GetGraph</a> () const</td></tr>
115<tr class="separator:afe0a4f719f9752a405e71878da7012ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
116<tr class="memitem:aff3fde909d22ed157046682e70129259"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn.html#a67a0db04d321a74b7e7fcfd3f1a3f70b">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#aff3fde909d22ed157046682e70129259">PrintGraph</a> ()</td></tr>
117<tr class="separator:aff3fde909d22ed157046682e70129259"><td class="memSeparator" colspan="2">&#160;</td></tr>
118<tr class="memitem:aa6c1c42ea44777302e87ce0fad5ac510"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#aa6c1c42ea44777302e87ce0fad5ac510">AddInputLayer</a> (<a class="el" href="namespacearmnn.html#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a> id, const char *name=nullptr)</td></tr>
119<tr class="separator:aa6c1c42ea44777302e87ce0fad5ac510"><td class="memSeparator" colspan="2">&#160;</td></tr>
120<tr class="memitem:aa51350bdd4976f3dd5a4e9d00a906b2c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#aa51350bdd4976f3dd5a4e9d00a906b2c">AddActivationLayer</a> (const <a class="el" href="structarmnn_1_1_activation_descriptor.html">ActivationDescriptor</a> &amp;activationDescriptor, const char *name=nullptr)</td></tr>
121<tr class="separator:aa51350bdd4976f3dd5a4e9d00a906b2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
122<tr class="memitem:a39f1b38d89c4de186742eafcbb3b1319"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a39f1b38d89c4de186742eafcbb3b1319">AddAdditionLayer</a> (const char *name=nullptr)</td></tr>
123<tr class="separator:a39f1b38d89c4de186742eafcbb3b1319"><td class="memSeparator" colspan="2">&#160;</td></tr>
124<tr class="memitem:adc8c1c505bca8233fe238b3b7fb80200"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#adc8c1c505bca8233fe238b3b7fb80200">AddArgMinMaxLayer</a> (const <a class="el" href="structarmnn_1_1_arg_min_max_descriptor.html">ArgMinMaxDescriptor</a> &amp;desc, const char *name=nullptr)</td></tr>
125<tr class="separator:adc8c1c505bca8233fe238b3b7fb80200"><td class="memSeparator" colspan="2">&#160;</td></tr>
126<tr class="memitem:a7b74bd646ccf7ee6eaf3e23a958606ff"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a7b74bd646ccf7ee6eaf3e23a958606ff">AddBatchMatMulLayer</a> (const <a class="el" href="structarmnn_1_1_batch_mat_mul_descriptor.html">BatchMatMulDescriptor</a> &amp;desc, const char *name=nullptr)</td></tr>
127<tr class="separator:a7b74bd646ccf7ee6eaf3e23a958606ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
128<tr class="memitem:a8f798e19187ac7ae6ae6153ee64ab645"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a8f798e19187ac7ae6ae6153ee64ab645">AddBatchNormalizationLayer</a> (const <a class="el" href="structarmnn_1_1_batch_normalization_descriptor.html">BatchNormalizationDescriptor</a> &amp;desc, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;mean, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;variance, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;beta, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;gamma, const char *name=nullptr)</td></tr>
129<tr class="separator:a8f798e19187ac7ae6ae6153ee64ab645"><td class="memSeparator" colspan="2">&#160;</td></tr>
130<tr class="memitem:a9a9bcc00ae3d96343c93b437d6f77088"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a9a9bcc00ae3d96343c93b437d6f77088">AddBatchToSpaceNdLayer</a> (const <a class="el" href="structarmnn_1_1_batch_to_space_nd_descriptor.html">BatchToSpaceNdDescriptor</a> &amp;batchToSpaceNdDescriptor, const char *name=nullptr)</td></tr>
131<tr class="separator:a9a9bcc00ae3d96343c93b437d6f77088"><td class="memSeparator" colspan="2">&#160;</td></tr>
132<tr class="memitem:a35e19d74e14ce4cec0261b799a39c921"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a35e19d74e14ce4cec0261b799a39c921">AddBroadcastToLayer</a> (const <a class="el" href="structarmnn_1_1_broadcast_to_descriptor.html">BroadcastToDescriptor</a> &amp;descriptor, const char *name=nullptr)</td></tr>
133<tr class="separator:a35e19d74e14ce4cec0261b799a39c921"><td class="memSeparator" colspan="2">&#160;</td></tr>
134<tr class="memitem:a72f7f58c37d9d856fcb648b5fa68cf59"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a72f7f58c37d9d856fcb648b5fa68cf59">AddCastLayer</a> (const char *name=nullptr)</td></tr>
135<tr class="separator:a72f7f58c37d9d856fcb648b5fa68cf59"><td class="memSeparator" colspan="2">&#160;</td></tr>
136<tr class="memitem:a5c58d2b496d24e637f613af857aa3c3d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a5c58d2b496d24e637f613af857aa3c3d">AddChannelShuffleLayer</a> (const <a class="el" href="structarmnn_1_1_channel_shuffle_descriptor.html">ChannelShuffleDescriptor</a> &amp;channelShuffleDescriptor, const char *name=nullptr)</td></tr>
137<tr class="separator:a5c58d2b496d24e637f613af857aa3c3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
138<tr class="memitem:ac7dca3e9f2ab2f2c64b42fc59a67188a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#ac7dca3e9f2ab2f2c64b42fc59a67188a">AddComparisonLayer</a> (const <a class="el" href="structarmnn_1_1_comparison_descriptor.html">ComparisonDescriptor</a> &amp;comparisonDescriptor, const char *name=nullptr)</td></tr>
139<tr class="separator:ac7dca3e9f2ab2f2c64b42fc59a67188a"><td class="memSeparator" colspan="2">&#160;</td></tr>
140<tr class="memitem:aea1059833739d3dccebb3a03ec35a1e6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#aea1059833739d3dccebb3a03ec35a1e6">AddConcatLayer</a> (const <a class="el" href="namespacearmnn.html#a7863c179ff92feec660c48ab7b95ae55">ConcatDescriptor</a> &amp;concatDescriptor, const char *name=nullptr)</td></tr>
141<tr class="separator:aea1059833739d3dccebb3a03ec35a1e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
142<tr class="memitem:a383e74ef080d4a81b8b371be4b840248"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a383e74ef080d4a81b8b371be4b840248">AddConvolution2dLayer</a> (const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.html">Convolution2dDescriptor</a> &amp;convolution2dDescriptor, const char *name=nullptr)</td></tr>
143<tr class="separator:a383e74ef080d4a81b8b371be4b840248"><td class="memSeparator" colspan="2">&#160;</td></tr>
144<tr class="memitem:a43de8213707de0e76d80a32cd4b9b482"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a43de8213707de0e76d80a32cd4b9b482">AddConvolution3dLayer</a> (const <a class="el" href="structarmnn_1_1_convolution3d_descriptor.html">Convolution3dDescriptor</a> &amp;convolution3dDescriptor, const char *name=nullptr)</td></tr>
145<tr class="separator:a43de8213707de0e76d80a32cd4b9b482"><td class="memSeparator" colspan="2">&#160;</td></tr>
146<tr class="memitem:a1aa567f46c30960851c02847dc7b4215"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a1aa567f46c30960851c02847dc7b4215">AddConstantLayer</a> (const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;input, const char *name=nullptr)</td></tr>
147<tr class="separator:a1aa567f46c30960851c02847dc7b4215"><td class="memSeparator" colspan="2">&#160;</td></tr>
148<tr class="memitem:af1853466264ac187607c96b501a74e2b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#af1853466264ac187607c96b501a74e2b">AddDepthToSpaceLayer</a> (const <a class="el" href="namespacearmnn.html#a3647f60510bc8ddaced01c51b0ee8714">DepthToSpaceDescriptor</a> &amp;depthToSpaceDescriptor, const char *name=nullptr)</td></tr>
149<tr class="separator:af1853466264ac187607c96b501a74e2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
150<tr class="memitem:ac6771c8752811fcfa91b3f0dee748144"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#ac6771c8752811fcfa91b3f0dee748144">AddDepthwiseConvolution2dLayer</a> (const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.html">DepthwiseConvolution2dDescriptor</a> &amp;convolution2dDescriptor, const char *name=nullptr)</td></tr>
151<tr class="separator:ac6771c8752811fcfa91b3f0dee748144"><td class="memSeparator" colspan="2">&#160;</td></tr>
152<tr class="memitem:a357aca04172ed22fa32e5a69122b0fec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a357aca04172ed22fa32e5a69122b0fec">AddDequantizeLayer</a> (const char *name=nullptr)</td></tr>
153<tr class="separator:a357aca04172ed22fa32e5a69122b0fec"><td class="memSeparator" colspan="2">&#160;</td></tr>
154<tr class="memitem:ac1134a94265293ea7347180260f787d2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#ac1134a94265293ea7347180260f787d2">AddDetectionPostProcessLayer</a> (const <a class="el" href="structarmnn_1_1_detection_post_process_descriptor.html">DetectionPostProcessDescriptor</a> &amp;descriptor, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;anchors, const char *name=nullptr)</td></tr>
155<tr class="separator:ac1134a94265293ea7347180260f787d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
156<tr class="memitem:a0aeb4e528cf6ba4b7caca14a94fbcafe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a0aeb4e528cf6ba4b7caca14a94fbcafe">AddDivisionLayer</a> (const char *name=nullptr)</td></tr>
157<tr class="separator:a0aeb4e528cf6ba4b7caca14a94fbcafe"><td class="memSeparator" colspan="2">&#160;</td></tr>
158<tr class="memitem:aab976306ba3424cbc0c7ea33417d718d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#aab976306ba3424cbc0c7ea33417d718d">AddElementwiseBinaryLayer</a> (const <a class="el" href="structarmnn_1_1_elementwise_binary_descriptor.html">ElementwiseBinaryDescriptor</a> &amp;elementwiseBinaryDescriptor, const char *name=nullptr)</td></tr>
159<tr class="separator:aab976306ba3424cbc0c7ea33417d718d"><td class="memSeparator" colspan="2">&#160;</td></tr>
160<tr class="memitem:a095a9b700dc857edc23c5d3bf088919f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a095a9b700dc857edc23c5d3bf088919f">AddElementwiseUnaryLayer</a> (const <a class="el" href="structarmnn_1_1_elementwise_unary_descriptor.html">ElementwiseUnaryDescriptor</a> &amp;elementwiseUnaryDescriptor, const char *name=nullptr)</td></tr>
161<tr class="separator:a095a9b700dc857edc23c5d3bf088919f"><td class="memSeparator" colspan="2">&#160;</td></tr>
162<tr class="memitem:a0f19808bdada45222e72edf7671a275a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a0f19808bdada45222e72edf7671a275a">AddMergeLayer</a> (const char *name=nullptr)</td></tr>
163<tr class="separator:a0f19808bdada45222e72edf7671a275a"><td class="memSeparator" colspan="2">&#160;</td></tr>
164<tr class="memitem:afc94c35c0bbe852a60046bf2e756b2e0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#afc94c35c0bbe852a60046bf2e756b2e0">AddFillLayer</a> (const <a class="el" href="structarmnn_1_1_fill_descriptor.html">FillDescriptor</a> &amp;fillDescriptor, const char *name=nullptr)</td></tr>
165<tr class="separator:afc94c35c0bbe852a60046bf2e756b2e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
166<tr class="memitem:a435ea88480b8645026dd45fd692663a1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a435ea88480b8645026dd45fd692663a1">AddFloorLayer</a> (const char *name=nullptr)</td></tr>
167<tr class="separator:a435ea88480b8645026dd45fd692663a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
168<tr class="memitem:a471991a84030eb3ae601da2bee757870"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a471991a84030eb3ae601da2bee757870">AddFullyConnectedLayer</a> (const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.html">FullyConnectedDescriptor</a> &amp;fullyConnectedDescriptor, const char *name=nullptr)</td></tr>
169<tr class="separator:a471991a84030eb3ae601da2bee757870"><td class="memSeparator" colspan="2">&#160;</td></tr>
170<tr class="memitem:a08f9f3cdeb77b6a0c615e8fa48f0ee94"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a08f9f3cdeb77b6a0c615e8fa48f0ee94">AddFusedLayer</a> (const <a class="el" href="structarmnn_1_1_fused_descriptor.html">FusedDescriptor</a> &amp;fusedDescriptor, const char *name=nullptr)</td></tr>
171<tr class="separator:a08f9f3cdeb77b6a0c615e8fa48f0ee94"><td class="memSeparator" colspan="2">&#160;</td></tr>
172<tr class="memitem:aaf5e9645806f49d0fcd7ac07ba187f4e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#aaf5e9645806f49d0fcd7ac07ba187f4e">AddGatherLayer</a> (const <a class="el" href="structarmnn_1_1_gather_descriptor.html">GatherDescriptor</a> &amp;gatherDescriptor, const char *name=nullptr)</td></tr>
173<tr class="separator:aaf5e9645806f49d0fcd7ac07ba187f4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
174<tr class="memitem:af776e284b9e2c4a3563abb8cf5e8ac5e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#af776e284b9e2c4a3563abb8cf5e8ac5e">AddGatherNdLayer</a> (const char *name=nullptr)</td></tr>
175<tr class="separator:af776e284b9e2c4a3563abb8cf5e8ac5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
176<tr class="memitem:abd61d3e7ab67551c75bc219bbc4baeb5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#abd61d3e7ab67551c75bc219bbc4baeb5">AddInstanceNormalizationLayer</a> (const <a class="el" href="structarmnn_1_1_instance_normalization_descriptor.html">InstanceNormalizationDescriptor</a> &amp;desc, const char *name=nullptr)</td></tr>
177<tr class="separator:abd61d3e7ab67551c75bc219bbc4baeb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
178<tr class="memitem:aaff51346dadec2c1430abf007fed4cc9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#aaff51346dadec2c1430abf007fed4cc9">AddL2NormalizationLayer</a> (const <a class="el" href="structarmnn_1_1_l2_normalization_descriptor.html">L2NormalizationDescriptor</a> &amp;desc, const char *name=nullptr)</td></tr>
179<tr class="separator:aaff51346dadec2c1430abf007fed4cc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
180<tr class="memitem:a83b33973ca12078166b2436b313627b9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a83b33973ca12078166b2436b313627b9">AddLogSoftmaxLayer</a> (const <a class="el" href="namespacearmnn.html#ac14705405cbcdd580df613de6766fe65">LogSoftmaxDescriptor</a> &amp;logSoftmaxDescriptor, const char *name=nullptr)</td></tr>
181<tr class="separator:a83b33973ca12078166b2436b313627b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
182<tr class="memitem:a1ff7534e1254dfb3ef8288194cca7ce3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a1ff7534e1254dfb3ef8288194cca7ce3">AddLogicalBinaryLayer</a> (const <a class="el" href="structarmnn_1_1_logical_binary_descriptor.html">LogicalBinaryDescriptor</a> &amp;logicalBinaryDescriptor, const char *name=nullptr)</td></tr>
183<tr class="separator:a1ff7534e1254dfb3ef8288194cca7ce3"><td class="memSeparator" colspan="2">&#160;</td></tr>
184<tr class="memitem:a0a2fdd4f442952c97a8f24de6700473a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a0a2fdd4f442952c97a8f24de6700473a">AddLstmLayer</a> (const <a class="el" href="structarmnn_1_1_lstm_descriptor.html">LstmDescriptor</a> &amp;descriptor, const <a class="el" href="structarmnn_1_1_lstm_input_params.html">LstmInputParams</a> &amp;params, const char *name=nullptr)</td></tr>
185<tr class="separator:a0a2fdd4f442952c97a8f24de6700473a"><td class="memSeparator" colspan="2">&#160;</td></tr>
186<tr class="memitem:a57590d7777211673d2052f702f0b07a1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a57590d7777211673d2052f702f0b07a1">AddMaximumLayer</a> (const char *name=nullptr)</td></tr>
187<tr class="separator:a57590d7777211673d2052f702f0b07a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
188<tr class="memitem:ad4726f9b7dd11db250d2a494a8a39494"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#ad4726f9b7dd11db250d2a494a8a39494">AddMeanLayer</a> (const <a class="el" href="structarmnn_1_1_mean_descriptor.html">MeanDescriptor</a> &amp;meanDescriptor, const char *name=nullptr)</td></tr>
189<tr class="separator:ad4726f9b7dd11db250d2a494a8a39494"><td class="memSeparator" colspan="2">&#160;</td></tr>
190<tr class="memitem:a4bfd8dee1a0315b651e977c672c0847c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a4bfd8dee1a0315b651e977c672c0847c">AddMinimumLayer</a> (const char *name=nullptr)</td></tr>
191<tr class="separator:a4bfd8dee1a0315b651e977c672c0847c"><td class="memSeparator" colspan="2">&#160;</td></tr>
192<tr class="memitem:abb59f6ba9988dae88e0f48e68d87fc32"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#abb59f6ba9988dae88e0f48e68d87fc32">AddMultiplicationLayer</a> (const char *name=nullptr)</td></tr>
193<tr class="separator:abb59f6ba9988dae88e0f48e68d87fc32"><td class="memSeparator" colspan="2">&#160;</td></tr>
194<tr class="memitem:a6c5376053e1f875776d7bc36fd0b7d45"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a6c5376053e1f875776d7bc36fd0b7d45">AddNormalizationLayer</a> (const <a class="el" href="structarmnn_1_1_normalization_descriptor.html">NormalizationDescriptor</a> &amp;normalizationDescriptor, const char *name=nullptr)</td></tr>
195<tr class="separator:a6c5376053e1f875776d7bc36fd0b7d45"><td class="memSeparator" colspan="2">&#160;</td></tr>
196<tr class="memitem:af5790069aa11fd1c5bb2e17cecb06528"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#af5790069aa11fd1c5bb2e17cecb06528">AddOutputLayer</a> (<a class="el" href="namespacearmnn.html#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a> id, const char *name=nullptr)</td></tr>
197<tr class="separator:af5790069aa11fd1c5bb2e17cecb06528"><td class="memSeparator" colspan="2">&#160;</td></tr>
198<tr class="memitem:a6e2df484ecc65bc82712590b96e04df4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a6e2df484ecc65bc82712590b96e04df4">AddPadLayer</a> (const <a class="el" href="structarmnn_1_1_pad_descriptor.html">PadDescriptor</a> &amp;padDescriptor, const char *name=nullptr)</td></tr>
199<tr class="separator:a6e2df484ecc65bc82712590b96e04df4"><td class="memSeparator" colspan="2">&#160;</td></tr>
200<tr class="memitem:a11f49d84f0cfd8df65f4d5206cd43b6d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a11f49d84f0cfd8df65f4d5206cd43b6d">AddPermuteLayer</a> (const <a class="el" href="structarmnn_1_1_permute_descriptor.html">PermuteDescriptor</a> &amp;permuteDescriptor, const char *name=nullptr)</td></tr>
201<tr class="separator:a11f49d84f0cfd8df65f4d5206cd43b6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
202<tr class="memitem:ae913b4351b7027f37eb5657dd7867733"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#ae913b4351b7027f37eb5657dd7867733">AddPooling2dLayer</a> (const <a class="el" href="structarmnn_1_1_pooling2d_descriptor.html">Pooling2dDescriptor</a> &amp;pooling2dDescriptor, const char *name=nullptr)</td></tr>
203<tr class="separator:ae913b4351b7027f37eb5657dd7867733"><td class="memSeparator" colspan="2">&#160;</td></tr>
204<tr class="memitem:aee282f8e3379d3f5bed1032d20884248"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#aee282f8e3379d3f5bed1032d20884248">AddPooling3dLayer</a> (const <a class="el" href="structarmnn_1_1_pooling3d_descriptor.html">Pooling3dDescriptor</a> &amp;pooling3dDescriptor, const char *name=nullptr)</td></tr>
205<tr class="separator:aee282f8e3379d3f5bed1032d20884248"><td class="memSeparator" colspan="2">&#160;</td></tr>
206<tr class="memitem:aee3a15d2fa419f50a8ac45e6d3c11e16"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#aee3a15d2fa419f50a8ac45e6d3c11e16">AddPrecompiledLayer</a> (const <a class="el" href="structarmnn_1_1_pre_compiled_descriptor.html">PreCompiledDescriptor</a> &amp;preCompiledDescriptor, <a class="el" href="namespacearmnn.html#af362583b7b4c471c434cb0fdb86c2ae2">CompiledBlobPtr</a> compiledBlobPtr, const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; <a class="el" href="classarmnn_1_1_backend_id.html">BackendId</a> &gt; &amp;backend, const char *name=nullptr)</td></tr>
207<tr class="separator:aee3a15d2fa419f50a8ac45e6d3c11e16"><td class="memSeparator" colspan="2">&#160;</td></tr>
208<tr class="memitem:a6d614a503a34ea3712b388aa4340ddbe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a6d614a503a34ea3712b388aa4340ddbe">AddPreluLayer</a> (const char *name=nullptr)</td></tr>
209<tr class="separator:a6d614a503a34ea3712b388aa4340ddbe"><td class="memSeparator" colspan="2">&#160;</td></tr>
210<tr class="memitem:a0b426a3feffc76e66d73b5761806e899"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a0b426a3feffc76e66d73b5761806e899">AddQuantizeLayer</a> (const char *name=nullptr)</td></tr>
211<tr class="separator:a0b426a3feffc76e66d73b5761806e899"><td class="memSeparator" colspan="2">&#160;</td></tr>
212<tr class="memitem:a2acbae0b9e98c94b843677484775c86a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a2acbae0b9e98c94b843677484775c86a">AddQLstmLayer</a> (const <a class="el" href="structarmnn_1_1_q_lstm_descriptor.html">QLstmDescriptor</a> &amp;descriptor, const <a class="el" href="structarmnn_1_1_lstm_input_params.html">LstmInputParams</a> &amp;params, const char *name=nullptr)</td></tr>
213<tr class="separator:a2acbae0b9e98c94b843677484775c86a"><td class="memSeparator" colspan="2">&#160;</td></tr>
214<tr class="memitem:a40067b05f30a3ab65568c826df7a8ea7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a40067b05f30a3ab65568c826df7a8ea7">AddQuantizedLstmLayer</a> (const <a class="el" href="structarmnn_1_1_quantized_lstm_input_params.html">QuantizedLstmInputParams</a> &amp;params, const char *name=nullptr)</td></tr>
215<tr class="separator:a40067b05f30a3ab65568c826df7a8ea7"><td class="memSeparator" colspan="2">&#160;</td></tr>
216<tr class="memitem:a25563024ec66627ee83727244a53e944"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a25563024ec66627ee83727244a53e944">AddRankLayer</a> (const char *name=nullptr)</td></tr>
217<tr class="separator:a25563024ec66627ee83727244a53e944"><td class="memSeparator" colspan="2">&#160;</td></tr>
218<tr class="memitem:ae0cfae1ea51669892608a1a060d24fa0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#ae0cfae1ea51669892608a1a060d24fa0">AddReduceLayer</a> (const <a class="el" href="structarmnn_1_1_reduce_descriptor.html">ReduceDescriptor</a> &amp;reduceDescriptor, const char *name=nullptr)</td></tr>
219<tr class="separator:ae0cfae1ea51669892608a1a060d24fa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
220<tr class="memitem:ad97411f1fcb2c30c212483d8c673506f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#ad97411f1fcb2c30c212483d8c673506f">AddResizeLayer</a> (const <a class="el" href="structarmnn_1_1_resize_descriptor.html">ResizeDescriptor</a> &amp;resizeDescriptor, const char *name=nullptr)</td></tr>
221<tr class="separator:ad97411f1fcb2c30c212483d8c673506f"><td class="memSeparator" colspan="2">&#160;</td></tr>
222<tr class="memitem:a8a3380be13fba749fc4208214b049347"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a8a3380be13fba749fc4208214b049347">AddReshapeLayer</a> (const <a class="el" href="structarmnn_1_1_reshape_descriptor.html">ReshapeDescriptor</a> &amp;reshapeDescriptor, const char *name=nullptr)</td></tr>
223<tr class="separator:a8a3380be13fba749fc4208214b049347"><td class="memSeparator" colspan="2">&#160;</td></tr>
224<tr class="memitem:af6b8b1eccd67565e345e3977a4adc195"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#af6b8b1eccd67565e345e3977a4adc195">AddReverseV2Layer</a> (const char *name=nullptr)</td></tr>
225<tr class="separator:af6b8b1eccd67565e345e3977a4adc195"><td class="memSeparator" colspan="2">&#160;</td></tr>
226<tr class="memitem:a7acdb6bce75ed6621831f1a106366c14"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a7acdb6bce75ed6621831f1a106366c14">AddScatterNdLayer</a> (const <a class="el" href="structarmnn_1_1_scatter_nd_descriptor.html">ScatterNdDescriptor</a> &amp;scatterDescriptor, const char *name=nullptr)</td></tr>
227<tr class="separator:a7acdb6bce75ed6621831f1a106366c14"><td class="memSeparator" colspan="2">&#160;</td></tr>
228<tr class="memitem:af9dd4b5273829b846ab83b3ae7f3defc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#af9dd4b5273829b846ab83b3ae7f3defc">AddShapeLayer</a> (const char *name=nullptr)</td></tr>
229<tr class="separator:af9dd4b5273829b846ab83b3ae7f3defc"><td class="memSeparator" colspan="2">&#160;</td></tr>
230<tr class="memitem:a8de6b047fcaff95df48dca683e1f3aa4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a8de6b047fcaff95df48dca683e1f3aa4">AddSliceLayer</a> (const <a class="el" href="structarmnn_1_1_slice_descriptor.html">SliceDescriptor</a> &amp;sliceDescriptor, const char *name=nullptr)</td></tr>
231<tr class="separator:a8de6b047fcaff95df48dca683e1f3aa4"><td class="memSeparator" colspan="2">&#160;</td></tr>
232<tr class="memitem:a30528a3bd85a0dba158bd14e252bd68a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a30528a3bd85a0dba158bd14e252bd68a">AddSoftmaxLayer</a> (const <a class="el" href="structarmnn_1_1_softmax_descriptor.html">SoftmaxDescriptor</a> &amp;softmaxDescriptor, const char *name=nullptr)</td></tr>
233<tr class="separator:a30528a3bd85a0dba158bd14e252bd68a"><td class="memSeparator" colspan="2">&#160;</td></tr>
234<tr class="memitem:a6f6d81d8a4f1f85f3616e8306760061c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a6f6d81d8a4f1f85f3616e8306760061c">AddSplitterLayer</a> (const <a class="el" href="structarmnn_1_1_views_descriptor.html">ViewsDescriptor</a> &amp;splitterDescriptor, const char *name=nullptr)</td></tr>
235<tr class="separator:a6f6d81d8a4f1f85f3616e8306760061c"><td class="memSeparator" colspan="2">&#160;</td></tr>
236<tr class="memitem:a72b9d30e9d555bb5c35460b62faedf0d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a72b9d30e9d555bb5c35460b62faedf0d">AddSpaceToBatchNdLayer</a> (const <a class="el" href="structarmnn_1_1_space_to_batch_nd_descriptor.html">SpaceToBatchNdDescriptor</a> &amp;spaceToBatchNdDescriptor, const char *name=nullptr)</td></tr>
237<tr class="separator:a72b9d30e9d555bb5c35460b62faedf0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
238<tr class="memitem:a19bad0cc50526ca9f4f84a688812cdf5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a19bad0cc50526ca9f4f84a688812cdf5">AddSpaceToDepthLayer</a> (const <a class="el" href="structarmnn_1_1_space_to_depth_descriptor.html">SpaceToDepthDescriptor</a> &amp;spaceToDepthDescriptor, const char *name=nullptr)</td></tr>
239<tr class="separator:a19bad0cc50526ca9f4f84a688812cdf5"><td class="memSeparator" colspan="2">&#160;</td></tr>
240<tr class="memitem:a446181daeb60b49cbcfd9f907f974ec1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a446181daeb60b49cbcfd9f907f974ec1">AddStackLayer</a> (const <a class="el" href="structarmnn_1_1_stack_descriptor.html">StackDescriptor</a> &amp;stackDescriptor, const char *name=nullptr)</td></tr>
241<tr class="separator:a446181daeb60b49cbcfd9f907f974ec1"><td class="memSeparator" colspan="2">&#160;</td></tr>
242<tr class="memitem:a74894d085e78ff80f45fc09dd2381f08"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a74894d085e78ff80f45fc09dd2381f08">AddStandInLayer</a> (const <a class="el" href="structarmnn_1_1_stand_in_descriptor.html">StandInDescriptor</a> &amp;descriptor, const char *name=nullptr)</td></tr>
243<tr class="separator:a74894d085e78ff80f45fc09dd2381f08"><td class="memSeparator" colspan="2">&#160;</td></tr>
244<tr class="memitem:ac5c93cad39a690af862d49ffaec0d3c0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#ac5c93cad39a690af862d49ffaec0d3c0">AddStridedSliceLayer</a> (const <a class="el" href="structarmnn_1_1_strided_slice_descriptor.html">StridedSliceDescriptor</a> &amp;stridedSliceDescriptor, const char *name=nullptr)</td></tr>
245<tr class="separator:ac5c93cad39a690af862d49ffaec0d3c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
246<tr class="memitem:af13795cdf49e63d8bc3cb409592cdb9d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#af13795cdf49e63d8bc3cb409592cdb9d">AddSubtractionLayer</a> (const char *name=nullptr)</td></tr>
247<tr class="separator:af13795cdf49e63d8bc3cb409592cdb9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
248<tr class="memitem:a26e69cda5fe9642f9198c24ae5fdf9bc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a26e69cda5fe9642f9198c24ae5fdf9bc">AddSwitchLayer</a> (const char *name=nullptr)</td></tr>
249<tr class="separator:a26e69cda5fe9642f9198c24ae5fdf9bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
250<tr class="memitem:aaeb550250a93542aef8ef68fbfdd8e98"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#aaeb550250a93542aef8ef68fbfdd8e98">AddTileLayer</a> (const <a class="el" href="structarmnn_1_1_tile_descriptor.html">TileDescriptor</a> &amp;tileDescriptor, const char *name=nullptr)</td></tr>
251<tr class="separator:aaeb550250a93542aef8ef68fbfdd8e98"><td class="memSeparator" colspan="2">&#160;</td></tr>
252<tr class="memitem:a41fd7b56923d5625bac2cbfebed1a393"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a41fd7b56923d5625bac2cbfebed1a393">AddTransposeConvolution2dLayer</a> (const <a class="el" href="structarmnn_1_1_transpose_convolution2d_descriptor.html">TransposeConvolution2dDescriptor</a> &amp;descriptor, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;weights, const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &gt; &amp;biases, const char *name=nullptr)</td></tr>
253<tr class="separator:a41fd7b56923d5625bac2cbfebed1a393"><td class="memSeparator" colspan="2">&#160;</td></tr>
254<tr class="memitem:ab067ba4ee9416d93abb8a52f3dc8feba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#ab067ba4ee9416d93abb8a52f3dc8feba">AddTransposeLayer</a> (const <a class="el" href="structarmnn_1_1_transpose_descriptor.html">TransposeDescriptor</a> &amp;transposeDescriptor, const char *name=nullptr)</td></tr>
255<tr class="separator:ab067ba4ee9416d93abb8a52f3dc8feba"><td class="memSeparator" colspan="2">&#160;</td></tr>
256<tr class="memitem:aba22dcdeed6e7c489aea6eb798c0a10a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#aba22dcdeed6e7c489aea6eb798c0a10a">AddUnidirectionalSequenceLstmLayer</a> (const <a class="el" href="namespacearmnn.html#ae6c5f1b51bd32133c4dcc632045d6b58">UnidirectionalSequenceLstmDescriptor</a> &amp;descriptor, const <a class="el" href="structarmnn_1_1_lstm_input_params.html">LstmInputParams</a> &amp;params, const char *name=nullptr)</td></tr>
257<tr class="separator:aba22dcdeed6e7c489aea6eb798c0a10a"><td class="memSeparator" colspan="2">&#160;</td></tr>
258<tr class="memitem:a2090bf6670b73c69309ed592068aa3af"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a2090bf6670b73c69309ed592068aa3af">AddConvertFp16ToFp32Layer</a> (const char *name=nullptr)</td></tr>
259<tr class="separator:a2090bf6670b73c69309ed592068aa3af"><td class="memSeparator" colspan="2">&#160;</td></tr>
260<tr class="memitem:ab71c4df72f6587aea671acaacd6a0d9a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#ab71c4df72f6587aea671acaacd6a0d9a">AddConvertFp32ToFp16Layer</a> (const char *name=nullptr)</td></tr>
261<tr class="separator:ab71c4df72f6587aea671acaacd6a0d9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
262<tr class="memitem:a72032c65bf8b8acf09b564b7d80078c5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network_impl.html#a72032c65bf8b8acf09b564b7d80078c5">ExecuteStrategy</a> (<a class="el" href="classarmnn_1_1_i_strategy.html">IStrategy</a> &amp;strategy) const</td></tr>
263<tr class="separator:a72032c65bf8b8acf09b564b7d80078c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
264</table>
265<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
266<div class="textblock"><p>Private implementation of <a class="el" href="classarmnn_1_1_i_network.html" title="Main network class which provides the interface for building up a neural network.">INetwork</a>. </p>
267
268<p class="definition">Definition at line <a class="el" href="_network_8hpp_source.html#l00032">32</a> of file <a class="el" href="_network_8hpp_source.html">Network.hpp</a>.</p>
269</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
270<a id="a1ba03515c88a4c042bffa446d306caf0"></a>
271<h2 class="memtitle"><span class="permalink"><a href="#a1ba03515c88a4c042bffa446d306caf0">&#9670;&nbsp;</a></span>NetworkImpl()</h2>
272
273<div class="memitem">
274<div class="memproto">
275 <table class="memname">
276 <tr>
277 <td class="memname"><a class="el" href="classarmnn_1_1_network_impl.html">NetworkImpl</a> </td>
278 <td>(</td>
279 <td class="paramtype">const <a class="el" href="namespacearmnn.html#a4de71c3661093e5c4ae7775114f43413">NetworkOptions</a> &amp;&#160;</td>
280 <td class="paramname"><em>networkOptions</em> = <code>{}</code></td><td>)</td>
281 <td></td>
282 </tr>
283 </table>
284</div><div class="memdoc">
285
286<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02186">2186</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
287<div class="fragment"><div class="line"><a name="l02187"></a><span class="lineno"> 2187</span>&#160;: m_NetworkOptions(networkOptions),</div>
288<div class="line"><a name="l02188"></a><span class="lineno"> 2188</span>&#160; m_Graph(std::make_unique&lt;Graph&gt;(GetShapeInferenceMethod(), GetAllowExpandedDims()))</div>
289<div class="line"><a name="l02189"></a><span class="lineno"> 2189</span>&#160;{}</div>
290</div><!-- fragment -->
291</div>
292</div>
293<a id="ad443897d51b291c83d81d809af07f4e0"></a>
294<h2 class="memtitle"><span class="permalink"><a href="#ad443897d51b291c83d81d809af07f4e0">&#9670;&nbsp;</a></span>~NetworkImpl()</h2>
295
296<div class="memitem">
297<div class="memproto">
298 <table class="memname">
299 <tr>
300 <td class="memname">~<a class="el" href="classarmnn_1_1_network_impl.html">NetworkImpl</a> </td>
301 <td>(</td>
302 <td class="paramname"></td><td>)</td>
303 <td></td>
304 </tr>
305 </table>
306</div><div class="memdoc">
307
308<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02191">2191</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
309<div class="fragment"><div class="line"><a name="l02192"></a><span class="lineno"> 2192</span>&#160;{</div>
310<div class="line"><a name="l02193"></a><span class="lineno"> 2193</span>&#160;}</div>
311</div><!-- fragment -->
312</div>
313</div>
314<h2 class="groupheader">Member Function Documentation</h2>
315<a id="aa51350bdd4976f3dd5a4e9d00a906b2c"></a>
316<h2 class="memtitle"><span class="permalink"><a href="#aa51350bdd4976f3dd5a4e9d00a906b2c">&#9670;&nbsp;</a></span>AddActivationLayer()</h2>
317
318<div class="memitem">
319<div class="memproto">
320 <table class="memname">
321 <tr>
322 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddActivationLayer </td>
323 <td>(</td>
324 <td class="paramtype">const <a class="el" href="structarmnn_1_1_activation_descriptor.html">ActivationDescriptor</a> &amp;&#160;</td>
325 <td class="paramname"><em>activationDescriptor</em>, </td>
326 </tr>
327 <tr>
328 <td class="paramkey"></td>
329 <td></td>
330 <td class="paramtype">const char *&#160;</td>
331 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
332 </tr>
333 <tr>
334 <td></td>
335 <td>)</td>
336 <td></td><td></td>
337 </tr>
338 </table>
339</div><div class="memdoc">
340
341<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02327">2327</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
342<div class="fragment"><div class="line"><a name="l02329"></a><span class="lineno"> 2329</span>&#160;{</div>
343<div class="line"><a name="l02330"></a><span class="lineno"> 2330</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ActivationLayer&gt;(activationDescriptor, name);</div>
344<div class="line"><a name="l02331"></a><span class="lineno"> 2331</span>&#160;}</div>
345</div><!-- fragment -->
346</div>
347</div>
348<a id="a39f1b38d89c4de186742eafcbb3b1319"></a>
349<h2 class="memtitle"><span class="permalink"><a href="#a39f1b38d89c4de186742eafcbb3b1319">&#9670;&nbsp;</a></span>AddAdditionLayer()</h2>
350
351<div class="memitem">
352<div class="memproto">
353 <table class="memname">
354 <tr>
355 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddAdditionLayer </td>
356 <td>(</td>
357 <td class="paramtype">const char *&#160;</td>
358 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
359 <td></td>
360 </tr>
361 </table>
362</div><div class="memdoc">
363
364<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02373">2373</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
365<div class="fragment"><div class="line"><a name="l02374"></a><span class="lineno"> 2374</span>&#160;{</div>
366<div class="line"><a name="l02375"></a><span class="lineno"> 2375</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;AdditionLayer&gt;(name);</div>
367<div class="line"><a name="l02376"></a><span class="lineno"> 2376</span>&#160;}</div>
368</div><!-- fragment -->
369</div>
370</div>
371<a id="adc8c1c505bca8233fe238b3b7fb80200"></a>
372<h2 class="memtitle"><span class="permalink"><a href="#adc8c1c505bca8233fe238b3b7fb80200">&#9670;&nbsp;</a></span>AddArgMinMaxLayer()</h2>
373
374<div class="memitem">
375<div class="memproto">
376 <table class="memname">
377 <tr>
378 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddArgMinMaxLayer </td>
379 <td>(</td>
380 <td class="paramtype">const <a class="el" href="structarmnn_1_1_arg_min_max_descriptor.html">ArgMinMaxDescriptor</a> &amp;&#160;</td>
381 <td class="paramname"><em>desc</em>, </td>
382 </tr>
383 <tr>
384 <td class="paramkey"></td>
385 <td></td>
386 <td class="paramtype">const char *&#160;</td>
387 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
388 </tr>
389 <tr>
390 <td></td>
391 <td>)</td>
392 <td></td><td></td>
393 </tr>
394 </table>
395</div><div class="memdoc">
396
397<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02333">2333</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
398<div class="fragment"><div class="line"><a name="l02335"></a><span class="lineno"> 2335</span>&#160;{</div>
399<div class="line"><a name="l02336"></a><span class="lineno"> 2336</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ArgMinMaxLayer&gt;(argMinMaxDescriptor, name);</div>
400<div class="line"><a name="l02337"></a><span class="lineno"> 2337</span>&#160;}</div>
401</div><!-- fragment -->
402</div>
403</div>
404<a id="a7b74bd646ccf7ee6eaf3e23a958606ff"></a>
405<h2 class="memtitle"><span class="permalink"><a href="#a7b74bd646ccf7ee6eaf3e23a958606ff">&#9670;&nbsp;</a></span>AddBatchMatMulLayer()</h2>
406
407<div class="memitem">
408<div class="memproto">
409 <table class="memname">
410 <tr>
411 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddBatchMatMulLayer </td>
412 <td>(</td>
413 <td class="paramtype">const <a class="el" href="structarmnn_1_1_batch_mat_mul_descriptor.html">BatchMatMulDescriptor</a> &amp;&#160;</td>
414 <td class="paramname"><em>desc</em>, </td>
415 </tr>
416 <tr>
417 <td class="paramkey"></td>
418 <td></td>
419 <td class="paramtype">const char *&#160;</td>
420 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
421 </tr>
422 <tr>
423 <td></td>
424 <td>)</td>
425 <td></td><td></td>
426 </tr>
427 </table>
428</div><div class="memdoc">
429
430<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l03048">3048</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
431<div class="fragment"><div class="line"><a name="l03049"></a><span class="lineno"> 3049</span>&#160;{</div>
432<div class="line"><a name="l03050"></a><span class="lineno"> 3050</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;BatchMatMulLayer&gt;(desc, name);</div>
433<div class="line"><a name="l03051"></a><span class="lineno"> 3051</span>&#160;}</div>
434</div><!-- fragment -->
435</div>
436</div>
437<a id="a8f798e19187ac7ae6ae6153ee64ab645"></a>
438<h2 class="memtitle"><span class="permalink"><a href="#a8f798e19187ac7ae6ae6153ee64ab645">&#9670;&nbsp;</a></span>AddBatchNormalizationLayer()</h2>
439
440<div class="memitem">
441<div class="memproto">
442 <table class="memname">
443 <tr>
444 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddBatchNormalizationLayer </td>
445 <td>(</td>
446 <td class="paramtype">const <a class="el" href="structarmnn_1_1_batch_normalization_descriptor.html">BatchNormalizationDescriptor</a> &amp;&#160;</td>
447 <td class="paramname"><em>desc</em>, </td>
448 </tr>
449 <tr>
450 <td class="paramkey"></td>
451 <td></td>
452 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
453 <td class="paramname"><em>mean</em>, </td>
454 </tr>
455 <tr>
456 <td class="paramkey"></td>
457 <td></td>
458 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
459 <td class="paramname"><em>variance</em>, </td>
460 </tr>
461 <tr>
462 <td class="paramkey"></td>
463 <td></td>
464 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
465 <td class="paramname"><em>beta</em>, </td>
466 </tr>
467 <tr>
468 <td class="paramkey"></td>
469 <td></td>
470 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
471 <td class="paramname"><em>gamma</em>, </td>
472 </tr>
473 <tr>
474 <td class="paramkey"></td>
475 <td></td>
476 <td class="paramtype">const char *&#160;</td>
477 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
478 </tr>
479 <tr>
480 <td></td>
481 <td>)</td>
482 <td></td><td></td>
483 </tr>
484 </table>
485</div><div class="memdoc">
486
487<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02388">2388</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
488<div class="fragment"><div class="line"><a name="l02394"></a><span class="lineno"> 2394</span>&#160;{</div>
489<div class="line"><a name="l02395"></a><span class="lineno"> 2395</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> layer = m_Graph-&gt;AddLayer&lt;BatchNormalizationLayer&gt;(desc, name);</div>
490<div class="line"><a name="l02396"></a><span class="lineno"> 2396</span>&#160; </div>
491<div class="line"><a name="l02397"></a><span class="lineno"> 2397</span>&#160; layer-&gt;m_Mean = std::make_shared&lt;ScopedTensorHandle&gt;(mean);</div>
492<div class="line"><a name="l02398"></a><span class="lineno"> 2398</span>&#160; layer-&gt;m_Variance = std::make_shared&lt;ScopedTensorHandle&gt;(variance);</div>
493<div class="line"><a name="l02399"></a><span class="lineno"> 2399</span>&#160; layer-&gt;m_Beta = std::make_shared&lt;ScopedTensorHandle&gt;(beta);</div>
494<div class="line"><a name="l02400"></a><span class="lineno"> 2400</span>&#160; layer-&gt;m_Gamma = std::make_shared&lt;ScopedTensorHandle&gt;(gamma);</div>
495<div class="line"><a name="l02401"></a><span class="lineno"> 2401</span>&#160; </div>
496<div class="line"><a name="l02402"></a><span class="lineno"> 2402</span>&#160; <span class="keywordflow">return</span> layer;</div>
497<div class="line"><a name="l02403"></a><span class="lineno"> 2403</span>&#160;}</div>
498</div><!-- fragment -->
499<p class="reference">References <a class="el" href="_batch_normalization_layer_8hpp_source.html#l00019">BatchNormalizationLayer::m_Mean</a>.</p>
500
501</div>
502</div>
503<a id="a9a9bcc00ae3d96343c93b437d6f77088"></a>
504<h2 class="memtitle"><span class="permalink"><a href="#a9a9bcc00ae3d96343c93b437d6f77088">&#9670;&nbsp;</a></span>AddBatchToSpaceNdLayer()</h2>
505
506<div class="memitem">
507<div class="memproto">
508 <table class="memname">
509 <tr>
510 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddBatchToSpaceNdLayer </td>
511 <td>(</td>
512 <td class="paramtype">const <a class="el" href="structarmnn_1_1_batch_to_space_nd_descriptor.html">BatchToSpaceNdDescriptor</a> &amp;&#160;</td>
513 <td class="paramname"><em>batchToSpaceNdDescriptor</em>, </td>
514 </tr>
515 <tr>
516 <td class="paramkey"></td>
517 <td></td>
518 <td class="paramtype">const char *&#160;</td>
519 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
520 </tr>
521 <tr>
522 <td></td>
523 <td>)</td>
524 <td></td><td></td>
525 </tr>
526 </table>
527</div><div class="memdoc">
528
529<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02206">2206</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
530<div class="fragment"><div class="line"><a name="l02208"></a><span class="lineno"> 2208</span>&#160;{</div>
531<div class="line"><a name="l02209"></a><span class="lineno"> 2209</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;BatchToSpaceNdLayer&gt;(batchToSpaceNdDescriptor, name);</div>
532<div class="line"><a name="l02210"></a><span class="lineno"> 2210</span>&#160;}</div>
533</div><!-- fragment -->
534</div>
535</div>
536<a id="a35e19d74e14ce4cec0261b799a39c921"></a>
537<h2 class="memtitle"><span class="permalink"><a href="#a35e19d74e14ce4cec0261b799a39c921">&#9670;&nbsp;</a></span>AddBroadcastToLayer()</h2>
538
539<div class="memitem">
540<div class="memproto">
541 <table class="memname">
542 <tr>
543 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddBroadcastToLayer </td>
544 <td>(</td>
545 <td class="paramtype">const <a class="el" href="structarmnn_1_1_broadcast_to_descriptor.html">BroadcastToDescriptor</a> &amp;&#160;</td>
546 <td class="paramname"><em>descriptor</em>, </td>
547 </tr>
548 <tr>
549 <td class="paramkey"></td>
550 <td></td>
551 <td class="paramtype">const char *&#160;</td>
552 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
553 </tr>
554 <tr>
555 <td></td>
556 <td>)</td>
557 <td></td><td></td>
558 </tr>
559 </table>
560</div><div class="memdoc">
561
562<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l03096">3096</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
563<div class="fragment"><div class="line"><a name="l03097"></a><span class="lineno"> 3097</span>&#160;{</div>
564<div class="line"><a name="l03098"></a><span class="lineno"> 3098</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;BroadcastToLayer&gt;(desc, name);</div>
565<div class="line"><a name="l03099"></a><span class="lineno"> 3099</span>&#160;}</div>
566</div><!-- fragment -->
567</div>
568</div>
569<a id="a72f7f58c37d9d856fcb648b5fa68cf59"></a>
570<h2 class="memtitle"><span class="permalink"><a href="#a72f7f58c37d9d856fcb648b5fa68cf59">&#9670;&nbsp;</a></span>AddCastLayer()</h2>
571
572<div class="memitem">
573<div class="memproto">
574 <table class="memname">
575 <tr>
576 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddCastLayer </td>
577 <td>(</td>
578 <td class="paramtype">const char *&#160;</td>
579 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
580 <td></td>
581 </tr>
582 </table>
583</div><div class="memdoc">
584
585<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02212">2212</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
586<div class="fragment"><div class="line"><a name="l02213"></a><span class="lineno"> 2213</span>&#160;{</div>
587<div class="line"><a name="l02214"></a><span class="lineno"> 2214</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;CastLayer&gt;(name);</div>
588<div class="line"><a name="l02215"></a><span class="lineno"> 2215</span>&#160;}</div>
589</div><!-- fragment -->
590</div>
591</div>
592<a id="a5c58d2b496d24e637f613af857aa3c3d"></a>
593<h2 class="memtitle"><span class="permalink"><a href="#a5c58d2b496d24e637f613af857aa3c3d">&#9670;&nbsp;</a></span>AddChannelShuffleLayer()</h2>
594
595<div class="memitem">
596<div class="memproto">
597 <table class="memname">
598 <tr>
599 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddChannelShuffleLayer </td>
600 <td>(</td>
601 <td class="paramtype">const <a class="el" href="structarmnn_1_1_channel_shuffle_descriptor.html">ChannelShuffleDescriptor</a> &amp;&#160;</td>
602 <td class="paramname"><em>channelShuffleDescriptor</em>, </td>
603 </tr>
604 <tr>
605 <td class="paramkey"></td>
606 <td></td>
607 <td class="paramtype">const char *&#160;</td>
608 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
609 </tr>
610 <tr>
611 <td></td>
612 <td>)</td>
613 <td></td><td></td>
614 </tr>
615 </table>
616</div><div class="memdoc">
617
618<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02216">2216</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
619<div class="fragment"><div class="line"><a name="l02218"></a><span class="lineno"> 2218</span>&#160;{</div>
620<div class="line"><a name="l02219"></a><span class="lineno"> 2219</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ChannelShuffleLayer&gt;(channelShuffleDescriptor, name);</div>
621<div class="line"><a name="l02220"></a><span class="lineno"> 2220</span>&#160;}</div>
622</div><!-- fragment -->
623</div>
624</div>
625<a id="ac7dca3e9f2ab2f2c64b42fc59a67188a"></a>
626<h2 class="memtitle"><span class="permalink"><a href="#ac7dca3e9f2ab2f2c64b42fc59a67188a">&#9670;&nbsp;</a></span>AddComparisonLayer()</h2>
627
628<div class="memitem">
629<div class="memproto">
630 <table class="memname">
631 <tr>
632 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddComparisonLayer </td>
633 <td>(</td>
634 <td class="paramtype">const <a class="el" href="structarmnn_1_1_comparison_descriptor.html">ComparisonDescriptor</a> &amp;&#160;</td>
635 <td class="paramname"><em>comparisonDescriptor</em>, </td>
636 </tr>
637 <tr>
638 <td class="paramkey"></td>
639 <td></td>
640 <td class="paramtype">const char *&#160;</td>
641 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
642 </tr>
643 <tr>
644 <td></td>
645 <td>)</td>
646 <td></td><td></td>
647 </tr>
648 </table>
649</div><div class="memdoc">
650
651<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02222">2222</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
652<div class="fragment"><div class="line"><a name="l02224"></a><span class="lineno"> 2224</span>&#160;{</div>
653<div class="line"><a name="l02225"></a><span class="lineno"> 2225</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ComparisonLayer&gt;(comparisonDescriptor, name);</div>
654<div class="line"><a name="l02226"></a><span class="lineno"> 2226</span>&#160;}</div>
655</div><!-- fragment -->
656</div>
657</div>
658<a id="aea1059833739d3dccebb3a03ec35a1e6"></a>
659<h2 class="memtitle"><span class="permalink"><a href="#aea1059833739d3dccebb3a03ec35a1e6">&#9670;&nbsp;</a></span>AddConcatLayer()</h2>
660
661<div class="memitem">
662<div class="memproto">
663 <table class="memname">
664 <tr>
665 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddConcatLayer </td>
666 <td>(</td>
667 <td class="paramtype">const <a class="el" href="namespacearmnn.html#a7863c179ff92feec660c48ab7b95ae55">ConcatDescriptor</a> &amp;&#160;</td>
668 <td class="paramname"><em>concatDescriptor</em>, </td>
669 </tr>
670 <tr>
671 <td class="paramkey"></td>
672 <td></td>
673 <td class="paramtype">const char *&#160;</td>
674 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
675 </tr>
676 <tr>
677 <td></td>
678 <td>)</td>
679 <td></td><td></td>
680 </tr>
681 </table>
682</div><div class="memdoc">
683
684<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02258">2258</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
685<div class="fragment"><div class="line"><a name="l02260"></a><span class="lineno"> 2260</span>&#160;{</div>
686<div class="line"><a name="l02261"></a><span class="lineno"> 2261</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ConcatLayer&gt;(concatDescriptor, name);</div>
687<div class="line"><a name="l02262"></a><span class="lineno"> 2262</span>&#160;}</div>
688</div><!-- fragment -->
689</div>
690</div>
691<a id="a1aa567f46c30960851c02847dc7b4215"></a>
692<h2 class="memtitle"><span class="permalink"><a href="#a1aa567f46c30960851c02847dc7b4215">&#9670;&nbsp;</a></span>AddConstantLayer()</h2>
693
694<div class="memitem">
695<div class="memproto">
696 <table class="memname">
697 <tr>
698 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddConstantLayer </td>
699 <td>(</td>
700 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
701 <td class="paramname"><em>input</em>, </td>
702 </tr>
703 <tr>
704 <td class="paramkey"></td>
705 <td></td>
706 <td class="paramtype">const char *&#160;</td>
707 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
708 </tr>
709 <tr>
710 <td></td>
711 <td>)</td>
712 <td></td><td></td>
713 </tr>
714 </table>
715</div><div class="memdoc">
716
717<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02444">2444</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
718<div class="fragment"><div class="line"><a name="l02445"></a><span class="lineno"> 2445</span>&#160;{</div>
719<div class="line"><a name="l02446"></a><span class="lineno"> 2446</span>&#160; <span class="keyword">auto</span> layer = m_Graph-&gt;AddLayer&lt;ConstantLayer&gt;(name);</div>
720<div class="line"><a name="l02447"></a><span class="lineno"> 2447</span>&#160; </div>
721<div class="line"><a name="l02448"></a><span class="lineno"> 2448</span>&#160; layer-&gt;m_LayerOutput = std::make_shared&lt;ScopedTensorHandle&gt;(input);</div>
722<div class="line"><a name="l02449"></a><span class="lineno"> 2449</span>&#160; </div>
723<div class="line"><a name="l02450"></a><span class="lineno"> 2450</span>&#160; <span class="keywordflow">return</span> layer;</div>
724<div class="line"><a name="l02451"></a><span class="lineno"> 2451</span>&#160;}</div>
725</div><!-- fragment -->
726<p class="reference">References <a class="el" href="_constant_layer_8hpp_source.html#l00046">ConstantLayer::m_LayerOutput</a>.</p>
727
728</div>
729</div>
730<a id="a2090bf6670b73c69309ed592068aa3af"></a>
731<h2 class="memtitle"><span class="permalink"><a href="#a2090bf6670b73c69309ed592068aa3af">&#9670;&nbsp;</a></span>AddConvertFp16ToFp32Layer()</h2>
732
733<div class="memitem">
734<div class="memproto">
735 <table class="memname">
736 <tr>
737 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddConvertFp16ToFp32Layer </td>
738 <td>(</td>
739 <td class="paramtype">const char *&#160;</td>
740 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
741 <td></td>
742 </tr>
743 </table>
744</div><div class="memdoc">
745
746<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02270">2270</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
747<div class="fragment"><div class="line"><a name="l02271"></a><span class="lineno"> 2271</span>&#160;{</div>
748<div class="line"><a name="l02272"></a><span class="lineno"> 2272</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ConvertFp16ToFp32Layer&gt;(name);</div>
749<div class="line"><a name="l02273"></a><span class="lineno"> 2273</span>&#160;}</div>
750</div><!-- fragment -->
751</div>
752</div>
753<a id="ab71c4df72f6587aea671acaacd6a0d9a"></a>
754<h2 class="memtitle"><span class="permalink"><a href="#ab71c4df72f6587aea671acaacd6a0d9a">&#9670;&nbsp;</a></span>AddConvertFp32ToFp16Layer()</h2>
755
756<div class="memitem">
757<div class="memproto">
758 <table class="memname">
759 <tr>
760 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddConvertFp32ToFp16Layer </td>
761 <td>(</td>
762 <td class="paramtype">const char *&#160;</td>
763 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
764 <td></td>
765 </tr>
766 </table>
767</div><div class="memdoc">
768
769<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02275">2275</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
770<div class="fragment"><div class="line"><a name="l02276"></a><span class="lineno"> 2276</span>&#160;{</div>
771<div class="line"><a name="l02277"></a><span class="lineno"> 2277</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ConvertFp32ToFp16Layer&gt;(name);</div>
772<div class="line"><a name="l02278"></a><span class="lineno"> 2278</span>&#160;}</div>
773</div><!-- fragment -->
774</div>
775</div>
776<a id="a383e74ef080d4a81b8b371be4b840248"></a>
777<h2 class="memtitle"><span class="permalink"><a href="#a383e74ef080d4a81b8b371be4b840248">&#9670;&nbsp;</a></span>AddConvolution2dLayer()</h2>
778
779<div class="memitem">
780<div class="memproto">
781 <table class="memname">
782 <tr>
783 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddConvolution2dLayer </td>
784 <td>(</td>
785 <td class="paramtype">const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.html">Convolution2dDescriptor</a> &amp;&#160;</td>
786 <td class="paramname"><em>convolution2dDescriptor</em>, </td>
787 </tr>
788 <tr>
789 <td class="paramkey"></td>
790 <td></td>
791 <td class="paramtype">const char *&#160;</td>
792 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
793 </tr>
794 <tr>
795 <td></td>
796 <td>)</td>
797 <td></td><td></td>
798 </tr>
799 </table>
800</div><div class="memdoc">
801
802<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02264">2264</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
803<div class="fragment"><div class="line"><a name="l02266"></a><span class="lineno"> 2266</span>&#160;{</div>
804<div class="line"><a name="l02267"></a><span class="lineno"> 2267</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;Convolution2dLayer&gt;(convolution2dDescriptor, name);</div>
805<div class="line"><a name="l02268"></a><span class="lineno"> 2268</span>&#160;}</div>
806</div><!-- fragment -->
807</div>
808</div>
809<a id="a43de8213707de0e76d80a32cd4b9b482"></a>
810<h2 class="memtitle"><span class="permalink"><a href="#a43de8213707de0e76d80a32cd4b9b482">&#9670;&nbsp;</a></span>AddConvolution3dLayer()</h2>
811
812<div class="memitem">
813<div class="memproto">
814 <table class="memname">
815 <tr>
816 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddConvolution3dLayer </td>
817 <td>(</td>
818 <td class="paramtype">const <a class="el" href="structarmnn_1_1_convolution3d_descriptor.html">Convolution3dDescriptor</a> &amp;&#160;</td>
819 <td class="paramname"><em>convolution3dDescriptor</em>, </td>
820 </tr>
821 <tr>
822 <td class="paramkey"></td>
823 <td></td>
824 <td class="paramtype">const char *&#160;</td>
825 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
826 </tr>
827 <tr>
828 <td></td>
829 <td>)</td>
830 <td></td><td></td>
831 </tr>
832 </table>
833</div><div class="memdoc">
834
835<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02280">2280</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
836<div class="fragment"><div class="line"><a name="l02282"></a><span class="lineno"> 2282</span>&#160;{</div>
837<div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;Convolution3dLayer&gt;(convolution3dDescriptor, name);</div>
838<div class="line"><a name="l02284"></a><span class="lineno"> 2284</span>&#160;}</div>
839</div><!-- fragment -->
840</div>
841</div>
842<a id="af1853466264ac187607c96b501a74e2b"></a>
843<h2 class="memtitle"><span class="permalink"><a href="#af1853466264ac187607c96b501a74e2b">&#9670;&nbsp;</a></span>AddDepthToSpaceLayer()</h2>
844
845<div class="memitem">
846<div class="memproto">
847 <table class="memname">
848 <tr>
849 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddDepthToSpaceLayer </td>
850 <td>(</td>
851 <td class="paramtype">const <a class="el" href="namespacearmnn.html#a3647f60510bc8ddaced01c51b0ee8714">DepthToSpaceDescriptor</a> &amp;&#160;</td>
852 <td class="paramname"><em>depthToSpaceDescriptor</em>, </td>
853 </tr>
854 <tr>
855 <td class="paramkey"></td>
856 <td></td>
857 <td class="paramtype">const char *&#160;</td>
858 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
859 </tr>
860 <tr>
861 <td></td>
862 <td>)</td>
863 <td></td><td></td>
864 </tr>
865 </table>
866</div><div class="memdoc">
867
868<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02286">2286</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
869<div class="fragment"><div class="line"><a name="l02288"></a><span class="lineno"> 2288</span>&#160;{</div>
870<div class="line"><a name="l02289"></a><span class="lineno"> 2289</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;DepthToSpaceLayer&gt;(depthToSpaceDescriptor, name);</div>
871<div class="line"><a name="l02290"></a><span class="lineno"> 2290</span>&#160;}</div>
872</div><!-- fragment -->
873</div>
874</div>
875<a id="ac6771c8752811fcfa91b3f0dee748144"></a>
876<h2 class="memtitle"><span class="permalink"><a href="#ac6771c8752811fcfa91b3f0dee748144">&#9670;&nbsp;</a></span>AddDepthwiseConvolution2dLayer()</h2>
877
878<div class="memitem">
879<div class="memproto">
880 <table class="memname">
881 <tr>
882 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddDepthwiseConvolution2dLayer </td>
883 <td>(</td>
884 <td class="paramtype">const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.html">DepthwiseConvolution2dDescriptor</a> &amp;&#160;</td>
885 <td class="paramname"><em>convolution2dDescriptor</em>, </td>
886 </tr>
887 <tr>
888 <td class="paramkey"></td>
889 <td></td>
890 <td class="paramtype">const char *&#160;</td>
891 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
892 </tr>
893 <tr>
894 <td></td>
895 <td>)</td>
896 <td></td><td></td>
897 </tr>
898 </table>
899</div><div class="memdoc">
900
901<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02292">2292</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
902<div class="fragment"><div class="line"><a name="l02295"></a><span class="lineno"> 2295</span>&#160;{</div>
903<div class="line"><a name="l02296"></a><span class="lineno"> 2296</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;DepthwiseConvolution2dLayer&gt;(convolution2dDescriptor, name);</div>
904<div class="line"><a name="l02297"></a><span class="lineno"> 2297</span>&#160;}</div>
905</div><!-- fragment -->
906</div>
907</div>
908<a id="a357aca04172ed22fa32e5a69122b0fec"></a>
909<h2 class="memtitle"><span class="permalink"><a href="#a357aca04172ed22fa32e5a69122b0fec">&#9670;&nbsp;</a></span>AddDequantizeLayer()</h2>
910
911<div class="memitem">
912<div class="memproto">
913 <table class="memname">
914 <tr>
915 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddDequantizeLayer </td>
916 <td>(</td>
917 <td class="paramtype">const char *&#160;</td>
918 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
919 <td></td>
920 </tr>
921 </table>
922</div><div class="memdoc">
923
924<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02642">2642</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
925<div class="fragment"><div class="line"><a name="l02643"></a><span class="lineno"> 2643</span>&#160;{</div>
926<div class="line"><a name="l02644"></a><span class="lineno"> 2644</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;DequantizeLayer&gt;(name);</div>
927<div class="line"><a name="l02645"></a><span class="lineno"> 2645</span>&#160;}</div>
928</div><!-- fragment -->
929</div>
930</div>
931<a id="ac1134a94265293ea7347180260f787d2"></a>
932<h2 class="memtitle"><span class="permalink"><a href="#ac1134a94265293ea7347180260f787d2">&#9670;&nbsp;</a></span>AddDetectionPostProcessLayer()</h2>
933
934<div class="memitem">
935<div class="memproto">
936 <table class="memname">
937 <tr>
938 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddDetectionPostProcessLayer </td>
939 <td>(</td>
940 <td class="paramtype">const <a class="el" href="structarmnn_1_1_detection_post_process_descriptor.html">DetectionPostProcessDescriptor</a> &amp;&#160;</td>
941 <td class="paramname"><em>descriptor</em>, </td>
942 </tr>
943 <tr>
944 <td class="paramkey"></td>
945 <td></td>
946 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
947 <td class="paramname"><em>anchors</em>, </td>
948 </tr>
949 <tr>
950 <td class="paramkey"></td>
951 <td></td>
952 <td class="paramtype">const char *&#160;</td>
953 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
954 </tr>
955 <tr>
956 <td></td>
957 <td>)</td>
958 <td></td><td></td>
959 </tr>
960 </table>
961</div><div class="memdoc">
962
963<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02299">2299</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
964<div class="fragment"><div class="line"><a name="l02301"></a><span class="lineno"> 2301</span>&#160;{</div>
965<div class="line"><a name="l02302"></a><span class="lineno"> 2302</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> layer = m_Graph-&gt;AddLayer&lt;DetectionPostProcessLayer&gt;(descriptor, name);</div>
966<div class="line"><a name="l02303"></a><span class="lineno"> 2303</span>&#160; </div>
967<div class="line"><a name="l02304"></a><span class="lineno"> 2304</span>&#160; layer-&gt;m_Anchors = std::make_shared&lt;ScopedTensorHandle&gt;(anchors);</div>
968<div class="line"><a name="l02305"></a><span class="lineno"> 2305</span>&#160; </div>
969<div class="line"><a name="l02306"></a><span class="lineno"> 2306</span>&#160; <span class="keywordflow">return</span> layer;</div>
970<div class="line"><a name="l02307"></a><span class="lineno"> 2307</span>&#160;}</div>
971</div><!-- fragment -->
972<p class="reference">References <a class="el" href="_detection_post_process_layer_8hpp_source.html#l00020">DetectionPostProcessLayer::m_Anchors</a>.</p>
973
974</div>
975</div>
976<a id="a0aeb4e528cf6ba4b7caca14a94fbcafe"></a>
977<h2 class="memtitle"><span class="permalink"><a href="#a0aeb4e528cf6ba4b7caca14a94fbcafe">&#9670;&nbsp;</a></span>AddDivisionLayer()</h2>
978
979<div class="memitem">
980<div class="memproto">
981 <table class="memname">
982 <tr>
983 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddDivisionLayer </td>
984 <td>(</td>
985 <td class="paramtype">const char *&#160;</td>
986 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
987 <td></td>
988 </tr>
989 </table>
990</div><div class="memdoc">
991
992<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02617">2617</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
993<div class="fragment"><div class="line"><a name="l02618"></a><span class="lineno"> 2618</span>&#160;{</div>
994<div class="line"><a name="l02619"></a><span class="lineno"> 2619</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;DivisionLayer&gt;(name);</div>
995<div class="line"><a name="l02620"></a><span class="lineno"> 2620</span>&#160;}</div>
996</div><!-- fragment -->
997</div>
998</div>
999<a id="aab976306ba3424cbc0c7ea33417d718d"></a>
1000<h2 class="memtitle"><span class="permalink"><a href="#aab976306ba3424cbc0c7ea33417d718d">&#9670;&nbsp;</a></span>AddElementwiseBinaryLayer()</h2>
1001
1002<div class="memitem">
1003<div class="memproto">
1004 <table class="memname">
1005 <tr>
1006 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddElementwiseBinaryLayer </td>
1007 <td>(</td>
1008 <td class="paramtype">const <a class="el" href="structarmnn_1_1_elementwise_binary_descriptor.html">ElementwiseBinaryDescriptor</a> &amp;&#160;</td>
1009 <td class="paramname"><em>elementwiseBinaryDescriptor</em>, </td>
1010 </tr>
1011 <tr>
1012 <td class="paramkey"></td>
1013 <td></td>
1014 <td class="paramtype">const char *&#160;</td>
1015 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1016 </tr>
1017 <tr>
1018 <td></td>
1019 <td>)</td>
1020 <td></td><td></td>
1021 </tr>
1022 </table>
1023</div><div class="memdoc">
1024
1025<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02228">2228</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1026<div class="fragment"><div class="line"><a name="l02230"></a><span class="lineno"> 2230</span>&#160;{</div>
1027<div class="line"><a name="l02231"></a><span class="lineno"> 2231</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ElementwiseBinaryLayer&gt;(elementwiseBinaryDesc, name);</div>
1028<div class="line"><a name="l02232"></a><span class="lineno"> 2232</span>&#160;}</div>
1029</div><!-- fragment -->
1030</div>
1031</div>
1032<a id="a095a9b700dc857edc23c5d3bf088919f"></a>
1033<h2 class="memtitle"><span class="permalink"><a href="#a095a9b700dc857edc23c5d3bf088919f">&#9670;&nbsp;</a></span>AddElementwiseUnaryLayer()</h2>
1034
1035<div class="memitem">
1036<div class="memproto">
1037 <table class="memname">
1038 <tr>
1039 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddElementwiseUnaryLayer </td>
1040 <td>(</td>
1041 <td class="paramtype">const <a class="el" href="structarmnn_1_1_elementwise_unary_descriptor.html">ElementwiseUnaryDescriptor</a> &amp;&#160;</td>
1042 <td class="paramname"><em>elementwiseUnaryDescriptor</em>, </td>
1043 </tr>
1044 <tr>
1045 <td class="paramkey"></td>
1046 <td></td>
1047 <td class="paramtype">const char *&#160;</td>
1048 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1049 </tr>
1050 <tr>
1051 <td></td>
1052 <td>)</td>
1053 <td></td><td></td>
1054 </tr>
1055 </table>
1056</div><div class="memdoc">
1057
1058<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02234">2234</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1059<div class="fragment"><div class="line"><a name="l02236"></a><span class="lineno"> 2236</span>&#160;{</div>
1060<div class="line"><a name="l02237"></a><span class="lineno"> 2237</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ElementwiseUnaryLayer&gt;(elementwiseUnaryDescriptor, name);</div>
1061<div class="line"><a name="l02238"></a><span class="lineno"> 2238</span>&#160;}</div>
1062</div><!-- fragment -->
1063</div>
1064</div>
1065<a id="afc94c35c0bbe852a60046bf2e756b2e0"></a>
1066<h2 class="memtitle"><span class="permalink"><a href="#afc94c35c0bbe852a60046bf2e756b2e0">&#9670;&nbsp;</a></span>AddFillLayer()</h2>
1067
1068<div class="memitem">
1069<div class="memproto">
1070 <table class="memname">
1071 <tr>
1072 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddFillLayer </td>
1073 <td>(</td>
1074 <td class="paramtype">const <a class="el" href="structarmnn_1_1_fill_descriptor.html">FillDescriptor</a> &amp;&#160;</td>
1075 <td class="paramname"><em>fillDescriptor</em>, </td>
1076 </tr>
1077 <tr>
1078 <td class="paramkey"></td>
1079 <td></td>
1080 <td class="paramtype">const char *&#160;</td>
1081 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1082 </tr>
1083 <tr>
1084 <td></td>
1085 <td>)</td>
1086 <td></td><td></td>
1087 </tr>
1088 </table>
1089</div><div class="memdoc">
1090
1091<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02240">2240</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1092<div class="fragment"><div class="line"><a name="l02242"></a><span class="lineno"> 2242</span>&#160;{</div>
1093<div class="line"><a name="l02243"></a><span class="lineno"> 2243</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;FillLayer&gt;(fillDescriptor, name);</div>
1094<div class="line"><a name="l02244"></a><span class="lineno"> 2244</span>&#160;}</div>
1095</div><!-- fragment -->
1096</div>
1097</div>
1098<a id="a435ea88480b8645026dd45fd692663a1"></a>
1099<h2 class="memtitle"><span class="permalink"><a href="#a435ea88480b8645026dd45fd692663a1">&#9670;&nbsp;</a></span>AddFloorLayer()</h2>
1100
1101<div class="memitem">
1102<div class="memproto">
1103 <table class="memname">
1104 <tr>
1105 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddFloorLayer </td>
1106 <td>(</td>
1107 <td class="paramtype">const char *&#160;</td>
1108 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
1109 <td></td>
1110 </tr>
1111 </table>
1112</div><div class="memdoc">
1113
1114<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02471">2471</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1115<div class="fragment"><div class="line"><a name="l02472"></a><span class="lineno"> 2472</span>&#160;{</div>
1116<div class="line"><a name="l02473"></a><span class="lineno"> 2473</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;FloorLayer&gt;(name);</div>
1117<div class="line"><a name="l02474"></a><span class="lineno"> 2474</span>&#160;}</div>
1118</div><!-- fragment -->
1119</div>
1120</div>
1121<a id="a471991a84030eb3ae601da2bee757870"></a>
1122<h2 class="memtitle"><span class="permalink"><a href="#a471991a84030eb3ae601da2bee757870">&#9670;&nbsp;</a></span>AddFullyConnectedLayer()</h2>
1123
1124<div class="memitem">
1125<div class="memproto">
1126 <table class="memname">
1127 <tr>
1128 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddFullyConnectedLayer </td>
1129 <td>(</td>
1130 <td class="paramtype">const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.html">FullyConnectedDescriptor</a> &amp;&#160;</td>
1131 <td class="paramname"><em>fullyConnectedDescriptor</em>, </td>
1132 </tr>
1133 <tr>
1134 <td class="paramkey"></td>
1135 <td></td>
1136 <td class="paramtype">const char *&#160;</td>
1137 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1138 </tr>
1139 <tr>
1140 <td></td>
1141 <td>)</td>
1142 <td></td><td></td>
1143 </tr>
1144 </table>
1145</div><div class="memdoc">
1146
1147<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02246">2246</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1148<div class="fragment"><div class="line"><a name="l02248"></a><span class="lineno"> 2248</span>&#160;{</div>
1149<div class="line"><a name="l02249"></a><span class="lineno"> 2249</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;FullyConnectedLayer&gt;(fullyConnectedDescriptor, name);</div>
1150<div class="line"><a name="l02250"></a><span class="lineno"> 2250</span>&#160;}</div>
1151</div><!-- fragment -->
1152</div>
1153</div>
1154<a id="a08f9f3cdeb77b6a0c615e8fa48f0ee94"></a>
1155<h2 class="memtitle"><span class="permalink"><a href="#a08f9f3cdeb77b6a0c615e8fa48f0ee94">&#9670;&nbsp;</a></span>AddFusedLayer()</h2>
1156
1157<div class="memitem">
1158<div class="memproto">
1159 <table class="memname">
1160 <tr>
1161 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddFusedLayer </td>
1162 <td>(</td>
1163 <td class="paramtype">const <a class="el" href="structarmnn_1_1_fused_descriptor.html">FusedDescriptor</a> &amp;&#160;</td>
1164 <td class="paramname"><em>fusedDescriptor</em>, </td>
1165 </tr>
1166 <tr>
1167 <td class="paramkey"></td>
1168 <td></td>
1169 <td class="paramtype">const char *&#160;</td>
1170 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1171 </tr>
1172 <tr>
1173 <td></td>
1174 <td>)</td>
1175 <td></td><td></td>
1176 </tr>
1177 </table>
1178</div><div class="memdoc">
1179
1180<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02252">2252</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1181<div class="fragment"><div class="line"><a name="l02254"></a><span class="lineno"> 2254</span>&#160;{</div>
1182<div class="line"><a name="l02255"></a><span class="lineno"> 2255</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;FusedLayer&gt;(fusedDescriptor, name);</div>
1183<div class="line"><a name="l02256"></a><span class="lineno"> 2256</span>&#160;}</div>
1184</div><!-- fragment -->
1185</div>
1186</div>
1187<a id="aaf5e9645806f49d0fcd7ac07ba187f4e"></a>
1188<h2 class="memtitle"><span class="permalink"><a href="#aaf5e9645806f49d0fcd7ac07ba187f4e">&#9670;&nbsp;</a></span>AddGatherLayer()</h2>
1189
1190<div class="memitem">
1191<div class="memproto">
1192 <table class="memname">
1193 <tr>
1194 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddGatherLayer </td>
1195 <td>(</td>
1196 <td class="paramtype">const <a class="el" href="structarmnn_1_1_gather_descriptor.html">GatherDescriptor</a> &amp;&#160;</td>
1197 <td class="paramname"><em>gatherDescriptor</em>, </td>
1198 </tr>
1199 <tr>
1200 <td class="paramkey"></td>
1201 <td></td>
1202 <td class="paramtype">const char *&#160;</td>
1203 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1204 </tr>
1205 <tr>
1206 <td></td>
1207 <td>)</td>
1208 <td></td><td></td>
1209 </tr>
1210 </table>
1211</div><div class="memdoc">
1212
1213<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02653">2653</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1214<div class="fragment"><div class="line"><a name="l02655"></a><span class="lineno"> 2655</span>&#160;{</div>
1215<div class="line"><a name="l02656"></a><span class="lineno"> 2656</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;GatherLayer&gt;(gatherDescriptor, name);</div>
1216<div class="line"><a name="l02657"></a><span class="lineno"> 2657</span>&#160;}</div>
1217</div><!-- fragment -->
1218</div>
1219</div>
1220<a id="af776e284b9e2c4a3563abb8cf5e8ac5e"></a>
1221<h2 class="memtitle"><span class="permalink"><a href="#af776e284b9e2c4a3563abb8cf5e8ac5e">&#9670;&nbsp;</a></span>AddGatherNdLayer()</h2>
1222
1223<div class="memitem">
1224<div class="memproto">
1225 <table class="memname">
1226 <tr>
1227 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddGatherNdLayer </td>
1228 <td>(</td>
1229 <td class="paramtype">const char *&#160;</td>
1230 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
1231 <td></td>
1232 </tr>
1233 </table>
1234</div><div class="memdoc">
1235
1236<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02659">2659</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1237<div class="fragment"><div class="line"><a name="l02660"></a><span class="lineno"> 2660</span>&#160;{</div>
1238<div class="line"><a name="l02661"></a><span class="lineno"> 2661</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;GatherNdLayer&gt;(name);</div>
1239<div class="line"><a name="l02662"></a><span class="lineno"> 2662</span>&#160;}</div>
1240</div><!-- fragment -->
1241</div>
1242</div>
1243<a id="aa6c1c42ea44777302e87ce0fad5ac510"></a>
1244<h2 class="memtitle"><span class="permalink"><a href="#aa6c1c42ea44777302e87ce0fad5ac510">&#9670;&nbsp;</a></span>AddInputLayer()</h2>
1245
1246<div class="memitem">
1247<div class="memproto">
1248 <table class="memname">
1249 <tr>
1250 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddInputLayer </td>
1251 <td>(</td>
1252 <td class="paramtype"><a class="el" href="namespacearmnn.html#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a>&#160;</td>
1253 <td class="paramname"><em>id</em>, </td>
1254 </tr>
1255 <tr>
1256 <td class="paramkey"></td>
1257 <td></td>
1258 <td class="paramtype">const char *&#160;</td>
1259 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1260 </tr>
1261 <tr>
1262 <td></td>
1263 <td>)</td>
1264 <td></td><td></td>
1265 </tr>
1266 </table>
1267</div><div class="memdoc">
1268
1269<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02201">2201</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1270<div class="fragment"><div class="line"><a name="l02202"></a><span class="lineno"> 2202</span>&#160;{</div>
1271<div class="line"><a name="l02203"></a><span class="lineno"> 2203</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;InputLayer&gt;(id, name);</div>
1272<div class="line"><a name="l02204"></a><span class="lineno"> 2204</span>&#160;}</div>
1273</div><!-- fragment -->
1274</div>
1275</div>
1276<a id="abd61d3e7ab67551c75bc219bbc4baeb5"></a>
1277<h2 class="memtitle"><span class="permalink"><a href="#abd61d3e7ab67551c75bc219bbc4baeb5">&#9670;&nbsp;</a></span>AddInstanceNormalizationLayer()</h2>
1278
1279<div class="memitem">
1280<div class="memproto">
1281 <table class="memname">
1282 <tr>
1283 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddInstanceNormalizationLayer </td>
1284 <td>(</td>
1285 <td class="paramtype">const <a class="el" href="structarmnn_1_1_instance_normalization_descriptor.html">InstanceNormalizationDescriptor</a> &amp;&#160;</td>
1286 <td class="paramname"><em>desc</em>, </td>
1287 </tr>
1288 <tr>
1289 <td class="paramkey"></td>
1290 <td></td>
1291 <td class="paramtype">const char *&#160;</td>
1292 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1293 </tr>
1294 <tr>
1295 <td></td>
1296 <td>)</td>
1297 <td></td><td></td>
1298 </tr>
1299 </table>
1300</div><div class="memdoc">
1301
1302<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02426">2426</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1303<div class="fragment"><div class="line"><a name="l02428"></a><span class="lineno"> 2428</span>&#160;{</div>
1304<div class="line"><a name="l02429"></a><span class="lineno"> 2429</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;InstanceNormalizationLayer&gt;(desc, name);</div>
1305<div class="line"><a name="l02430"></a><span class="lineno"> 2430</span>&#160;}</div>
1306</div><!-- fragment -->
1307</div>
1308</div>
1309<a id="aaff51346dadec2c1430abf007fed4cc9"></a>
1310<h2 class="memtitle"><span class="permalink"><a href="#aaff51346dadec2c1430abf007fed4cc9">&#9670;&nbsp;</a></span>AddL2NormalizationLayer()</h2>
1311
1312<div class="memitem">
1313<div class="memproto">
1314 <table class="memname">
1315 <tr>
1316 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddL2NormalizationLayer </td>
1317 <td>(</td>
1318 <td class="paramtype">const <a class="el" href="structarmnn_1_1_l2_normalization_descriptor.html">L2NormalizationDescriptor</a> &amp;&#160;</td>
1319 <td class="paramname"><em>desc</em>, </td>
1320 </tr>
1321 <tr>
1322 <td class="paramkey"></td>
1323 <td></td>
1324 <td class="paramtype">const char *&#160;</td>
1325 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1326 </tr>
1327 <tr>
1328 <td></td>
1329 <td>)</td>
1330 <td></td><td></td>
1331 </tr>
1332 </table>
1333</div><div class="memdoc">
1334
1335<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02432">2432</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1336<div class="fragment"><div class="line"><a name="l02434"></a><span class="lineno"> 2434</span>&#160;{</div>
1337<div class="line"><a name="l02435"></a><span class="lineno"> 2435</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;L2NormalizationLayer&gt;(desc, name);</div>
1338<div class="line"><a name="l02436"></a><span class="lineno"> 2436</span>&#160;}</div>
1339</div><!-- fragment -->
1340</div>
1341</div>
1342<a id="a1ff7534e1254dfb3ef8288194cca7ce3"></a>
1343<h2 class="memtitle"><span class="permalink"><a href="#a1ff7534e1254dfb3ef8288194cca7ce3">&#9670;&nbsp;</a></span>AddLogicalBinaryLayer()</h2>
1344
1345<div class="memitem">
1346<div class="memproto">
1347 <table class="memname">
1348 <tr>
1349 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddLogicalBinaryLayer </td>
1350 <td>(</td>
1351 <td class="paramtype">const <a class="el" href="structarmnn_1_1_logical_binary_descriptor.html">LogicalBinaryDescriptor</a> &amp;&#160;</td>
1352 <td class="paramname"><em>logicalBinaryDescriptor</em>, </td>
1353 </tr>
1354 <tr>
1355 <td class="paramkey"></td>
1356 <td></td>
1357 <td class="paramtype">const char *&#160;</td>
1358 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1359 </tr>
1360 <tr>
1361 <td></td>
1362 <td>)</td>
1363 <td></td><td></td>
1364 </tr>
1365 </table>
1366</div><div class="memdoc">
1367
1368<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02900">2900</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1369<div class="fragment"><div class="line"><a name="l02902"></a><span class="lineno"> 2902</span>&#160;{</div>
1370<div class="line"><a name="l02903"></a><span class="lineno"> 2903</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;LogicalBinaryLayer&gt;(logicalBinaryDescriptor, name);</div>
1371<div class="line"><a name="l02904"></a><span class="lineno"> 2904</span>&#160;}</div>
1372</div><!-- fragment -->
1373</div>
1374</div>
1375<a id="a83b33973ca12078166b2436b313627b9"></a>
1376<h2 class="memtitle"><span class="permalink"><a href="#a83b33973ca12078166b2436b313627b9">&#9670;&nbsp;</a></span>AddLogSoftmaxLayer()</h2>
1377
1378<div class="memitem">
1379<div class="memproto">
1380 <table class="memname">
1381 <tr>
1382 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddLogSoftmaxLayer </td>
1383 <td>(</td>
1384 <td class="paramtype">const <a class="el" href="namespacearmnn.html#ac14705405cbcdd580df613de6766fe65">LogSoftmaxDescriptor</a> &amp;&#160;</td>
1385 <td class="paramname"><em>logSoftmaxDescriptor</em>, </td>
1386 </tr>
1387 <tr>
1388 <td class="paramkey"></td>
1389 <td></td>
1390 <td class="paramtype">const char *&#160;</td>
1391 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1392 </tr>
1393 <tr>
1394 <td></td>
1395 <td>)</td>
1396 <td></td><td></td>
1397 </tr>
1398 </table>
1399</div><div class="memdoc">
1400
1401<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02438">2438</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1402<div class="fragment"><div class="line"><a name="l02440"></a><span class="lineno"> 2440</span>&#160;{</div>
1403<div class="line"><a name="l02441"></a><span class="lineno"> 2441</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;LogSoftmaxLayer&gt;(desc, name);</div>
1404<div class="line"><a name="l02442"></a><span class="lineno"> 2442</span>&#160;}</div>
1405</div><!-- fragment -->
1406</div>
1407</div>
1408<a id="a0a2fdd4f442952c97a8f24de6700473a"></a>
1409<h2 class="memtitle"><span class="permalink"><a href="#a0a2fdd4f442952c97a8f24de6700473a">&#9670;&nbsp;</a></span>AddLstmLayer()</h2>
1410
1411<div class="memitem">
1412<div class="memproto">
1413 <table class="memname">
1414 <tr>
1415 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddLstmLayer </td>
1416 <td>(</td>
1417 <td class="paramtype">const <a class="el" href="structarmnn_1_1_lstm_descriptor.html">LstmDescriptor</a> &amp;&#160;</td>
1418 <td class="paramname"><em>descriptor</em>, </td>
1419 </tr>
1420 <tr>
1421 <td class="paramkey"></td>
1422 <td></td>
1423 <td class="paramtype">const <a class="el" href="structarmnn_1_1_lstm_input_params.html">LstmInputParams</a> &amp;&#160;</td>
1424 <td class="paramname"><em>params</em>, </td>
1425 </tr>
1426 <tr>
1427 <td class="paramkey"></td>
1428 <td></td>
1429 <td class="paramtype">const char *&#160;</td>
1430 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1431 </tr>
1432 <tr>
1433 <td></td>
1434 <td>)</td>
1435 <td></td><td></td>
1436 </tr>
1437 </table>
1438</div><div class="memdoc">
1439
1440<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02476">2476</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1441<div class="fragment"><div class="line"><a name="l02479"></a><span class="lineno"> 2479</span>&#160;{</div>
1442<div class="line"><a name="l02480"></a><span class="lineno"> 2480</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> layer = m_Graph-&gt;AddLayer&lt;LstmLayer&gt;(descriptor, name);</div>
1443<div class="line"><a name="l02481"></a><span class="lineno"> 2481</span>&#160; </div>
1444<div class="line"><a name="l02482"></a><span class="lineno"> 2482</span>&#160; <span class="comment">//Lstm Basic Parameters</span></div>
1445<div class="line"><a name="l02483"></a><span class="lineno"> 2483</span>&#160; layer-&gt;m_BasicParameters.m_InputToForgetWeights =</div>
1446<div class="line"><a name="l02484"></a><span class="lineno"> 2484</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputToForgetWeights));</div>
1447<div class="line"><a name="l02485"></a><span class="lineno"> 2485</span>&#160; layer-&gt;m_BasicParameters.m_InputToCellWeights =</div>
1448<div class="line"><a name="l02486"></a><span class="lineno"> 2486</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputToCellWeights));</div>
1449<div class="line"><a name="l02487"></a><span class="lineno"> 2487</span>&#160; layer-&gt;m_BasicParameters.m_InputToOutputWeights =</div>
1450<div class="line"><a name="l02488"></a><span class="lineno"> 2488</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputToOutputWeights));</div>
1451<div class="line"><a name="l02489"></a><span class="lineno"> 2489</span>&#160; layer-&gt;m_BasicParameters.m_RecurrentToForgetWeights =</div>
1452<div class="line"><a name="l02490"></a><span class="lineno"> 2490</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_RecurrentToForgetWeights));</div>
1453<div class="line"><a name="l02491"></a><span class="lineno"> 2491</span>&#160; layer-&gt;m_BasicParameters.m_RecurrentToCellWeights =</div>
1454<div class="line"><a name="l02492"></a><span class="lineno"> 2492</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_RecurrentToCellWeights));</div>
1455<div class="line"><a name="l02493"></a><span class="lineno"> 2493</span>&#160; layer-&gt;m_BasicParameters.m_RecurrentToOutputWeights =</div>
1456<div class="line"><a name="l02494"></a><span class="lineno"> 2494</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_RecurrentToOutputWeights));</div>
1457<div class="line"><a name="l02495"></a><span class="lineno"> 2495</span>&#160; layer-&gt;m_BasicParameters.m_ForgetGateBias =</div>
1458<div class="line"><a name="l02496"></a><span class="lineno"> 2496</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_ForgetGateBias));</div>
1459<div class="line"><a name="l02497"></a><span class="lineno"> 2497</span>&#160; layer-&gt;m_BasicParameters.m_CellBias =</div>
1460<div class="line"><a name="l02498"></a><span class="lineno"> 2498</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellBias));</div>
1461<div class="line"><a name="l02499"></a><span class="lineno"> 2499</span>&#160; layer-&gt;m_BasicParameters.m_OutputGateBias =</div>
1462<div class="line"><a name="l02500"></a><span class="lineno"> 2500</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_OutputGateBias));</div>
1463<div class="line"><a name="l02501"></a><span class="lineno"> 2501</span>&#160; </div>
1464<div class="line"><a name="l02502"></a><span class="lineno"> 2502</span>&#160; <span class="comment">//Lstm Cifg parameters</span></div>
1465<div class="line"><a name="l02503"></a><span class="lineno"> 2503</span>&#160; <span class="keywordflow">if</span>(!descriptor.m_CifgEnabled)</div>
1466<div class="line"><a name="l02504"></a><span class="lineno"> 2504</span>&#160; {</div>
1467<div class="line"><a name="l02505"></a><span class="lineno"> 2505</span>&#160; <span class="keywordflow">if</span>(params.m_InputToInputWeights == <span class="keyword">nullptr</span>)</div>
1468<div class="line"><a name="l02506"></a><span class="lineno"> 2506</span>&#160; {</div>
1469<div class="line"><a name="l02507"></a><span class="lineno"> 2507</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Input To Input Weights cannot be NULL &quot;</span></div>
1470<div class="line"><a name="l02508"></a><span class="lineno"> 2508</span>&#160; <span class="stringliteral">&quot;when CIFG is disabled.&quot;</span>);</div>
1471<div class="line"><a name="l02509"></a><span class="lineno"> 2509</span>&#160; }</div>
1472<div class="line"><a name="l02510"></a><span class="lineno"> 2510</span>&#160; <span class="keywordflow">if</span>(params.m_RecurrentToInputWeights == <span class="keyword">nullptr</span>)</div>
1473<div class="line"><a name="l02511"></a><span class="lineno"> 2511</span>&#160; {</div>
1474<div class="line"><a name="l02512"></a><span class="lineno"> 2512</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(</div>
1475<div class="line"><a name="l02513"></a><span class="lineno"> 2513</span>&#160; <span class="stringliteral">&quot;AddLstmLayer: Recurrent To Input Weights cannot be NULL &quot;</span></div>
1476<div class="line"><a name="l02514"></a><span class="lineno"> 2514</span>&#160; <span class="stringliteral">&quot;when CIFG is disabled.&quot;</span>);</div>
1477<div class="line"><a name="l02515"></a><span class="lineno"> 2515</span>&#160; }</div>
1478<div class="line"><a name="l02516"></a><span class="lineno"> 2516</span>&#160; <span class="keywordflow">if</span>(params.m_InputGateBias == <span class="keyword">nullptr</span>)</div>
1479<div class="line"><a name="l02517"></a><span class="lineno"> 2517</span>&#160; {</div>
1480<div class="line"><a name="l02518"></a><span class="lineno"> 2518</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Input Gate Bias cannot be NULL &quot;</span></div>
1481<div class="line"><a name="l02519"></a><span class="lineno"> 2519</span>&#160; <span class="stringliteral">&quot;when CIFG is disabled.&quot;</span>);</div>
1482<div class="line"><a name="l02520"></a><span class="lineno"> 2520</span>&#160; }</div>
1483<div class="line"><a name="l02521"></a><span class="lineno"> 2521</span>&#160; layer-&gt;m_CifgParameters.m_InputToInputWeights =</div>
1484<div class="line"><a name="l02522"></a><span class="lineno"> 2522</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputToInputWeights));</div>
1485<div class="line"><a name="l02523"></a><span class="lineno"> 2523</span>&#160; layer-&gt;m_CifgParameters.m_RecurrentToInputWeights =</div>
1486<div class="line"><a name="l02524"></a><span class="lineno"> 2524</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_RecurrentToInputWeights));</div>
1487<div class="line"><a name="l02525"></a><span class="lineno"> 2525</span>&#160; layer-&gt;m_CifgParameters.m_InputGateBias =</div>
1488<div class="line"><a name="l02526"></a><span class="lineno"> 2526</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputGateBias));</div>
1489<div class="line"><a name="l02527"></a><span class="lineno"> 2527</span>&#160; }</div>
1490<div class="line"><a name="l02528"></a><span class="lineno"> 2528</span>&#160; </div>
1491<div class="line"><a name="l02529"></a><span class="lineno"> 2529</span>&#160; <span class="comment">//Lstm projection parameters</span></div>
1492<div class="line"><a name="l02530"></a><span class="lineno"> 2530</span>&#160; <span class="keywordflow">if</span>(descriptor.m_ProjectionEnabled)</div>
1493<div class="line"><a name="l02531"></a><span class="lineno"> 2531</span>&#160; {</div>
1494<div class="line"><a name="l02532"></a><span class="lineno"> 2532</span>&#160; <span class="keywordflow">if</span>(params.m_ProjectionWeights == <span class="keyword">nullptr</span>)</div>
1495<div class="line"><a name="l02533"></a><span class="lineno"> 2533</span>&#160; {</div>
1496<div class="line"><a name="l02534"></a><span class="lineno"> 2534</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Projection Weights cannot be NULL &quot;</span></div>
1497<div class="line"><a name="l02535"></a><span class="lineno"> 2535</span>&#160; <span class="stringliteral">&quot;when projection is enabled.&quot;</span>);</div>
1498<div class="line"><a name="l02536"></a><span class="lineno"> 2536</span>&#160; }</div>
1499<div class="line"><a name="l02537"></a><span class="lineno"> 2537</span>&#160; layer-&gt;m_ProjectionParameters.m_ProjectionWeights =</div>
1500<div class="line"><a name="l02538"></a><span class="lineno"> 2538</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_ProjectionWeights));</div>
1501<div class="line"><a name="l02539"></a><span class="lineno"> 2539</span>&#160; <span class="keywordflow">if</span>(params.m_ProjectionBias != <span class="keyword">nullptr</span>)</div>
1502<div class="line"><a name="l02540"></a><span class="lineno"> 2540</span>&#160; {</div>
1503<div class="line"><a name="l02541"></a><span class="lineno"> 2541</span>&#160; layer-&gt;m_ProjectionParameters.m_ProjectionBias =</div>
1504<div class="line"><a name="l02542"></a><span class="lineno"> 2542</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_ProjectionBias));</div>
1505<div class="line"><a name="l02543"></a><span class="lineno"> 2543</span>&#160; }</div>
1506<div class="line"><a name="l02544"></a><span class="lineno"> 2544</span>&#160; }</div>
1507<div class="line"><a name="l02545"></a><span class="lineno"> 2545</span>&#160; </div>
1508<div class="line"><a name="l02546"></a><span class="lineno"> 2546</span>&#160; <span class="comment">//Lstm Peephole params</span></div>
1509<div class="line"><a name="l02547"></a><span class="lineno"> 2547</span>&#160; <span class="keywordflow">if</span>(descriptor.m_PeepholeEnabled)</div>
1510<div class="line"><a name="l02548"></a><span class="lineno"> 2548</span>&#160; {</div>
1511<div class="line"><a name="l02549"></a><span class="lineno"> 2549</span>&#160; <span class="keywordflow">if</span>(!descriptor.m_CifgEnabled)</div>
1512<div class="line"><a name="l02550"></a><span class="lineno"> 2550</span>&#160; {</div>
1513<div class="line"><a name="l02551"></a><span class="lineno"> 2551</span>&#160; <span class="keywordflow">if</span>(params.m_CellToInputWeights == <span class="keyword">nullptr</span>)</div>
1514<div class="line"><a name="l02552"></a><span class="lineno"> 2552</span>&#160; {</div>
1515<div class="line"><a name="l02553"></a><span class="lineno"> 2553</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Cell To Input Weights cannot be NULL &quot;</span></div>
1516<div class="line"><a name="l02554"></a><span class="lineno"> 2554</span>&#160; <span class="stringliteral">&quot;when Peephole is enabled and CIFG disabled.&quot;</span>);</div>
1517<div class="line"><a name="l02555"></a><span class="lineno"> 2555</span>&#160; }</div>
1518<div class="line"><a name="l02556"></a><span class="lineno"> 2556</span>&#160; </div>
1519<div class="line"><a name="l02557"></a><span class="lineno"> 2557</span>&#160; layer-&gt;m_PeepholeParameters.m_CellToInputWeights =</div>
1520<div class="line"><a name="l02558"></a><span class="lineno"> 2558</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellToInputWeights));</div>
1521<div class="line"><a name="l02559"></a><span class="lineno"> 2559</span>&#160; }</div>
1522<div class="line"><a name="l02560"></a><span class="lineno"> 2560</span>&#160; </div>
1523<div class="line"><a name="l02561"></a><span class="lineno"> 2561</span>&#160; <span class="keywordflow">if</span>(params.m_CellToForgetWeights == <span class="keyword">nullptr</span>)</div>
1524<div class="line"><a name="l02562"></a><span class="lineno"> 2562</span>&#160; {</div>
1525<div class="line"><a name="l02563"></a><span class="lineno"> 2563</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Cell To Forget Weights cannot be NULL &quot;</span></div>
1526<div class="line"><a name="l02564"></a><span class="lineno"> 2564</span>&#160; <span class="stringliteral">&quot;when Peephole is enabled.&quot;</span>);</div>
1527<div class="line"><a name="l02565"></a><span class="lineno"> 2565</span>&#160; }</div>
1528<div class="line"><a name="l02566"></a><span class="lineno"> 2566</span>&#160; <span class="keywordflow">if</span>(params.m_CellToOutputWeights == <span class="keyword">nullptr</span>)</div>
1529<div class="line"><a name="l02567"></a><span class="lineno"> 2567</span>&#160; {</div>
1530<div class="line"><a name="l02568"></a><span class="lineno"> 2568</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Cell To Output Weights cannot be NULL &quot;</span></div>
1531<div class="line"><a name="l02569"></a><span class="lineno"> 2569</span>&#160; <span class="stringliteral">&quot;when Peephole is enabled.&quot;</span>);</div>
1532<div class="line"><a name="l02570"></a><span class="lineno"> 2570</span>&#160; }</div>
1533<div class="line"><a name="l02571"></a><span class="lineno"> 2571</span>&#160; </div>
1534<div class="line"><a name="l02572"></a><span class="lineno"> 2572</span>&#160; layer-&gt;m_PeepholeParameters.m_CellToForgetWeights =</div>
1535<div class="line"><a name="l02573"></a><span class="lineno"> 2573</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellToForgetWeights));</div>
1536<div class="line"><a name="l02574"></a><span class="lineno"> 2574</span>&#160; layer-&gt;m_PeepholeParameters.m_CellToOutputWeights =</div>
1537<div class="line"><a name="l02575"></a><span class="lineno"> 2575</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellToOutputWeights));</div>
1538<div class="line"><a name="l02576"></a><span class="lineno"> 2576</span>&#160; }</div>
1539<div class="line"><a name="l02577"></a><span class="lineno"> 2577</span>&#160; </div>
1540<div class="line"><a name="l02578"></a><span class="lineno"> 2578</span>&#160; <span class="comment">//Lstm Layer Normalization params</span></div>
1541<div class="line"><a name="l02579"></a><span class="lineno"> 2579</span>&#160; <span class="keywordflow">if</span>(descriptor.m_LayerNormEnabled)</div>
1542<div class="line"><a name="l02580"></a><span class="lineno"> 2580</span>&#160; {</div>
1543<div class="line"><a name="l02581"></a><span class="lineno"> 2581</span>&#160; <span class="keywordflow">if</span>(!descriptor.m_CifgEnabled)</div>
1544<div class="line"><a name="l02582"></a><span class="lineno"> 2582</span>&#160; {</div>
1545<div class="line"><a name="l02583"></a><span class="lineno"> 2583</span>&#160; <span class="keywordflow">if</span>(params.m_InputLayerNormWeights == <span class="keyword">nullptr</span>)</div>
1546<div class="line"><a name="l02584"></a><span class="lineno"> 2584</span>&#160; {</div>
1547<div class="line"><a name="l02585"></a><span class="lineno"> 2585</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Input layer normalization weights cannot be NULL &quot;</span></div>
1548<div class="line"><a name="l02586"></a><span class="lineno"> 2586</span>&#160; <span class="stringliteral">&quot;when layer normalization is enabled and CIFG disabled.&quot;</span>);</div>
1549<div class="line"><a name="l02587"></a><span class="lineno"> 2587</span>&#160; }</div>
1550<div class="line"><a name="l02588"></a><span class="lineno"> 2588</span>&#160; layer-&gt;m_LayerNormParameters.m_InputLayerNormWeights =</div>
1551<div class="line"><a name="l02589"></a><span class="lineno"> 2589</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputLayerNormWeights));</div>
1552<div class="line"><a name="l02590"></a><span class="lineno"> 2590</span>&#160; }</div>
1553<div class="line"><a name="l02591"></a><span class="lineno"> 2591</span>&#160; </div>
1554<div class="line"><a name="l02592"></a><span class="lineno"> 2592</span>&#160; <span class="keywordflow">if</span>(params.m_ForgetLayerNormWeights == <span class="keyword">nullptr</span>)</div>
1555<div class="line"><a name="l02593"></a><span class="lineno"> 2593</span>&#160; {</div>
1556<div class="line"><a name="l02594"></a><span class="lineno"> 2594</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Forget layer normalization weights cannot be NULL &quot;</span></div>
1557<div class="line"><a name="l02595"></a><span class="lineno"> 2595</span>&#160; <span class="stringliteral">&quot;when layer normalization is enabled.&quot;</span>);</div>
1558<div class="line"><a name="l02596"></a><span class="lineno"> 2596</span>&#160; }</div>
1559<div class="line"><a name="l02597"></a><span class="lineno"> 2597</span>&#160; <span class="keywordflow">if</span>(params.m_CellLayerNormWeights == <span class="keyword">nullptr</span>)</div>
1560<div class="line"><a name="l02598"></a><span class="lineno"> 2598</span>&#160; {</div>
1561<div class="line"><a name="l02599"></a><span class="lineno"> 2599</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Cell layer normalization weights cannot be NULL &quot;</span></div>
1562<div class="line"><a name="l02600"></a><span class="lineno"> 2600</span>&#160; <span class="stringliteral">&quot;when layer normalization is enabled.&quot;</span>);</div>
1563<div class="line"><a name="l02601"></a><span class="lineno"> 2601</span>&#160; }</div>
1564<div class="line"><a name="l02602"></a><span class="lineno"> 2602</span>&#160; <span class="keywordflow">if</span>(params.m_OutputLayerNormWeights == <span class="keyword">nullptr</span>)</div>
1565<div class="line"><a name="l02603"></a><span class="lineno"> 2603</span>&#160; {</div>
1566<div class="line"><a name="l02604"></a><span class="lineno"> 2604</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Output layer normalization weights cannot be NULL &quot;</span></div>
1567<div class="line"><a name="l02605"></a><span class="lineno"> 2605</span>&#160; <span class="stringliteral">&quot;when layer normalization is enabled.&quot;</span>);</div>
1568<div class="line"><a name="l02606"></a><span class="lineno"> 2606</span>&#160; }</div>
1569<div class="line"><a name="l02607"></a><span class="lineno"> 2607</span>&#160; layer-&gt;m_LayerNormParameters.m_ForgetLayerNormWeights =</div>
1570<div class="line"><a name="l02608"></a><span class="lineno"> 2608</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_ForgetLayerNormWeights));</div>
1571<div class="line"><a name="l02609"></a><span class="lineno"> 2609</span>&#160; layer-&gt;m_LayerNormParameters.m_CellLayerNormWeights =</div>
1572<div class="line"><a name="l02610"></a><span class="lineno"> 2610</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellLayerNormWeights));</div>
1573<div class="line"><a name="l02611"></a><span class="lineno"> 2611</span>&#160; layer-&gt;m_LayerNormParameters.m_OutputLayerNormWeights =</div>
1574<div class="line"><a name="l02612"></a><span class="lineno"> 2612</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_OutputLayerNormWeights));</div>
1575<div class="line"><a name="l02613"></a><span class="lineno"> 2613</span>&#160; }</div>
1576<div class="line"><a name="l02614"></a><span class="lineno"> 2614</span>&#160; <span class="keywordflow">return</span> layer;</div>
1577<div class="line"><a name="l02615"></a><span class="lineno"> 2615</span>&#160;}</div>
1578</div><!-- fragment -->
1579<p class="reference">References <a class="el" href="_lstm_layer_8hpp_source.html#l00020">LstmLayer::m_BasicParameters</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00053">LstmInputParams::m_CellBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00059">LstmInputParams::m_CellLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00049">LstmInputParams::m_CellToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00048">LstmInputParams::m_CellToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00050">LstmInputParams::m_CellToOutputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00052">LstmInputParams::m_ForgetGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00058">LstmInputParams::m_ForgetLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00051">LstmInputParams::m_InputGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00057">LstmInputParams::m_InputLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00042">LstmInputParams::m_InputToCellWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00041">LstmInputParams::m_InputToForgetWeights</a>, <a class="el" href="_lstm_parameters_8hpp_source.html#l00057">LstmBasicParameters::m_InputToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00040">LstmInputParams::m_InputToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00043">LstmInputParams::m_InputToOutputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00054">LstmInputParams::m_OutputGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00060">LstmInputParams::m_OutputLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00056">LstmInputParams::m_ProjectionBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00055">LstmInputParams::m_ProjectionWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00046">LstmInputParams::m_RecurrentToCellWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00045">LstmInputParams::m_RecurrentToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00044">LstmInputParams::m_RecurrentToInputWeights</a>, and <a class="el" href="_lstm_params_8hpp_source.html#l00047">LstmInputParams::m_RecurrentToOutputWeights</a>.</p>
1580
1581</div>
1582</div>
1583<a id="a57590d7777211673d2052f702f0b07a1"></a>
1584<h2 class="memtitle"><span class="permalink"><a href="#a57590d7777211673d2052f702f0b07a1">&#9670;&nbsp;</a></span>AddMaximumLayer()</h2>
1585
1586<div class="memitem">
1587<div class="memproto">
1588 <table class="memname">
1589 <tr>
1590 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddMaximumLayer </td>
1591 <td>(</td>
1592 <td class="paramtype">const char *&#160;</td>
1593 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
1594 <td></td>
1595 </tr>
1596 </table>
1597</div><div class="memdoc">
1598
1599<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02363">2363</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1600<div class="fragment"><div class="line"><a name="l02364"></a><span class="lineno"> 2364</span>&#160;{</div>
1601<div class="line"><a name="l02365"></a><span class="lineno"> 2365</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;MaximumLayer&gt;(name);</div>
1602<div class="line"><a name="l02366"></a><span class="lineno"> 2366</span>&#160;}</div>
1603</div><!-- fragment -->
1604</div>
1605</div>
1606<a id="ad4726f9b7dd11db250d2a494a8a39494"></a>
1607<h2 class="memtitle"><span class="permalink"><a href="#ad4726f9b7dd11db250d2a494a8a39494">&#9670;&nbsp;</a></span>AddMeanLayer()</h2>
1608
1609<div class="memitem">
1610<div class="memproto">
1611 <table class="memname">
1612 <tr>
1613 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddMeanLayer </td>
1614 <td>(</td>
1615 <td class="paramtype">const <a class="el" href="structarmnn_1_1_mean_descriptor.html">MeanDescriptor</a> &amp;&#160;</td>
1616 <td class="paramname"><em>meanDescriptor</em>, </td>
1617 </tr>
1618 <tr>
1619 <td class="paramkey"></td>
1620 <td></td>
1621 <td class="paramtype">const char *&#160;</td>
1622 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1623 </tr>
1624 <tr>
1625 <td></td>
1626 <td>)</td>
1627 <td></td><td></td>
1628 </tr>
1629 </table>
1630</div><div class="memdoc">
1631
1632<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02627">2627</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1633<div class="fragment"><div class="line"><a name="l02628"></a><span class="lineno"> 2628</span>&#160;{</div>
1634<div class="line"><a name="l02629"></a><span class="lineno"> 2629</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;MeanLayer&gt;(meanDescriptor,name);</div>
1635<div class="line"><a name="l02630"></a><span class="lineno"> 2630</span>&#160;}</div>
1636</div><!-- fragment -->
1637</div>
1638</div>
1639<a id="a0f19808bdada45222e72edf7671a275a"></a>
1640<h2 class="memtitle"><span class="permalink"><a href="#a0f19808bdada45222e72edf7671a275a">&#9670;&nbsp;</a></span>AddMergeLayer()</h2>
1641
1642<div class="memitem">
1643<div class="memproto">
1644 <table class="memname">
1645 <tr>
1646 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddMergeLayer </td>
1647 <td>(</td>
1648 <td class="paramtype">const char *&#160;</td>
1649 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
1650 <td></td>
1651 </tr>
1652 </table>
1653</div><div class="memdoc">
1654
1655<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02664">2664</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1656<div class="fragment"><div class="line"><a name="l02665"></a><span class="lineno"> 2665</span>&#160;{</div>
1657<div class="line"><a name="l02666"></a><span class="lineno"> 2666</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;MergeLayer&gt;(name);</div>
1658<div class="line"><a name="l02667"></a><span class="lineno"> 2667</span>&#160;}</div>
1659</div><!-- fragment -->
1660</div>
1661</div>
1662<a id="a4bfd8dee1a0315b651e977c672c0847c"></a>
1663<h2 class="memtitle"><span class="permalink"><a href="#a4bfd8dee1a0315b651e977c672c0847c">&#9670;&nbsp;</a></span>AddMinimumLayer()</h2>
1664
1665<div class="memitem">
1666<div class="memproto">
1667 <table class="memname">
1668 <tr>
1669 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddMinimumLayer </td>
1670 <td>(</td>
1671 <td class="paramtype">const char *&#160;</td>
1672 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
1673 <td></td>
1674 </tr>
1675 </table>
1676</div><div class="memdoc">
1677
1678<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02368">2368</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1679<div class="fragment"><div class="line"><a name="l02369"></a><span class="lineno"> 2369</span>&#160;{</div>
1680<div class="line"><a name="l02370"></a><span class="lineno"> 2370</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;MinimumLayer&gt;(name);</div>
1681<div class="line"><a name="l02371"></a><span class="lineno"> 2371</span>&#160;}</div>
1682</div><!-- fragment -->
1683</div>
1684</div>
1685<a id="abb59f6ba9988dae88e0f48e68d87fc32"></a>
1686<h2 class="memtitle"><span class="permalink"><a href="#abb59f6ba9988dae88e0f48e68d87fc32">&#9670;&nbsp;</a></span>AddMultiplicationLayer()</h2>
1687
1688<div class="memitem">
1689<div class="memproto">
1690 <table class="memname">
1691 <tr>
1692 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddMultiplicationLayer </td>
1693 <td>(</td>
1694 <td class="paramtype">const char *&#160;</td>
1695 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
1696 <td></td>
1697 </tr>
1698 </table>
1699</div><div class="memdoc">
1700
1701<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02378">2378</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1702<div class="fragment"><div class="line"><a name="l02379"></a><span class="lineno"> 2379</span>&#160;{</div>
1703<div class="line"><a name="l02380"></a><span class="lineno"> 2380</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;MultiplicationLayer&gt;(name);</div>
1704<div class="line"><a name="l02381"></a><span class="lineno"> 2381</span>&#160;}</div>
1705</div><!-- fragment -->
1706</div>
1707</div>
1708<a id="a6c5376053e1f875776d7bc36fd0b7d45"></a>
1709<h2 class="memtitle"><span class="permalink"><a href="#a6c5376053e1f875776d7bc36fd0b7d45">&#9670;&nbsp;</a></span>AddNormalizationLayer()</h2>
1710
1711<div class="memitem">
1712<div class="memproto">
1713 <table class="memname">
1714 <tr>
1715 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddNormalizationLayer </td>
1716 <td>(</td>
1717 <td class="paramtype">const <a class="el" href="structarmnn_1_1_normalization_descriptor.html">NormalizationDescriptor</a> &amp;&#160;</td>
1718 <td class="paramname"><em>normalizationDescriptor</em>, </td>
1719 </tr>
1720 <tr>
1721 <td class="paramkey"></td>
1722 <td></td>
1723 <td class="paramtype">const char *&#160;</td>
1724 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1725 </tr>
1726 <tr>
1727 <td></td>
1728 <td>)</td>
1729 <td></td><td></td>
1730 </tr>
1731 </table>
1732</div><div class="memdoc">
1733
1734<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02339">2339</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1735<div class="fragment"><div class="line"><a name="l02342"></a><span class="lineno"> 2342</span>&#160;{</div>
1736<div class="line"><a name="l02343"></a><span class="lineno"> 2343</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;NormalizationLayer&gt;(normalizationDescriptor, name);</div>
1737<div class="line"><a name="l02344"></a><span class="lineno"> 2344</span>&#160;}</div>
1738</div><!-- fragment -->
1739</div>
1740</div>
1741<a id="af5790069aa11fd1c5bb2e17cecb06528"></a>
1742<h2 class="memtitle"><span class="permalink"><a href="#af5790069aa11fd1c5bb2e17cecb06528">&#9670;&nbsp;</a></span>AddOutputLayer()</h2>
1743
1744<div class="memitem">
1745<div class="memproto">
1746 <table class="memname">
1747 <tr>
1748 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddOutputLayer </td>
1749 <td>(</td>
1750 <td class="paramtype"><a class="el" href="namespacearmnn.html#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a>&#160;</td>
1751 <td class="paramname"><em>id</em>, </td>
1752 </tr>
1753 <tr>
1754 <td class="paramkey"></td>
1755 <td></td>
1756 <td class="paramtype">const char *&#160;</td>
1757 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1758 </tr>
1759 <tr>
1760 <td></td>
1761 <td>)</td>
1762 <td></td><td></td>
1763 </tr>
1764 </table>
1765</div><div class="memdoc">
1766
1767<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02383">2383</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1768<div class="fragment"><div class="line"><a name="l02384"></a><span class="lineno"> 2384</span>&#160;{</div>
1769<div class="line"><a name="l02385"></a><span class="lineno"> 2385</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;OutputLayer&gt;(id, name);</div>
1770<div class="line"><a name="l02386"></a><span class="lineno"> 2386</span>&#160;}</div>
1771</div><!-- fragment -->
1772</div>
1773</div>
1774<a id="a6e2df484ecc65bc82712590b96e04df4"></a>
1775<h2 class="memtitle"><span class="permalink"><a href="#a6e2df484ecc65bc82712590b96e04df4">&#9670;&nbsp;</a></span>AddPadLayer()</h2>
1776
1777<div class="memitem">
1778<div class="memproto">
1779 <table class="memname">
1780 <tr>
1781 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddPadLayer </td>
1782 <td>(</td>
1783 <td class="paramtype">const <a class="el" href="structarmnn_1_1_pad_descriptor.html">PadDescriptor</a> &amp;&#160;</td>
1784 <td class="paramname"><em>padDescriptor</em>, </td>
1785 </tr>
1786 <tr>
1787 <td class="paramkey"></td>
1788 <td></td>
1789 <td class="paramtype">const char *&#160;</td>
1790 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1791 </tr>
1792 <tr>
1793 <td></td>
1794 <td>)</td>
1795 <td></td><td></td>
1796 </tr>
1797 </table>
1798</div><div class="memdoc">
1799
1800<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02632">2632</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1801<div class="fragment"><div class="line"><a name="l02633"></a><span class="lineno"> 2633</span>&#160;{</div>
1802<div class="line"><a name="l02634"></a><span class="lineno"> 2634</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;PadLayer&gt;(padDescriptor,name);</div>
1803<div class="line"><a name="l02635"></a><span class="lineno"> 2635</span>&#160;}</div>
1804</div><!-- fragment -->
1805</div>
1806</div>
1807<a id="a11f49d84f0cfd8df65f4d5206cd43b6d"></a>
1808<h2 class="memtitle"><span class="permalink"><a href="#a11f49d84f0cfd8df65f4d5206cd43b6d">&#9670;&nbsp;</a></span>AddPermuteLayer()</h2>
1809
1810<div class="memitem">
1811<div class="memproto">
1812 <table class="memname">
1813 <tr>
1814 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddPermuteLayer </td>
1815 <td>(</td>
1816 <td class="paramtype">const <a class="el" href="structarmnn_1_1_permute_descriptor.html">PermuteDescriptor</a> &amp;&#160;</td>
1817 <td class="paramname"><em>permuteDescriptor</em>, </td>
1818 </tr>
1819 <tr>
1820 <td class="paramkey"></td>
1821 <td></td>
1822 <td class="paramtype">const char *&#160;</td>
1823 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1824 </tr>
1825 <tr>
1826 <td></td>
1827 <td>)</td>
1828 <td></td><td></td>
1829 </tr>
1830 </table>
1831</div><div class="memdoc">
1832
1833<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02309">2309</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1834<div class="fragment"><div class="line"><a name="l02311"></a><span class="lineno"> 2311</span>&#160;{</div>
1835<div class="line"><a name="l02312"></a><span class="lineno"> 2312</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;PermuteLayer&gt;(permuteDescriptor, name);</div>
1836<div class="line"><a name="l02313"></a><span class="lineno"> 2313</span>&#160;}</div>
1837</div><!-- fragment -->
1838</div>
1839</div>
1840<a id="ae913b4351b7027f37eb5657dd7867733"></a>
1841<h2 class="memtitle"><span class="permalink"><a href="#ae913b4351b7027f37eb5657dd7867733">&#9670;&nbsp;</a></span>AddPooling2dLayer()</h2>
1842
1843<div class="memitem">
1844<div class="memproto">
1845 <table class="memname">
1846 <tr>
1847 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddPooling2dLayer </td>
1848 <td>(</td>
1849 <td class="paramtype">const <a class="el" href="structarmnn_1_1_pooling2d_descriptor.html">Pooling2dDescriptor</a> &amp;&#160;</td>
1850 <td class="paramname"><em>pooling2dDescriptor</em>, </td>
1851 </tr>
1852 <tr>
1853 <td class="paramkey"></td>
1854 <td></td>
1855 <td class="paramtype">const char *&#160;</td>
1856 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1857 </tr>
1858 <tr>
1859 <td></td>
1860 <td>)</td>
1861 <td></td><td></td>
1862 </tr>
1863 </table>
1864</div><div class="memdoc">
1865
1866<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02315">2315</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1867<div class="fragment"><div class="line"><a name="l02317"></a><span class="lineno"> 2317</span>&#160;{</div>
1868<div class="line"><a name="l02318"></a><span class="lineno"> 2318</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;Pooling2dLayer&gt;(pooling2dDescriptor, name);</div>
1869<div class="line"><a name="l02319"></a><span class="lineno"> 2319</span>&#160;}</div>
1870</div><!-- fragment -->
1871</div>
1872</div>
1873<a id="aee282f8e3379d3f5bed1032d20884248"></a>
1874<h2 class="memtitle"><span class="permalink"><a href="#aee282f8e3379d3f5bed1032d20884248">&#9670;&nbsp;</a></span>AddPooling3dLayer()</h2>
1875
1876<div class="memitem">
1877<div class="memproto">
1878 <table class="memname">
1879 <tr>
1880 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddPooling3dLayer </td>
1881 <td>(</td>
1882 <td class="paramtype">const <a class="el" href="structarmnn_1_1_pooling3d_descriptor.html">Pooling3dDescriptor</a> &amp;&#160;</td>
1883 <td class="paramname"><em>pooling3dDescriptor</em>, </td>
1884 </tr>
1885 <tr>
1886 <td class="paramkey"></td>
1887 <td></td>
1888 <td class="paramtype">const char *&#160;</td>
1889 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1890 </tr>
1891 <tr>
1892 <td></td>
1893 <td>)</td>
1894 <td></td><td></td>
1895 </tr>
1896 </table>
1897</div><div class="memdoc">
1898
1899<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02321">2321</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1900<div class="fragment"><div class="line"><a name="l02323"></a><span class="lineno"> 2323</span>&#160;{</div>
1901<div class="line"><a name="l02324"></a><span class="lineno"> 2324</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;Pooling3dLayer&gt;(pooling3dDescriptor, name);</div>
1902<div class="line"><a name="l02325"></a><span class="lineno"> 2325</span>&#160;}</div>
1903</div><!-- fragment -->
1904</div>
1905</div>
1906<a id="aee3a15d2fa419f50a8ac45e6d3c11e16"></a>
1907<h2 class="memtitle"><span class="permalink"><a href="#aee3a15d2fa419f50a8ac45e6d3c11e16">&#9670;&nbsp;</a></span>AddPrecompiledLayer()</h2>
1908
1909<div class="memitem">
1910<div class="memproto">
1911 <table class="memname">
1912 <tr>
1913 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddPrecompiledLayer </td>
1914 <td>(</td>
1915 <td class="paramtype">const <a class="el" href="structarmnn_1_1_pre_compiled_descriptor.html">PreCompiledDescriptor</a> &amp;&#160;</td>
1916 <td class="paramname"><em>preCompiledDescriptor</em>, </td>
1917 </tr>
1918 <tr>
1919 <td class="paramkey"></td>
1920 <td></td>
1921 <td class="paramtype"><a class="el" href="namespacearmnn.html#af362583b7b4c471c434cb0fdb86c2ae2">CompiledBlobPtr</a>&#160;</td>
1922 <td class="paramname"><em>compiledBlobPtr</em>, </td>
1923 </tr>
1924 <tr>
1925 <td class="paramkey"></td>
1926 <td></td>
1927 <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; <a class="el" href="classarmnn_1_1_backend_id.html">BackendId</a> &gt; &amp;&#160;</td>
1928 <td class="paramname"><em>backend</em>, </td>
1929 </tr>
1930 <tr>
1931 <td class="paramkey"></td>
1932 <td></td>
1933 <td class="paramtype">const char *&#160;</td>
1934 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1935 </tr>
1936 <tr>
1937 <td></td>
1938 <td>)</td>
1939 <td></td><td></td>
1940 </tr>
1941 </table>
1942</div><div class="memdoc">
1943
1944<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l03063">3063</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1945<div class="fragment"><div class="line"><a name="l03067"></a><span class="lineno"> 3067</span>&#160;{</div>
1946<div class="line"><a name="l03068"></a><span class="lineno"> 3068</span>&#160; <span class="comment">// Method use is for backend users.</span></div>
1947<div class="line"><a name="l03069"></a><span class="lineno"> 3069</span>&#160; PreCompiledLayer* layer;</div>
1948<div class="line"><a name="l03070"></a><span class="lineno"> 3070</span>&#160; <span class="keywordflow">if</span> (name)</div>
1949<div class="line"><a name="l03071"></a><span class="lineno"> 3071</span>&#160; {</div>
1950<div class="line"><a name="l03072"></a><span class="lineno"> 3072</span>&#160; layer = m_Graph-&gt;AddLayer&lt;PreCompiledLayer&gt;(preCompiledDescriptor, name);</div>
1951<div class="line"><a name="l03073"></a><span class="lineno"> 3073</span>&#160; }</div>
1952<div class="line"><a name="l03074"></a><span class="lineno"> 3074</span>&#160; <span class="keywordflow">else</span></div>
1953<div class="line"><a name="l03075"></a><span class="lineno"> 3075</span>&#160; {</div>
1954<div class="line"><a name="l03076"></a><span class="lineno"> 3076</span>&#160; layer = m_Graph-&gt;AddLayer&lt;PreCompiledLayer&gt;(preCompiledDescriptor, <span class="stringliteral">&quot;pre-compiled&quot;</span>);</div>
1955<div class="line"><a name="l03077"></a><span class="lineno"> 3077</span>&#160; }</div>
1956<div class="line"><a name="l03078"></a><span class="lineno"> 3078</span>&#160; </div>
1957<div class="line"><a name="l03079"></a><span class="lineno"> 3079</span>&#160; <span class="comment">// Assign the pre-compiled object to layer</span></div>
1958<div class="line"><a name="l03080"></a><span class="lineno"> 3080</span>&#160; <span class="comment">// Pass only one compiled network, Arm NN does not handle multiple</span></div>
1959<div class="line"><a name="l03081"></a><span class="lineno"> 3081</span>&#160; <span class="comment">// pre-compiled objects in a single pre-compiled layer currently</span></div>
1960<div class="line"><a name="l03082"></a><span class="lineno"> 3082</span>&#160; layer-&gt;SetPreCompiledObject(std::move(compiledBlobPtr));</div>
1961<div class="line"><a name="l03083"></a><span class="lineno"> 3083</span>&#160; </div>
1962<div class="line"><a name="l03084"></a><span class="lineno"> 3084</span>&#160; <span class="keywordflow">if</span> (backend.has_value())</div>
1963<div class="line"><a name="l03085"></a><span class="lineno"> 3085</span>&#160; {</div>
1964<div class="line"><a name="l03086"></a><span class="lineno"> 3086</span>&#160; layer-&gt;SetBackendId(backend.value());</div>
1965<div class="line"><a name="l03087"></a><span class="lineno"> 3087</span>&#160; }</div>
1966<div class="line"><a name="l03088"></a><span class="lineno"> 3088</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (layer-&gt;GetBackendHint().has_value())</div>
1967<div class="line"><a name="l03089"></a><span class="lineno"> 3089</span>&#160; {</div>
1968<div class="line"><a name="l03090"></a><span class="lineno"> 3090</span>&#160; layer-&gt;SetBackendId(layer-&gt;GetBackendHint().value());</div>
1969<div class="line"><a name="l03091"></a><span class="lineno"> 3091</span>&#160; }</div>
1970<div class="line"><a name="l03092"></a><span class="lineno"> 3092</span>&#160; </div>
1971<div class="line"><a name="l03093"></a><span class="lineno"> 3093</span>&#160; <span class="keywordflow">return</span> layer;</div>
1972<div class="line"><a name="l03094"></a><span class="lineno"> 3094</span>&#160;}</div>
1973</div><!-- fragment -->
1974<p class="reference">References <a class="el" href="_layer_8hpp_source.html#l00355">Layer::GetBackendHint()</a>, <a class="el" href="_optional_8hpp_source.html#l00053">OptionalBase::has_value()</a>, <a class="el" href="_layer_8hpp_source.html#l00291">Layer::SetBackendId()</a>, <a class="el" href="_pre_compiled_layer_8cpp_source.html#l00047">PreCompiledLayer::SetPreCompiledObject()</a>, and <a class="el" href="_optional_8hpp_source.html#l00146">OptionalReferenceSwitch&lt; std::is_reference&lt; T &gt;::value, T &gt;::value()</a>.</p>
1975
1976</div>
1977</div>
1978<a id="a6d614a503a34ea3712b388aa4340ddbe"></a>
1979<h2 class="memtitle"><span class="permalink"><a href="#a6d614a503a34ea3712b388aa4340ddbe">&#9670;&nbsp;</a></span>AddPreluLayer()</h2>
1980
1981<div class="memitem">
1982<div class="memproto">
1983 <table class="memname">
1984 <tr>
1985 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddPreluLayer </td>
1986 <td>(</td>
1987 <td class="paramtype">const char *&#160;</td>
1988 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
1989 <td></td>
1990 </tr>
1991 </table>
1992</div><div class="memdoc">
1993
1994<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02674">2674</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
1995<div class="fragment"><div class="line"><a name="l02675"></a><span class="lineno"> 2675</span>&#160;{</div>
1996<div class="line"><a name="l02676"></a><span class="lineno"> 2676</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;PreluLayer&gt;(name);</div>
1997<div class="line"><a name="l02677"></a><span class="lineno"> 2677</span>&#160;}</div>
1998</div><!-- fragment -->
1999</div>
2000</div>
2001<a id="a2acbae0b9e98c94b843677484775c86a"></a>
2002<h2 class="memtitle"><span class="permalink"><a href="#a2acbae0b9e98c94b843677484775c86a">&#9670;&nbsp;</a></span>AddQLstmLayer()</h2>
2003
2004<div class="memitem">
2005<div class="memproto">
2006 <table class="memname">
2007 <tr>
2008 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddQLstmLayer </td>
2009 <td>(</td>
2010 <td class="paramtype">const <a class="el" href="structarmnn_1_1_q_lstm_descriptor.html">QLstmDescriptor</a> &amp;&#160;</td>
2011 <td class="paramname"><em>descriptor</em>, </td>
2012 </tr>
2013 <tr>
2014 <td class="paramkey"></td>
2015 <td></td>
2016 <td class="paramtype">const <a class="el" href="structarmnn_1_1_lstm_input_params.html">LstmInputParams</a> &amp;&#160;</td>
2017 <td class="paramname"><em>params</em>, </td>
2018 </tr>
2019 <tr>
2020 <td class="paramkey"></td>
2021 <td></td>
2022 <td class="paramtype">const char *&#160;</td>
2023 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2024 </tr>
2025 <tr>
2026 <td></td>
2027 <td>)</td>
2028 <td></td><td></td>
2029 </tr>
2030 </table>
2031</div><div class="memdoc">
2032
2033<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02758">2758</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2034<div class="fragment"><div class="line"><a name="l02761"></a><span class="lineno"> 2761</span>&#160;{</div>
2035<div class="line"><a name="l02762"></a><span class="lineno"> 2762</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> layer = m_Graph-&gt;AddLayer&lt;QLstmLayer&gt;(descriptor, name);</div>
2036<div class="line"><a name="l02763"></a><span class="lineno"> 2763</span>&#160; </div>
2037<div class="line"><a name="l02764"></a><span class="lineno"> 2764</span>&#160; <span class="comment">// QLstm Basic Parameters</span></div>
2038<div class="line"><a name="l02765"></a><span class="lineno"> 2765</span>&#160; layer-&gt;m_BasicParameters.m_InputToForgetWeights =</div>
2039<div class="line"><a name="l02766"></a><span class="lineno"> 2766</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputToForgetWeights));</div>
2040<div class="line"><a name="l02767"></a><span class="lineno"> 2767</span>&#160; layer-&gt;m_BasicParameters.m_InputToCellWeights =</div>
2041<div class="line"><a name="l02768"></a><span class="lineno"> 2768</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputToCellWeights));</div>
2042<div class="line"><a name="l02769"></a><span class="lineno"> 2769</span>&#160; layer-&gt;m_BasicParameters.m_InputToOutputWeights =</div>
2043<div class="line"><a name="l02770"></a><span class="lineno"> 2770</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputToOutputWeights));</div>
2044<div class="line"><a name="l02771"></a><span class="lineno"> 2771</span>&#160; layer-&gt;m_BasicParameters.m_RecurrentToForgetWeights =</div>
2045<div class="line"><a name="l02772"></a><span class="lineno"> 2772</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_RecurrentToForgetWeights));</div>
2046<div class="line"><a name="l02773"></a><span class="lineno"> 2773</span>&#160; layer-&gt;m_BasicParameters.m_RecurrentToCellWeights =</div>
2047<div class="line"><a name="l02774"></a><span class="lineno"> 2774</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_RecurrentToCellWeights));</div>
2048<div class="line"><a name="l02775"></a><span class="lineno"> 2775</span>&#160; layer-&gt;m_BasicParameters.m_RecurrentToOutputWeights =</div>
2049<div class="line"><a name="l02776"></a><span class="lineno"> 2776</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_RecurrentToOutputWeights));</div>
2050<div class="line"><a name="l02777"></a><span class="lineno"> 2777</span>&#160; layer-&gt;m_BasicParameters.m_ForgetGateBias =</div>
2051<div class="line"><a name="l02778"></a><span class="lineno"> 2778</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_ForgetGateBias));</div>
2052<div class="line"><a name="l02779"></a><span class="lineno"> 2779</span>&#160; layer-&gt;m_BasicParameters.m_CellBias =</div>
2053<div class="line"><a name="l02780"></a><span class="lineno"> 2780</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellBias));</div>
2054<div class="line"><a name="l02781"></a><span class="lineno"> 2781</span>&#160; layer-&gt;m_BasicParameters.m_OutputGateBias =</div>
2055<div class="line"><a name="l02782"></a><span class="lineno"> 2782</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_OutputGateBias));</div>
2056<div class="line"><a name="l02783"></a><span class="lineno"> 2783</span>&#160; </div>
2057<div class="line"><a name="l02784"></a><span class="lineno"> 2784</span>&#160; <span class="comment">// QLstm Cifg parameters</span></div>
2058<div class="line"><a name="l02785"></a><span class="lineno"> 2785</span>&#160; <span class="keywordflow">if</span>(!descriptor.m_CifgEnabled)</div>
2059<div class="line"><a name="l02786"></a><span class="lineno"> 2786</span>&#160; {</div>
2060<div class="line"><a name="l02787"></a><span class="lineno"> 2787</span>&#160; <span class="keywordflow">if</span>(params.m_InputToInputWeights == <span class="keyword">nullptr</span>)</div>
2061<div class="line"><a name="l02788"></a><span class="lineno"> 2788</span>&#160; {</div>
2062<div class="line"><a name="l02789"></a><span class="lineno"> 2789</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddQLstmLayer: Input To Input Weights cannot be NULL&quot;</span>);</div>
2063<div class="line"><a name="l02790"></a><span class="lineno"> 2790</span>&#160; }</div>
2064<div class="line"><a name="l02791"></a><span class="lineno"> 2791</span>&#160; </div>
2065<div class="line"><a name="l02792"></a><span class="lineno"> 2792</span>&#160; <span class="keywordflow">if</span>(params.m_RecurrentToInputWeights == <span class="keyword">nullptr</span>)</div>
2066<div class="line"><a name="l02793"></a><span class="lineno"> 2793</span>&#160; {</div>
2067<div class="line"><a name="l02794"></a><span class="lineno"> 2794</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(</div>
2068<div class="line"><a name="l02795"></a><span class="lineno"> 2795</span>&#160; <span class="stringliteral">&quot;AddQLstmLayer: Recurrent To Input Weights cannot be NULL&quot;</span>);</div>
2069<div class="line"><a name="l02796"></a><span class="lineno"> 2796</span>&#160; }</div>
2070<div class="line"><a name="l02797"></a><span class="lineno"> 2797</span>&#160; </div>
2071<div class="line"><a name="l02798"></a><span class="lineno"> 2798</span>&#160; <span class="keywordflow">if</span>(params.m_InputGateBias == <span class="keyword">nullptr</span>)</div>
2072<div class="line"><a name="l02799"></a><span class="lineno"> 2799</span>&#160; {</div>
2073<div class="line"><a name="l02800"></a><span class="lineno"> 2800</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddQLstmLayer: Input Gate Bias cannot be NULL&quot;</span>);</div>
2074<div class="line"><a name="l02801"></a><span class="lineno"> 2801</span>&#160; }</div>
2075<div class="line"><a name="l02802"></a><span class="lineno"> 2802</span>&#160; </div>
2076<div class="line"><a name="l02803"></a><span class="lineno"> 2803</span>&#160; layer-&gt;m_CifgParameters.m_InputToInputWeights =</div>
2077<div class="line"><a name="l02804"></a><span class="lineno"> 2804</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputToInputWeights));</div>
2078<div class="line"><a name="l02805"></a><span class="lineno"> 2805</span>&#160; layer-&gt;m_CifgParameters.m_RecurrentToInputWeights =</div>
2079<div class="line"><a name="l02806"></a><span class="lineno"> 2806</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_RecurrentToInputWeights));</div>
2080<div class="line"><a name="l02807"></a><span class="lineno"> 2807</span>&#160; layer-&gt;m_CifgParameters.m_InputGateBias =</div>
2081<div class="line"><a name="l02808"></a><span class="lineno"> 2808</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputGateBias));</div>
2082<div class="line"><a name="l02809"></a><span class="lineno"> 2809</span>&#160; }</div>
2083<div class="line"><a name="l02810"></a><span class="lineno"> 2810</span>&#160; </div>
2084<div class="line"><a name="l02811"></a><span class="lineno"> 2811</span>&#160; <span class="comment">// QLstm Projection parameters</span></div>
2085<div class="line"><a name="l02812"></a><span class="lineno"> 2812</span>&#160; <span class="keywordflow">if</span>(descriptor.m_ProjectionEnabled)</div>
2086<div class="line"><a name="l02813"></a><span class="lineno"> 2813</span>&#160; {</div>
2087<div class="line"><a name="l02814"></a><span class="lineno"> 2814</span>&#160; <span class="keywordflow">if</span>(params.m_ProjectionWeights == <span class="keyword">nullptr</span>)</div>
2088<div class="line"><a name="l02815"></a><span class="lineno"> 2815</span>&#160; {</div>
2089<div class="line"><a name="l02816"></a><span class="lineno"> 2816</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddQLstmLayer: Projection Weights cannot be NULL&quot;</span>);</div>
2090<div class="line"><a name="l02817"></a><span class="lineno"> 2817</span>&#160; }</div>
2091<div class="line"><a name="l02818"></a><span class="lineno"> 2818</span>&#160; </div>
2092<div class="line"><a name="l02819"></a><span class="lineno"> 2819</span>&#160; layer-&gt;m_ProjectionParameters.m_ProjectionWeights =</div>
2093<div class="line"><a name="l02820"></a><span class="lineno"> 2820</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_ProjectionWeights));</div>
2094<div class="line"><a name="l02821"></a><span class="lineno"> 2821</span>&#160; </div>
2095<div class="line"><a name="l02822"></a><span class="lineno"> 2822</span>&#160; <span class="comment">// Projection bias is optional even if projection is enabled</span></div>
2096<div class="line"><a name="l02823"></a><span class="lineno"> 2823</span>&#160; <span class="keywordflow">if</span>(params.m_ProjectionBias != <span class="keyword">nullptr</span>)</div>
2097<div class="line"><a name="l02824"></a><span class="lineno"> 2824</span>&#160; {</div>
2098<div class="line"><a name="l02825"></a><span class="lineno"> 2825</span>&#160; layer-&gt;m_ProjectionParameters.m_ProjectionBias =</div>
2099<div class="line"><a name="l02826"></a><span class="lineno"> 2826</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_ProjectionBias));</div>
2100<div class="line"><a name="l02827"></a><span class="lineno"> 2827</span>&#160; }</div>
2101<div class="line"><a name="l02828"></a><span class="lineno"> 2828</span>&#160; </div>
2102<div class="line"><a name="l02829"></a><span class="lineno"> 2829</span>&#160; }</div>
2103<div class="line"><a name="l02830"></a><span class="lineno"> 2830</span>&#160; </div>
2104<div class="line"><a name="l02831"></a><span class="lineno"> 2831</span>&#160; <span class="comment">// QLstm Peephole params</span></div>
2105<div class="line"><a name="l02832"></a><span class="lineno"> 2832</span>&#160; <span class="keywordflow">if</span>(descriptor.m_PeepholeEnabled)</div>
2106<div class="line"><a name="l02833"></a><span class="lineno"> 2833</span>&#160; {</div>
2107<div class="line"><a name="l02834"></a><span class="lineno"> 2834</span>&#160; <span class="keywordflow">if</span>(params.m_CellToForgetWeights == <span class="keyword">nullptr</span>)</div>
2108<div class="line"><a name="l02835"></a><span class="lineno"> 2835</span>&#160; {</div>
2109<div class="line"><a name="l02836"></a><span class="lineno"> 2836</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddQLstmLayer: Cell To Forget Weights cannot be NULL&quot;</span>);</div>
2110<div class="line"><a name="l02837"></a><span class="lineno"> 2837</span>&#160; }</div>
2111<div class="line"><a name="l02838"></a><span class="lineno"> 2838</span>&#160; </div>
2112<div class="line"><a name="l02839"></a><span class="lineno"> 2839</span>&#160; <span class="keywordflow">if</span>(params.m_CellToOutputWeights == <span class="keyword">nullptr</span>)</div>
2113<div class="line"><a name="l02840"></a><span class="lineno"> 2840</span>&#160; {</div>
2114<div class="line"><a name="l02841"></a><span class="lineno"> 2841</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddQLstmLayer: Cell To Output Weights cannot be NULL&quot;</span>);</div>
2115<div class="line"><a name="l02842"></a><span class="lineno"> 2842</span>&#160; }</div>
2116<div class="line"><a name="l02843"></a><span class="lineno"> 2843</span>&#160; </div>
2117<div class="line"><a name="l02844"></a><span class="lineno"> 2844</span>&#160; <span class="keywordflow">if</span>(!descriptor.m_CifgEnabled)</div>
2118<div class="line"><a name="l02845"></a><span class="lineno"> 2845</span>&#160; {</div>
2119<div class="line"><a name="l02846"></a><span class="lineno"> 2846</span>&#160; <span class="keywordflow">if</span>(params.m_CellToInputWeights == <span class="keyword">nullptr</span>)</div>
2120<div class="line"><a name="l02847"></a><span class="lineno"> 2847</span>&#160; {</div>
2121<div class="line"><a name="l02848"></a><span class="lineno"> 2848</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddQLstmLayer: Cell To Input Weights cannot be NULL&quot;</span>);</div>
2122<div class="line"><a name="l02849"></a><span class="lineno"> 2849</span>&#160; }</div>
2123<div class="line"><a name="l02850"></a><span class="lineno"> 2850</span>&#160; </div>
2124<div class="line"><a name="l02851"></a><span class="lineno"> 2851</span>&#160; layer-&gt;m_PeepholeParameters.m_CellToInputWeights =</div>
2125<div class="line"><a name="l02852"></a><span class="lineno"> 2852</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellToInputWeights));</div>
2126<div class="line"><a name="l02853"></a><span class="lineno"> 2853</span>&#160; }</div>
2127<div class="line"><a name="l02854"></a><span class="lineno"> 2854</span>&#160; </div>
2128<div class="line"><a name="l02855"></a><span class="lineno"> 2855</span>&#160; layer-&gt;m_PeepholeParameters.m_CellToForgetWeights =</div>
2129<div class="line"><a name="l02856"></a><span class="lineno"> 2856</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellToForgetWeights));</div>
2130<div class="line"><a name="l02857"></a><span class="lineno"> 2857</span>&#160; layer-&gt;m_PeepholeParameters.m_CellToOutputWeights =</div>
2131<div class="line"><a name="l02858"></a><span class="lineno"> 2858</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellToOutputWeights));</div>
2132<div class="line"><a name="l02859"></a><span class="lineno"> 2859</span>&#160; }</div>
2133<div class="line"><a name="l02860"></a><span class="lineno"> 2860</span>&#160; </div>
2134<div class="line"><a name="l02861"></a><span class="lineno"> 2861</span>&#160; <span class="comment">// QLstm Layer Normalization params</span></div>
2135<div class="line"><a name="l02862"></a><span class="lineno"> 2862</span>&#160; <span class="keywordflow">if</span>(descriptor.m_LayerNormEnabled)</div>
2136<div class="line"><a name="l02863"></a><span class="lineno"> 2863</span>&#160; {</div>
2137<div class="line"><a name="l02864"></a><span class="lineno"> 2864</span>&#160; <span class="keywordflow">if</span>(params.m_ForgetLayerNormWeights == <span class="keyword">nullptr</span>)</div>
2138<div class="line"><a name="l02865"></a><span class="lineno"> 2865</span>&#160; {</div>
2139<div class="line"><a name="l02866"></a><span class="lineno"> 2866</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddQLstmLayer: Forget layer normalization weights cannot be NULL&quot;</span>);</div>
2140<div class="line"><a name="l02867"></a><span class="lineno"> 2867</span>&#160; }</div>
2141<div class="line"><a name="l02868"></a><span class="lineno"> 2868</span>&#160; </div>
2142<div class="line"><a name="l02869"></a><span class="lineno"> 2869</span>&#160; <span class="keywordflow">if</span>(params.m_CellLayerNormWeights == <span class="keyword">nullptr</span>)</div>
2143<div class="line"><a name="l02870"></a><span class="lineno"> 2870</span>&#160; {</div>
2144<div class="line"><a name="l02871"></a><span class="lineno"> 2871</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddQLstmLayer: Cell layer normalization weights cannot be NULL&quot;</span>);</div>
2145<div class="line"><a name="l02872"></a><span class="lineno"> 2872</span>&#160; }</div>
2146<div class="line"><a name="l02873"></a><span class="lineno"> 2873</span>&#160; </div>
2147<div class="line"><a name="l02874"></a><span class="lineno"> 2874</span>&#160; <span class="keywordflow">if</span>(params.m_OutputLayerNormWeights == <span class="keyword">nullptr</span>)</div>
2148<div class="line"><a name="l02875"></a><span class="lineno"> 2875</span>&#160; {</div>
2149<div class="line"><a name="l02876"></a><span class="lineno"> 2876</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddQLstmLayer: Output layer normalization weights cannot be NULL&quot;</span>);</div>
2150<div class="line"><a name="l02877"></a><span class="lineno"> 2877</span>&#160; }</div>
2151<div class="line"><a name="l02878"></a><span class="lineno"> 2878</span>&#160; </div>
2152<div class="line"><a name="l02879"></a><span class="lineno"> 2879</span>&#160; <span class="keywordflow">if</span>(!descriptor.m_CifgEnabled)</div>
2153<div class="line"><a name="l02880"></a><span class="lineno"> 2880</span>&#160; {</div>
2154<div class="line"><a name="l02881"></a><span class="lineno"> 2881</span>&#160; <span class="keywordflow">if</span>(params.m_InputLayerNormWeights == <span class="keyword">nullptr</span>)</div>
2155<div class="line"><a name="l02882"></a><span class="lineno"> 2882</span>&#160; {</div>
2156<div class="line"><a name="l02883"></a><span class="lineno"> 2883</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddQLstmLayer: Input layer normalization weights cannot be NULL&quot;</span>);</div>
2157<div class="line"><a name="l02884"></a><span class="lineno"> 2884</span>&#160; }</div>
2158<div class="line"><a name="l02885"></a><span class="lineno"> 2885</span>&#160; </div>
2159<div class="line"><a name="l02886"></a><span class="lineno"> 2886</span>&#160; layer-&gt;m_LayerNormParameters.m_InputLayerNormWeights =</div>
2160<div class="line"><a name="l02887"></a><span class="lineno"> 2887</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputLayerNormWeights));</div>
2161<div class="line"><a name="l02888"></a><span class="lineno"> 2888</span>&#160; }</div>
2162<div class="line"><a name="l02889"></a><span class="lineno"> 2889</span>&#160; </div>
2163<div class="line"><a name="l02890"></a><span class="lineno"> 2890</span>&#160; layer-&gt;m_LayerNormParameters.m_ForgetLayerNormWeights =</div>
2164<div class="line"><a name="l02891"></a><span class="lineno"> 2891</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_ForgetLayerNormWeights));</div>
2165<div class="line"><a name="l02892"></a><span class="lineno"> 2892</span>&#160; layer-&gt;m_LayerNormParameters.m_CellLayerNormWeights =</div>
2166<div class="line"><a name="l02893"></a><span class="lineno"> 2893</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellLayerNormWeights));</div>
2167<div class="line"><a name="l02894"></a><span class="lineno"> 2894</span>&#160; layer-&gt;m_LayerNormParameters.m_OutputLayerNormWeights =</div>
2168<div class="line"><a name="l02895"></a><span class="lineno"> 2895</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_OutputLayerNormWeights));</div>
2169<div class="line"><a name="l02896"></a><span class="lineno"> 2896</span>&#160; }</div>
2170<div class="line"><a name="l02897"></a><span class="lineno"> 2897</span>&#160; <span class="keywordflow">return</span> layer;</div>
2171<div class="line"><a name="l02898"></a><span class="lineno"> 2898</span>&#160;}</div>
2172</div><!-- fragment -->
2173<p class="reference">References <a class="el" href="_q_lstm_layer_8hpp_source.html#l00083">QLstmLayer::m_BasicParameters</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00053">LstmInputParams::m_CellBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00059">LstmInputParams::m_CellLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00049">LstmInputParams::m_CellToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00048">LstmInputParams::m_CellToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00050">LstmInputParams::m_CellToOutputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00052">LstmInputParams::m_ForgetGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00058">LstmInputParams::m_ForgetLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00051">LstmInputParams::m_InputGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00057">LstmInputParams::m_InputLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00042">LstmInputParams::m_InputToCellWeights</a>, <a class="el" href="_q_lstm_layer_8hpp_source.html#l00017">QLstmBasicParameters::m_InputToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00041">LstmInputParams::m_InputToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00040">LstmInputParams::m_InputToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00043">LstmInputParams::m_InputToOutputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00054">LstmInputParams::m_OutputGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00060">LstmInputParams::m_OutputLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00056">LstmInputParams::m_ProjectionBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00055">LstmInputParams::m_ProjectionWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00046">LstmInputParams::m_RecurrentToCellWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00045">LstmInputParams::m_RecurrentToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00044">LstmInputParams::m_RecurrentToInputWeights</a>, and <a class="el" href="_lstm_params_8hpp_source.html#l00047">LstmInputParams::m_RecurrentToOutputWeights</a>.</p>
2174
2175</div>
2176</div>
2177<a id="a40067b05f30a3ab65568c826df7a8ea7"></a>
2178<h2 class="memtitle"><span class="permalink"><a href="#a40067b05f30a3ab65568c826df7a8ea7">&#9670;&nbsp;</a></span>AddQuantizedLstmLayer()</h2>
2179
2180<div class="memitem">
2181<div class="memproto">
2182 <table class="memname">
2183 <tr>
2184 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddQuantizedLstmLayer </td>
2185 <td>(</td>
2186 <td class="paramtype">const <a class="el" href="structarmnn_1_1_quantized_lstm_input_params.html">QuantizedLstmInputParams</a> &amp;&#160;</td>
2187 <td class="paramname"><em>params</em>, </td>
2188 </tr>
2189 <tr>
2190 <td class="paramkey"></td>
2191 <td></td>
2192 <td class="paramtype">const char *&#160;</td>
2193 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2194 </tr>
2195 <tr>
2196 <td></td>
2197 <td>)</td>
2198 <td></td><td></td>
2199 </tr>
2200 </table>
2201</div><div class="memdoc">
2202
2203<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02720">2720</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2204<div class="fragment"><div class="line"><a name="l02722"></a><span class="lineno"> 2722</span>&#160;{</div>
2205<div class="line"><a name="l02723"></a><span class="lineno"> 2723</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> layer = m_Graph-&gt;AddLayer&lt;QuantizedLstmLayer&gt;(name);</div>
2206<div class="line"><a name="l02724"></a><span class="lineno"> 2724</span>&#160; </div>
2207<div class="line"><a name="l02725"></a><span class="lineno"> 2725</span>&#160; <span class="comment">// InputToX weights</span></div>
2208<div class="line"><a name="l02726"></a><span class="lineno"> 2726</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_InputToInputWeights =</div>
2209<div class="line"><a name="l02727"></a><span class="lineno"> 2727</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(params.GetInputToInputWeights());</div>
2210<div class="line"><a name="l02728"></a><span class="lineno"> 2728</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_InputToForgetWeights =</div>
2211<div class="line"><a name="l02729"></a><span class="lineno"> 2729</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(params.GetInputToForgetWeights());</div>
2212<div class="line"><a name="l02730"></a><span class="lineno"> 2730</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_InputToCellWeights =</div>
2213<div class="line"><a name="l02731"></a><span class="lineno"> 2731</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(params.GetInputToCellWeights());</div>
2214<div class="line"><a name="l02732"></a><span class="lineno"> 2732</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_InputToOutputWeights =</div>
2215<div class="line"><a name="l02733"></a><span class="lineno"> 2733</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(params.GetInputToOutputWeights());</div>
2216<div class="line"><a name="l02734"></a><span class="lineno"> 2734</span>&#160; </div>
2217<div class="line"><a name="l02735"></a><span class="lineno"> 2735</span>&#160; <span class="comment">// RecurrentToX weights</span></div>
2218<div class="line"><a name="l02736"></a><span class="lineno"> 2736</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_RecurrentToInputWeights =</div>
2219<div class="line"><a name="l02737"></a><span class="lineno"> 2737</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(params.GetRecurrentToInputWeights());</div>
2220<div class="line"><a name="l02738"></a><span class="lineno"> 2738</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_RecurrentToForgetWeights =</div>
2221<div class="line"><a name="l02739"></a><span class="lineno"> 2739</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(params.GetRecurrentToForgetWeights());</div>
2222<div class="line"><a name="l02740"></a><span class="lineno"> 2740</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_RecurrentToCellWeights =</div>
2223<div class="line"><a name="l02741"></a><span class="lineno"> 2741</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(params.GetRecurrentToCellWeights());</div>
2224<div class="line"><a name="l02742"></a><span class="lineno"> 2742</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_RecurrentToOutputWeights =</div>
2225<div class="line"><a name="l02743"></a><span class="lineno"> 2743</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(params.GetRecurrentToOutputWeights());</div>
2226<div class="line"><a name="l02744"></a><span class="lineno"> 2744</span>&#160; </div>
2227<div class="line"><a name="l02745"></a><span class="lineno"> 2745</span>&#160; <span class="comment">// Bias</span></div>
2228<div class="line"><a name="l02746"></a><span class="lineno"> 2746</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_InputGateBias =</div>
2229<div class="line"><a name="l02747"></a><span class="lineno"> 2747</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(params.GetInputGateBias());</div>
2230<div class="line"><a name="l02748"></a><span class="lineno"> 2748</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_ForgetGateBias =</div>
2231<div class="line"><a name="l02749"></a><span class="lineno"> 2749</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(params.GetForgetGateBias());</div>
2232<div class="line"><a name="l02750"></a><span class="lineno"> 2750</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_CellBias =</div>
2233<div class="line"><a name="l02751"></a><span class="lineno"> 2751</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(params.GetCellBias());</div>
2234<div class="line"><a name="l02752"></a><span class="lineno"> 2752</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_OutputGateBias =</div>
2235<div class="line"><a name="l02753"></a><span class="lineno"> 2753</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(params.GetOutputGateBias());</div>
2236<div class="line"><a name="l02754"></a><span class="lineno"> 2754</span>&#160; </div>
2237<div class="line"><a name="l02755"></a><span class="lineno"> 2755</span>&#160; <span class="keywordflow">return</span> layer;</div>
2238<div class="line"><a name="l02756"></a><span class="lineno"> 2756</span>&#160;}</div>
2239</div><!-- fragment -->
2240<p class="reference">References <a class="el" href="_quantized_lstm_params_8hpp_source.html#l00108">QuantizedLstmInputParams::GetCellBias()</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.html#l00103">QuantizedLstmInputParams::GetForgetGateBias()</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.html#l00098">QuantizedLstmInputParams::GetInputGateBias()</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.html#l00068">QuantizedLstmInputParams::GetInputToCellWeights()</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.html#l00063">QuantizedLstmInputParams::GetInputToForgetWeights()</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.html#l00058">QuantizedLstmInputParams::GetInputToInputWeights()</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.html#l00073">QuantizedLstmInputParams::GetInputToOutputWeights()</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.html#l00113">QuantizedLstmInputParams::GetOutputGateBias()</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.html#l00088">QuantizedLstmInputParams::GetRecurrentToCellWeights()</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.html#l00083">QuantizedLstmInputParams::GetRecurrentToForgetWeights()</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.html#l00078">QuantizedLstmInputParams::GetRecurrentToInputWeights()</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.html#l00093">QuantizedLstmInputParams::GetRecurrentToOutputWeights()</a>, <a class="el" href="_quantized_lstm_layer_8hpp_source.html#l00017">QuantizedLstmParameters::m_InputToInputWeights</a>, and <a class="el" href="_quantized_lstm_layer_8hpp_source.html#l00049">QuantizedLstmLayer::m_QuantizedLstmParameters</a>.</p>
2241
2242</div>
2243</div>
2244<a id="a0b426a3feffc76e66d73b5761806e899"></a>
2245<h2 class="memtitle"><span class="permalink"><a href="#a0b426a3feffc76e66d73b5761806e899">&#9670;&nbsp;</a></span>AddQuantizeLayer()</h2>
2246
2247<div class="memitem">
2248<div class="memproto">
2249 <table class="memname">
2250 <tr>
2251 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddQuantizeLayer </td>
2252 <td>(</td>
2253 <td class="paramtype">const char *&#160;</td>
2254 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
2255 <td></td>
2256 </tr>
2257 </table>
2258</div><div class="memdoc">
2259
2260<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02637">2637</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2261<div class="fragment"><div class="line"><a name="l02638"></a><span class="lineno"> 2638</span>&#160;{</div>
2262<div class="line"><a name="l02639"></a><span class="lineno"> 2639</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;QuantizeLayer&gt;(name);</div>
2263<div class="line"><a name="l02640"></a><span class="lineno"> 2640</span>&#160;}</div>
2264</div><!-- fragment -->
2265</div>
2266</div>
2267<a id="a25563024ec66627ee83727244a53e944"></a>
2268<h2 class="memtitle"><span class="permalink"><a href="#a25563024ec66627ee83727244a53e944">&#9670;&nbsp;</a></span>AddRankLayer()</h2>
2269
2270<div class="memitem">
2271<div class="memproto">
2272 <table class="memname">
2273 <tr>
2274 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddRankLayer </td>
2275 <td>(</td>
2276 <td class="paramtype">const char *&#160;</td>
2277 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
2278 <td></td>
2279 </tr>
2280 </table>
2281</div><div class="memdoc">
2282
2283<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02405">2405</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2284<div class="fragment"><div class="line"><a name="l02406"></a><span class="lineno"> 2406</span>&#160;{</div>
2285<div class="line"><a name="l02407"></a><span class="lineno"> 2407</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;RankLayer&gt;(name);</div>
2286<div class="line"><a name="l02408"></a><span class="lineno"> 2408</span>&#160;}</div>
2287</div><!-- fragment -->
2288</div>
2289</div>
2290<a id="ae0cfae1ea51669892608a1a060d24fa0"></a>
2291<h2 class="memtitle"><span class="permalink"><a href="#ae0cfae1ea51669892608a1a060d24fa0">&#9670;&nbsp;</a></span>AddReduceLayer()</h2>
2292
2293<div class="memitem">
2294<div class="memproto">
2295 <table class="memname">
2296 <tr>
2297 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddReduceLayer </td>
2298 <td>(</td>
2299 <td class="paramtype">const <a class="el" href="structarmnn_1_1_reduce_descriptor.html">ReduceDescriptor</a> &amp;&#160;</td>
2300 <td class="paramname"><em>reduceDescriptor</em>, </td>
2301 </tr>
2302 <tr>
2303 <td class="paramkey"></td>
2304 <td></td>
2305 <td class="paramtype">const char *&#160;</td>
2306 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2307 </tr>
2308 <tr>
2309 <td></td>
2310 <td>)</td>
2311 <td></td><td></td>
2312 </tr>
2313 </table>
2314</div><div class="memdoc">
2315
2316<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02410">2410</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2317<div class="fragment"><div class="line"><a name="l02412"></a><span class="lineno"> 2412</span>&#160;{</div>
2318<div class="line"><a name="l02413"></a><span class="lineno"> 2413</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ReduceLayer&gt;(reduceDescriptor, name);</div>
2319<div class="line"><a name="l02414"></a><span class="lineno"> 2414</span>&#160;}</div>
2320</div><!-- fragment -->
2321</div>
2322</div>
2323<a id="a8a3380be13fba749fc4208214b049347"></a>
2324<h2 class="memtitle"><span class="permalink"><a href="#a8a3380be13fba749fc4208214b049347">&#9670;&nbsp;</a></span>AddReshapeLayer()</h2>
2325
2326<div class="memitem">
2327<div class="memproto">
2328 <table class="memname">
2329 <tr>
2330 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddReshapeLayer </td>
2331 <td>(</td>
2332 <td class="paramtype">const <a class="el" href="structarmnn_1_1_reshape_descriptor.html">ReshapeDescriptor</a> &amp;&#160;</td>
2333 <td class="paramname"><em>reshapeDescriptor</em>, </td>
2334 </tr>
2335 <tr>
2336 <td class="paramkey"></td>
2337 <td></td>
2338 <td class="paramtype">const char *&#160;</td>
2339 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2340 </tr>
2341 <tr>
2342 <td></td>
2343 <td>)</td>
2344 <td></td><td></td>
2345 </tr>
2346 </table>
2347</div><div class="memdoc">
2348
2349<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02453">2453</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2350<div class="fragment"><div class="line"><a name="l02455"></a><span class="lineno"> 2455</span>&#160;{</div>
2351<div class="line"><a name="l02456"></a><span class="lineno"> 2456</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ReshapeLayer&gt;(reshapeDescriptor, name);</div>
2352<div class="line"><a name="l02457"></a><span class="lineno"> 2457</span>&#160;}</div>
2353</div><!-- fragment -->
2354</div>
2355</div>
2356<a id="ad97411f1fcb2c30c212483d8c673506f"></a>
2357<h2 class="memtitle"><span class="permalink"><a href="#ad97411f1fcb2c30c212483d8c673506f">&#9670;&nbsp;</a></span>AddResizeLayer()</h2>
2358
2359<div class="memitem">
2360<div class="memproto">
2361 <table class="memname">
2362 <tr>
2363 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddResizeLayer </td>
2364 <td>(</td>
2365 <td class="paramtype">const <a class="el" href="structarmnn_1_1_resize_descriptor.html">ResizeDescriptor</a> &amp;&#160;</td>
2366 <td class="paramname"><em>resizeDescriptor</em>, </td>
2367 </tr>
2368 <tr>
2369 <td class="paramkey"></td>
2370 <td></td>
2371 <td class="paramtype">const char *&#160;</td>
2372 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2373 </tr>
2374 <tr>
2375 <td></td>
2376 <td>)</td>
2377 <td></td><td></td>
2378 </tr>
2379 </table>
2380</div><div class="memdoc">
2381
2382<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02416">2416</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2383<div class="fragment"><div class="line"><a name="l02417"></a><span class="lineno"> 2417</span>&#160;{</div>
2384<div class="line"><a name="l02418"></a><span class="lineno"> 2418</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ResizeLayer&gt;(resizeDescriptor, name);</div>
2385<div class="line"><a name="l02419"></a><span class="lineno"> 2419</span>&#160;}</div>
2386</div><!-- fragment -->
2387</div>
2388</div>
2389<a id="af6b8b1eccd67565e345e3977a4adc195"></a>
2390<h2 class="memtitle"><span class="permalink"><a href="#af6b8b1eccd67565e345e3977a4adc195">&#9670;&nbsp;</a></span>AddReverseV2Layer()</h2>
2391
2392<div class="memitem">
2393<div class="memproto">
2394 <table class="memname">
2395 <tr>
2396 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddReverseV2Layer </td>
2397 <td>(</td>
2398 <td class="paramtype">const char *&#160;</td>
2399 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
2400 <td></td>
2401 </tr>
2402 </table>
2403</div><div class="memdoc">
2404
2405<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l03053">3053</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2406<div class="fragment"><div class="line"><a name="l03054"></a><span class="lineno"> 3054</span>&#160;{</div>
2407<div class="line"><a name="l03055"></a><span class="lineno"> 3055</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ReverseV2Layer&gt;(name);</div>
2408<div class="line"><a name="l03056"></a><span class="lineno"> 3056</span>&#160;}</div>
2409</div><!-- fragment -->
2410</div>
2411</div>
2412<a id="a7acdb6bce75ed6621831f1a106366c14"></a>
2413<h2 class="memtitle"><span class="permalink"><a href="#a7acdb6bce75ed6621831f1a106366c14">&#9670;&nbsp;</a></span>AddScatterNdLayer()</h2>
2414
2415<div class="memitem">
2416<div class="memproto">
2417 <table class="memname">
2418 <tr>
2419 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddScatterNdLayer </td>
2420 <td>(</td>
2421 <td class="paramtype">const <a class="el" href="structarmnn_1_1_scatter_nd_descriptor.html">ScatterNdDescriptor</a> &amp;&#160;</td>
2422 <td class="paramname"><em>scatterDescriptor</em>, </td>
2423 </tr>
2424 <tr>
2425 <td class="paramkey"></td>
2426 <td></td>
2427 <td class="paramtype">const char *&#160;</td>
2428 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2429 </tr>
2430 <tr>
2431 <td></td>
2432 <td>)</td>
2433 <td></td><td></td>
2434 </tr>
2435 </table>
2436</div><div class="memdoc">
2437
2438<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l03101">3101</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2439<div class="fragment"><div class="line"><a name="l03102"></a><span class="lineno"> 3102</span>&#160;{</div>
2440<div class="line"><a name="l03103"></a><span class="lineno"> 3103</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ScatterNdLayer&gt;(desc, name);</div>
2441<div class="line"><a name="l03104"></a><span class="lineno"> 3104</span>&#160;}</div>
2442</div><!-- fragment -->
2443</div>
2444</div>
2445<a id="af9dd4b5273829b846ab83b3ae7f3defc"></a>
2446<h2 class="memtitle"><span class="permalink"><a href="#af9dd4b5273829b846ab83b3ae7f3defc">&#9670;&nbsp;</a></span>AddShapeLayer()</h2>
2447
2448<div class="memitem">
2449<div class="memproto">
2450 <table class="memname">
2451 <tr>
2452 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddShapeLayer </td>
2453 <td>(</td>
2454 <td class="paramtype">const char *&#160;</td>
2455 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
2456 <td></td>
2457 </tr>
2458 </table>
2459</div><div class="memdoc">
2460
2461<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02421">2421</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2462<div class="fragment"><div class="line"><a name="l02422"></a><span class="lineno"> 2422</span>&#160;{</div>
2463<div class="line"><a name="l02423"></a><span class="lineno"> 2423</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ShapeLayer&gt;(name);</div>
2464<div class="line"><a name="l02424"></a><span class="lineno"> 2424</span>&#160;}</div>
2465</div><!-- fragment -->
2466</div>
2467</div>
2468<a id="a8de6b047fcaff95df48dca683e1f3aa4"></a>
2469<h2 class="memtitle"><span class="permalink"><a href="#a8de6b047fcaff95df48dca683e1f3aa4">&#9670;&nbsp;</a></span>AddSliceLayer()</h2>
2470
2471<div class="memitem">
2472<div class="memproto">
2473 <table class="memname">
2474 <tr>
2475 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddSliceLayer </td>
2476 <td>(</td>
2477 <td class="paramtype">const <a class="el" href="structarmnn_1_1_slice_descriptor.html">SliceDescriptor</a> &amp;&#160;</td>
2478 <td class="paramname"><em>sliceDescriptor</em>, </td>
2479 </tr>
2480 <tr>
2481 <td class="paramkey"></td>
2482 <td></td>
2483 <td class="paramtype">const char *&#160;</td>
2484 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2485 </tr>
2486 <tr>
2487 <td></td>
2488 <td>)</td>
2489 <td></td><td></td>
2490 </tr>
2491 </table>
2492</div><div class="memdoc">
2493
2494<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02346">2346</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2495<div class="fragment"><div class="line"><a name="l02347"></a><span class="lineno"> 2347</span>&#160;{</div>
2496<div class="line"><a name="l02348"></a><span class="lineno"> 2348</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;SliceLayer&gt;(sliceDescriptor, name);</div>
2497<div class="line"><a name="l02349"></a><span class="lineno"> 2349</span>&#160;}</div>
2498</div><!-- fragment -->
2499</div>
2500</div>
2501<a id="a30528a3bd85a0dba158bd14e252bd68a"></a>
2502<h2 class="memtitle"><span class="permalink"><a href="#a30528a3bd85a0dba158bd14e252bd68a">&#9670;&nbsp;</a></span>AddSoftmaxLayer()</h2>
2503
2504<div class="memitem">
2505<div class="memproto">
2506 <table class="memname">
2507 <tr>
2508 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddSoftmaxLayer </td>
2509 <td>(</td>
2510 <td class="paramtype">const <a class="el" href="structarmnn_1_1_softmax_descriptor.html">SoftmaxDescriptor</a> &amp;&#160;</td>
2511 <td class="paramname"><em>softmaxDescriptor</em>, </td>
2512 </tr>
2513 <tr>
2514 <td class="paramkey"></td>
2515 <td></td>
2516 <td class="paramtype">const char *&#160;</td>
2517 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2518 </tr>
2519 <tr>
2520 <td></td>
2521 <td>)</td>
2522 <td></td><td></td>
2523 </tr>
2524 </table>
2525</div><div class="memdoc">
2526
2527<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02351">2351</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2528<div class="fragment"><div class="line"><a name="l02353"></a><span class="lineno"> 2353</span>&#160;{</div>
2529<div class="line"><a name="l02354"></a><span class="lineno"> 2354</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;SoftmaxLayer&gt;(softmaxDescriptor, name);</div>
2530<div class="line"><a name="l02355"></a><span class="lineno"> 2355</span>&#160;}</div>
2531</div><!-- fragment -->
2532</div>
2533</div>
2534<a id="a72b9d30e9d555bb5c35460b62faedf0d"></a>
2535<h2 class="memtitle"><span class="permalink"><a href="#a72b9d30e9d555bb5c35460b62faedf0d">&#9670;&nbsp;</a></span>AddSpaceToBatchNdLayer()</h2>
2536
2537<div class="memitem">
2538<div class="memproto">
2539 <table class="memname">
2540 <tr>
2541 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddSpaceToBatchNdLayer </td>
2542 <td>(</td>
2543 <td class="paramtype">const <a class="el" href="structarmnn_1_1_space_to_batch_nd_descriptor.html">SpaceToBatchNdDescriptor</a> &amp;&#160;</td>
2544 <td class="paramname"><em>spaceToBatchNdDescriptor</em>, </td>
2545 </tr>
2546 <tr>
2547 <td class="paramkey"></td>
2548 <td></td>
2549 <td class="paramtype">const char *&#160;</td>
2550 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2551 </tr>
2552 <tr>
2553 <td></td>
2554 <td>)</td>
2555 <td></td><td></td>
2556 </tr>
2557 </table>
2558</div><div class="memdoc">
2559
2560<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02459">2459</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2561<div class="fragment"><div class="line"><a name="l02461"></a><span class="lineno"> 2461</span>&#160;{</div>
2562<div class="line"><a name="l02462"></a><span class="lineno"> 2462</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;SpaceToBatchNdLayer&gt;(spaceToBatchNdDescriptor, name);</div>
2563<div class="line"><a name="l02463"></a><span class="lineno"> 2463</span>&#160;}</div>
2564</div><!-- fragment -->
2565</div>
2566</div>
2567<a id="a19bad0cc50526ca9f4f84a688812cdf5"></a>
2568<h2 class="memtitle"><span class="permalink"><a href="#a19bad0cc50526ca9f4f84a688812cdf5">&#9670;&nbsp;</a></span>AddSpaceToDepthLayer()</h2>
2569
2570<div class="memitem">
2571<div class="memproto">
2572 <table class="memname">
2573 <tr>
2574 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddSpaceToDepthLayer </td>
2575 <td>(</td>
2576 <td class="paramtype">const <a class="el" href="structarmnn_1_1_space_to_depth_descriptor.html">SpaceToDepthDescriptor</a> &amp;&#160;</td>
2577 <td class="paramname"><em>spaceToDepthDescriptor</em>, </td>
2578 </tr>
2579 <tr>
2580 <td class="paramkey"></td>
2581 <td></td>
2582 <td class="paramtype">const char *&#160;</td>
2583 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2584 </tr>
2585 <tr>
2586 <td></td>
2587 <td>)</td>
2588 <td></td><td></td>
2589 </tr>
2590 </table>
2591</div><div class="memdoc">
2592
2593<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02465">2465</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2594<div class="fragment"><div class="line"><a name="l02467"></a><span class="lineno"> 2467</span>&#160;{</div>
2595<div class="line"><a name="l02468"></a><span class="lineno"> 2468</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;SpaceToDepthLayer&gt;(spaceToDepthDescriptor, name);</div>
2596<div class="line"><a name="l02469"></a><span class="lineno"> 2469</span>&#160;}</div>
2597</div><!-- fragment -->
2598</div>
2599</div>
2600<a id="a6f6d81d8a4f1f85f3616e8306760061c"></a>
2601<h2 class="memtitle"><span class="permalink"><a href="#a6f6d81d8a4f1f85f3616e8306760061c">&#9670;&nbsp;</a></span>AddSplitterLayer()</h2>
2602
2603<div class="memitem">
2604<div class="memproto">
2605 <table class="memname">
2606 <tr>
2607 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddSplitterLayer </td>
2608 <td>(</td>
2609 <td class="paramtype">const <a class="el" href="structarmnn_1_1_views_descriptor.html">ViewsDescriptor</a> &amp;&#160;</td>
2610 <td class="paramname"><em>splitterDescriptor</em>, </td>
2611 </tr>
2612 <tr>
2613 <td class="paramkey"></td>
2614 <td></td>
2615 <td class="paramtype">const char *&#160;</td>
2616 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2617 </tr>
2618 <tr>
2619 <td></td>
2620 <td>)</td>
2621 <td></td><td></td>
2622 </tr>
2623 </table>
2624</div><div class="memdoc">
2625
2626<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02357">2357</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2627<div class="fragment"><div class="line"><a name="l02359"></a><span class="lineno"> 2359</span>&#160;{</div>
2628<div class="line"><a name="l02360"></a><span class="lineno"> 2360</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;SplitterLayer&gt;(splitterDescriptor, name);</div>
2629<div class="line"><a name="l02361"></a><span class="lineno"> 2361</span>&#160;}</div>
2630</div><!-- fragment -->
2631</div>
2632</div>
2633<a id="a446181daeb60b49cbcfd9f907f974ec1"></a>
2634<h2 class="memtitle"><span class="permalink"><a href="#a446181daeb60b49cbcfd9f907f974ec1">&#9670;&nbsp;</a></span>AddStackLayer()</h2>
2635
2636<div class="memitem">
2637<div class="memproto">
2638 <table class="memname">
2639 <tr>
2640 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddStackLayer </td>
2641 <td>(</td>
2642 <td class="paramtype">const <a class="el" href="structarmnn_1_1_stack_descriptor.html">StackDescriptor</a> &amp;&#160;</td>
2643 <td class="paramname"><em>stackDescriptor</em>, </td>
2644 </tr>
2645 <tr>
2646 <td class="paramkey"></td>
2647 <td></td>
2648 <td class="paramtype">const char *&#160;</td>
2649 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2650 </tr>
2651 <tr>
2652 <td></td>
2653 <td>)</td>
2654 <td></td><td></td>
2655 </tr>
2656 </table>
2657</div><div class="memdoc">
2658
2659<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02707">2707</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2660<div class="fragment"><div class="line"><a name="l02709"></a><span class="lineno"> 2709</span>&#160;{</div>
2661<div class="line"><a name="l02710"></a><span class="lineno"> 2710</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;StackLayer&gt;(stackDescriptor, name);</div>
2662<div class="line"><a name="l02711"></a><span class="lineno"> 2711</span>&#160;}</div>
2663</div><!-- fragment -->
2664</div>
2665</div>
2666<a id="a74894d085e78ff80f45fc09dd2381f08"></a>
2667<h2 class="memtitle"><span class="permalink"><a href="#a74894d085e78ff80f45fc09dd2381f08">&#9670;&nbsp;</a></span>AddStandInLayer()</h2>
2668
2669<div class="memitem">
2670<div class="memproto">
2671 <table class="memname">
2672 <tr>
2673 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddStandInLayer </td>
2674 <td>(</td>
2675 <td class="paramtype">const <a class="el" href="structarmnn_1_1_stand_in_descriptor.html">StandInDescriptor</a> &amp;&#160;</td>
2676 <td class="paramname"><em>descriptor</em>, </td>
2677 </tr>
2678 <tr>
2679 <td class="paramkey"></td>
2680 <td></td>
2681 <td class="paramtype">const char *&#160;</td>
2682 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2683 </tr>
2684 <tr>
2685 <td></td>
2686 <td>)</td>
2687 <td></td><td></td>
2688 </tr>
2689 </table>
2690</div><div class="memdoc">
2691
2692<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02714">2714</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2693<div class="fragment"><div class="line"><a name="l02716"></a><span class="lineno"> 2716</span>&#160;{</div>
2694<div class="line"><a name="l02717"></a><span class="lineno"> 2717</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;StandInLayer&gt;(desc, name);</div>
2695<div class="line"><a name="l02718"></a><span class="lineno"> 2718</span>&#160;}</div>
2696</div><!-- fragment -->
2697</div>
2698</div>
2699<a id="ac5c93cad39a690af862d49ffaec0d3c0"></a>
2700<h2 class="memtitle"><span class="permalink"><a href="#ac5c93cad39a690af862d49ffaec0d3c0">&#9670;&nbsp;</a></span>AddStridedSliceLayer()</h2>
2701
2702<div class="memitem">
2703<div class="memproto">
2704 <table class="memname">
2705 <tr>
2706 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddStridedSliceLayer </td>
2707 <td>(</td>
2708 <td class="paramtype">const <a class="el" href="structarmnn_1_1_strided_slice_descriptor.html">StridedSliceDescriptor</a> &amp;&#160;</td>
2709 <td class="paramname"><em>stridedSliceDescriptor</em>, </td>
2710 </tr>
2711 <tr>
2712 <td class="paramkey"></td>
2713 <td></td>
2714 <td class="paramtype">const char *&#160;</td>
2715 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2716 </tr>
2717 <tr>
2718 <td></td>
2719 <td>)</td>
2720 <td></td><td></td>
2721 </tr>
2722 </table>
2723</div><div class="memdoc">
2724
2725<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02647">2647</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2726<div class="fragment"><div class="line"><a name="l02649"></a><span class="lineno"> 2649</span>&#160;{</div>
2727<div class="line"><a name="l02650"></a><span class="lineno"> 2650</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;StridedSliceLayer&gt;(stridedSliceDescriptor, name);</div>
2728<div class="line"><a name="l02651"></a><span class="lineno"> 2651</span>&#160;}</div>
2729</div><!-- fragment -->
2730</div>
2731</div>
2732<a id="af13795cdf49e63d8bc3cb409592cdb9d"></a>
2733<h2 class="memtitle"><span class="permalink"><a href="#af13795cdf49e63d8bc3cb409592cdb9d">&#9670;&nbsp;</a></span>AddSubtractionLayer()</h2>
2734
2735<div class="memitem">
2736<div class="memproto">
2737 <table class="memname">
2738 <tr>
2739 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddSubtractionLayer </td>
2740 <td>(</td>
2741 <td class="paramtype">const char *&#160;</td>
2742 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
2743 <td></td>
2744 </tr>
2745 </table>
2746</div><div class="memdoc">
2747
2748<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02622">2622</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2749<div class="fragment"><div class="line"><a name="l02623"></a><span class="lineno"> 2623</span>&#160;{</div>
2750<div class="line"><a name="l02624"></a><span class="lineno"> 2624</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;SubtractionLayer&gt;(name);</div>
2751<div class="line"><a name="l02625"></a><span class="lineno"> 2625</span>&#160;}</div>
2752</div><!-- fragment -->
2753</div>
2754</div>
2755<a id="a26e69cda5fe9642f9198c24ae5fdf9bc"></a>
2756<h2 class="memtitle"><span class="permalink"><a href="#a26e69cda5fe9642f9198c24ae5fdf9bc">&#9670;&nbsp;</a></span>AddSwitchLayer()</h2>
2757
2758<div class="memitem">
2759<div class="memproto">
2760 <table class="memname">
2761 <tr>
2762 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddSwitchLayer </td>
2763 <td>(</td>
2764 <td class="paramtype">const char *&#160;</td>
2765 <td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
2766 <td></td>
2767 </tr>
2768 </table>
2769</div><div class="memdoc">
2770
2771<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02669">2669</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2772<div class="fragment"><div class="line"><a name="l02670"></a><span class="lineno"> 2670</span>&#160;{</div>
2773<div class="line"><a name="l02671"></a><span class="lineno"> 2671</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;SwitchLayer&gt;(name);</div>
2774<div class="line"><a name="l02672"></a><span class="lineno"> 2672</span>&#160;}</div>
2775</div><!-- fragment -->
2776</div>
2777</div>
2778<a id="aaeb550250a93542aef8ef68fbfdd8e98"></a>
2779<h2 class="memtitle"><span class="permalink"><a href="#aaeb550250a93542aef8ef68fbfdd8e98">&#9670;&nbsp;</a></span>AddTileLayer()</h2>
2780
2781<div class="memitem">
2782<div class="memproto">
2783 <table class="memname">
2784 <tr>
2785 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddTileLayer </td>
2786 <td>(</td>
2787 <td class="paramtype">const <a class="el" href="structarmnn_1_1_tile_descriptor.html">TileDescriptor</a> &amp;&#160;</td>
2788 <td class="paramname"><em>tileDescriptor</em>, </td>
2789 </tr>
2790 <tr>
2791 <td class="paramkey"></td>
2792 <td></td>
2793 <td class="paramtype">const char *&#160;</td>
2794 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2795 </tr>
2796 <tr>
2797 <td></td>
2798 <td>)</td>
2799 <td></td><td></td>
2800 </tr>
2801 </table>
2802</div><div class="memdoc">
2803
2804<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l03058">3058</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2805<div class="fragment"><div class="line"><a name="l03059"></a><span class="lineno"> 3059</span>&#160;{</div>
2806<div class="line"><a name="l03060"></a><span class="lineno"> 3060</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;TileLayer&gt;(desc, name);</div>
2807<div class="line"><a name="l03061"></a><span class="lineno"> 3061</span>&#160;}</div>
2808</div><!-- fragment -->
2809</div>
2810</div>
2811<a id="a41fd7b56923d5625bac2cbfebed1a393"></a>
2812<h2 class="memtitle"><span class="permalink"><a href="#a41fd7b56923d5625bac2cbfebed1a393">&#9670;&nbsp;</a></span>AddTransposeConvolution2dLayer()</h2>
2813
2814<div class="memitem">
2815<div class="memproto">
2816 <table class="memname">
2817 <tr>
2818 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddTransposeConvolution2dLayer </td>
2819 <td>(</td>
2820 <td class="paramtype">const <a class="el" href="structarmnn_1_1_transpose_convolution2d_descriptor.html">TransposeConvolution2dDescriptor</a> &amp;&#160;</td>
2821 <td class="paramname"><em>descriptor</em>, </td>
2822 </tr>
2823 <tr>
2824 <td class="paramkey"></td>
2825 <td></td>
2826 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
2827 <td class="paramname"><em>weights</em>, </td>
2828 </tr>
2829 <tr>
2830 <td class="paramkey"></td>
2831 <td></td>
2832 <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &gt; &amp;&#160;</td>
2833 <td class="paramname"><em>biases</em>, </td>
2834 </tr>
2835 <tr>
2836 <td class="paramkey"></td>
2837 <td></td>
2838 <td class="paramtype">const char *&#160;</td>
2839 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2840 </tr>
2841 <tr>
2842 <td></td>
2843 <td>)</td>
2844 <td></td><td></td>
2845 </tr>
2846 </table>
2847</div><div class="memdoc">
2848
2849<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02679">2679</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2850<div class="fragment"><div class="line"><a name="l02683"></a><span class="lineno"> 2683</span>&#160;{</div>
2851<div class="line"><a name="l02684"></a><span class="lineno"> 2684</span>&#160; <span class="keywordflow">if</span> (descriptor.m_BiasEnabled &amp;&amp; !biases.has_value())</div>
2852<div class="line"><a name="l02685"></a><span class="lineno"> 2685</span>&#160; {</div>
2853<div class="line"><a name="l02686"></a><span class="lineno"> 2686</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddTransposeConvolution2dLayer: Biases cannot be empty&quot;</span>);</div>
2854<div class="line"><a name="l02687"></a><span class="lineno"> 2687</span>&#160; }</div>
2855<div class="line"><a name="l02688"></a><span class="lineno"> 2688</span>&#160; </div>
2856<div class="line"><a name="l02689"></a><span class="lineno"> 2689</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> layer = m_Graph-&gt;AddLayer&lt;TransposeConvolution2dLayer&gt;(descriptor, name);</div>
2857<div class="line"><a name="l02690"></a><span class="lineno"> 2690</span>&#160; </div>
2858<div class="line"><a name="l02691"></a><span class="lineno"> 2691</span>&#160; layer-&gt;m_Weight = std::make_shared&lt;ScopedTensorHandle&gt;(weights);</div>
2859<div class="line"><a name="l02692"></a><span class="lineno"> 2692</span>&#160; </div>
2860<div class="line"><a name="l02693"></a><span class="lineno"> 2693</span>&#160; <span class="keywordflow">if</span> (descriptor.m_BiasEnabled)</div>
2861<div class="line"><a name="l02694"></a><span class="lineno"> 2694</span>&#160; {</div>
2862<div class="line"><a name="l02695"></a><span class="lineno"> 2695</span>&#160; layer-&gt;m_Bias = std::make_shared&lt;ScopedTensorHandle&gt;(biases.value());</div>
2863<div class="line"><a name="l02696"></a><span class="lineno"> 2696</span>&#160; }</div>
2864<div class="line"><a name="l02697"></a><span class="lineno"> 2697</span>&#160; </div>
2865<div class="line"><a name="l02698"></a><span class="lineno"> 2698</span>&#160; <span class="keywordflow">return</span> layer;</div>
2866<div class="line"><a name="l02699"></a><span class="lineno"> 2699</span>&#160;}</div>
2867</div><!-- fragment -->
2868<p class="reference">References <a class="el" href="_optional_8hpp_source.html#l00053">OptionalBase::has_value()</a>, <a class="el" href="_descriptors_8hpp_source.html#l01481">TransposeConvolution2dDescriptor::m_BiasEnabled</a>, <a class="el" href="_transpose_convolution2d_layer_8hpp_source.html#l00019">TransposeConvolution2dLayer::m_Weight</a>, and <a class="el" href="_optional_8hpp_source.html#l00146">OptionalReferenceSwitch&lt; std::is_reference&lt; T &gt;::value, T &gt;::value()</a>.</p>
2869
2870</div>
2871</div>
2872<a id="ab067ba4ee9416d93abb8a52f3dc8feba"></a>
2873<h2 class="memtitle"><span class="permalink"><a href="#ab067ba4ee9416d93abb8a52f3dc8feba">&#9670;&nbsp;</a></span>AddTransposeLayer()</h2>
2874
2875<div class="memitem">
2876<div class="memproto">
2877 <table class="memname">
2878 <tr>
2879 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddTransposeLayer </td>
2880 <td>(</td>
2881 <td class="paramtype">const <a class="el" href="structarmnn_1_1_transpose_descriptor.html">TransposeDescriptor</a> &amp;&#160;</td>
2882 <td class="paramname"><em>transposeDescriptor</em>, </td>
2883 </tr>
2884 <tr>
2885 <td class="paramkey"></td>
2886 <td></td>
2887 <td class="paramtype">const char *&#160;</td>
2888 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2889 </tr>
2890 <tr>
2891 <td></td>
2892 <td>)</td>
2893 <td></td><td></td>
2894 </tr>
2895 </table>
2896</div><div class="memdoc">
2897
2898<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02701">2701</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2899<div class="fragment"><div class="line"><a name="l02703"></a><span class="lineno"> 2703</span>&#160;{</div>
2900<div class="line"><a name="l02704"></a><span class="lineno"> 2704</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;TransposeLayer&gt;(transposeDescriptor, name);</div>
2901<div class="line"><a name="l02705"></a><span class="lineno"> 2705</span>&#160;}</div>
2902</div><!-- fragment -->
2903</div>
2904</div>
2905<a id="aba22dcdeed6e7c489aea6eb798c0a10a"></a>
2906<h2 class="memtitle"><span class="permalink"><a href="#aba22dcdeed6e7c489aea6eb798c0a10a">&#9670;&nbsp;</a></span>AddUnidirectionalSequenceLstmLayer()</h2>
2907
2908<div class="memitem">
2909<div class="memproto">
2910 <table class="memname">
2911 <tr>
2912 <td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddUnidirectionalSequenceLstmLayer </td>
2913 <td>(</td>
2914 <td class="paramtype">const <a class="el" href="namespacearmnn.html#ae6c5f1b51bd32133c4dcc632045d6b58">UnidirectionalSequenceLstmDescriptor</a> &amp;&#160;</td>
2915 <td class="paramname"><em>descriptor</em>, </td>
2916 </tr>
2917 <tr>
2918 <td class="paramkey"></td>
2919 <td></td>
2920 <td class="paramtype">const <a class="el" href="structarmnn_1_1_lstm_input_params.html">LstmInputParams</a> &amp;&#160;</td>
2921 <td class="paramname"><em>params</em>, </td>
2922 </tr>
2923 <tr>
2924 <td class="paramkey"></td>
2925 <td></td>
2926 <td class="paramtype">const char *&#160;</td>
2927 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
2928 </tr>
2929 <tr>
2930 <td></td>
2931 <td>)</td>
2932 <td></td><td></td>
2933 </tr>
2934 </table>
2935</div><div class="memdoc">
2936
2937<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02906">2906</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
2938<div class="fragment"><div class="line"><a name="l02910"></a><span class="lineno"> 2910</span>&#160;{</div>
2939<div class="line"><a name="l02911"></a><span class="lineno"> 2911</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> layer = m_Graph-&gt;AddLayer&lt;UnidirectionalSequenceLstmLayer&gt;(descriptor, name);</div>
2940<div class="line"><a name="l02912"></a><span class="lineno"> 2912</span>&#160; </div>
2941<div class="line"><a name="l02913"></a><span class="lineno"> 2913</span>&#160; <span class="comment">//Lstm Basic Parameters</span></div>
2942<div class="line"><a name="l02914"></a><span class="lineno"> 2914</span>&#160; layer-&gt;m_BasicParameters.m_InputToForgetWeights =</div>
2943<div class="line"><a name="l02915"></a><span class="lineno"> 2915</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputToForgetWeights));</div>
2944<div class="line"><a name="l02916"></a><span class="lineno"> 2916</span>&#160; layer-&gt;m_BasicParameters.m_InputToCellWeights =</div>
2945<div class="line"><a name="l02917"></a><span class="lineno"> 2917</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputToCellWeights));</div>
2946<div class="line"><a name="l02918"></a><span class="lineno"> 2918</span>&#160; layer-&gt;m_BasicParameters.m_InputToOutputWeights =</div>
2947<div class="line"><a name="l02919"></a><span class="lineno"> 2919</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputToOutputWeights));</div>
2948<div class="line"><a name="l02920"></a><span class="lineno"> 2920</span>&#160; layer-&gt;m_BasicParameters.m_RecurrentToForgetWeights =</div>
2949<div class="line"><a name="l02921"></a><span class="lineno"> 2921</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_RecurrentToForgetWeights));</div>
2950<div class="line"><a name="l02922"></a><span class="lineno"> 2922</span>&#160; layer-&gt;m_BasicParameters.m_RecurrentToCellWeights =</div>
2951<div class="line"><a name="l02923"></a><span class="lineno"> 2923</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_RecurrentToCellWeights));</div>
2952<div class="line"><a name="l02924"></a><span class="lineno"> 2924</span>&#160; layer-&gt;m_BasicParameters.m_RecurrentToOutputWeights =</div>
2953<div class="line"><a name="l02925"></a><span class="lineno"> 2925</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_RecurrentToOutputWeights));</div>
2954<div class="line"><a name="l02926"></a><span class="lineno"> 2926</span>&#160; layer-&gt;m_BasicParameters.m_ForgetGateBias =</div>
2955<div class="line"><a name="l02927"></a><span class="lineno"> 2927</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_ForgetGateBias));</div>
2956<div class="line"><a name="l02928"></a><span class="lineno"> 2928</span>&#160; layer-&gt;m_BasicParameters.m_CellBias =</div>
2957<div class="line"><a name="l02929"></a><span class="lineno"> 2929</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellBias));</div>
2958<div class="line"><a name="l02930"></a><span class="lineno"> 2930</span>&#160; layer-&gt;m_BasicParameters.m_OutputGateBias =</div>
2959<div class="line"><a name="l02931"></a><span class="lineno"> 2931</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_OutputGateBias));</div>
2960<div class="line"><a name="l02932"></a><span class="lineno"> 2932</span>&#160; </div>
2961<div class="line"><a name="l02933"></a><span class="lineno"> 2933</span>&#160; <span class="comment">//Lstm Cifg parameters</span></div>
2962<div class="line"><a name="l02934"></a><span class="lineno"> 2934</span>&#160; <span class="keywordflow">if</span>(!descriptor.m_CifgEnabled)</div>
2963<div class="line"><a name="l02935"></a><span class="lineno"> 2935</span>&#160; {</div>
2964<div class="line"><a name="l02936"></a><span class="lineno"> 2936</span>&#160; <span class="keywordflow">if</span>(params.m_InputToInputWeights == <span class="keyword">nullptr</span>)</div>
2965<div class="line"><a name="l02937"></a><span class="lineno"> 2937</span>&#160; {</div>
2966<div class="line"><a name="l02938"></a><span class="lineno"> 2938</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddUnidirectionalSequenceLstmLayer: Input To Input Weights cannot be NULL &quot;</span></div>
2967<div class="line"><a name="l02939"></a><span class="lineno"> 2939</span>&#160; <span class="stringliteral">&quot;when CIFG is disabled.&quot;</span>);</div>
2968<div class="line"><a name="l02940"></a><span class="lineno"> 2940</span>&#160; }</div>
2969<div class="line"><a name="l02941"></a><span class="lineno"> 2941</span>&#160; <span class="keywordflow">if</span>(params.m_RecurrentToInputWeights == <span class="keyword">nullptr</span>)</div>
2970<div class="line"><a name="l02942"></a><span class="lineno"> 2942</span>&#160; {</div>
2971<div class="line"><a name="l02943"></a><span class="lineno"> 2943</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(</div>
2972<div class="line"><a name="l02944"></a><span class="lineno"> 2944</span>&#160; <span class="stringliteral">&quot;AddUnidirectionalSequenceLstmLayer: Recurrent To Input Weights cannot be NULL &quot;</span></div>
2973<div class="line"><a name="l02945"></a><span class="lineno"> 2945</span>&#160; <span class="stringliteral">&quot;when CIFG is disabled.&quot;</span>);</div>
2974<div class="line"><a name="l02946"></a><span class="lineno"> 2946</span>&#160; }</div>
2975<div class="line"><a name="l02947"></a><span class="lineno"> 2947</span>&#160; <span class="keywordflow">if</span>(params.m_InputGateBias == <span class="keyword">nullptr</span>)</div>
2976<div class="line"><a name="l02948"></a><span class="lineno"> 2948</span>&#160; {</div>
2977<div class="line"><a name="l02949"></a><span class="lineno"> 2949</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddUnidirectionalSequenceLstmLayer: Input Gate Bias cannot be NULL &quot;</span></div>
2978<div class="line"><a name="l02950"></a><span class="lineno"> 2950</span>&#160; <span class="stringliteral">&quot;when CIFG is disabled.&quot;</span>);</div>
2979<div class="line"><a name="l02951"></a><span class="lineno"> 2951</span>&#160; }</div>
2980<div class="line"><a name="l02952"></a><span class="lineno"> 2952</span>&#160; layer-&gt;m_CifgParameters.m_InputToInputWeights =</div>
2981<div class="line"><a name="l02953"></a><span class="lineno"> 2953</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputToInputWeights));</div>
2982<div class="line"><a name="l02954"></a><span class="lineno"> 2954</span>&#160; layer-&gt;m_CifgParameters.m_RecurrentToInputWeights =</div>
2983<div class="line"><a name="l02955"></a><span class="lineno"> 2955</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_RecurrentToInputWeights));</div>
2984<div class="line"><a name="l02956"></a><span class="lineno"> 2956</span>&#160; layer-&gt;m_CifgParameters.m_InputGateBias =</div>
2985<div class="line"><a name="l02957"></a><span class="lineno"> 2957</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputGateBias));</div>
2986<div class="line"><a name="l02958"></a><span class="lineno"> 2958</span>&#160; }</div>
2987<div class="line"><a name="l02959"></a><span class="lineno"> 2959</span>&#160; </div>
2988<div class="line"><a name="l02960"></a><span class="lineno"> 2960</span>&#160; <span class="comment">//Lstm projection parameters</span></div>
2989<div class="line"><a name="l02961"></a><span class="lineno"> 2961</span>&#160; <span class="keywordflow">if</span>(descriptor.m_ProjectionEnabled)</div>
2990<div class="line"><a name="l02962"></a><span class="lineno"> 2962</span>&#160; {</div>
2991<div class="line"><a name="l02963"></a><span class="lineno"> 2963</span>&#160; <span class="keywordflow">if</span>(params.m_ProjectionWeights == <span class="keyword">nullptr</span>)</div>
2992<div class="line"><a name="l02964"></a><span class="lineno"> 2964</span>&#160; {</div>
2993<div class="line"><a name="l02965"></a><span class="lineno"> 2965</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddUnidirectionalSequenceLstmLayer: Projection Weights cannot be NULL &quot;</span></div>
2994<div class="line"><a name="l02966"></a><span class="lineno"> 2966</span>&#160; <span class="stringliteral">&quot;when projection is enabled.&quot;</span>);</div>
2995<div class="line"><a name="l02967"></a><span class="lineno"> 2967</span>&#160; }</div>
2996<div class="line"><a name="l02968"></a><span class="lineno"> 2968</span>&#160; layer-&gt;m_ProjectionParameters.m_ProjectionWeights =</div>
2997<div class="line"><a name="l02969"></a><span class="lineno"> 2969</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_ProjectionWeights));</div>
2998<div class="line"><a name="l02970"></a><span class="lineno"> 2970</span>&#160; <span class="keywordflow">if</span>(params.m_ProjectionBias != <span class="keyword">nullptr</span>)</div>
2999<div class="line"><a name="l02971"></a><span class="lineno"> 2971</span>&#160; {</div>
3000<div class="line"><a name="l02972"></a><span class="lineno"> 2972</span>&#160; layer-&gt;m_ProjectionParameters.m_ProjectionBias =</div>
3001<div class="line"><a name="l02973"></a><span class="lineno"> 2973</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_ProjectionBias));</div>
3002<div class="line"><a name="l02974"></a><span class="lineno"> 2974</span>&#160; }</div>
3003<div class="line"><a name="l02975"></a><span class="lineno"> 2975</span>&#160; }</div>
3004<div class="line"><a name="l02976"></a><span class="lineno"> 2976</span>&#160; </div>
3005<div class="line"><a name="l02977"></a><span class="lineno"> 2977</span>&#160; <span class="comment">//Lstm Peephole params</span></div>
3006<div class="line"><a name="l02978"></a><span class="lineno"> 2978</span>&#160; <span class="keywordflow">if</span>(descriptor.m_PeepholeEnabled)</div>
3007<div class="line"><a name="l02979"></a><span class="lineno"> 2979</span>&#160; {</div>
3008<div class="line"><a name="l02980"></a><span class="lineno"> 2980</span>&#160; <span class="keywordflow">if</span>(!descriptor.m_CifgEnabled)</div>
3009<div class="line"><a name="l02981"></a><span class="lineno"> 2981</span>&#160; {</div>
3010<div class="line"><a name="l02982"></a><span class="lineno"> 2982</span>&#160; <span class="keywordflow">if</span>(params.m_CellToInputWeights == <span class="keyword">nullptr</span>)</div>
3011<div class="line"><a name="l02983"></a><span class="lineno"> 2983</span>&#160; {</div>
3012<div class="line"><a name="l02984"></a><span class="lineno"> 2984</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddUnidirectionalSequenceLstmLayer: Cell To Input Weights &quot;</span></div>
3013<div class="line"><a name="l02985"></a><span class="lineno"> 2985</span>&#160; <span class="stringliteral">&quot;cannot be NULL when Peephole is enabled and CIFG disabled.&quot;</span>);</div>
3014<div class="line"><a name="l02986"></a><span class="lineno"> 2986</span>&#160; }</div>
3015<div class="line"><a name="l02987"></a><span class="lineno"> 2987</span>&#160; </div>
3016<div class="line"><a name="l02988"></a><span class="lineno"> 2988</span>&#160; layer-&gt;m_PeepholeParameters.m_CellToInputWeights =</div>
3017<div class="line"><a name="l02989"></a><span class="lineno"> 2989</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellToInputWeights));</div>
3018<div class="line"><a name="l02990"></a><span class="lineno"> 2990</span>&#160; }</div>
3019<div class="line"><a name="l02991"></a><span class="lineno"> 2991</span>&#160; </div>
3020<div class="line"><a name="l02992"></a><span class="lineno"> 2992</span>&#160; <span class="keywordflow">if</span>(params.m_CellToForgetWeights == <span class="keyword">nullptr</span>)</div>
3021<div class="line"><a name="l02993"></a><span class="lineno"> 2993</span>&#160; {</div>
3022<div class="line"><a name="l02994"></a><span class="lineno"> 2994</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddUnidirectionalSequenceLstmLayer: Cell To Forget Weights cannot be NULL &quot;</span></div>
3023<div class="line"><a name="l02995"></a><span class="lineno"> 2995</span>&#160; <span class="stringliteral">&quot;when Peephole is enabled.&quot;</span>);</div>
3024<div class="line"><a name="l02996"></a><span class="lineno"> 2996</span>&#160; }</div>
3025<div class="line"><a name="l02997"></a><span class="lineno"> 2997</span>&#160; <span class="keywordflow">if</span>(params.m_CellToOutputWeights == <span class="keyword">nullptr</span>)</div>
3026<div class="line"><a name="l02998"></a><span class="lineno"> 2998</span>&#160; {</div>
3027<div class="line"><a name="l02999"></a><span class="lineno"> 2999</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddUnidirectionalSequenceLstmLayer: Cell To Output Weights cannot be NULL &quot;</span></div>
3028<div class="line"><a name="l03000"></a><span class="lineno"> 3000</span>&#160; <span class="stringliteral">&quot;when Peephole is enabled.&quot;</span>);</div>
3029<div class="line"><a name="l03001"></a><span class="lineno"> 3001</span>&#160; }</div>
3030<div class="line"><a name="l03002"></a><span class="lineno"> 3002</span>&#160; </div>
3031<div class="line"><a name="l03003"></a><span class="lineno"> 3003</span>&#160; layer-&gt;m_PeepholeParameters.m_CellToForgetWeights =</div>
3032<div class="line"><a name="l03004"></a><span class="lineno"> 3004</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellToForgetWeights));</div>
3033<div class="line"><a name="l03005"></a><span class="lineno"> 3005</span>&#160; layer-&gt;m_PeepholeParameters.m_CellToOutputWeights =</div>
3034<div class="line"><a name="l03006"></a><span class="lineno"> 3006</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellToOutputWeights));</div>
3035<div class="line"><a name="l03007"></a><span class="lineno"> 3007</span>&#160; }</div>
3036<div class="line"><a name="l03008"></a><span class="lineno"> 3008</span>&#160; </div>
3037<div class="line"><a name="l03009"></a><span class="lineno"> 3009</span>&#160; <span class="comment">//Lstm Layer Normalization params</span></div>
3038<div class="line"><a name="l03010"></a><span class="lineno"> 3010</span>&#160; <span class="keywordflow">if</span>(descriptor.m_LayerNormEnabled)</div>
3039<div class="line"><a name="l03011"></a><span class="lineno"> 3011</span>&#160; {</div>
3040<div class="line"><a name="l03012"></a><span class="lineno"> 3012</span>&#160; <span class="keywordflow">if</span>(!descriptor.m_CifgEnabled)</div>
3041<div class="line"><a name="l03013"></a><span class="lineno"> 3013</span>&#160; {</div>
3042<div class="line"><a name="l03014"></a><span class="lineno"> 3014</span>&#160; <span class="keywordflow">if</span>(params.m_InputLayerNormWeights == <span class="keyword">nullptr</span>)</div>
3043<div class="line"><a name="l03015"></a><span class="lineno"> 3015</span>&#160; {</div>
3044<div class="line"><a name="l03016"></a><span class="lineno"> 3016</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddUnidirectionalSequenceLstmLayer: Input layer normalization weights &quot;</span></div>
3045<div class="line"><a name="l03017"></a><span class="lineno"> 3017</span>&#160; <span class="stringliteral">&quot;cannot be NULL when layer normalization is enabled and CIFG disabled.&quot;</span>);</div>
3046<div class="line"><a name="l03018"></a><span class="lineno"> 3018</span>&#160; }</div>
3047<div class="line"><a name="l03019"></a><span class="lineno"> 3019</span>&#160; layer-&gt;m_LayerNormParameters.m_InputLayerNormWeights =</div>
3048<div class="line"><a name="l03020"></a><span class="lineno"> 3020</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_InputLayerNormWeights));</div>
3049<div class="line"><a name="l03021"></a><span class="lineno"> 3021</span>&#160; }</div>
3050<div class="line"><a name="l03022"></a><span class="lineno"> 3022</span>&#160; </div>
3051<div class="line"><a name="l03023"></a><span class="lineno"> 3023</span>&#160; <span class="keywordflow">if</span>(params.m_ForgetLayerNormWeights == <span class="keyword">nullptr</span>)</div>
3052<div class="line"><a name="l03024"></a><span class="lineno"> 3024</span>&#160; {</div>
3053<div class="line"><a name="l03025"></a><span class="lineno"> 3025</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddUnidirectionalSequenceLstmLayer: Forget layer normalization weights &quot;</span></div>
3054<div class="line"><a name="l03026"></a><span class="lineno"> 3026</span>&#160; <span class="stringliteral">&quot;cannot be NULL when layer normalization is enabled.&quot;</span>);</div>
3055<div class="line"><a name="l03027"></a><span class="lineno"> 3027</span>&#160; }</div>
3056<div class="line"><a name="l03028"></a><span class="lineno"> 3028</span>&#160; <span class="keywordflow">if</span>(params.m_CellLayerNormWeights == <span class="keyword">nullptr</span>)</div>
3057<div class="line"><a name="l03029"></a><span class="lineno"> 3029</span>&#160; {</div>
3058<div class="line"><a name="l03030"></a><span class="lineno"> 3030</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddUnidirectionalSequenceLstmLayer: Cell layer normalization weights &quot;</span></div>
3059<div class="line"><a name="l03031"></a><span class="lineno"> 3031</span>&#160; <span class="stringliteral">&quot;cannot be NULL when layer normalization is enabled.&quot;</span>);</div>
3060<div class="line"><a name="l03032"></a><span class="lineno"> 3032</span>&#160; }</div>
3061<div class="line"><a name="l03033"></a><span class="lineno"> 3033</span>&#160; <span class="keywordflow">if</span>(params.m_OutputLayerNormWeights == <span class="keyword">nullptr</span>)</div>
3062<div class="line"><a name="l03034"></a><span class="lineno"> 3034</span>&#160; {</div>
3063<div class="line"><a name="l03035"></a><span class="lineno"> 3035</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddUnidirectionalSequenceLstmLayer: Output layer normalization weights &quot;</span></div>
3064<div class="line"><a name="l03036"></a><span class="lineno"> 3036</span>&#160; <span class="stringliteral">&quot;cannot be NULL when layer normalization is enabled.&quot;</span>);</div>
3065<div class="line"><a name="l03037"></a><span class="lineno"> 3037</span>&#160; }</div>
3066<div class="line"><a name="l03038"></a><span class="lineno"> 3038</span>&#160; layer-&gt;m_LayerNormParameters.m_ForgetLayerNormWeights =</div>
3067<div class="line"><a name="l03039"></a><span class="lineno"> 3039</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_ForgetLayerNormWeights));</div>
3068<div class="line"><a name="l03040"></a><span class="lineno"> 3040</span>&#160; layer-&gt;m_LayerNormParameters.m_CellLayerNormWeights =</div>
3069<div class="line"><a name="l03041"></a><span class="lineno"> 3041</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_CellLayerNormWeights));</div>
3070<div class="line"><a name="l03042"></a><span class="lineno"> 3042</span>&#160; layer-&gt;m_LayerNormParameters.m_OutputLayerNormWeights =</div>
3071<div class="line"><a name="l03043"></a><span class="lineno"> 3043</span>&#160; std::make_shared&lt;ScopedTensorHandle&gt;(*(params.m_OutputLayerNormWeights));</div>
3072<div class="line"><a name="l03044"></a><span class="lineno"> 3044</span>&#160; }</div>
3073<div class="line"><a name="l03045"></a><span class="lineno"> 3045</span>&#160; <span class="keywordflow">return</span> layer;</div>
3074<div class="line"><a name="l03046"></a><span class="lineno"> 3046</span>&#160;}</div>
3075</div><!-- fragment -->
3076<p class="reference">References <a class="el" href="_unidirectional_sequence_lstm_layer_8hpp_source.html#l00020">UnidirectionalSequenceLstmLayer::m_BasicParameters</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00053">LstmInputParams::m_CellBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00059">LstmInputParams::m_CellLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00049">LstmInputParams::m_CellToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00048">LstmInputParams::m_CellToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00050">LstmInputParams::m_CellToOutputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00052">LstmInputParams::m_ForgetGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00058">LstmInputParams::m_ForgetLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00051">LstmInputParams::m_InputGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00057">LstmInputParams::m_InputLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00042">LstmInputParams::m_InputToCellWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00041">LstmInputParams::m_InputToForgetWeights</a>, <a class="el" href="_lstm_parameters_8hpp_source.html#l00057">LstmBasicParameters::m_InputToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00040">LstmInputParams::m_InputToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00043">LstmInputParams::m_InputToOutputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00054">LstmInputParams::m_OutputGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00060">LstmInputParams::m_OutputLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00056">LstmInputParams::m_ProjectionBias</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00055">LstmInputParams::m_ProjectionWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00046">LstmInputParams::m_RecurrentToCellWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00045">LstmInputParams::m_RecurrentToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.html#l00044">LstmInputParams::m_RecurrentToInputWeights</a>, and <a class="el" href="_lstm_params_8hpp_source.html#l00047">LstmInputParams::m_RecurrentToOutputWeights</a>.</p>
3077
3078</div>
3079</div>
3080<a id="a72032c65bf8b8acf09b564b7d80078c5"></a>
3081<h2 class="memtitle"><span class="permalink"><a href="#a72032c65bf8b8acf09b564b7d80078c5">&#9670;&nbsp;</a></span>ExecuteStrategy()</h2>
3082
3083<div class="memitem">
3084<div class="memproto">
3085 <table class="memname">
3086 <tr>
3087 <td class="memname">void ExecuteStrategy </td>
3088 <td>(</td>
3089 <td class="paramtype"><a class="el" href="classarmnn_1_1_i_strategy.html">IStrategy</a> &amp;&#160;</td>
3090 <td class="paramname"><em>strategy</em></td><td>)</td>
3091 <td> const</td>
3092 </tr>
3093 </table>
3094</div><div class="memdoc">
3095
3096<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l03106">3106</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
3097<div class="fragment"><div class="line"><a name="l03107"></a><span class="lineno"> 3107</span>&#160;{</div>
3098<div class="line"><a name="l03108"></a><span class="lineno"> 3108</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> layer : <a class="code" href="classarmnn_1_1_network_impl.html#afe0a4f719f9752a405e71878da7012ba">GetGraph</a>())</div>
3099<div class="line"><a name="l03109"></a><span class="lineno"> 3109</span>&#160; {</div>
3100<div class="line"><a name="l03110"></a><span class="lineno"> 3110</span>&#160; layer-&gt;ExecuteStrategy(strategy);</div>
3101<div class="line"><a name="l03111"></a><span class="lineno"> 3111</span>&#160; };</div>
3102<div class="line"><a name="l03112"></a><span class="lineno"> 3112</span>&#160;}</div>
3103</div><!-- fragment -->
3104<p class="reference">References <a class="el" href="_network_8hpp_source.html#l00038">NetworkImpl::GetGraph()</a>.</p>
3105
3106</div>
3107</div>
3108<a id="afe0a4f719f9752a405e71878da7012ba"></a>
3109<h2 class="memtitle"><span class="permalink"><a href="#afe0a4f719f9752a405e71878da7012ba">&#9670;&nbsp;</a></span>GetGraph()</h2>
3110
3111<div class="memitem">
3112<div class="memproto">
3113<table class="mlabels">
3114 <tr>
3115 <td class="mlabels-left">
3116 <table class="memname">
3117 <tr>
3118 <td class="memname">const <a class="el" href="classarmnn_1_1_graph.html">Graph</a>&amp; GetGraph </td>
3119 <td>(</td>
3120 <td class="paramname"></td><td>)</td>
3121 <td> const</td>
3122 </tr>
3123 </table>
3124 </td>
3125 <td class="mlabels-right">
3126<span class="mlabels"><span class="mlabel">inline</span></span> </td>
3127 </tr>
3128</table>
3129</div><div class="memdoc">
3130
3131<p class="definition">Definition at line <a class="el" href="_network_8hpp_source.html#l00038">38</a> of file <a class="el" href="_network_8hpp_source.html">Network.hpp</a>.</p>
3132<div class="fragment"><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; { <span class="keywordflow">return</span> *m_Graph; }</div>
3133</div><!-- fragment -->
3134<p class="reference">Referenced by <a class="el" href="_network_8cpp_source.html#l03106">NetworkImpl::ExecuteStrategy()</a>.</p>
3135
3136</div>
3137</div>
3138<a id="aff3fde909d22ed157046682e70129259"></a>
3139<h2 class="memtitle"><span class="permalink"><a href="#aff3fde909d22ed157046682e70129259">&#9670;&nbsp;</a></span>PrintGraph()</h2>
3140
3141<div class="memitem">
3142<div class="memproto">
3143 <table class="memname">
3144 <tr>
3145 <td class="memname"><a class="el" href="namespacearmnn.html#a67a0db04d321a74b7e7fcfd3f1a3f70b">Status</a> PrintGraph </td>
3146 <td>(</td>
3147 <td class="paramname"></td><td>)</td>
3148 <td></td>
3149 </tr>
3150 </table>
3151</div><div class="memdoc">
3152
3153<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l02195">2195</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
3154<div class="fragment"><div class="line"><a name="l02196"></a><span class="lineno"> 2196</span>&#160;{</div>
3155<div class="line"><a name="l02197"></a><span class="lineno"> 2197</span>&#160; m_Graph-&gt;Print();</div>
3156<div class="line"><a name="l02198"></a><span class="lineno"> 2198</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearmnn.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba505a83f220c02df2f85c3810cd9ceb38">Status::Success</a>;</div>
3157<div class="line"><a name="l02199"></a><span class="lineno"> 2199</span>&#160;}</div>
3158</div><!-- fragment -->
3159<p class="reference">References <a class="el" href="namespacearmnn.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba505a83f220c02df2f85c3810cd9ceb38">armnn::Success</a>.</p>
3160
3161</div>
3162</div>
3163<hr/>The documentation for this class was generated from the following files:<ul>
3164<li>src/armnn/<a class="el" href="_network_8hpp_source.html">Network.hpp</a></li>
3165<li>src/armnn/<a class="el" href="_network_8cpp_source.html">Network.cpp</a></li>
3166</ul>
3167</div><!-- contents -->
3168</div><!-- doc-content -->
3169<div class="ttc" id="aclassarmnn_1_1_network_impl_html_afe0a4f719f9752a405e71878da7012ba"><div class="ttname"><a href="classarmnn_1_1_network_impl.html#afe0a4f719f9752a405e71878da7012ba">armnn::NetworkImpl::GetGraph</a></div><div class="ttdeci">const Graph &amp; GetGraph() const</div><div class="ttdef"><b>Definition:</b> <a href="_network_8hpp_source.html#l00038">Network.hpp:38</a></div></div>
3170<div class="ttc" id="anamespacearmnn_html_a67a0db04d321a74b7e7fcfd3f1a3f70ba505a83f220c02df2f85c3810cd9ceb38"><div class="ttname"><a href="namespacearmnn.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba505a83f220c02df2f85c3810cd9ceb38">armnn::Status::Success</a></div><div class="ttdeci">@ Success</div></div>
3171<!-- start footer part -->
3172<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
3173 <ul>
3174 <li class="navelem"><a class="el" href="namespacearmnn.html">armnn</a></li><li class="navelem"><a class="el" href="classarmnn_1_1_network_impl.html">NetworkImpl</a></li>
3175 <li class="footer">Generated on Thu May 16 2024 09:31:57 for Arm NN by
3176 <a href="http://www.doxygen.org/index.html">
3177 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
3178 </ul>
3179</div>
3180</body>
3181</html>