blob: 3acf0e61431558cdeebfd5bbc0bc4365adcb444f [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>ArmNN: Network Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">ArmNN
&#160;<span id="projectnumber">NotReleased</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classarmnn_1_1_network.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classarmnn_1_1_network-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Network Class Reference<span class="mlabels"><span class="mlabel">final</span></span></div> </div>
</div><!--header-->
<div class="contents">
<p>Private implementation of <a class="el" href="classarmnn_1_1_i_network.html">INetwork</a>.
<a href="classarmnn_1_1_network.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="_network_8hpp_source.html">Network.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for Network:</div>
<div class="dyncontent">
<div class="center">
<img src="classarmnn_1_1_network.png" usemap="#Network_map" alt=""/>
<map id="Network_map" name="Network_map">
<area href="classarmnn_1_1_i_network.html" alt="INetwork" shape="rect" coords="0,0,61,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a5f56923e4eac55c8c08d72599b0a0d41"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network.html#a5f56923e4eac55c8c08d72599b0a0d41">Network</a> ()</td></tr>
<tr class="separator:a5f56923e4eac55c8c08d72599b0a0d41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9062f3da8a725626fd7e7bd27449220"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network.html#ac9062f3da8a725626fd7e7bd27449220">~Network</a> ()</td></tr>
<tr class="separator:ac9062f3da8a725626fd7e7bd27449220"><td class="memSeparator" colspan="2">&#160;</td></tr>
<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.html#afe0a4f719f9752a405e71878da7012ba">GetGraph</a> () const</td></tr>
<tr class="separator:afe0a4f719f9752a405e71878da7012ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9aa1b214fcaec2371fe4226bd126fb73"><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.html#a9aa1b214fcaec2371fe4226bd126fb73">PrintGraph</a> () override</td></tr>
<tr class="separator:a9aa1b214fcaec2371fe4226bd126fb73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29c2c6dd77c6fe10674fc6876751cbce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1profiling_1_1_profiling_guid.html">profiling::ProfilingGuid</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network.html#a29c2c6dd77c6fe10674fc6876751cbce">GetGuid</a> () const final</td></tr>
<tr class="separator:a29c2c6dd77c6fe10674fc6876751cbce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90d8841cfbbc82ab02328f33fed24ac6"><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.html#a90d8841cfbbc82ab02328f33fed24ac6">AddInputLayer</a> (<a class="el" href="namespacearmnn.html#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a> id, const char *name=nullptr) override</td></tr>
<tr class="separator:a90d8841cfbbc82ab02328f33fed24ac6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40d7cd9d061c23405392f7c513849a2f"><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.html#a40d7cd9d061c23405392f7c513849a2f">AddArgMinMaxLayer</a> (const <a class="el" href="structarmnn_1_1_arg_min_max_descriptor.html">ArgMinMaxDescriptor</a> &amp;desc, const char *name=nullptr) override</td></tr>
<tr class="separator:a40d7cd9d061c23405392f7c513849a2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a3c9903dcd90a7f40d8aca0c339501f"><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.html#a1a3c9903dcd90a7f40d8aca0c339501f">AddBatchToSpaceNdLayer</a> (const <a class="el" href="structarmnn_1_1_batch_to_space_nd_descriptor.html">BatchToSpaceNdDescriptor</a> &amp;batchToSpaceNdDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a1a3c9903dcd90a7f40d8aca0c339501f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52fab7cec34e1fa77df68503e0c0ce59"><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.html#a52fab7cec34e1fa77df68503e0c0ce59">AddComparisonLayer</a> (const <a class="el" href="structarmnn_1_1_comparison_descriptor.html">ComparisonDescriptor</a> &amp;comparisonDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a52fab7cec34e1fa77df68503e0c0ce59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b0396c132c4da95e80b210f9b6734e9"><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.html#a7b0396c132c4da95e80b210f9b6734e9">AddConcatLayer</a> (const <a class="el" href="namespacearmnn.html#a7863c179ff92feec660c48ab7b95ae55">ConcatDescriptor</a> &amp;concatDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a7b0396c132c4da95e80b210f9b6734e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a865189c08aa64d448d05efc92a43725a"><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.html#a865189c08aa64d448d05efc92a43725a">AddConvolution2dLayer</a> (const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.html">Convolution2dDescriptor</a> &amp;convolution2dDescriptor, 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) override</td></tr>
<tr class="separator:a865189c08aa64d448d05efc92a43725a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a672c0f6fdd479311818f7efbac694042"><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.html#a672c0f6fdd479311818f7efbac694042">AddConvolution2dLayer</a> (const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.html">Convolution2dDescriptor</a> &amp;convolution2dDescriptor, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;weights, const char *name=nullptr) override</td></tr>
<tr class="separator:a672c0f6fdd479311818f7efbac694042"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1100ef86ba46e5c43aff78db7a82f049"><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.html#a1100ef86ba46e5c43aff78db7a82f049">AddConvolution2dLayer</a> (const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.html">Convolution2dDescriptor</a> &amp;convolution2dDescriptor, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;weights, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;biases, const char *name=nullptr) override</td></tr>
<tr class="separator:a1100ef86ba46e5c43aff78db7a82f049"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59e55a0755a655a809520738c697334f"><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.html#a59e55a0755a655a809520738c697334f">AddDepthToSpaceLayer</a> (const <a class="el" href="namespacearmnn.html#a3647f60510bc8ddaced01c51b0ee8714">DepthToSpaceDescriptor</a> &amp;depthToSpaceDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a59e55a0755a655a809520738c697334f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1add5219a64f4249a282f52202828451"><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.html#a1add5219a64f4249a282f52202828451">AddDepthwiseConvolution2dLayer</a> (const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.html">DepthwiseConvolution2dDescriptor</a> &amp;convolution2dDescriptor, 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) override</td></tr>
<tr class="separator:a1add5219a64f4249a282f52202828451"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab192233990fa6525e30cfbe5a4701e2a"><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.html#ab192233990fa6525e30cfbe5a4701e2a">AddDepthwiseConvolution2dLayer</a> (const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.html">DepthwiseConvolution2dDescriptor</a> &amp;convolution2dDescriptor, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;weights, const char *name=nullptr) override</td></tr>
<tr class="separator:ab192233990fa6525e30cfbe5a4701e2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37b53840117ba4159bd7c033bd18d281"><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.html#a37b53840117ba4159bd7c033bd18d281">AddDepthwiseConvolution2dLayer</a> (const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.html">DepthwiseConvolution2dDescriptor</a> &amp;convolution2dDescriptor, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;weights, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;biases, const char *name=nullptr) override</td></tr>
<tr class="separator:a37b53840117ba4159bd7c033bd18d281"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a224ea587dd10d2aa0d019be5c9de4b89"><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.html#a224ea587dd10d2aa0d019be5c9de4b89">AddDequantizeLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:a224ea587dd10d2aa0d019be5c9de4b89"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52cc1e062595108da0dfef4b200dabd7"><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.html#a52cc1e062595108da0dfef4b200dabd7">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;<a class="el" href="_neon_end_to_end_tests_8cpp.html#ac0981848e4ae57729f14f72bd4caa9f8">anchors</a>, const char *name=nullptr) override</td></tr>
<tr class="separator:a52cc1e062595108da0dfef4b200dabd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99093f440e7e0ba4c8dcc90c3ec8cf4d"><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.html#a99093f440e7e0ba4c8dcc90c3ec8cf4d">AddElementwiseUnaryLayer</a> (const <a class="el" href="structarmnn_1_1_elementwise_unary_descriptor.html">ElementwiseUnaryDescriptor</a> &amp;elementwiseUnaryDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a99093f440e7e0ba4c8dcc90c3ec8cf4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80dc86e975ff991ef63aa8b523d4fcdf"><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.html#a80dc86e975ff991ef63aa8b523d4fcdf">AddFullyConnectedLayer</a> (const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.html">FullyConnectedDescriptor</a> &amp;fullyConnectedDescriptor, 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) override</td></tr>
<tr class="separator:a80dc86e975ff991ef63aa8b523d4fcdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65835b534db6a10d91e2096952fcf7d7"><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.html#a65835b534db6a10d91e2096952fcf7d7">AddFullyConnectedLayer</a> (const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.html">FullyConnectedDescriptor</a> &amp;fullyConnectedDescriptor, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;weights, const char *name=nullptr) override</td></tr>
<tr class="separator:a65835b534db6a10d91e2096952fcf7d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d28c2b5a3c3c73eb3c4f9f6112bde94"><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.html#a1d28c2b5a3c3c73eb3c4f9f6112bde94">AddFullyConnectedLayer</a> (const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.html">FullyConnectedDescriptor</a> &amp;fullyConnectedDescriptor, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;weights, const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;biases, const char *name=nullptr) override</td></tr>
<tr class="separator:a1d28c2b5a3c3c73eb3c4f9f6112bde94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3d4632a58d626521765246bbfdeadcf"><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.html#ac3d4632a58d626521765246bbfdeadcf">AddGatherLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:ac3d4632a58d626521765246bbfdeadcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff9921f194908a3c35015de701723234"><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.html#aff9921f194908a3c35015de701723234">AddPermuteLayer</a> (const <a class="el" href="structarmnn_1_1_permute_descriptor.html">PermuteDescriptor</a> &amp;permuteDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:aff9921f194908a3c35015de701723234"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8b4e22c47ae0b0f259de353e760a4bf"><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.html#ab8b4e22c47ae0b0f259de353e760a4bf">AddPooling2dLayer</a> (const <a class="el" href="structarmnn_1_1_pooling2d_descriptor.html">Pooling2dDescriptor</a> &amp;pooling2dDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:ab8b4e22c47ae0b0f259de353e760a4bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36a40a1209689f39a5a283209991da3c"><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.html#a36a40a1209689f39a5a283209991da3c">AddActivationLayer</a> (const <a class="el" href="structarmnn_1_1_activation_descriptor.html">ActivationDescriptor</a> &amp;activationDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a36a40a1209689f39a5a283209991da3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a942922c1213c451e3286fb5cd31c6499"><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.html#a942922c1213c451e3286fb5cd31c6499">AddNormalizationLayer</a> (const <a class="el" href="structarmnn_1_1_normalization_descriptor.html">NormalizationDescriptor</a> &amp;normalizationDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a942922c1213c451e3286fb5cd31c6499"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad445d732cda17f0a552fa916f59fed8d"><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.html#ad445d732cda17f0a552fa916f59fed8d">AddSliceLayer</a> (const <a class="el" href="structarmnn_1_1_slice_descriptor.html">SliceDescriptor</a> &amp;sliceDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:ad445d732cda17f0a552fa916f59fed8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b1fbac089170c35fcb98d7012859428"><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.html#a8b1fbac089170c35fcb98d7012859428">AddSoftmaxLayer</a> (const <a class="el" href="structarmnn_1_1_softmax_descriptor.html">SoftmaxDescriptor</a> &amp;softmaxDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a8b1fbac089170c35fcb98d7012859428"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb8e86be339d57b32f0ba3d9293c880b"><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.html#acb8e86be339d57b32f0ba3d9293c880b">AddSplitterLayer</a> (const <a class="el" href="structarmnn_1_1_views_descriptor.html">ViewsDescriptor</a> &amp;splitterDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:acb8e86be339d57b32f0ba3d9293c880b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9758a0b2749095fd2a7ac152ff8fd49"><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.html#ac9758a0b2749095fd2a7ac152ff8fd49">AddMergerLayer</a> (const <a class="el" href="namespacearmnn.html#a003d213dd28b0b8c0f26fbf268ccb975">MergerDescriptor</a> &amp;mergerDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:ac9758a0b2749095fd2a7ac152ff8fd49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf67dfbce354d772111fc5e5d4cd850d"><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.html#abf67dfbce354d772111fc5e5d4cd850d">AddAbsLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:abf67dfbce354d772111fc5e5d4cd850d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb60c75544796e23d7abc1ce0476f6d9"><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.html#adb60c75544796e23d7abc1ce0476f6d9">AddAdditionLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:adb60c75544796e23d7abc1ce0476f6d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e6cb8fd00cb855c4f0d93c4a7a2bde2"><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.html#a6e6cb8fd00cb855c4f0d93c4a7a2bde2">AddMultiplicationLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:a6e6cb8fd00cb855c4f0d93c4a7a2bde2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd4965a5d1d28a91b975e6b0eef024c8"><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.html#abd4965a5d1d28a91b975e6b0eef024c8">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) override</td></tr>
<tr class="separator:abd4965a5d1d28a91b975e6b0eef024c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acae7df585b6c920cecd8065f0e16ff9b"><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.html#acae7df585b6c920cecd8065f0e16ff9b">AddResizeBilinearLayer</a> (const <a class="el" href="structarmnn_1_1_resize_bilinear_descriptor.html">ResizeBilinearDescriptor</a> &amp;resizeDesc, const char *name=nullptr) override</td></tr>
<tr class="separator:acae7df585b6c920cecd8065f0e16ff9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1ee88eebe67898c50a4ca259de49bbc"><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.html#aa1ee88eebe67898c50a4ca259de49bbc">AddResizeLayer</a> (const <a class="el" href="structarmnn_1_1_resize_descriptor.html">ResizeDescriptor</a> &amp;resizeDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:aa1ee88eebe67898c50a4ca259de49bbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a98fef92a93b7a51ce6755dae02bb0cd4"><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.html#a98fef92a93b7a51ce6755dae02bb0cd4">AddInstanceNormalizationLayer</a> (const <a class="el" href="structarmnn_1_1_instance_normalization_descriptor.html">InstanceNormalizationDescriptor</a> &amp;desc, const char *name=nullptr) override</td></tr>
<tr class="separator:a98fef92a93b7a51ce6755dae02bb0cd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acce5b3272c9da9cb4201b437dd96a729"><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.html#acce5b3272c9da9cb4201b437dd96a729">AddL2NormalizationLayer</a> (const <a class="el" href="structarmnn_1_1_l2_normalization_descriptor.html">L2NormalizationDescriptor</a> &amp;desc, const char *name=nullptr) override</td></tr>
<tr class="separator:acce5b3272c9da9cb4201b437dd96a729"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c47466a95f61c321f525b06fc87b2c5"><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.html#a4c47466a95f61c321f525b06fc87b2c5">AddLogSoftmaxLayer</a> (const <a class="el" href="namespacearmnn.html#ac14705405cbcdd580df613de6766fe65">LogSoftmaxDescriptor</a> &amp;logSoftmaxDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a4c47466a95f61c321f525b06fc87b2c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b2e7eb34ad5aacda72260f77fd880ce"><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.html#a8b2e7eb34ad5aacda72260f77fd880ce">AddConstantLayer</a> (const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;input, const char *name=nullptr) override</td></tr>
<tr class="separator:a8b2e7eb34ad5aacda72260f77fd880ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09774b1c2b882e1d573dc507479805b6"><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.html#a09774b1c2b882e1d573dc507479805b6">AddReshapeLayer</a> (const <a class="el" href="structarmnn_1_1_reshape_descriptor.html">ReshapeDescriptor</a> &amp;reshapeDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a09774b1c2b882e1d573dc507479805b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e234ae3b84213cb9fce636cfc2302bb"><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.html#a9e234ae3b84213cb9fce636cfc2302bb">AddSpaceToBatchNdLayer</a> (const <a class="el" href="structarmnn_1_1_space_to_batch_nd_descriptor.html">SpaceToBatchNdDescriptor</a> &amp;spaceToBatchNdDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a9e234ae3b84213cb9fce636cfc2302bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa43cbc86ae43ce6ee468347b30229c4"><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.html#afa43cbc86ae43ce6ee468347b30229c4">AddSpaceToDepthLayer</a> (const <a class="el" href="structarmnn_1_1_space_to_depth_descriptor.html">SpaceToDepthDescriptor</a> &amp;spaceToDepthDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:afa43cbc86ae43ce6ee468347b30229c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b9879b0da1f561d10e4f5c545028143"><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.html#a7b9879b0da1f561d10e4f5c545028143">AddFloorLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:a7b9879b0da1f561d10e4f5c545028143"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad55ff20f4c7e60c18b849e61f28f0e2e"><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.html#ad55ff20f4c7e60c18b849e61f28f0e2e">AddOutputLayer</a> (<a class="el" href="namespacearmnn.html#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a> id, const char *name=nullptr) override</td></tr>
<tr class="separator:ad55ff20f4c7e60c18b849e61f28f0e2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1569dbf88b6511bde91bee3224a558c"><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.html#ab1569dbf88b6511bde91bee3224a558c">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) override</td></tr>
<tr class="separator:ab1569dbf88b6511bde91bee3224a558c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a47d30afdd251fef00a59d2234cca0020"><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.html#a47d30afdd251fef00a59d2234cca0020">AddDivisionLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:a47d30afdd251fef00a59d2234cca0020"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59a557b3b913730cf1153f1337a64496"><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.html#a59a557b3b913730cf1153f1337a64496">AddSubtractionLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:a59a557b3b913730cf1153f1337a64496"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a10c7356df73267c2acf3248465d5954b"><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.html#a10c7356df73267c2acf3248465d5954b">AddMaximumLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:a10c7356df73267c2acf3248465d5954b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06632621d4259f7ef2aadb03cc08e993"><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.html#a06632621d4259f7ef2aadb03cc08e993">AddMeanLayer</a> (const <a class="el" href="structarmnn_1_1_mean_descriptor.html">MeanDescriptor</a> &amp;meanDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a06632621d4259f7ef2aadb03cc08e993"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d7934b6f0d8d4ae7749875397d724fc"><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.html#a7d7934b6f0d8d4ae7749875397d724fc">AddPadLayer</a> (const <a class="el" href="structarmnn_1_1_pad_descriptor.html">PadDescriptor</a> &amp;padDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a7d7934b6f0d8d4ae7749875397d724fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d008f554108aaee4c2c769dcdde685f"><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.html#a4d008f554108aaee4c2c769dcdde685f">AddQuantizeLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:a4d008f554108aaee4c2c769dcdde685f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9bf4cfcac428b1331ff83c45f1166665"><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.html#a9bf4cfcac428b1331ff83c45f1166665">AddStridedSliceLayer</a> (const <a class="el" href="structarmnn_1_1_strided_slice_descriptor.html">StridedSliceDescriptor</a> &amp;stridedSliceDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a9bf4cfcac428b1331ff83c45f1166665"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add39cd8a51e34c532fb56cf313703844"><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.html#add39cd8a51e34c532fb56cf313703844">AddMinimumLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:add39cd8a51e34c532fb56cf313703844"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad4a7bebcdaeeea663429cbd47b2917e"><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.html#aad4a7bebcdaeeea663429cbd47b2917e">AddGreaterLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:aad4a7bebcdaeeea663429cbd47b2917e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9062eab56f601adeae8229fd8759fbd7"><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.html#a9062eab56f601adeae8229fd8759fbd7">AddEqualLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:a9062eab56f601adeae8229fd8759fbd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac107b7e1d91f17f2023ea9ed113f559c"><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.html#ac107b7e1d91f17f2023ea9ed113f559c">AddRsqrtLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:ac107b7e1d91f17f2023ea9ed113f559c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a679d1dd7ae79631ba09c642a7b25158a"><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.html#a679d1dd7ae79631ba09c642a7b25158a">AddMergeLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:a679d1dd7ae79631ba09c642a7b25158a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48a6892297a07e5d87020b9b817e2224"><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.html#a48a6892297a07e5d87020b9b817e2224">AddSwitchLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:a48a6892297a07e5d87020b9b817e2224"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae00badf3bdad170348706604b7e6c694"><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.html#ae00badf3bdad170348706604b7e6c694">AddPreluLayer</a> (const char *name=nullptr) override</td></tr>
<tr class="separator:ae00badf3bdad170348706604b7e6c694"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59f6284064bfe8f2fbdb997fc3b65586"><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.html#a59f6284064bfe8f2fbdb997fc3b65586">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) override</td></tr>
<tr class="separator:a59f6284064bfe8f2fbdb997fc3b65586"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a204e14633b366322221f04c76ed275e3"><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.html#a204e14633b366322221f04c76ed275e3">AddStackLayer</a> (const <a class="el" href="structarmnn_1_1_stack_descriptor.html">StackDescriptor</a> &amp;stackDescriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a204e14633b366322221f04c76ed275e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18aea8e0700f679353afb0a0cb9e0c84"><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.html#a18aea8e0700f679353afb0a0cb9e0c84">AddStandInLayer</a> (const <a class="el" href="structarmnn_1_1_stand_in_descriptor.html">StandInDescriptor</a> &amp;descriptor, const char *name=nullptr) override</td></tr>
<tr class="separator:a18aea8e0700f679353afb0a0cb9e0c84"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a6657fdd77cabea7a9e0a740635735e"><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.html#a6a6657fdd77cabea7a9e0a740635735e">AddQuantizedLstmLayer</a> (const <a class="el" href="structarmnn_1_1_quantized_lstm_input_params.html">QuantizedLstmInputParams</a> &amp;params, const char *name=nullptr) override</td></tr>
<tr class="separator:a6a6657fdd77cabea7a9e0a740635735e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75a50f464326fefa605ea84ae2c9be85"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_network.html#a75a50f464326fefa605ea84ae2c9be85">Accept</a> (<a class="el" href="classarmnn_1_1_i_layer_visitor.html">ILayerVisitor</a> &amp;visitor) const override</td></tr>
<tr class="separator:a75a50f464326fefa605ea84ae2c9be85"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classarmnn_1_1_i_network"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classarmnn_1_1_i_network')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classarmnn_1_1_i_network.html">INetwork</a></td></tr>
<tr class="memitem:a1ca931603a06e926ca359e52890a6fea inherit pub_static_methods_classarmnn_1_1_i_network"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_1_1_i_network.html">INetwork</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_i_network.html#a1ca931603a06e926ca359e52890a6fea">CreateRaw</a> ()</td></tr>
<tr class="separator:a1ca931603a06e926ca359e52890a6fea inherit pub_static_methods_classarmnn_1_1_i_network"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a706f7345af3f18f4b16e226a672214c6 inherit pub_static_methods_classarmnn_1_1_i_network"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacearmnn.html#ace74f6f9feb95a964a49d79458232703">INetworkPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_i_network.html#a706f7345af3f18f4b16e226a672214c6">Create</a> ()</td></tr>
<tr class="separator:a706f7345af3f18f4b16e226a672214c6 inherit pub_static_methods_classarmnn_1_1_i_network"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55bd1bb29076dc45bb335e7322781463 inherit pub_static_methods_classarmnn_1_1_i_network"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_i_network.html#a55bd1bb29076dc45bb335e7322781463">Destroy</a> (<a class="el" href="classarmnn_1_1_i_network.html">INetwork</a> *network)</td></tr>
<tr class="separator:a55bd1bb29076dc45bb335e7322781463 inherit pub_static_methods_classarmnn_1_1_i_network"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classarmnn_1_1_i_network"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classarmnn_1_1_i_network')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classarmnn_1_1_i_network.html">INetwork</a></td></tr>
<tr class="memitem:af760179196d57e2ddbc64b989fb72586 inherit pro_methods_classarmnn_1_1_i_network"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_i_network.html#af760179196d57e2ddbc64b989fb72586">~INetwork</a> ()</td></tr>
<tr class="separator:af760179196d57e2ddbc64b989fb72586 inherit pro_methods_classarmnn_1_1_i_network"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Private implementation of <a class="el" href="classarmnn_1_1_i_network.html">INetwork</a>. </p>
<p class="definition">Definition at line <a class="el" href="_network_8hpp_source.html#l00027">27</a> of file <a class="el" href="_network_8hpp_source.html">Network.hpp</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a5f56923e4eac55c8c08d72599b0a0d41"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f56923e4eac55c8c08d72599b0a0d41">&#9670;&nbsp;</a></span>Network()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_network.html">Network</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l00937">937</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160;: m_Graph(std::make_unique&lt;Graph&gt;()),</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; m_Guid(<a class="code" href="classarmnn_1_1profiling_1_1_profiling_service.html#a6d016886de3596fe67dbabf107168f97">profiling::ProfilingService::Instance</a>().NextGuid())</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160;{</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160;}</div><div class="ttc" id="classarmnn_1_1profiling_1_1_profiling_service_html_a6d016886de3596fe67dbabf107168f97"><div class="ttname"><a href="classarmnn_1_1profiling_1_1_profiling_service.html#a6d016886de3596fe67dbabf107168f97">armnn::profiling::ProfilingService::Instance</a></div><div class="ttdeci">static ProfilingService &amp; Instance()</div><div class="ttdef"><b>Definition:</b> <a href="_profiling_service_8hpp_source.html#l00052">ProfilingService.hpp:52</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="ac9062f3da8a725626fd7e7bd27449220"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac9062f3da8a725626fd7e7bd27449220">&#9670;&nbsp;</a></span>~Network()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">~<a class="el" href="classarmnn_1_1_network.html">Network</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l00943">943</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160;{</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a75a50f464326fefa605ea84ae2c9be85"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a75a50f464326fefa605ea84ae2c9be85">&#9670;&nbsp;</a></span>Accept()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void Accept </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classarmnn_1_1_i_layer_visitor.html">ILayerVisitor</a> &amp;&#160;</td>
<td class="paramname"><em>visitor</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a8c9198a992b02e61a6777329d487dde3">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01580">1580</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">References <a class="el" href="_network_8hpp_source.html#l00033">Network::GetGraph()</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01581"></a><span class="lineno"> 1581</span>&#160;{</div><div class="line"><a name="l01582"></a><span class="lineno"> 1582</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> layer : <a class="code" href="classarmnn_1_1_network.html#afe0a4f719f9752a405e71878da7012ba">GetGraph</a>())</div><div class="line"><a name="l01583"></a><span class="lineno"> 1583</span>&#160; {</div><div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>&#160; layer-&gt;Accept(visitor);</div><div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>&#160; };</div><div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>&#160;}</div><div class="ttc" id="classarmnn_1_1_network_html_afe0a4f719f9752a405e71878da7012ba"><div class="ttname"><a href="classarmnn_1_1_network.html#afe0a4f719f9752a405e71878da7012ba">armnn::Network::GetGraph</a></div><div class="ttdeci">const Graph &amp; GetGraph() const</div><div class="ttdef"><b>Definition:</b> <a href="_network_8hpp_source.html#l00033">Network.hpp:33</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="abf67dfbce354d772111fc5e5d4cd850d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abf67dfbce354d772111fc5e5d4cd850d">&#9670;&nbsp;</a></span>AddAbsLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddAbsLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add absolute layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. @ return - Interface for configuring the layer. </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a242b431bbed538ef58c405762068c06e">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01207">1207</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">References <a class="el" href="namespacearmnn.html#a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6">armnn::Abs</a>, and <a class="el" href="_network_8cpp_source.html#l00970">Network::AddElementwiseUnaryLayer()</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160;{</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_network.html#a99093f440e7e0ba4c8dcc90c3ec8cf4d">AddElementwiseUnaryLayer</a>(ElementwiseUnaryDescriptor(<a class="code" href="namespacearmnn.html#a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6">UnaryOperation::Abs</a>), name);</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6"><div class="ttname"><a href="namespacearmnn.html#a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6">armnn::ActivationFunction::Abs</a></div></div>
<div class="ttc" id="classarmnn_1_1_network_html_a99093f440e7e0ba4c8dcc90c3ec8cf4d"><div class="ttname"><a href="classarmnn_1_1_network.html#a99093f440e7e0ba4c8dcc90c3ec8cf4d">armnn::Network::AddElementwiseUnaryLayer</a></div><div class="ttdeci">IConnectableLayer * AddElementwiseUnaryLayer(const ElementwiseUnaryDescriptor &amp;elementwiseUnaryDescriptor, const char *name=nullptr) override</div><div class="ttdef"><b>Definition:</b> <a href="_network_8cpp_source.html#l00970">Network.cpp:970</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a36a40a1209689f39a5a283209991da3c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a36a40a1209689f39a5a283209991da3c">&#9670;&nbsp;</a></span>AddActivationLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddActivationLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_activation_descriptor.html">ActivationDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>activationDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds an activation layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">activationDescriptor</td><td>- <a class="el" href="structarmnn_1_1_activation_descriptor.html" title="An ActivationDescriptor for the ActivationLayer. ">ActivationDescriptor</a> to configure the activation. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#aea068f6094e1c3bfcdf8167b68112632">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01155">1155</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00060">BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160;{</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ActivationLayer&gt;(activationDescriptor, name);</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="adb60c75544796e23d7abc1ce0476f6d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb60c75544796e23d7abc1ce0476f6d9">&#9670;&nbsp;</a></span>AddAdditionLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddAdditionLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds an addition layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a4812e0137ee610310d23059efed2cb84">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01212">1212</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00032">BOOST_AUTO_TEST_CASE()</a>, <a class="el" href="_quantizer_test_8cpp_source.html#l00885">armnn::BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>&#160;{</div><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;AdditionLayer&gt;(name);</div><div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a40d7cd9d061c23405392f7c513849a2f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a40d7cd9d061c23405392f7c513849a2f">&#9670;&nbsp;</a></span>AddArgMinMaxLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddArgMinMaxLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_arg_min_max_descriptor.html">ArgMinMaxDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>desc</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds an ArgMinMax layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">desc</td><td>- Parameters for the L2 normalization operation. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#afd432f0676b9f238b68ee01a66183c7f">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01161">1161</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160;{</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ArgMinMaxLayer&gt;(argMinMaxDescriptor, name);</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="abd4965a5d1d28a91b975e6b0eef024c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd4965a5d1d28a91b975e6b0eef024c8">&#9670;&nbsp;</a></span>AddBatchNormalizationLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddBatchNormalizationLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_batch_normalization_descriptor.html">BatchNormalizationDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>desc</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>mean</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>variance</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>beta</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>gamma</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a batch normalization layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">mean</td><td>- Pre-calculated mean for each channel. </td></tr>
<tr><td class="paramname">variance</td><td>- Pre-calculated variance for each channel. </td></tr>
<tr><td class="paramname">beta</td><td>- Per-channel additive factor. </td></tr>
<tr><td class="paramname">gamma</td><td>- Per-channel multiplicative factor. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a8d1067e754512c434da1238b67ad26ea">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01227">1227</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">References <a class="el" href="_batch_normalization_layer_8hpp_source.html#l00019">BatchNormalizationLayer::m_Mean</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00069">BOOST_AUTO_TEST_CASE()</a>, <a class="el" href="_const_tensor_layer_visitor_8cpp_source.html#l00467">armnn::BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160;{</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> layer = m_Graph-&gt;AddLayer&lt;BatchNormalizationLayer&gt;(desc, name);</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160;</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160; layer-&gt;m_Mean = std::make_unique&lt;ScopedCpuTensorHandle&gt;(mean);</div><div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160; layer-&gt;m_Variance = std::make_unique&lt;ScopedCpuTensorHandle&gt;(variance);</div><div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>&#160; layer-&gt;m_Beta = std::make_unique&lt;ScopedCpuTensorHandle&gt;(beta);</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160; layer-&gt;m_Gamma = std::make_unique&lt;ScopedCpuTensorHandle&gt;(gamma);</div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160;</div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160; <span class="keywordflow">return</span> layer;</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a1a3c9903dcd90a7f40d8aca0c339501f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1a3c9903dcd90a7f40d8aca0c339501f">&#9670;&nbsp;</a></span>AddBatchToSpaceNdLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddBatchToSpaceNdLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_batch_to_space_nd_descriptor.html">BatchToSpaceNdDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>batchToSpaceNdDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a batch to space ND layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">batchToSpaceNdDescriptor</td><td>- Description of the layer. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#afd29bdb840d7d978f3dee0309f422886">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l00958">958</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160;{</div><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;BatchToSpaceNdLayer&gt;(batchToSpaceNdDescriptor, name);</div><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a52fab7cec34e1fa77df68503e0c0ce59"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52fab7cec34e1fa77df68503e0c0ce59">&#9670;&nbsp;</a></span>AddComparisonLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddComparisonLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_comparison_descriptor.html">ComparisonDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>comparisonDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a Comparison layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
<tr><td class="paramname">desc</td><td>- Descriptor for the comparison operation. @ return - Interface for configuring the layer. </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#ac3be1bcc0fa5ffaf04a4f1d20d0ab7f4">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l00964">964</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8cpp_source.html#l01477">Network::AddEqualLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01472">Network::AddGreaterLayer()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160;{</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ComparisonLayer&gt;(comparisonDescriptor, name);</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a7b0396c132c4da95e80b210f9b6734e9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7b0396c132c4da95e80b210f9b6734e9">&#9670;&nbsp;</a></span>AddConcatLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddConcatLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacearmnn.html#a7863c179ff92feec660c48ab7b95ae55">ConcatDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>concatDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a concatenation layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">concatDescriptor</td><td>- ConcatDescriptor (synonym for <a class="el" href="structarmnn_1_1_origins_descriptor.html" title="An OriginsDescriptor for the ConcatLayer. Descriptor to configure the concatenation process...">OriginsDescriptor</a>) to configure the concatenation process. Number of Views must be equal to the number of inputs, and their order must match - e.g. first view corresponds to the first input, second view to the second input, etc.... </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#aef27f787e8a2ee19c4052261f963f28e">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01023">1023</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<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#l00438">Convolution2dDescriptor::m_BiasEnabled</a>, <a class="el" href="_convolution2d_layer_8hpp_source.html#l00020">Convolution2dLayer::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>
<p class="reference">Referenced by <a class="el" href="_network_8cpp_source.html#l01201">Network::AddMergerLayer()</a>, <a class="el" href="_network_tests_8cpp_source.html#l00229">BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;{</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ConcatLayer&gt;(concatDescriptor, name);</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a8b2e7eb34ad5aacda72260f77fd880ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b2e7eb34ad5aacda72260f77fd880ce">&#9670;&nbsp;</a></span>AddConstantLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddConstantLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>input</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a layer with no inputs and a single output, which always corresponds to the passed in constant tensor. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">input</td><td>- <a class="el" href="classarmnn_1_1_tensor.html" title="A tensor defined by a TensorInfo (shape and data type) and a mutable backing store. ">Tensor</a> to be provided as the only output of the layer. The layer will maintain its own copy of the tensor data, meaning the memory referenced by <em>input</em> can be freed or reused after this function is called. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a67b28a248a1e13f1f858e9d9e9e2d54b">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01280">1280</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">References <a class="el" href="_constant_layer_8hpp_source.html#l00043">ConstantLayer::m_LayerOutput</a>.</p>
<p class="reference">Referenced by <a class="el" href="_const_tensor_layer_visitor_8cpp_source.html#l00529">armnn::BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01281"></a><span class="lineno"> 1281</span>&#160;{</div><div class="line"><a name="l01282"></a><span class="lineno"> 1282</span>&#160; <span class="keyword">auto</span> layer = m_Graph-&gt;AddLayer&lt;ConstantLayer&gt;(name);</div><div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160;</div><div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>&#160; layer-&gt;m_LayerOutput = std::make_unique&lt;ScopedCpuTensorHandle&gt;(input);</div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160;</div><div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>&#160; <span class="keywordflow">return</span> layer;</div><div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a865189c08aa64d448d05efc92a43725a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a865189c08aa64d448d05efc92a43725a">&#9670;&nbsp;</a></span>AddConvolution2dLayer() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddConvolution2dLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.html">Convolution2dDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>convolution2dDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>weights</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<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>
<td class="paramname"><em>biases</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a 2D convolution layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">convolution2dDescriptor</td><td>- Description of the 2D convolution layer. </td></tr>
<tr><td class="paramname">weights</td><td>- <a class="el" href="classarmnn_1_1_tensor.html" title="A tensor defined by a TensorInfo (shape and data type) and a mutable backing store. ">Tensor</a> for the weights data. </td></tr>
<tr><td class="paramname">biases</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> tensor for the bias data. If specified, must match the output tensor shape. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a073e2f61f527d7d3801c26bdbd37dd7e">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01051">1051</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00069">BOOST_AUTO_TEST_CASE()</a>, <a class="el" href="_const_tensor_layer_visitor_8cpp_source.html#l00170">armnn::BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160;{</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160; <span class="keywordflow">return</span> AddConvolution2dLayerImpl(convolution2dDescriptor, weights, biases, name);</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a672c0f6fdd479311818f7efbac694042"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a672c0f6fdd479311818f7efbac694042">&#9670;&nbsp;</a></span>AddConvolution2dLayer() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddConvolution2dLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.html">Convolution2dDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>convolution2dDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>weights</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#ab76caade6df9758cb23589475b080060">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01059">1059</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160;{</div><div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160; Optional&lt;ConstTensor&gt; biases;</div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160; <span class="keywordflow">return</span> AddConvolution2dLayerImpl(convolution2dDescriptor, weights, biases, name);</div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a1100ef86ba46e5c43aff78db7a82f049"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1100ef86ba46e5c43aff78db7a82f049">&#9670;&nbsp;</a></span>AddConvolution2dLayer() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddConvolution2dLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.html">Convolution2dDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>convolution2dDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>weights</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>biases</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#ab592c969eed4e15123349501c2e2c0e9">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01067">1067</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<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#l00490">DepthwiseConvolution2dDescriptor::m_BiasEnabled</a>, <a class="el" href="_depthwise_convolution2d_layer_8hpp_source.html#l00019">DepthwiseConvolution2dLayer::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>
<div class="fragment"><div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160;{</div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160; Optional&lt;ConstTensor&gt; optionalBiases(biases);</div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160; <span class="keywordflow">return</span> AddConvolution2dLayerImpl(convolution2dDescriptor, weights, optionalBiases, name);</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a59e55a0755a655a809520738c697334f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a59e55a0755a655a809520738c697334f">&#9670;&nbsp;</a></span>AddDepthToSpaceLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddDepthToSpaceLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacearmnn.html#a3647f60510bc8ddaced01c51b0ee8714">DepthToSpaceDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>depthToSpaceDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a depth to space layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">depthToSpaceDescriptor</td><td>- Parameters for the depth to space operation. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a9cc2cd640fcda8ffaf84b23230ba1664">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01099">1099</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160;{</div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;DepthToSpaceLayer&gt;(depthToSpaceDescriptor, name);</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a1add5219a64f4249a282f52202828451"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1add5219a64f4249a282f52202828451">&#9670;&nbsp;</a></span>AddDepthwiseConvolution2dLayer() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddDepthwiseConvolution2dLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.html">DepthwiseConvolution2dDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>convolution2dDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>weights</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<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>
<td class="paramname"><em>biases</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a 2D depthwise convolution layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">convolution2dDescriptor</td><td>- Description of the 2D depthwise convolution layer. </td></tr>
<tr><td class="paramname">weights</td><td>- <a class="el" href="classarmnn_1_1_tensor.html" title="A tensor defined by a TensorInfo (shape and data type) and a mutable backing store. ">Tensor</a> for the weights. Expected format: [channelMultiplier, inputChannels, height, width]. </td></tr>
<tr><td class="paramname">biases</td><td><a class="el" href="classarmnn_1_1_optional.html">Optional</a> tensor for the bias data. If specified, must match the output tensor shape. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a78367a5054c92d435f4f5c7e10ec65b8">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01105">1105</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_const_tensor_layer_visitor_8cpp_source.html#l00276">armnn::BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160;{</div><div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160; <span class="keywordflow">return</span> AddDepthwiseConvolution2dLayerImpl(convolution2dDescriptor, weights, biases, name);</div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ab192233990fa6525e30cfbe5a4701e2a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab192233990fa6525e30cfbe5a4701e2a">&#9670;&nbsp;</a></span>AddDepthwiseConvolution2dLayer() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddDepthwiseConvolution2dLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.html">DepthwiseConvolution2dDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>convolution2dDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>weights</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a634843775f26ca85a78ad27c8f656845">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01114">1114</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160;{</div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160; Optional&lt;ConstTensor&gt; biases;</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160; <span class="keywordflow">return</span> AddDepthwiseConvolution2dLayerImpl(convolution2dDescriptor, weights, biases, name);</div><div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a37b53840117ba4159bd7c033bd18d281"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a37b53840117ba4159bd7c033bd18d281">&#9670;&nbsp;</a></span>AddDepthwiseConvolution2dLayer() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddDepthwiseConvolution2dLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.html">DepthwiseConvolution2dDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>convolution2dDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>weights</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>biases</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a7aaabbe9b2f7159703df0cf0ff552d0f">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01123">1123</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160;{</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160; Optional&lt;ConstTensor&gt; optionalBiases(biases);</div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160; <span class="keywordflow">return</span> AddDepthwiseConvolution2dLayerImpl(convolution2dDescriptor, weights, optionalBiases, name);</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a224ea587dd10d2aa0d019be5c9de4b89"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a224ea587dd10d2aa0d019be5c9de4b89">&#9670;&nbsp;</a></span>AddDequantizeLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddDequantizeLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a Dequantize layer to the network. </p><dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a061197f3813f225d94a73063f93a4f2c">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01461">1461</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01462"></a><span class="lineno"> 1462</span>&#160;{</div><div class="line"><a name="l01463"></a><span class="lineno"> 1463</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;DequantizeLayer&gt;(name);</div><div class="line"><a name="l01464"></a><span class="lineno"> 1464</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a52cc1e062595108da0dfef4b200dabd7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52cc1e062595108da0dfef4b200dabd7">&#9670;&nbsp;</a></span>AddDetectionPostProcessLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddDetectionPostProcessLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_detection_post_process_descriptor.html">DetectionPostProcessDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>descriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>anchors</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a Detection PostProcess layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">descriptor</td><td>- Description of the Detection PostProcess layer. </td></tr>
<tr><td class="paramname">anchors</td><td>- <a class="el" href="classarmnn_1_1_tensor.html" title="A tensor defined by a TensorInfo (shape and data type) and a mutable backing store. ">Tensor</a> for anchors. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a7dbf4589abdc0b13690eb83eab617adc">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01133">1133</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">References <a class="el" href="_neon_end_to_end_tests_8cpp.html#ac0981848e4ae57729f14f72bd4caa9f8">anchors()</a>, and <a class="el" href="_detection_post_process_layer_8hpp_source.html#l00020">DetectionPostProcessLayer::m_Anchors</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160;{</div><div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> layer = m_Graph-&gt;AddLayer&lt;DetectionPostProcessLayer&gt;(descriptor, name);</div><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160;</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160; layer-&gt;m_Anchors = std::make_unique&lt;ScopedCpuTensorHandle&gt;(<a class="code" href="_neon_end_to_end_tests_8cpp.html#ac0981848e4ae57729f14f72bd4caa9f8">anchors</a>);</div><div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160;</div><div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160; <span class="keywordflow">return</span> layer;</div><div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160;}</div><div class="ttc" id="_neon_end_to_end_tests_8cpp_html_ac0981848e4ae57729f14f72bd4caa9f8"><div class="ttname"><a href="_neon_end_to_end_tests_8cpp.html#ac0981848e4ae57729f14f72bd4caa9f8">anchors</a></div><div class="ttdeci">std::vector&lt; float &gt; anchors({ 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 10.5f, 1.0f, 1.0f, 0.5f, 10.5f, 1.0f, 1.0f, 0.5f, 100.5f, 1.0f, 1.0f })</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a47d30afdd251fef00a59d2234cca0020"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a47d30afdd251fef00a59d2234cca0020">&#9670;&nbsp;</a></span>AddDivisionLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddDivisionLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a division layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a82a5bc0d24f4c4eb1fbf793e156a5193">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01436">1436</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160;{</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;DivisionLayer&gt;(name);</div><div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a99093f440e7e0ba4c8dcc90c3ec8cf4d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99093f440e7e0ba4c8dcc90c3ec8cf4d">&#9670;&nbsp;</a></span>AddElementwiseUnaryLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddElementwiseUnaryLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_elementwise_unary_descriptor.html">ElementwiseUnaryDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>elementwiseUnaryDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add an ElementwiseUnary layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
<tr><td class="paramname">desc</td><td>- Descriptor for the elementwiseUnary operation. @ return - Interface for configuring the layer. </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a5bf8e0c150c7e6f8085c0767c6ab1914">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l00970">970</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<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#l00386">FullyConnectedDescriptor::m_BiasEnabled</a>, <a class="el" href="_fully_connected_layer_8hpp_source.html#l00019">FullyConnectedLayer::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>
<p class="reference">Referenced by <a class="el" href="_network_8cpp_source.html#l01207">Network::AddAbsLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01482">Network::AddRsqrtLayer()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>&#160;{</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ElementwiseUnaryLayer&gt;(elementwiseUnaryDescriptor, name);</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a9062eab56f601adeae8229fd8759fbd7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9062eab56f601adeae8229fd8759fbd7">&#9670;&nbsp;</a></span>AddEqualLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddEqualLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a Equal layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. @ return - Interface for configuring the layer. </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#afa185870287965e94d514de562fffa94">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01477">1477</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">References <a class="el" href="_network_8cpp_source.html#l00964">Network::AddComparisonLayer()</a>, and <a class="el" href="namespacearmnn.html#a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5">armnn::Equal</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160;{</div><div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_network.html#a52fab7cec34e1fa77df68503e0c0ce59">AddComparisonLayer</a>(ComparisonDescriptor(<a class="code" href="namespacearmnn.html#a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5">ComparisonOperation::Equal</a>), name);</div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</span>&#160;}</div><div class="ttc" id="classarmnn_1_1_network_html_a52fab7cec34e1fa77df68503e0c0ce59"><div class="ttname"><a href="classarmnn_1_1_network.html#a52fab7cec34e1fa77df68503e0c0ce59">armnn::Network::AddComparisonLayer</a></div><div class="ttdeci">IConnectableLayer * AddComparisonLayer(const ComparisonDescriptor &amp;comparisonDescriptor, const char *name=nullptr) override</div><div class="ttdef"><b>Definition:</b> <a href="_network_8cpp_source.html#l00964">Network.cpp:964</a></div></div>
<div class="ttc" id="namespacearmnn_html_a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5"><div class="ttname"><a href="namespacearmnn.html#a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5">armnn::ComparisonOperation::Equal</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a7b9879b0da1f561d10e4f5c545028143"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7b9879b0da1f561d10e4f5c545028143">&#9670;&nbsp;</a></span>AddFloorLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddFloorLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a floor layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#ab98cfce43a731ad63ca839dac5ee89eb">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01307">1307</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00476">BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160;{</div><div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;FloorLayer&gt;(name);</div><div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a80dc86e975ff991ef63aa8b523d4fcdf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a80dc86e975ff991ef63aa8b523d4fcdf">&#9670;&nbsp;</a></span>AddFullyConnectedLayer() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddFullyConnectedLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.html">FullyConnectedDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>fullyConnectedDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>weights</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<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>
<td class="paramname"><em>biases</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a fully connected layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">fullyConnectedDescriptor</td><td>- Description of the fully connected layer. </td></tr>
<tr><td class="paramname">weights</td><td>- <a class="el" href="classarmnn_1_1_tensor.html" title="A tensor defined by a TensorInfo (shape and data type) and a mutable backing store. ">Tensor</a> for the weights data. </td></tr>
<tr><td class="paramname">biases</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> tensor for the bias data. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a4839e4ec3f07974c57ca2c856b40cd57">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l00998">998</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00069">BOOST_AUTO_TEST_CASE()</a>, <a class="el" href="_const_tensor_layer_visitor_8cpp_source.html#l00385">armnn::BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;{</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160; <span class="keywordflow">return</span> AddFullyConnectedLayerImpl(fullyConnectedDescriptor, weights, biases, name);</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a65835b534db6a10d91e2096952fcf7d7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65835b534db6a10d91e2096952fcf7d7">&#9670;&nbsp;</a></span>AddFullyConnectedLayer() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddFullyConnectedLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.html">FullyConnectedDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>fullyConnectedDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>weights</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a53b41b41319485d8ff71d294f2f52b38">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01006">1006</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160;{</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160; Optional&lt;ConstTensor&gt; biases;</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160; <span class="keywordflow">return</span> AddFullyConnectedLayerImpl(fullyConnectedDescriptor, weights, biases, name);</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a1d28c2b5a3c3c73eb3c4f9f6112bde94"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1d28c2b5a3c3c73eb3c4f9f6112bde94">&#9670;&nbsp;</a></span>AddFullyConnectedLayer() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddFullyConnectedLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.html">FullyConnectedDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>fullyConnectedDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>weights</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>biases</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a315a27dc1f50e0526f7da71d47a3dccf">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01014">1014</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;{</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160; Optional&lt;ConstTensor&gt; optionalBiases(biases);</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160; <span class="keywordflow">return</span> AddFullyConnectedLayerImpl(fullyConnectedDescriptor, weights, optionalBiases, name);</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ac3d4632a58d626521765246bbfdeadcf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac3d4632a58d626521765246bbfdeadcf">&#9670;&nbsp;</a></span>AddGatherLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddGatherLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add Gather layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. @ return - Interface for configuring the layer. </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a8440d2a2afd3eb3526212081c9016830">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01487">1487</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01488"></a><span class="lineno"> 1488</span>&#160;{</div><div class="line"><a name="l01489"></a><span class="lineno"> 1489</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;GatherLayer&gt;(name);</div><div class="line"><a name="l01490"></a><span class="lineno"> 1490</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="aad4a7bebcdaeeea663429cbd47b2917e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aad4a7bebcdaeeea663429cbd47b2917e">&#9670;&nbsp;</a></span>AddGreaterLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddGreaterLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a Greater layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. @ return - Interface for configuring the layer. </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#addd323d9ecb6d764bec8fa38cf9184db">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01472">1472</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">References <a class="el" href="_network_8cpp_source.html#l00964">Network::AddComparisonLayer()</a>, and <a class="el" href="namespacearmnn.html#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">armnn::Greater</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01473"></a><span class="lineno"> 1473</span>&#160;{</div><div class="line"><a name="l01474"></a><span class="lineno"> 1474</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_network.html#a52fab7cec34e1fa77df68503e0c0ce59">AddComparisonLayer</a>(ComparisonDescriptor(<a class="code" href="namespacearmnn.html#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">ComparisonOperation::Greater</a>), name);</div><div class="line"><a name="l01475"></a><span class="lineno"> 1475</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a"><div class="ttname"><a href="namespacearmnn.html#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">armnn::ComparisonOperation::Greater</a></div></div>
<div class="ttc" id="classarmnn_1_1_network_html_a52fab7cec34e1fa77df68503e0c0ce59"><div class="ttname"><a href="classarmnn_1_1_network.html#a52fab7cec34e1fa77df68503e0c0ce59">armnn::Network::AddComparisonLayer</a></div><div class="ttdeci">IConnectableLayer * AddComparisonLayer(const ComparisonDescriptor &amp;comparisonDescriptor, const char *name=nullptr) override</div><div class="ttdef"><b>Definition:</b> <a href="_network_8cpp_source.html#l00964">Network.cpp:964</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a90d8841cfbbc82ab02328f33fed24ac6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a90d8841cfbbc82ab02328f33fed24ac6">&#9670;&nbsp;</a></span>AddInputLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddInputLayer </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacearmnn.html#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a>&#160;</td>
<td class="paramname"><em>id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds an input layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">id</td><td>- User generated id to uniquely identify a particular input. The same id needs to be specified. when passing the inputs to the <a class="el" href="classarmnn_1_1_i_runtime.html#aec0dc8016a3b1e444dfc1ffb5f15195c" title="Evaluates a network using input in inputTensors and outputs filled into outputTensors. ">IRuntime::EnqueueWorkload()</a> function. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a87d5ec72def73ca14bd2987a024bd569">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l00953">953</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00032">BOOST_AUTO_TEST_CASE()</a>, <a class="el" href="_quantizer_test_8cpp_source.html#l00900">armnn::BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160;{</div><div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;InputLayer&gt;(id, name);</div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a98fef92a93b7a51ce6755dae02bb0cd4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a98fef92a93b7a51ce6755dae02bb0cd4">&#9670;&nbsp;</a></span>AddInstanceNormalizationLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddInstanceNormalizationLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_instance_normalization_descriptor.html">InstanceNormalizationDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>desc</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds an instance normalization layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">desc</td><td>- Parameters for the instance normalization operation. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a604ca69f6e33b8d53ccc254cbd85125b">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01262">1262</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160;{</div><div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;InstanceNormalizationLayer&gt;(desc, name);</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="acce5b3272c9da9cb4201b437dd96a729"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acce5b3272c9da9cb4201b437dd96a729">&#9670;&nbsp;</a></span>AddL2NormalizationLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddL2NormalizationLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_l2_normalization_descriptor.html">L2NormalizationDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>desc</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds an L2 normalization layer to the network. Normalization is performed along dimension 1, but requires a 4d input. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">desc</td><td>- Parameters for the L2 normalization operation. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a53f545a593ccf5d471217283bbd35648">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01268">1268</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>&#160;{</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;L2NormalizationLayer&gt;(desc, name);</div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a4c47466a95f61c321f525b06fc87b2c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c47466a95f61c321f525b06fc87b2c5">&#9670;&nbsp;</a></span>AddLogSoftmaxLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddLogSoftmaxLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacearmnn.html#ac14705405cbcdd580df613de6766fe65">LogSoftmaxDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>logSoftmaxDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a log softmax layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">logSoftmaxDescriptor</td><td>- LogSoftmaxDescriptor to configure the log softmax. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#ae47d992c09a281b38fd6e5675f9f8ec8">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01274">1274</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>&#160;{</div><div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;LogSoftmaxLayer&gt;(desc, name);</div><div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ab1569dbf88b6511bde91bee3224a558c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab1569dbf88b6511bde91bee3224a558c">&#9670;&nbsp;</a></span>AddLstmLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddLstmLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_lstm_descriptor.html">LstmDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>descriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_lstm_input_params.html">LstmInputParams</a> &amp;&#160;</td>
<td class="paramname"><em>params</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a Lstm layer to the network </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">descriptor</td><td>- Parameters for the Lstm operation </td></tr>
<tr><td class="paramname">params</td><td>- Weights and biases for the LSTM cell </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#ae56f97f1de7a08af6f0e0a1350e368cb">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01312">1312</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">References <a class="el" href="_lstm_layer_8hpp_source.html#l00081">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_layer_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>
<p class="reference">Referenced by <a class="el" href="_const_tensor_layer_visitor_8cpp_source.html#l00558">armnn::BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01315"></a><span class="lineno"> 1315</span>&#160;{</div><div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> layer = m_Graph-&gt;AddLayer&lt;LstmLayer&gt;(descriptor, name);</div><div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>&#160;</div><div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>&#160; <span class="comment">//Lstm Basic Parameters</span></div><div class="line"><a name="l01319"></a><span class="lineno"> 1319</span>&#160; layer-&gt;m_BasicParameters.m_InputToForgetWeights =</div><div class="line"><a name="l01320"></a><span class="lineno"> 1320</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_InputToForgetWeights));</div><div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>&#160; layer-&gt;m_BasicParameters.m_InputToCellWeights =</div><div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_InputToCellWeights));</div><div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>&#160; layer-&gt;m_BasicParameters.m_InputToOutputWeights =</div><div class="line"><a name="l01324"></a><span class="lineno"> 1324</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_InputToOutputWeights));</div><div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>&#160; layer-&gt;m_BasicParameters.m_RecurrentToForgetWeights =</div><div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_RecurrentToForgetWeights));</div><div class="line"><a name="l01327"></a><span class="lineno"> 1327</span>&#160; layer-&gt;m_BasicParameters.m_RecurrentToCellWeights =</div><div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_RecurrentToCellWeights));</div><div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>&#160; layer-&gt;m_BasicParameters.m_RecurrentToOutputWeights =</div><div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_RecurrentToOutputWeights));</div><div class="line"><a name="l01331"></a><span class="lineno"> 1331</span>&#160; layer-&gt;m_BasicParameters.m_ForgetGateBias =</div><div class="line"><a name="l01332"></a><span class="lineno"> 1332</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_ForgetGateBias));</div><div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>&#160; layer-&gt;m_BasicParameters.m_CellBias =</div><div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_CellBias));</div><div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>&#160; layer-&gt;m_BasicParameters.m_OutputGateBias =</div><div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_OutputGateBias));</div><div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>&#160;</div><div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>&#160; <span class="comment">//Lstm Cifg parameters</span></div><div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>&#160; <span class="keywordflow">if</span>(!descriptor.m_CifgEnabled)</div><div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>&#160; {</div><div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>&#160; <span class="keywordflow">if</span>(params.m_InputToInputWeights == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>&#160; {</div><div class="line"><a name="l01343"></a><span class="lineno"> 1343</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Input To Input Weights cannot be NULL&quot;</span>);</div><div class="line"><a name="l01344"></a><span class="lineno"> 1344</span>&#160; }</div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>&#160; <span class="keywordflow">if</span>(params.m_RecurrentToInputWeights == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>&#160; {</div><div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(</div><div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>&#160; <span class="stringliteral">&quot;AddLstmLayer: Recurrent To Input Weights cannot be NULL&quot;</span>);</div><div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>&#160; }</div><div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160; <span class="keywordflow">if</span>(params.m_InputGateBias == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160; {</div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Input Gate Bias cannot be NULL&quot;</span>);</div><div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160; }</div><div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160; layer-&gt;m_CifgParameters.m_InputToInputWeights =</div><div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_InputToInputWeights));</div><div class="line"><a name="l01356"></a><span class="lineno"> 1356</span>&#160; layer-&gt;m_CifgParameters.m_RecurrentToInputWeights =</div><div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_RecurrentToInputWeights));</div><div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>&#160; <span class="comment">// In the VTS tests, cell-to-input weights may be null, even if the other CIFG params are not.</span></div><div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160; <span class="keywordflow">if</span>(params.m_CellToInputWeights != <span class="keyword">nullptr</span>)</div><div class="line"><a name="l01360"></a><span class="lineno"> 1360</span>&#160; {</div><div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>&#160; layer-&gt;m_CifgParameters.m_CellToInputWeights =</div><div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_CellToInputWeights));</div><div class="line"><a name="l01363"></a><span class="lineno"> 1363</span>&#160; }</div><div class="line"><a name="l01364"></a><span class="lineno"> 1364</span>&#160; layer-&gt;m_CifgParameters.m_InputGateBias =</div><div class="line"><a name="l01365"></a><span class="lineno"> 1365</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_InputGateBias));</div><div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>&#160; }</div><div class="line"><a name="l01367"></a><span class="lineno"> 1367</span>&#160;</div><div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>&#160; <span class="comment">//Lstm projection parameters</span></div><div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160; <span class="keywordflow">if</span>(descriptor.m_ProjectionEnabled)</div><div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160; {</div><div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160; <span class="keywordflow">if</span>(params.m_ProjectionWeights == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>&#160; {</div><div class="line"><a name="l01373"></a><span class="lineno"> 1373</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Projection Weights cannot be NULL&quot;</span>);</div><div class="line"><a name="l01374"></a><span class="lineno"> 1374</span>&#160; }</div><div class="line"><a name="l01375"></a><span class="lineno"> 1375</span>&#160; layer-&gt;m_ProjectionParameters.m_ProjectionWeights =</div><div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_ProjectionWeights));</div><div class="line"><a name="l01377"></a><span class="lineno"> 1377</span>&#160; <span class="keywordflow">if</span>(params.m_ProjectionBias != <span class="keyword">nullptr</span>)</div><div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>&#160; {</div><div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>&#160; layer-&gt;m_ProjectionParameters.m_ProjectionBias =</div><div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_ProjectionBias));</div><div class="line"><a name="l01381"></a><span class="lineno"> 1381</span>&#160; }</div><div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>&#160; }</div><div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>&#160;</div><div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>&#160; <span class="comment">//Lstm Peephole params</span></div><div class="line"><a name="l01385"></a><span class="lineno"> 1385</span>&#160; <span class="keywordflow">if</span>(descriptor.m_PeepholeEnabled)</div><div class="line"><a name="l01386"></a><span class="lineno"> 1386</span>&#160; {</div><div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>&#160; <span class="keywordflow">if</span>(params.m_CellToForgetWeights == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>&#160; {</div><div class="line"><a name="l01389"></a><span class="lineno"> 1389</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Cell To Forget Weights cannot be NULL&quot;</span>);</div><div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160; }</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160; <span class="keywordflow">if</span>(params.m_CellToOutputWeights == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l01392"></a><span class="lineno"> 1392</span>&#160; {</div><div class="line"><a name="l01393"></a><span class="lineno"> 1393</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Cell To Output Weights cannot be NULL&quot;</span>);</div><div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>&#160; }</div><div class="line"><a name="l01395"></a><span class="lineno"> 1395</span>&#160; layer-&gt;m_PeepholeParameters.m_CellToForgetWeights =</div><div class="line"><a name="l01396"></a><span class="lineno"> 1396</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_CellToForgetWeights));</div><div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>&#160; layer-&gt;m_PeepholeParameters.m_CellToOutputWeights =</div><div class="line"><a name="l01398"></a><span class="lineno"> 1398</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_CellToOutputWeights));</div><div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>&#160; }</div><div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160;</div><div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160; <span class="comment">//Lstm Layer Normalization params</span></div><div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>&#160; <span class="keywordflow">if</span>(descriptor.m_LayerNormEnabled)</div><div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>&#160; {</div><div class="line"><a name="l01404"></a><span class="lineno"> 1404</span>&#160; <span class="keywordflow">if</span>(!descriptor.m_CifgEnabled)</div><div class="line"><a name="l01405"></a><span class="lineno"> 1405</span>&#160; {</div><div class="line"><a name="l01406"></a><span class="lineno"> 1406</span>&#160; <span class="keywordflow">if</span>(params.m_InputLayerNormWeights == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l01407"></a><span class="lineno"> 1407</span>&#160; {</div><div class="line"><a name="l01408"></a><span class="lineno"> 1408</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Input layer normalization weights cannot be NULL&quot;</span>);</div><div class="line"><a name="l01409"></a><span class="lineno"> 1409</span>&#160; }</div><div class="line"><a name="l01410"></a><span class="lineno"> 1410</span>&#160; layer-&gt;m_LayerNormParameters.m_InputLayerNormWeights =</div><div class="line"><a name="l01411"></a><span class="lineno"> 1411</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_InputLayerNormWeights));</div><div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>&#160; }</div><div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160;</div><div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>&#160; <span class="keywordflow">if</span>(params.m_ForgetLayerNormWeights == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l01415"></a><span class="lineno"> 1415</span>&#160; {</div><div class="line"><a name="l01416"></a><span class="lineno"> 1416</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Forget layer normalization weights cannot be NULL&quot;</span>);</div><div class="line"><a name="l01417"></a><span class="lineno"> 1417</span>&#160; }</div><div class="line"><a name="l01418"></a><span class="lineno"> 1418</span>&#160; <span class="keywordflow">if</span>(params.m_CellLayerNormWeights == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l01419"></a><span class="lineno"> 1419</span>&#160; {</div><div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Cell layer normalization weights cannot be NULL&quot;</span>);</div><div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>&#160; }</div><div class="line"><a name="l01422"></a><span class="lineno"> 1422</span>&#160; <span class="keywordflow">if</span>(params.m_OutputLayerNormWeights == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>&#160; {</div><div class="line"><a name="l01424"></a><span class="lineno"> 1424</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddLstmLayer: Output layer normalization weights cannot be NULL&quot;</span>);</div><div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>&#160; }</div><div class="line"><a name="l01426"></a><span class="lineno"> 1426</span>&#160; layer-&gt;m_LayerNormParameters.m_ForgetLayerNormWeights =</div><div class="line"><a name="l01427"></a><span class="lineno"> 1427</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_ForgetLayerNormWeights));</div><div class="line"><a name="l01428"></a><span class="lineno"> 1428</span>&#160; layer-&gt;m_LayerNormParameters.m_CellLayerNormWeights =</div><div class="line"><a name="l01429"></a><span class="lineno"> 1429</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_CellLayerNormWeights));</div><div class="line"><a name="l01430"></a><span class="lineno"> 1430</span>&#160; layer-&gt;m_LayerNormParameters.m_OutputLayerNormWeights =</div><div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(*(params.m_OutputLayerNormWeights));</div><div class="line"><a name="l01432"></a><span class="lineno"> 1432</span>&#160; }</div><div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>&#160; <span class="keywordflow">return</span> layer;</div><div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a10c7356df73267c2acf3248465d5954b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a10c7356df73267c2acf3248465d5954b">&#9670;&nbsp;</a></span>AddMaximumLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddMaximumLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a Maximum layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. @ return - Interface for configuring the layer. </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#afb8d4577c796ffdd213428cd285734b1">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01191">1191</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160;{</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;MaximumLayer&gt;(name);</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a06632621d4259f7ef2aadb03cc08e993"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a06632621d4259f7ef2aadb03cc08e993">&#9670;&nbsp;</a></span>AddMeanLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddMeanLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_mean_descriptor.html">MeanDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>meanDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a Mean layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">meanDescriptor</td><td>- Parameters for the mean operation. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. @ return - Interface for configuring the layer. </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a8262e9e6fc869a9c9782115a6a552f36">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01446">1446</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01447"></a><span class="lineno"> 1447</span>&#160;{</div><div class="line"><a name="l01448"></a><span class="lineno"> 1448</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;MeanLayer&gt;(meanDescriptor,name);</div><div class="line"><a name="l01449"></a><span class="lineno"> 1449</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a679d1dd7ae79631ba09c642a7b25158a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a679d1dd7ae79631ba09c642a7b25158a">&#9670;&nbsp;</a></span>AddMergeLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddMergeLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a merge layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a12eefa50f602b22ec86be8bba2903cf8">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01492">1492</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01493"></a><span class="lineno"> 1493</span>&#160;{</div><div class="line"><a name="l01494"></a><span class="lineno"> 1494</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;MergeLayer&gt;(name);</div><div class="line"><a name="l01495"></a><span class="lineno"> 1495</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ac9758a0b2749095fd2a7ac152ff8fd49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac9758a0b2749095fd2a7ac152ff8fd49">&#9670;&nbsp;</a></span>AddMergerLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddMergerLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacearmnn.html#a003d213dd28b0b8c0f26fbf268ccb975">MergerDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>mergerDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a concat layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">mergerDescriptor</td><td>- MergerDescriptor (synonym for <a class="el" href="structarmnn_1_1_origins_descriptor.html" title="An OriginsDescriptor for the ConcatLayer. Descriptor to configure the concatenation process...">OriginsDescriptor</a>) to configure the concatenation process. Number of Views must be equal to the number of inputs, and their order must match - e.g. first view corresponds to the first input, second view to the second input, etc.... </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#afcff563d08cd58c9e2b1156aa44821b0">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01201">1201</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">References <a class="el" href="_network_8cpp_source.html#l01023">Network::AddConcatLayer()</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160;{</div><div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_network.html#a7b0396c132c4da95e80b210f9b6734e9">AddConcatLayer</a>(mergerDescriptor, name);</div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160;}</div><div class="ttc" id="classarmnn_1_1_network_html_a7b0396c132c4da95e80b210f9b6734e9"><div class="ttname"><a href="classarmnn_1_1_network.html#a7b0396c132c4da95e80b210f9b6734e9">armnn::Network::AddConcatLayer</a></div><div class="ttdeci">IConnectableLayer * AddConcatLayer(const ConcatDescriptor &amp;concatDescriptor, const char *name=nullptr) override</div><div class="ttdef"><b>Definition:</b> <a href="_network_8cpp_source.html#l01023">Network.cpp:1023</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="add39cd8a51e34c532fb56cf313703844"></a>
<h2 class="memtitle"><span class="permalink"><a href="#add39cd8a51e34c532fb56cf313703844">&#9670;&nbsp;</a></span>AddMinimumLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddMinimumLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a Minimum layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. @ return - Interface for configuring the layer. </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a4cc12e3bd9ffe196cc8b351f25a104e3">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01196">1196</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160;{</div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;MinimumLayer&gt;(name);</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a6e6cb8fd00cb855c4f0d93c4a7a2bde2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6e6cb8fd00cb855c4f0d93c4a7a2bde2">&#9670;&nbsp;</a></span>AddMultiplicationLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddMultiplicationLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a multiplication layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#ae24e82cf1ae2a71c5cd976edfb192fc0">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01217">1217</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00069">BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160;{</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;MultiplicationLayer&gt;(name);</div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a942922c1213c451e3286fb5cd31c6499"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a942922c1213c451e3286fb5cd31c6499">&#9670;&nbsp;</a></span>AddNormalizationLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddNormalizationLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_normalization_descriptor.html">NormalizationDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>normalizationDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a normalization layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">normalizationDescriptor</td><td>- <a class="el" href="structarmnn_1_1_normalization_descriptor.html" title="A NormalizationDescriptor for the NormalizationLayer. ">NormalizationDescriptor</a> to configure the normalization. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a74dac9efbb6dbd1982a45af1805eb4e0">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01167">1167</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00069">BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160;{</div><div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;NormalizationLayer&gt;(normalizationDescriptor, name);</div><div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ad55ff20f4c7e60c18b849e61f28f0e2e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad55ff20f4c7e60c18b849e61f28f0e2e">&#9670;&nbsp;</a></span>AddOutputLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddOutputLayer </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacearmnn.html#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a>&#160;</td>
<td class="paramname"><em>id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds an output layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">id</td><td>- User generated id to uniquely identify a particular output. The same id needs to be specified when passing the outputs to the <a class="el" href="classarmnn_1_1_i_runtime.html#aec0dc8016a3b1e444dfc1ffb5f15195c" title="Evaluates a network using input in inputTensors and outputs filled into outputTensors. ">IRuntime::EnqueueWorkload()</a> function. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#ad8582fba2ebeb65da43a56bc22d4f88b">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01222">1222</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00032">BOOST_AUTO_TEST_CASE()</a>, <a class="el" href="_quantizer_test_8cpp_source.html#l00900">armnn::BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160;{</div><div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;OutputLayer&gt;(id, name);</div><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a7d7934b6f0d8d4ae7749875397d724fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d7934b6f0d8d4ae7749875397d724fc">&#9670;&nbsp;</a></span>AddPadLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddPadLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_pad_descriptor.html">PadDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>padDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a fully pad layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">paddings</td><td>- n by 2 tensor, where n is the rank of the input tensor, such that paddings[i,0] indicates the amount of padding to add in front of dimonsion i, and paddings[i,1] indicates the amount of padding to add after the end of dimension i </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a07485f1477554d32e43edc39502ac419">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01451">1451</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>&#160;{</div><div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;PadLayer&gt;(padDescriptor,name);</div><div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="aff9921f194908a3c35015de701723234"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff9921f194908a3c35015de701723234">&#9670;&nbsp;</a></span>AddPermuteLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddPermuteLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_permute_descriptor.html">PermuteDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>permuteDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a permute layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">permuteDescriptor</td><td>- <a class="el" href="structarmnn_1_1_permute_descriptor.html" title="A PermuteDescriptor for the PermuteLayer. ">PermuteDescriptor</a> to configure the permute. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#ab62ebd16892ae3fdfe4ec89561c49d71">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01143">1143</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160;{</div><div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;PermuteLayer&gt;(permuteDescriptor, name);</div><div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ab8b4e22c47ae0b0f259de353e760a4bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab8b4e22c47ae0b0f259de353e760a4bf">&#9670;&nbsp;</a></span>AddPooling2dLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddPooling2dLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_pooling2d_descriptor.html">Pooling2dDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>pooling2dDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a pooling layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pooling2dDescriptor</td><td>- <a class="el" href="structarmnn_1_1_pooling2d_descriptor.html" title="A Pooling2dDescriptor for the Pooling2dLayer. ">Pooling2dDescriptor</a> to configure the pooling. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a4ec92bca4e51755105abb89e1878585f">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01149">1149</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00069">BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;{</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;Pooling2dLayer&gt;(pooling2dDescriptor, name);</div><div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ae00badf3bdad170348706604b7e6c694"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae00badf3bdad170348706604b7e6c694">&#9670;&nbsp;</a></span>AddPreluLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddPreluLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a PReLU layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#af22f3d4f7258b4f89906128036dbb004">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01502">1502</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01503"></a><span class="lineno"> 1503</span>&#160;{</div><div class="line"><a name="l01504"></a><span class="lineno"> 1504</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;PreluLayer&gt;(name);</div><div class="line"><a name="l01505"></a><span class="lineno"> 1505</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a6a6657fdd77cabea7a9e0a740635735e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6a6657fdd77cabea7a9e0a740635735e">&#9670;&nbsp;</a></span>AddQuantizedLstmLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddQuantizedLstmLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_quantized_lstm_input_params.html">QuantizedLstmInputParams</a> &amp;&#160;</td>
<td class="paramname"><em>params</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a QuantizedLstm layer to the network </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">params</td><td>- The weights and biases for the Quantized LSTM cell </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a4aefd9908eb21a6235e28056eada64fb">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01542">1542</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<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>
<p class="reference">Referenced by <a class="el" href="_const_tensor_layer_visitor_8cpp_source.html#l01246">armnn::BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01544"></a><span class="lineno"> 1544</span>&#160;{</div><div class="line"><a name="l01545"></a><span class="lineno"> 1545</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> layer = m_Graph-&gt;AddLayer&lt;QuantizedLstmLayer&gt;(name);</div><div class="line"><a name="l01546"></a><span class="lineno"> 1546</span>&#160;</div><div class="line"><a name="l01547"></a><span class="lineno"> 1547</span>&#160; <span class="comment">// InputToX weights</span></div><div class="line"><a name="l01548"></a><span class="lineno"> 1548</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_InputToInputWeights =</div><div class="line"><a name="l01549"></a><span class="lineno"> 1549</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(params.GetInputToInputWeights());</div><div class="line"><a name="l01550"></a><span class="lineno"> 1550</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_InputToForgetWeights =</div><div class="line"><a name="l01551"></a><span class="lineno"> 1551</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(params.GetInputToForgetWeights());</div><div class="line"><a name="l01552"></a><span class="lineno"> 1552</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_InputToCellWeights =</div><div class="line"><a name="l01553"></a><span class="lineno"> 1553</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(params.GetInputToCellWeights());</div><div class="line"><a name="l01554"></a><span class="lineno"> 1554</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_InputToOutputWeights =</div><div class="line"><a name="l01555"></a><span class="lineno"> 1555</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(params.GetInputToOutputWeights());</div><div class="line"><a name="l01556"></a><span class="lineno"> 1556</span>&#160;</div><div class="line"><a name="l01557"></a><span class="lineno"> 1557</span>&#160; <span class="comment">// RecurrentToX weights</span></div><div class="line"><a name="l01558"></a><span class="lineno"> 1558</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_RecurrentToInputWeights =</div><div class="line"><a name="l01559"></a><span class="lineno"> 1559</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(params.GetRecurrentToInputWeights());</div><div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_RecurrentToForgetWeights =</div><div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(params.GetRecurrentToForgetWeights());</div><div class="line"><a name="l01562"></a><span class="lineno"> 1562</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_RecurrentToCellWeights =</div><div class="line"><a name="l01563"></a><span class="lineno"> 1563</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(params.GetRecurrentToCellWeights());</div><div class="line"><a name="l01564"></a><span class="lineno"> 1564</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_RecurrentToOutputWeights =</div><div class="line"><a name="l01565"></a><span class="lineno"> 1565</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(params.GetRecurrentToOutputWeights());</div><div class="line"><a name="l01566"></a><span class="lineno"> 1566</span>&#160;</div><div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>&#160; <span class="comment">// Bias</span></div><div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_InputGateBias =</div><div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(params.GetInputGateBias());</div><div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_ForgetGateBias =</div><div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(params.GetForgetGateBias());</div><div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_CellBias =</div><div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(params.GetCellBias());</div><div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>&#160; layer-&gt;m_QuantizedLstmParameters.m_OutputGateBias =</div><div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>&#160; std::make_unique&lt;ScopedCpuTensorHandle&gt;(params.GetOutputGateBias());</div><div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>&#160;</div><div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>&#160; <span class="keywordflow">return</span> layer;</div><div class="line"><a name="l01578"></a><span class="lineno"> 1578</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a4d008f554108aaee4c2c769dcdde685f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4d008f554108aaee4c2c769dcdde685f">&#9670;&nbsp;</a></span>AddQuantizeLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddQuantizeLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a quantize layer to the network </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a92563fbf873cb6f9ee980b664e805fa9">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01456">1456</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160;{</div><div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;QuantizeLayer&gt;(name);</div><div class="line"><a name="l01459"></a><span class="lineno"> 1459</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a09774b1c2b882e1d573dc507479805b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a09774b1c2b882e1d573dc507479805b6">&#9670;&nbsp;</a></span>AddReshapeLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddReshapeLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_reshape_descriptor.html">ReshapeDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>reshapeDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a reshape layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">reshapeDescriptor</td><td>- Parameters for the reshape operation. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#ac77b89eb982f9d745730c90fcbdddba4">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01289">1289</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01291"></a><span class="lineno"> 1291</span>&#160;{</div><div class="line"><a name="l01292"></a><span class="lineno"> 1292</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ReshapeLayer&gt;(reshapeDescriptor, name);</div><div class="line"><a name="l01293"></a><span class="lineno"> 1293</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="acae7df585b6c920cecd8065f0e16ff9b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acae7df585b6c920cecd8065f0e16ff9b">&#9670;&nbsp;</a></span>AddResizeBilinearLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddResizeBilinearLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_resize_bilinear_descriptor.html">ResizeBilinearDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>resizeDesc</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a resize bilinear layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">resizeDesc</td><td>- Parameters for the resize operation. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a52829711d80cfb7fc2ca298fe2ab035d">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01244">1244</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">References <a class="el" href="namespacearmnn.html#a9a2af2f8c4af4f9efa8e79417d505ac4aaf17c98bbd83c27d6426d2ff3fa81d7f">armnn::Bilinear</a>, <a class="el" href="_descriptors_8hpp_source.html#l00720">ResizeBilinearDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.html#l00751">ResizeDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.html#l00749">ResizeDescriptor::m_Method</a>, <a class="el" href="_descriptors_8hpp_source.html#l00718">ResizeBilinearDescriptor::m_TargetHeight</a>, <a class="el" href="_descriptors_8hpp_source.html#l00746">ResizeDescriptor::m_TargetHeight</a>, <a class="el" href="_descriptors_8hpp_source.html#l00716">ResizeBilinearDescriptor::m_TargetWidth</a>, and <a class="el" href="_descriptors_8hpp_source.html#l00744">ResizeDescriptor::m_TargetWidth</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160;{</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160; ResizeDescriptor resizeDescriptor;</div><div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160; resizeDescriptor.m_Method = <a class="code" href="namespacearmnn.html#a9a2af2f8c4af4f9efa8e79417d505ac4aaf17c98bbd83c27d6426d2ff3fa81d7f">ResizeMethod::Bilinear</a>;</div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160; resizeDescriptor.m_DataLayout = descriptor.m_DataLayout;</div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160; resizeDescriptor.m_TargetWidth = descriptor.m_TargetWidth;</div><div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160; resizeDescriptor.m_TargetHeight = descriptor.m_TargetHeight;</div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160;</div><div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ResizeLayer&gt;(resizeDescriptor, name);</div><div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a9a2af2f8c4af4f9efa8e79417d505ac4aaf17c98bbd83c27d6426d2ff3fa81d7f"><div class="ttname"><a href="namespacearmnn.html#a9a2af2f8c4af4f9efa8e79417d505ac4aaf17c98bbd83c27d6426d2ff3fa81d7f">armnn::ResizeMethod::Bilinear</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="aa1ee88eebe67898c50a4ca259de49bbc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa1ee88eebe67898c50a4ca259de49bbc">&#9670;&nbsp;</a></span>AddResizeLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddResizeLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_resize_descriptor.html">ResizeDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>resizeDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a resize layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">resizeDescriptor</td><td>- Parameters for the resize operation. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a617aeb663e1535568864c23f5d988dd8">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01256">1256</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>&#160;{</div><div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;ResizeLayer&gt;(resizeDescriptor, name);</div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="ac107b7e1d91f17f2023ea9ed113f559c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac107b7e1d91f17f2023ea9ed113f559c">&#9670;&nbsp;</a></span>AddRsqrtLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddRsqrtLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add Reciprocal of square root layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. @ return - Interface for configuring the layer. </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a75d776349a203f50cfc66b3035565d8a">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01482">1482</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">References <a class="el" href="_network_8cpp_source.html#l00970">Network::AddElementwiseUnaryLayer()</a>, and <a class="el" href="namespacearmnn.html#a1cfaa710db2a54673b21d2ea2da757c8a09bb7f6e2118c85a6a55bd4bf2beeca4">armnn::Rsqrt</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01483"></a><span class="lineno"> 1483</span>&#160;{</div><div class="line"><a name="l01484"></a><span class="lineno"> 1484</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_network.html#a99093f440e7e0ba4c8dcc90c3ec8cf4d">AddElementwiseUnaryLayer</a>(ElementwiseUnaryDescriptor(<a class="code" href="namespacearmnn.html#a1cfaa710db2a54673b21d2ea2da757c8a09bb7f6e2118c85a6a55bd4bf2beeca4">UnaryOperation::Rsqrt</a>), name);</div><div class="line"><a name="l01485"></a><span class="lineno"> 1485</span>&#160;}</div><div class="ttc" id="classarmnn_1_1_network_html_a99093f440e7e0ba4c8dcc90c3ec8cf4d"><div class="ttname"><a href="classarmnn_1_1_network.html#a99093f440e7e0ba4c8dcc90c3ec8cf4d">armnn::Network::AddElementwiseUnaryLayer</a></div><div class="ttdeci">IConnectableLayer * AddElementwiseUnaryLayer(const ElementwiseUnaryDescriptor &amp;elementwiseUnaryDescriptor, const char *name=nullptr) override</div><div class="ttdef"><b>Definition:</b> <a href="_network_8cpp_source.html#l00970">Network.cpp:970</a></div></div>
<div class="ttc" id="namespacearmnn_html_a1cfaa710db2a54673b21d2ea2da757c8a09bb7f6e2118c85a6a55bd4bf2beeca4"><div class="ttname"><a href="namespacearmnn.html#a1cfaa710db2a54673b21d2ea2da757c8a09bb7f6e2118c85a6a55bd4bf2beeca4">armnn::UnaryOperation::Rsqrt</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="ad445d732cda17f0a552fa916f59fed8d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad445d732cda17f0a552fa916f59fed8d">&#9670;&nbsp;</a></span>AddSliceLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddSliceLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_slice_descriptor.html">SliceDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>sliceDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a slice layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">sliceDescriptor</td><td>- <a class="el" href="structarmnn_1_1_slice_descriptor.html" title="A SliceDescriptor for the SliceLayer. ">SliceDescriptor</a> to configure the slice operation. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a3c9c8780d160491ec37d7fe40e4c2b62">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01174">1174</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160;{</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;SliceLayer&gt;(sliceDescriptor, name);</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a8b1fbac089170c35fcb98d7012859428"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b1fbac089170c35fcb98d7012859428">&#9670;&nbsp;</a></span>AddSoftmaxLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddSoftmaxLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_softmax_descriptor.html">SoftmaxDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>softmaxDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a softmax layer to the network. If the data type is QAsymm8, then the output quantization parameters must have a scale of 1/256 and an offset of 0 </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">softmaxDescriptor</td><td>- <a class="el" href="structarmnn_1_1_softmax_descriptor.html" title="A SoftmaxDescriptor for the SoftmaxLayer. ">SoftmaxDescriptor</a> to configure the softmax. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a53949668a151924c4aad83b176db1080">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01179">1179</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00069">BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160;{</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;SoftmaxLayer&gt;(softmaxDescriptor, name);</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a9e234ae3b84213cb9fce636cfc2302bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e234ae3b84213cb9fce636cfc2302bb">&#9670;&nbsp;</a></span>AddSpaceToBatchNdLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddSpaceToBatchNdLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_space_to_batch_nd_descriptor.html">SpaceToBatchNdDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>spaceToBatchNdDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a space to batch layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">spaceToBatchNdDescriptor</td><td>- Parameters for the space to batch operation. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a22bff5c3ec61f7e61038f920343aa19b">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01295">1295</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01297"></a><span class="lineno"> 1297</span>&#160;{</div><div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;SpaceToBatchNdLayer&gt;(spaceToBatchNdDescriptor, name);</div><div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="afa43cbc86ae43ce6ee468347b30229c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa43cbc86ae43ce6ee468347b30229c4">&#9670;&nbsp;</a></span>AddSpaceToDepthLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddSpaceToDepthLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_space_to_depth_descriptor.html">SpaceToDepthDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>spaceToDepthDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a space to depth layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">spaceToDepthDescriptor</td><td>- Parameters for the space to depth operation. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a44a41ae9bf893dc0224e4d67a9ca1b39">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01301">1301</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01303"></a><span class="lineno"> 1303</span>&#160;{</div><div class="line"><a name="l01304"></a><span class="lineno"> 1304</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;SpaceToDepthLayer&gt;(spaceToDepthDescriptor, name);</div><div class="line"><a name="l01305"></a><span class="lineno"> 1305</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="acb8e86be339d57b32f0ba3d9293c880b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acb8e86be339d57b32f0ba3d9293c880b">&#9670;&nbsp;</a></span>AddSplitterLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddSplitterLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_views_descriptor.html">ViewsDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>splitterDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a splitter layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">splitterDescriptor</td><td>- <a class="el" href="structarmnn_1_1_views_descriptor.html" title="A ViewsDescriptor for the SplitterLayer. Descriptor to configure the splitting process. Number of Views must be equal to the number of outputs, and their order must match - e.g. first view corresponds to the first output, second view to the second output, etc. ">ViewsDescriptor</a> to configure the splitting process. Number of Views must be equal to the number of outputs, and their order must match - e.g. first view corresponds to the first output, second view to the second output, etc.... </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a3a2dbac031f1a0b1b323916b1c7f61d2">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01185">1185</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00229">BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160;{</div><div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;SplitterLayer&gt;(splitterDescriptor, name);</div><div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a204e14633b366322221f04c76ed275e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a204e14633b366322221f04c76ed275e3">&#9670;&nbsp;</a></span>AddStackLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddStackLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_stack_descriptor.html">StackDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>descriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a stack layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">descriptor</td><td>- Description of the stack layer. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#afaa808f44f0b8332ec0bd54f4fea47c0">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01529">1529</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01531"></a><span class="lineno"> 1531</span>&#160;{</div><div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;StackLayer&gt;(stackDescriptor, name);</div><div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a18aea8e0700f679353afb0a0cb9e0c84"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18aea8e0700f679353afb0a0cb9e0c84">&#9670;&nbsp;</a></span>AddStandInLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddStandInLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_stand_in_descriptor.html">StandInDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>descriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a stand-in layer for a type unknown to the Arm NN framework. Note: Due to the nature of this layer, no validation can be performed by the framework. Furthermore, Any model containing this layer cannot make use of dynamic tensors since the tensor sizes cannot be inferred. - Descriptor for the StandIn layer. </p><dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#adc9a8e1169132f539ded502661ff628c">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01536">1536</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00476">BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01538"></a><span class="lineno"> 1538</span>&#160;{</div><div class="line"><a name="l01539"></a><span class="lineno"> 1539</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;StandInLayer&gt;(desc, name);</div><div class="line"><a name="l01540"></a><span class="lineno"> 1540</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a9bf4cfcac428b1331ff83c45f1166665"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9bf4cfcac428b1331ff83c45f1166665">&#9670;&nbsp;</a></span>AddStridedSliceLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddStridedSliceLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_strided_slice_descriptor.html">StridedSliceDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>stridedSliceDescriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a strided slice layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname"><a class="el" href="structarmnn_1_1_strided_slice_descriptor.html" title="A StridedSliceDescriptor for the StridedSliceLayer. ">StridedSliceDescriptor</a></td><td>- Parameters for the strided slice operation. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a348f95b60998a987ba20a58bfc720590">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01466">1466</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01468"></a><span class="lineno"> 1468</span>&#160;{</div><div class="line"><a name="l01469"></a><span class="lineno"> 1469</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;StridedSliceLayer&gt;(stridedSliceDescriptor, name);</div><div class="line"><a name="l01470"></a><span class="lineno"> 1470</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a59a557b3b913730cf1153f1337a64496"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a59a557b3b913730cf1153f1337a64496">&#9670;&nbsp;</a></span>AddSubtractionLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddSubtractionLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a subtraction layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#ab6d332d9c4b4f04c23f40f04f7f56d0d">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01441">1441</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160;{</div><div class="line"><a name="l01443"></a><span class="lineno"> 1443</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;SubtractionLayer&gt;(name);</div><div class="line"><a name="l01444"></a><span class="lineno"> 1444</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a48a6892297a07e5d87020b9b817e2224"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a48a6892297a07e5d87020b9b817e2224">&#9670;&nbsp;</a></span>AddSwitchLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddSwitchLayer </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a switch layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#af0850b9c758dff45e635515c27a496f8">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01497">1497</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>&#160;{</div><div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>&#160; <span class="keywordflow">return</span> m_Graph-&gt;AddLayer&lt;SwitchLayer&gt;(name);</div><div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a59f6284064bfe8f2fbdb997fc3b65586"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a59f6284064bfe8f2fbdb997fc3b65586">&#9670;&nbsp;</a></span>AddTransposeConvolution2dLayer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1_i_connectable_layer.html">IConnectableLayer</a> * AddTransposeConvolution2dLayer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarmnn_1_1_transpose_convolution2d_descriptor.html">TransposeConvolution2dDescriptor</a> &amp;&#160;</td>
<td class="paramname"><em>descriptor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.html">ConstTensor</a> &amp;&#160;</td>
<td class="paramname"><em>weights</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<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>
<td class="paramname"><em>biases</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a 2D transpose convolution layer to the network. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">descriptor</td><td>- Description of the 2D transpose convolution layer. </td></tr>
<tr><td class="paramname">weights</td><td>- <a class="el" href="classarmnn_1_1_tensor.html" title="A tensor defined by a TensorInfo (shape and data type) and a mutable backing store. ">Tensor</a> for the weights data. </td></tr>
<tr><td class="paramname">biases</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> tensor for the bias data. </td></tr>
<tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.html">Optional</a> name for the layer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>- Interface for configuring the layer. </dd></dl>
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a07a1a4b8bdbec7bae0d40cbfb4991612">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l01507">1507</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<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#l01117">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>
<p class="reference">Referenced by <a class="el" href="_network_8hpp_source.html#l00037">Network::GetGuid()</a>.</p>
<div class="fragment"><div class="line"><a name="l01511"></a><span class="lineno"> 1511</span>&#160;{</div><div class="line"><a name="l01512"></a><span class="lineno"> 1512</span>&#160; <span class="keywordflow">if</span> (descriptor.m_BiasEnabled &amp;&amp; !biases.has_value())</div><div class="line"><a name="l01513"></a><span class="lineno"> 1513</span>&#160; {</div><div class="line"><a name="l01514"></a><span class="lineno"> 1514</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;AddTransposeConvolution2dLayer: Biases cannot be empty&quot;</span>);</div><div class="line"><a name="l01515"></a><span class="lineno"> 1515</span>&#160; }</div><div class="line"><a name="l01516"></a><span class="lineno"> 1516</span>&#160;</div><div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> layer = m_Graph-&gt;AddLayer&lt;TransposeConvolution2dLayer&gt;(descriptor, name);</div><div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>&#160;</div><div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>&#160; layer-&gt;m_Weight = std::make_unique&lt;ScopedCpuTensorHandle&gt;(weights);</div><div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>&#160;</div><div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>&#160; <span class="keywordflow">if</span> (descriptor.m_BiasEnabled)</div><div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>&#160; {</div><div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>&#160; layer-&gt;m_Bias = std::make_unique&lt;ScopedCpuTensorHandle&gt;(biases.value());</div><div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>&#160; }</div><div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>&#160;</div><div class="line"><a name="l01526"></a><span class="lineno"> 1526</span>&#160; <span class="keywordflow">return</span> layer;</div><div class="line"><a name="l01527"></a><span class="lineno"> 1527</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="afe0a4f719f9752a405e71878da7012ba"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afe0a4f719f9752a405e71878da7012ba">&#9670;&nbsp;</a></span>GetGraph()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classarmnn_1_1_graph.html">Graph</a>&amp; GetGraph </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_network_8hpp_source.html#l00033">33</a> of file <a class="el" href="_network_8hpp_source.html">Network.hpp</a>.</p>
<p class="reference">References <a class="el" href="_network_8cpp_source.html#l00947">Network::PrintGraph()</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_8cpp_source.html#l01580">Network::Accept()</a>, <a class="el" href="_network_tests_8cpp_source.html#l00069">BOOST_AUTO_TEST_CASE()</a>, <a class="el" href="_quantizer_test_8cpp_source.html#l00871">armnn::BOOST_AUTO_TEST_CASE()</a>, <a class="el" href="_quantizer_test_8cpp_source.html#l00337">armnn::GetInputTensorInfo()</a>, and <a class="el" href="_network_8cpp_source.html#l00807">armnn::Optimize()</a>.</p>
<div class="fragment"><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;{ <span class="keywordflow">return</span> *m_Graph; }</div></div><!-- fragment -->
</div>
</div>
<a id="a29c2c6dd77c6fe10674fc6876751cbce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a29c2c6dd77c6fe10674fc6876751cbce">&#9670;&nbsp;</a></span>GetGuid()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarmnn_1_1profiling_1_1_profiling_guid.html">profiling::ProfilingGuid</a> GetGuid </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">final</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#acb0f384aead510900e20318cabe58a59">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8hpp_source.html#l00037">37</a> of file <a class="el" href="_network_8hpp_source.html">Network.hpp</a>.</p>
<p class="reference">References <a class="el" href="_network_8cpp_source.html#l01580">Network::Accept()</a>, <a class="el" href="_network_8cpp_source.html#l01207">Network::AddAbsLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01155">Network::AddActivationLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01212">Network::AddAdditionLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01161">Network::AddArgMinMaxLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01227">Network::AddBatchNormalizationLayer()</a>, <a class="el" href="_network_8cpp_source.html#l00958">Network::AddBatchToSpaceNdLayer()</a>, <a class="el" href="_network_8cpp_source.html#l00964">Network::AddComparisonLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01023">Network::AddConcatLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01280">Network::AddConstantLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01051">Network::AddConvolution2dLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01099">Network::AddDepthToSpaceLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01105">Network::AddDepthwiseConvolution2dLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01461">Network::AddDequantizeLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01133">Network::AddDetectionPostProcessLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01436">Network::AddDivisionLayer()</a>, <a class="el" href="_network_8cpp_source.html#l00970">Network::AddElementwiseUnaryLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01477">Network::AddEqualLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01307">Network::AddFloorLayer()</a>, <a class="el" href="_network_8cpp_source.html#l00998">Network::AddFullyConnectedLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01487">Network::AddGatherLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01472">Network::AddGreaterLayer()</a>, <a class="el" href="_network_8cpp_source.html#l00953">Network::AddInputLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01262">Network::AddInstanceNormalizationLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01268">Network::AddL2NormalizationLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01274">Network::AddLogSoftmaxLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01312">Network::AddLstmLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01191">Network::AddMaximumLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01446">Network::AddMeanLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01492">Network::AddMergeLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01201">Network::AddMergerLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01196">Network::AddMinimumLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01217">Network::AddMultiplicationLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01167">Network::AddNormalizationLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01222">Network::AddOutputLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01451">Network::AddPadLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01143">Network::AddPermuteLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01149">Network::AddPooling2dLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01502">Network::AddPreluLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01542">Network::AddQuantizedLstmLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01456">Network::AddQuantizeLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01289">Network::AddReshapeLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01244">Network::AddResizeBilinearLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01256">Network::AddResizeLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01482">Network::AddRsqrtLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01174">Network::AddSliceLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01179">Network::AddSoftmaxLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01295">Network::AddSpaceToBatchNdLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01301">Network::AddSpaceToDepthLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01185">Network::AddSplitterLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01529">Network::AddStackLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01536">Network::AddStandInLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01466">Network::AddStridedSliceLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01441">Network::AddSubtractionLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01497">Network::AddSwitchLayer()</a>, <a class="el" href="_network_8cpp_source.html#l01507">Network::AddTransposeConvolution2dLayer()</a>, <a class="el" href="_neon_end_to_end_tests_8cpp.html#ac0981848e4ae57729f14f72bd4caa9f8">anchors()</a>, and <a class="el" href="_deprecated_8hpp_source.html#l00043">ARMNN_DEPRECATED_MSG</a>.</p>
<div class="fragment"><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;{ <span class="keywordflow">return</span> m_Guid; };</div></div><!-- fragment -->
</div>
</div>
<a id="a9aa1b214fcaec2371fe4226bd126fb73"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9aa1b214fcaec2371fe4226bd126fb73">&#9670;&nbsp;</a></span>PrintGraph()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacearmnn.html#a67a0db04d321a74b7e7fcfd3f1a3f70b">Status</a> PrintGraph </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="classarmnn_1_1_i_network.html#a06f863df5ac6a76c7407f64d63c04001">INetwork</a>.</p>
<p class="definition">Definition at line <a class="el" href="_network_8cpp_source.html#l00947">947</a> of file <a class="el" href="_network_8cpp_source.html">Network.cpp</a>.</p>
<p class="reference">References <a class="el" href="namespacearmnn.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba505a83f220c02df2f85c3810cd9ceb38">armnn::Success</a>.</p>
<p class="reference">Referenced by <a class="el" href="_network_tests_8cpp_source.html#l00044">BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_network_8hpp_source.html#l00033">Network::GetGraph()</a>.</p>
<div class="fragment"><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160;{</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; m_Graph-&gt;Print();</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearmnn.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba505a83f220c02df2f85c3810cd9ceb38">Status::Success</a>;</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a67a0db04d321a74b7e7fcfd3f1a3f70ba505a83f220c02df2f85c3810cd9ceb38"><div class="ttname"><a href="namespacearmnn.html#a67a0db04d321a74b7e7fcfd3f1a3f70ba505a83f220c02df2f85c3810cd9ceb38">armnn::Status::Success</a></div></div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/armnn/<a class="el" href="_network_8hpp_source.html">Network.hpp</a></li>
<li>src/armnn/<a class="el" href="_network_8cpp_source.html">Network.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespacearmnn.html">armnn</a></li><li class="navelem"><a class="el" href="classarmnn_1_1_network.html">Network</a></li>
<li class="footer">Generated on Fri Mar 13 2020 16:07:04 for ArmNN by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
</ul>
</div>
</body>
</html>