blob: ad63f303c9cde9826721fb0d8c4e47dcb0c7ded6 [file] [log] [blame]
Ryan OSheade36e4a2020-03-13 16:26:19 +00001<!-- Copyright (c) 2020 ARM Limited. -->
2<!-- -->
3<!-- SPDX-License-Identifier: MIT -->
4<!-- -->
5<!-- HTML header for doxygen 1.8.13-->
6<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
7<html xmlns="http://www.w3.org/1999/xhtml">
8<head>
9<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
10<meta http-equiv="X-UA-Compatible" content="IE=9"/>
11<meta name="generator" content="Doxygen 1.8.13"/>
12<meta name="robots" content="NOINDEX, NOFOLLOW" />
13<meta name="viewport" content="width=device-width, initial-scale=1"/>
14<title>ArmNN: DynamicQuantizationVisitor Class Reference</title>
15<link href="tabs.css" rel="stylesheet" type="text/css"/>
16<script type="text/javascript" src="jquery.js"></script>
17<script type="text/javascript" src="dynsections.js"></script>
18<link href="navtree.css" rel="stylesheet" type="text/css"/>
19<script type="text/javascript" src="resize.js"></script>
20<script type="text/javascript" src="navtreedata.js"></script>
21<script type="text/javascript" src="navtree.js"></script>
22<script type="text/javascript">
23 $(document).ready(initResizable);
24</script>
25<link href="search/search.css" rel="stylesheet" type="text/css"/>
26<script type="text/javascript" src="search/searchdata.js"></script>
27<script type="text/javascript" src="search/search.js"></script>
28<script type="text/x-mathjax-config">
29 MathJax.Hub.Config({
30 extensions: ["tex2jax.js"],
31 jax: ["input/TeX","output/HTML-CSS"],
32});
33</script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
34<link href="doxygen.css" rel="stylesheet" type="text/css" />
35<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
36</head>
37<body>
38<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
39<div id="titlearea">
40<table cellspacing="0" cellpadding="0">
41 <tbody>
42 <tr style="height: 56px;">
43 <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 10rem; margin-top: .5rem; margin-left 10px"/>
44 <td style="padding-left: 0.5em;">
45 <div id="projectname">
46 &#160;<span id="projectnumber">20.02</span>
47 </div>
48 </td>
49 </tr>
50 </tbody>
51</table>
52</div>
53<!-- end header part -->
54<!-- Generated by Doxygen 1.8.13 -->
55<script type="text/javascript">
56var searchBox = new SearchBox("searchBox", "search",false,'Search');
57</script>
58<script type="text/javascript" src="menudata.js"></script>
59<script type="text/javascript" src="menu.js"></script>
60<script type="text/javascript">
61$(function() {
62 initMenu('',true,false,'search.php','Search');
63 $(document).ready(function() { init_search(); });
64});
65</script>
66<div id="main-nav"></div>
67</div><!-- top -->
68<div id="side-nav" class="ui-resizable side-nav-resizable">
69 <div id="nav-tree">
70 <div id="nav-tree-contents">
71 <div id="nav-sync" class="sync"></div>
72 </div>
73 </div>
74 <div id="splitbar" style="-moz-user-select:none;"
75 class="ui-resizable-handle">
76 </div>
77</div>
78<script type="text/javascript">
79$(document).ready(function(){initNavTree('classarmnn_1_1_dynamic_quantization_visitor.xhtml','');});
80</script>
81<div id="doc-content">
82<!-- window showing the filter options -->
83<div id="MSearchSelectWindow"
84 onmouseover="return searchBox.OnSearchSelectShow()"
85 onmouseout="return searchBox.OnSearchSelectHide()"
86 onkeydown="return searchBox.OnSearchSelectKey(event)">
87</div>
88
89<!-- iframe showing the search results (closed by default) -->
90<div id="MSearchResultsWindow">
91<iframe src="javascript:void(0)" frameborder="0"
92 name="MSearchResults" id="MSearchResults">
93</iframe>
94</div>
95
96<div class="header">
97 <div class="summary">
98<a href="#pub-methods">Public Member Functions</a> &#124;
99<a href="classarmnn_1_1_dynamic_quantization_visitor-members.xhtml">List of all members</a> </div>
100 <div class="headertitle">
101<div class="title">DynamicQuantizationVisitor Class Reference</div> </div>
102</div><!--header-->
103<div class="contents">
104
105<p>Visitor class to establish min/max ranges based on the type of the layer.
106 <a href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#details">More...</a></p>
107
108<p><code>#include &lt;<a class="el" href="_dynamic_quantization_visitor_8hpp_source.xhtml">DynamicQuantizationVisitor.hpp</a>&gt;</code></p>
109<div class="dynheader">
110Inheritance diagram for DynamicQuantizationVisitor:</div>
111<div class="dyncontent">
112 <div class="center">
113 <img src="classarmnn_1_1_dynamic_quantization_visitor.png" usemap="#DynamicQuantizationVisitor_map" alt=""/>
114 <map id="DynamicQuantizationVisitor_map" name="DynamicQuantizationVisitor_map">
115<area href="classarmnn_1_1_layer_visitor_base.xhtml" alt="LayerVisitorBase&lt; VisitorNoThrowPolicy &gt;" shape="rect" coords="0,56,255,80"/>
116<area href="classarmnn_1_1_i_layer_visitor.xhtml" alt="ILayerVisitor" shape="rect" coords="0,0,255,24"/>
117</map>
118 </div></div>
119<table class="memberdecls">
120<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
121Public Member Functions</h2></td></tr>
122<tr class="memitem:af377247c8cdc9bf91e9e5edd87331fef"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#af377247c8cdc9bf91e9e5edd87331fef">DynamicQuantizationVisitor</a> (<a class="el" href="classarmnn_1_1_range_tracker.xhtml">RangeTracker</a> &amp;rangeTracker, <a class="el" href="classarmnn_1_1_graph.xhtml">Graph</a> &amp;graph)</td></tr>
123<tr class="separator:af377247c8cdc9bf91e9e5edd87331fef"><td class="memSeparator" colspan="2">&#160;</td></tr>
124<tr class="memitem:a4f083823a44ede4d3482361dcb61bebe"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#a4f083823a44ede4d3482361dcb61bebe">~DynamicQuantizationVisitor</a> ()=default</td></tr>
125<tr class="separator:a4f083823a44ede4d3482361dcb61bebe"><td class="memSeparator" colspan="2">&#160;</td></tr>
126<tr class="memitem:a7cb4ef1bc9588c4319144460c288022f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#a7cb4ef1bc9588c4319144460c288022f">VisitAdditionLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const char *name=nullptr) override</td></tr>
127<tr class="memdesc:a7cb4ef1bc9588c4319144460c288022f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Functions to set the Range on a per-layer-type basis. <a href="#a7cb4ef1bc9588c4319144460c288022f">More...</a><br /></td></tr>
128<tr class="separator:a7cb4ef1bc9588c4319144460c288022f"><td class="memSeparator" colspan="2">&#160;</td></tr>
129<tr class="memitem:a1532cb8f551812e784ccc14faae407b9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#a1532cb8f551812e784ccc14faae407b9">VisitBatchNormalizationLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="structarmnn_1_1_batch_normalization_descriptor.xhtml">BatchNormalizationDescriptor</a> &amp;desc, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;mean, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;variance, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;beta, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;gamma, const char *name=nullptr) override</td></tr>
130<tr class="memdesc:a1532cb8f551812e784ccc14faae407b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a batch normalization layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#a1532cb8f551812e784ccc14faae407b9">More...</a><br /></td></tr>
131<tr class="separator:a1532cb8f551812e784ccc14faae407b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
132<tr class="memitem:ac2f379ba77b06095e0c024e232ec1fd4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#ac2f379ba77b06095e0c024e232ec1fd4">VisitConvolution2dLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.xhtml">Convolution2dDescriptor</a> &amp;convolution2dDescriptor, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;weights, const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>&lt; <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &gt; &amp;biases, const char *name=nullptr) override</td></tr>
133<tr class="memdesc:ac2f379ba77b06095e0c024e232ec1fd4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a 2D convolution layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#ac2f379ba77b06095e0c024e232ec1fd4">More...</a><br /></td></tr>
134<tr class="separator:ac2f379ba77b06095e0c024e232ec1fd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
135<tr class="memitem:a554e88817e6fd98645388873a108f868"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#a554e88817e6fd98645388873a108f868">VisitDepthwiseConvolution2dLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml">DepthwiseConvolution2dDescriptor</a> &amp;desc, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;weights, const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>&lt; <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &gt; &amp;biases, const char *name=nullptr) override</td></tr>
136<tr class="memdesc:a554e88817e6fd98645388873a108f868"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a 2D depthwise convolution layer with biases should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#a554e88817e6fd98645388873a108f868">More...</a><br /></td></tr>
137<tr class="separator:a554e88817e6fd98645388873a108f868"><td class="memSeparator" colspan="2">&#160;</td></tr>
138<tr class="memitem:af493528dec93f39f5081dbefb40bff75"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#af493528dec93f39f5081dbefb40bff75">VisitActivationLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="structarmnn_1_1_activation_descriptor.xhtml">ActivationDescriptor</a> &amp;activationDescriptor, const char *name=nullptr) override</td></tr>
139<tr class="memdesc:af493528dec93f39f5081dbefb40bff75"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that an activation layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#af493528dec93f39f5081dbefb40bff75">More...</a><br /></td></tr>
140<tr class="separator:af493528dec93f39f5081dbefb40bff75"><td class="memSeparator" colspan="2">&#160;</td></tr>
141<tr class="memitem:ac98eae261af6c8d5f7161a01a1959e72"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#ac98eae261af6c8d5f7161a01a1959e72">VisitFullyConnectedLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.xhtml">FullyConnectedDescriptor</a> &amp;desc, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;weights, const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>&lt; <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &gt; &amp;biases, const char *name) override</td></tr>
142<tr class="memdesc:ac98eae261af6c8d5f7161a01a1959e72"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a fully connected layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#ac98eae261af6c8d5f7161a01a1959e72">More...</a><br /></td></tr>
143<tr class="separator:ac98eae261af6c8d5f7161a01a1959e72"><td class="memSeparator" colspan="2">&#160;</td></tr>
144<tr class="memitem:ad5532a4626c0228acc7b01fa0f5515eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#ad5532a4626c0228acc7b01fa0f5515eb">VisitPermuteLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="structarmnn_1_1_permute_descriptor.xhtml">PermuteDescriptor</a> &amp;permuteDescriptor, const char *name) override</td></tr>
145<tr class="memdesc:ad5532a4626c0228acc7b01fa0f5515eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a permute layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#ad5532a4626c0228acc7b01fa0f5515eb">More...</a><br /></td></tr>
146<tr class="separator:ad5532a4626c0228acc7b01fa0f5515eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
147<tr class="memitem:a8e327cc6432697fd55d6b91e554360d9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#a8e327cc6432697fd55d6b91e554360d9">VisitSpaceToBatchNdLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="structarmnn_1_1_space_to_batch_nd_descriptor.xhtml">SpaceToBatchNdDescriptor</a> &amp;spaceToBatchNdDescriptor, const char *name=nullptr) override</td></tr>
148<tr class="memdesc:a8e327cc6432697fd55d6b91e554360d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a space to batch layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#a8e327cc6432697fd55d6b91e554360d9">More...</a><br /></td></tr>
149<tr class="separator:a8e327cc6432697fd55d6b91e554360d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
150<tr class="memitem:aaca77d69321f5ba94d639fe40dbd0b1c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#aaca77d69321f5ba94d639fe40dbd0b1c">VisitPooling2dLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="structarmnn_1_1_pooling2d_descriptor.xhtml">Pooling2dDescriptor</a> &amp;pooling2dDescriptor, const char *name) override</td></tr>
151<tr class="memdesc:aaca77d69321f5ba94d639fe40dbd0b1c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a pooling layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#aaca77d69321f5ba94d639fe40dbd0b1c">More...</a><br /></td></tr>
152<tr class="separator:aaca77d69321f5ba94d639fe40dbd0b1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
153<tr class="memitem:a98f34d2511f43324833060154cbdba8d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#a98f34d2511f43324833060154cbdba8d">VisitSoftmaxLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="structarmnn_1_1_softmax_descriptor.xhtml">SoftmaxDescriptor</a> &amp;softmaxDescriptor, const char *name=nullptr) override</td></tr>
154<tr class="memdesc:a98f34d2511f43324833060154cbdba8d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a softmax layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#a98f34d2511f43324833060154cbdba8d">More...</a><br /></td></tr>
155<tr class="separator:a98f34d2511f43324833060154cbdba8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
156<tr class="memitem:a8a3cd0b0d46a765ad2b0652c72a31d0c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#a8a3cd0b0d46a765ad2b0652c72a31d0c">VisitConcatLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="namespacearmnn.xhtml#a7863c179ff92feec660c48ab7b95ae55">ConcatDescriptor</a> &amp;originsDescriptor, const char *name=nullptr) override</td></tr>
157<tr class="memdesc:a8a3cd0b0d46a765ad2b0652c72a31d0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a concat layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#a8a3cd0b0d46a765ad2b0652c72a31d0c">More...</a><br /></td></tr>
158<tr class="separator:a8a3cd0b0d46a765ad2b0652c72a31d0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
159<tr class="memitem:aeb652d74e4b3596e85b22c2d52144f73"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#aeb652d74e4b3596e85b22c2d52144f73">VisitConstantLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;input, const char *name=nullptr) override</td></tr>
160<tr class="memdesc:aeb652d74e4b3596e85b22c2d52144f73"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a layer with no inputs and a single output, which always corresponds to the passed in constant tensor should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#aeb652d74e4b3596e85b22c2d52144f73">More...</a><br /></td></tr>
161<tr class="separator:aeb652d74e4b3596e85b22c2d52144f73"><td class="memSeparator" colspan="2">&#160;</td></tr>
162<tr class="memitem:a4a7f7f33591fd91e8fb1c08d06c0733a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#a4a7f7f33591fd91e8fb1c08d06c0733a">VisitReshapeLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="structarmnn_1_1_reshape_descriptor.xhtml">ReshapeDescriptor</a> &amp;reshapeDescriptor, const char *name=nullptr) override</td></tr>
163<tr class="memdesc:a4a7f7f33591fd91e8fb1c08d06c0733a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a reshape layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#a4a7f7f33591fd91e8fb1c08d06c0733a">More...</a><br /></td></tr>
164<tr class="separator:a4a7f7f33591fd91e8fb1c08d06c0733a"><td class="memSeparator" colspan="2">&#160;</td></tr>
165<tr class="memitem:afbea8aa2295f2ab71ea5bb64ccd47871"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#afbea8aa2295f2ab71ea5bb64ccd47871">VisitSplitterLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="namespacearmnn.xhtml#a60291543fe872b795e71e05bcd835fd1">SplitterDescriptor</a> &amp;splitterDescriptor, const char *name=nullptr) override</td></tr>
166<tr class="memdesc:afbea8aa2295f2ab71ea5bb64ccd47871"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a splitter layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#afbea8aa2295f2ab71ea5bb64ccd47871">More...</a><br /></td></tr>
167<tr class="separator:afbea8aa2295f2ab71ea5bb64ccd47871"><td class="memSeparator" colspan="2">&#160;</td></tr>
168<tr class="memitem:a5abbca55c908440acecfa6e0f921092d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#a5abbca55c908440acecfa6e0f921092d">VisitResizeBilinearLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="structarmnn_1_1_resize_bilinear_descriptor.xhtml">ResizeBilinearDescriptor</a> &amp;resizeDesc, const char *name=nullptr) override</td></tr>
169<tr class="memdesc:a5abbca55c908440acecfa6e0f921092d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a resize bilinear layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#a5abbca55c908440acecfa6e0f921092d">More...</a><br /></td></tr>
170<tr class="separator:a5abbca55c908440acecfa6e0f921092d"><td class="memSeparator" colspan="2">&#160;</td></tr>
171<tr class="memitem:a61b7aa0305e7c45a625f7835fa26b9b6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#a61b7aa0305e7c45a625f7835fa26b9b6">VisitStridedSliceLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="structarmnn_1_1_strided_slice_descriptor.xhtml">StridedSliceDescriptor</a> &amp;stridedSliceDescriptor, const char *name=nullptr) override</td></tr>
172<tr class="memdesc:a61b7aa0305e7c45a625f7835fa26b9b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a strided slice layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#a61b7aa0305e7c45a625f7835fa26b9b6">More...</a><br /></td></tr>
173<tr class="separator:a61b7aa0305e7c45a625f7835fa26b9b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
174<tr class="memitem:af5d09e03a578afa9c0bb8afd11c65485"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#af5d09e03a578afa9c0bb8afd11c65485">VisitBatchToSpaceNdLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, const <a class="el" href="structarmnn_1_1_batch_to_space_nd_descriptor.xhtml">BatchToSpaceNdDescriptor</a> &amp;batchToSpaceNdDescriptor, const char *name=nullptr) override</td></tr>
175<tr class="memdesc:af5d09e03a578afa9c0bb8afd11c65485"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a batch to space ND layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#af5d09e03a578afa9c0bb8afd11c65485">More...</a><br /></td></tr>
176<tr class="separator:af5d09e03a578afa9c0bb8afd11c65485"><td class="memSeparator" colspan="2">&#160;</td></tr>
177<tr class="memitem:a2ca539d734553e606c0134940e444298"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#a2ca539d734553e606c0134940e444298">VisitInputLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, <a class="el" href="namespacearmnn.xhtml#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a> id, const char *name=nullptr) override</td></tr>
178<tr class="memdesc:a2ca539d734553e606c0134940e444298"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that an <a class="el" href="classarmnn_1_1_input_layer.xhtml" title="A layer user-provided data can be bound to (e.g. inputs, outputs). ">InputLayer</a> should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#a2ca539d734553e606c0134940e444298">More...</a><br /></td></tr>
179<tr class="separator:a2ca539d734553e606c0134940e444298"><td class="memSeparator" colspan="2">&#160;</td></tr>
180<tr class="memitem:ac75d60924c52b96ea6f9567fcfa2db10"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#ac75d60924c52b96ea6f9567fcfa2db10">VisitOutputLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *layer, <a class="el" href="namespacearmnn.xhtml#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a> id, const char *name=nullptr) override</td></tr>
181<tr class="memdesc:ac75d60924c52b96ea6f9567fcfa2db10"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function an output layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="#ac75d60924c52b96ea6f9567fcfa2db10">More...</a><br /></td></tr>
182<tr class="separator:ac75d60924c52b96ea6f9567fcfa2db10"><td class="memSeparator" colspan="2">&#160;</td></tr>
183<tr class="memitem:a65ad16db7d3eab9c6bfc2cdb7271ef3b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#a65ad16db7d3eab9c6bfc2cdb7271ef3b">FinishVisit</a> () override</td></tr>
184<tr class="separator:a65ad16db7d3eab9c6bfc2cdb7271ef3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
185<tr class="memitem:a795e9253dab52825add51ffc569eb81e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#a795e9253dab52825add51ffc569eb81e">VisitNonCalibratedLayers</a> ()</td></tr>
186<tr class="separator:a795e9253dab52825add51ffc569eb81e"><td class="memSeparator" colspan="2">&#160;</td></tr>
187<tr class="memitem:a2004cc285dba7f2d4e69352e60a9a7a0"><td class="memItemLeft" align="right" valign="top">const std::vector&lt; <a class="el" href="namespacearmnn.xhtml#ab8cf8f9fb6792e654c2d8d8382f6f01b">armnn::LayerBindingId</a> &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml#a2004cc285dba7f2d4e69352e60a9a7a0">GetOutputLayers</a> ()</td></tr>
188<tr class="separator:a2004cc285dba7f2d4e69352e60a9a7a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
189<tr class="inherit_header pub_methods_classarmnn_1_1_layer_visitor_base"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classarmnn_1_1_layer_visitor_base')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml">LayerVisitorBase&lt; VisitorNoThrowPolicy &gt;</a></td></tr>
190<tr class="memitem:acb663f7919f9566c3dcc8b6478999d34 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#acb663f7919f9566c3dcc8b6478999d34">VisitAbsLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
191<tr class="memdesc:acb663f7919f9566c3dcc8b6478999d34 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function an absolute layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#acb663f7919f9566c3dcc8b6478999d34">More...</a><br /></td></tr>
192<tr class="separator:acb663f7919f9566c3dcc8b6478999d34 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
193<tr class="memitem:a30b99e5202fc77b02f92d5c44e5ca86d inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a30b99e5202fc77b02f92d5c44e5ca86d">VisitActivationLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_activation_descriptor.xhtml">ActivationDescriptor</a> &amp;, const char *) override</td></tr>
194<tr class="memdesc:a30b99e5202fc77b02f92d5c44e5ca86d inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that an activation layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a30b99e5202fc77b02f92d5c44e5ca86d">More...</a><br /></td></tr>
195<tr class="separator:a30b99e5202fc77b02f92d5c44e5ca86d inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
196<tr class="memitem:a0c9f3396207de48925016a2eee6aa12b inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a0c9f3396207de48925016a2eee6aa12b">VisitAdditionLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
197<tr class="memdesc:a0c9f3396207de48925016a2eee6aa12b inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that an addition layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a0c9f3396207de48925016a2eee6aa12b">More...</a><br /></td></tr>
198<tr class="separator:a0c9f3396207de48925016a2eee6aa12b inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
199<tr class="memitem:a719076848950255b929636c97aaaede4 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a719076848950255b929636c97aaaede4">VisitArgMinMaxLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_arg_min_max_descriptor.xhtml">ArgMinMaxDescriptor</a> &amp;, const char *) override</td></tr>
200<tr class="memdesc:a719076848950255b929636c97aaaede4 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that an arg min max layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a719076848950255b929636c97aaaede4">More...</a><br /></td></tr>
201<tr class="separator:a719076848950255b929636c97aaaede4 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
202<tr class="memitem:ab0ae25ba5f3c494d1fb32f06cd57af10 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#ab0ae25ba5f3c494d1fb32f06cd57af10">VisitBatchNormalizationLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_batch_normalization_descriptor.xhtml">BatchNormalizationDescriptor</a> &amp;, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;, const char *) override</td></tr>
203<tr class="memdesc:ab0ae25ba5f3c494d1fb32f06cd57af10 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a batch normalization layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#ab0ae25ba5f3c494d1fb32f06cd57af10">More...</a><br /></td></tr>
204<tr class="separator:ab0ae25ba5f3c494d1fb32f06cd57af10 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
205<tr class="memitem:a62aac266e23bd680633e62832f56bc11 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a62aac266e23bd680633e62832f56bc11">VisitBatchToSpaceNdLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_batch_to_space_nd_descriptor.xhtml">BatchToSpaceNdDescriptor</a> &amp;, const char *) override</td></tr>
206<tr class="memdesc:a62aac266e23bd680633e62832f56bc11 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a batch to space ND layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a62aac266e23bd680633e62832f56bc11">More...</a><br /></td></tr>
207<tr class="separator:a62aac266e23bd680633e62832f56bc11 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
208<tr class="memitem:a95dc828296e6d05c0bf0b691d4dc6a3f inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a95dc828296e6d05c0bf0b691d4dc6a3f">VisitComparisonLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_comparison_descriptor.xhtml">ComparisonDescriptor</a> &amp;, const char *) override</td></tr>
209<tr class="memdesc:a95dc828296e6d05c0bf0b691d4dc6a3f inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a Comparison layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a95dc828296e6d05c0bf0b691d4dc6a3f">More...</a><br /></td></tr>
210<tr class="separator:a95dc828296e6d05c0bf0b691d4dc6a3f inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
211<tr class="memitem:a2d4f84683c4a00dfb5eecb6b165d41b9 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a2d4f84683c4a00dfb5eecb6b165d41b9">VisitConcatLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="namespacearmnn.xhtml#a7863c179ff92feec660c48ab7b95ae55">ConcatDescriptor</a> &amp;, const char *) override</td></tr>
212<tr class="memdesc:a2d4f84683c4a00dfb5eecb6b165d41b9 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a concat layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a2d4f84683c4a00dfb5eecb6b165d41b9">More...</a><br /></td></tr>
213<tr class="separator:a2d4f84683c4a00dfb5eecb6b165d41b9 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
214<tr class="memitem:a90698dba3e90ced6f562cda146bf15e3 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a90698dba3e90ced6f562cda146bf15e3">VisitConstantLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;, const char *) override</td></tr>
215<tr class="memdesc:a90698dba3e90ced6f562cda146bf15e3 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a layer with no inputs and a single output, which always corresponds to the passed in constant tensor should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a90698dba3e90ced6f562cda146bf15e3">More...</a><br /></td></tr>
216<tr class="separator:a90698dba3e90ced6f562cda146bf15e3 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
217<tr class="memitem:aff3099f516e132f4d8818a54fa1ee767 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#aff3099f516e132f4d8818a54fa1ee767">VisitConvolution2dLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.xhtml">Convolution2dDescriptor</a> &amp;, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;, const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>&lt; <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &gt; &amp;, const char *) override</td></tr>
218<tr class="memdesc:aff3099f516e132f4d8818a54fa1ee767 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a 2D convolution layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#aff3099f516e132f4d8818a54fa1ee767">More...</a><br /></td></tr>
219<tr class="separator:aff3099f516e132f4d8818a54fa1ee767 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
220<tr class="memitem:ad3aaff3b6165f8de16522bc4a1ed32a0 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#ad3aaff3b6165f8de16522bc4a1ed32a0">VisitDepthToSpaceLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="namespacearmnn.xhtml#a3647f60510bc8ddaced01c51b0ee8714">DepthToSpaceDescriptor</a> &amp;, const char *) override</td></tr>
221<tr class="memdesc:ad3aaff3b6165f8de16522bc4a1ed32a0 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a depth to space layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#ad3aaff3b6165f8de16522bc4a1ed32a0">More...</a><br /></td></tr>
222<tr class="separator:ad3aaff3b6165f8de16522bc4a1ed32a0 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
223<tr class="memitem:a70050fc50ee44a439665f914d5fe9684 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a70050fc50ee44a439665f914d5fe9684">VisitDepthwiseConvolution2dLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml">DepthwiseConvolution2dDescriptor</a> &amp;, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;, const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>&lt; <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &gt; &amp;, const char *) override</td></tr>
224<tr class="memdesc:a70050fc50ee44a439665f914d5fe9684 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a 2D depthwise convolution layer with biases should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a70050fc50ee44a439665f914d5fe9684">More...</a><br /></td></tr>
225<tr class="separator:a70050fc50ee44a439665f914d5fe9684 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
226<tr class="memitem:aa27cc900d32dcc4a92f59e3bab4f4653 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#aa27cc900d32dcc4a92f59e3bab4f4653">VisitDequantizeLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
227<tr class="memdesc:aa27cc900d32dcc4a92f59e3bab4f4653 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a Dequantize layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#aa27cc900d32dcc4a92f59e3bab4f4653">More...</a><br /></td></tr>
228<tr class="separator:aa27cc900d32dcc4a92f59e3bab4f4653 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
229<tr class="memitem:a88bad2eef809ccf6f2129f9ed4a6f3a7 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a88bad2eef809ccf6f2129f9ed4a6f3a7">VisitDetectionPostProcessLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_detection_post_process_descriptor.xhtml">DetectionPostProcessDescriptor</a> &amp;, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;, const char *) override</td></tr>
230<tr class="memdesc:a88bad2eef809ccf6f2129f9ed4a6f3a7 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a Detection PostProcess layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a88bad2eef809ccf6f2129f9ed4a6f3a7">More...</a><br /></td></tr>
231<tr class="separator:a88bad2eef809ccf6f2129f9ed4a6f3a7 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
232<tr class="memitem:a7450859464a381eafaedb33adc582f75 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a7450859464a381eafaedb33adc582f75">VisitDivisionLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
233<tr class="memdesc:a7450859464a381eafaedb33adc582f75 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a division layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a7450859464a381eafaedb33adc582f75">More...</a><br /></td></tr>
234<tr class="separator:a7450859464a381eafaedb33adc582f75 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
235<tr class="memitem:a9d02f4bfaffcb16e340e9b8c20bc5e35 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a9d02f4bfaffcb16e340e9b8c20bc5e35">VisitElementwiseUnaryLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_elementwise_unary_descriptor.xhtml">ElementwiseUnaryDescriptor</a> &amp;, const char *) override</td></tr>
236<tr class="memdesc:a9d02f4bfaffcb16e340e9b8c20bc5e35 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a ElementwiseUnary layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a9d02f4bfaffcb16e340e9b8c20bc5e35">More...</a><br /></td></tr>
237<tr class="separator:a9d02f4bfaffcb16e340e9b8c20bc5e35 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
238<tr class="memitem:a3249cd1186dc7e700a0ec0884fb9d5fa inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a3249cd1186dc7e700a0ec0884fb9d5fa">VisitEqualLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
239<tr class="memdesc:a3249cd1186dc7e700a0ec0884fb9d5fa inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function an Equal layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a3249cd1186dc7e700a0ec0884fb9d5fa">More...</a><br /></td></tr>
240<tr class="separator:a3249cd1186dc7e700a0ec0884fb9d5fa inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
241<tr class="memitem:a060c3a3f978fec03212afaff1fe1648d inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a060c3a3f978fec03212afaff1fe1648d">VisitFloorLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
242<tr class="memdesc:a060c3a3f978fec03212afaff1fe1648d inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a floor layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a060c3a3f978fec03212afaff1fe1648d">More...</a><br /></td></tr>
243<tr class="separator:a060c3a3f978fec03212afaff1fe1648d inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
244<tr class="memitem:a9049cf6d72d4b67fff93670f21c09da3 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a9049cf6d72d4b67fff93670f21c09da3">VisitFullyConnectedLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.xhtml">FullyConnectedDescriptor</a> &amp;, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;, const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>&lt; <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &gt; &amp;, const char *) override</td></tr>
245<tr class="memdesc:a9049cf6d72d4b67fff93670f21c09da3 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a fully connected layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a9049cf6d72d4b67fff93670f21c09da3">More...</a><br /></td></tr>
246<tr class="separator:a9049cf6d72d4b67fff93670f21c09da3 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
247<tr class="memitem:ae7639178bd8c29ffa83162dfd108b725 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#ae7639178bd8c29ffa83162dfd108b725">VisitGatherLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
248<tr class="memdesc:ae7639178bd8c29ffa83162dfd108b725 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a Gather layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#ae7639178bd8c29ffa83162dfd108b725">More...</a><br /></td></tr>
249<tr class="separator:ae7639178bd8c29ffa83162dfd108b725 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
250<tr class="memitem:a2a28dbfcd1e83bc8158d78feb93d4a0c inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a2a28dbfcd1e83bc8158d78feb93d4a0c">VisitGreaterLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
251<tr class="memdesc:a2a28dbfcd1e83bc8158d78feb93d4a0c inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a Greater layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a2a28dbfcd1e83bc8158d78feb93d4a0c">More...</a><br /></td></tr>
252<tr class="separator:a2a28dbfcd1e83bc8158d78feb93d4a0c inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
253<tr class="memitem:a6c23f9e9d8427775925d071feee5dbd1 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a6c23f9e9d8427775925d071feee5dbd1">VisitInputLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, <a class="el" href="namespacearmnn.xhtml#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a>, const char *) override</td></tr>
254<tr class="memdesc:a6c23f9e9d8427775925d071feee5dbd1 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that an InputLayer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a6c23f9e9d8427775925d071feee5dbd1">More...</a><br /></td></tr>
255<tr class="separator:a6c23f9e9d8427775925d071feee5dbd1 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
256<tr class="memitem:a58f90a911e6827702c478cabaeac57fe inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a58f90a911e6827702c478cabaeac57fe">VisitInstanceNormalizationLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_instance_normalization_descriptor.xhtml">InstanceNormalizationDescriptor</a> &amp;, const char *) override</td></tr>
257<tr class="memdesc:a58f90a911e6827702c478cabaeac57fe inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that an instance normalization layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a58f90a911e6827702c478cabaeac57fe">More...</a><br /></td></tr>
258<tr class="separator:a58f90a911e6827702c478cabaeac57fe inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
259<tr class="memitem:ae68e2b431ea3d2822f19ad4ac806fdaa inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#ae68e2b431ea3d2822f19ad4ac806fdaa">VisitL2NormalizationLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_l2_normalization_descriptor.xhtml">L2NormalizationDescriptor</a> &amp;, const char *) override</td></tr>
260<tr class="memdesc:ae68e2b431ea3d2822f19ad4ac806fdaa inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that an L2 normalization layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#ae68e2b431ea3d2822f19ad4ac806fdaa">More...</a><br /></td></tr>
261<tr class="separator:ae68e2b431ea3d2822f19ad4ac806fdaa inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
262<tr class="memitem:a8d4d2e5580385ee664830720698d112c inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a8d4d2e5580385ee664830720698d112c">VisitLogSoftmaxLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="namespacearmnn.xhtml#ac14705405cbcdd580df613de6766fe65">LogSoftmaxDescriptor</a> &amp;, const char *) override</td></tr>
263<tr class="memdesc:a8d4d2e5580385ee664830720698d112c inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a log softmax layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a8d4d2e5580385ee664830720698d112c">More...</a><br /></td></tr>
264<tr class="separator:a8d4d2e5580385ee664830720698d112c inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
265<tr class="memitem:aaf1a238ec5b6bb172bc4cd3811f08b28 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#aaf1a238ec5b6bb172bc4cd3811f08b28">VisitLstmLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_lstm_descriptor.xhtml">LstmDescriptor</a> &amp;, const <a class="el" href="structarmnn_1_1_lstm_input_params.xhtml">LstmInputParams</a> &amp;, const char *) override</td></tr>
266<tr class="memdesc:aaf1a238ec5b6bb172bc4cd3811f08b28 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function an Lstm layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#aaf1a238ec5b6bb172bc4cd3811f08b28">More...</a><br /></td></tr>
267<tr class="separator:aaf1a238ec5b6bb172bc4cd3811f08b28 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
268<tr class="memitem:a778e1b2219e3eb2d790d6e6e653a9f25 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a778e1b2219e3eb2d790d6e6e653a9f25">VisitMaximumLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
269<tr class="memdesc:a778e1b2219e3eb2d790d6e6e653a9f25 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a Maximum layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a778e1b2219e3eb2d790d6e6e653a9f25">More...</a><br /></td></tr>
270<tr class="separator:a778e1b2219e3eb2d790d6e6e653a9f25 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
271<tr class="memitem:a0180a15e542f4ef240fadc09fe4b2e3f inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a0180a15e542f4ef240fadc09fe4b2e3f">VisitMeanLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_mean_descriptor.xhtml">MeanDescriptor</a> &amp;, const char *) override</td></tr>
272<tr class="memdesc:a0180a15e542f4ef240fadc09fe4b2e3f inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a Mean layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a0180a15e542f4ef240fadc09fe4b2e3f">More...</a><br /></td></tr>
273<tr class="separator:a0180a15e542f4ef240fadc09fe4b2e3f inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
274<tr class="memitem:aafb62c879f0c78bfdc3c4e4f2cb82e68 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#aafb62c879f0c78bfdc3c4e4f2cb82e68">VisitMergeLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
275<tr class="memdesc:aafb62c879f0c78bfdc3c4e4f2cb82e68 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a merge layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#aafb62c879f0c78bfdc3c4e4f2cb82e68">More...</a><br /></td></tr>
276<tr class="separator:aafb62c879f0c78bfdc3c4e4f2cb82e68 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
277<tr class="memitem:acef69a3870409ca9a6130db91047e729 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#acef69a3870409ca9a6130db91047e729">VisitMergerLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="namespacearmnn.xhtml#a003d213dd28b0b8c0f26fbf268ccb975">MergerDescriptor</a> &amp;, const char *) override</td></tr>
278<tr class="memdesc:acef69a3870409ca9a6130db91047e729 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a merger layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#acef69a3870409ca9a6130db91047e729">More...</a><br /></td></tr>
279<tr class="separator:acef69a3870409ca9a6130db91047e729 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
280<tr class="memitem:a1e24e9a7bf52efc1699c126435574e95 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a1e24e9a7bf52efc1699c126435574e95">VisitMinimumLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
281<tr class="memdesc:a1e24e9a7bf52efc1699c126435574e95 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a Minimum layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a1e24e9a7bf52efc1699c126435574e95">More...</a><br /></td></tr>
282<tr class="separator:a1e24e9a7bf52efc1699c126435574e95 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
283<tr class="memitem:ac57d22126a9131108214df9177addade inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#ac57d22126a9131108214df9177addade">VisitMultiplicationLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
284<tr class="memdesc:ac57d22126a9131108214df9177addade inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a multiplication layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#ac57d22126a9131108214df9177addade">More...</a><br /></td></tr>
285<tr class="separator:ac57d22126a9131108214df9177addade inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
286<tr class="memitem:a3150ff2299a2e193952300b8c9edd1e1 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a3150ff2299a2e193952300b8c9edd1e1">VisitNormalizationLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_normalization_descriptor.xhtml">NormalizationDescriptor</a> &amp;, const char *) override</td></tr>
287<tr class="memdesc:a3150ff2299a2e193952300b8c9edd1e1 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a normalization layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a3150ff2299a2e193952300b8c9edd1e1">More...</a><br /></td></tr>
288<tr class="separator:a3150ff2299a2e193952300b8c9edd1e1 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
289<tr class="memitem:acc39ddb06acfd91cf3cfb0fcd9337005 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#acc39ddb06acfd91cf3cfb0fcd9337005">VisitOutputLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, <a class="el" href="namespacearmnn.xhtml#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a>, const char *) override</td></tr>
290<tr class="memdesc:acc39ddb06acfd91cf3cfb0fcd9337005 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function an output layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#acc39ddb06acfd91cf3cfb0fcd9337005">More...</a><br /></td></tr>
291<tr class="separator:acc39ddb06acfd91cf3cfb0fcd9337005 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
292<tr class="memitem:a8a240e1b725cc204bb468b6b402e1670 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a8a240e1b725cc204bb468b6b402e1670">VisitPadLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_pad_descriptor.xhtml">PadDescriptor</a> &amp;, const char *) override</td></tr>
293<tr class="memdesc:a8a240e1b725cc204bb468b6b402e1670 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a pad layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a8a240e1b725cc204bb468b6b402e1670">More...</a><br /></td></tr>
294<tr class="separator:a8a240e1b725cc204bb468b6b402e1670 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
295<tr class="memitem:a275f4c270ce472abc8701f6475ff7f38 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a275f4c270ce472abc8701f6475ff7f38">VisitPermuteLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_permute_descriptor.xhtml">PermuteDescriptor</a> &amp;, const char *) override</td></tr>
296<tr class="memdesc:a275f4c270ce472abc8701f6475ff7f38 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a permute layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a275f4c270ce472abc8701f6475ff7f38">More...</a><br /></td></tr>
297<tr class="separator:a275f4c270ce472abc8701f6475ff7f38 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
298<tr class="memitem:a5e369658cb00178eeb9136f1c912fd3f inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a5e369658cb00178eeb9136f1c912fd3f">VisitPooling2dLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_pooling2d_descriptor.xhtml">Pooling2dDescriptor</a> &amp;, const char *) override</td></tr>
299<tr class="memdesc:a5e369658cb00178eeb9136f1c912fd3f inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a pooling layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a5e369658cb00178eeb9136f1c912fd3f">More...</a><br /></td></tr>
300<tr class="separator:a5e369658cb00178eeb9136f1c912fd3f inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
301<tr class="memitem:a79c933bea6fb9986c3baa171be98da5c inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a79c933bea6fb9986c3baa171be98da5c">VisitPreluLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
302<tr class="memdesc:a79c933bea6fb9986c3baa171be98da5c inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a PReLU activation layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a79c933bea6fb9986c3baa171be98da5c">More...</a><br /></td></tr>
303<tr class="separator:a79c933bea6fb9986c3baa171be98da5c inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
304<tr class="memitem:a8a6db421f0be147916cb4894ad3885d1 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a8a6db421f0be147916cb4894ad3885d1">VisitQuantizeLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
305<tr class="memdesc:a8a6db421f0be147916cb4894ad3885d1 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a quantize layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a8a6db421f0be147916cb4894ad3885d1">More...</a><br /></td></tr>
306<tr class="separator:a8a6db421f0be147916cb4894ad3885d1 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
307<tr class="memitem:a2fdb21a22a95af72177b4e909741b5c7 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a2fdb21a22a95af72177b4e909741b5c7">VisitQuantizedLstmLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_quantized_lstm_input_params.xhtml">QuantizedLstmInputParams</a> &amp;, const char *) override</td></tr>
308<tr class="memdesc:a2fdb21a22a95af72177b4e909741b5c7 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a QuantizedLstm layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a2fdb21a22a95af72177b4e909741b5c7">More...</a><br /></td></tr>
309<tr class="separator:a2fdb21a22a95af72177b4e909741b5c7 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
310<tr class="memitem:a9ebd504c48864d63917836e0dc335725 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a9ebd504c48864d63917836e0dc335725">VisitReshapeLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_reshape_descriptor.xhtml">ReshapeDescriptor</a> &amp;, const char *) override</td></tr>
311<tr class="memdesc:a9ebd504c48864d63917836e0dc335725 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a reshape layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a9ebd504c48864d63917836e0dc335725">More...</a><br /></td></tr>
312<tr class="separator:a9ebd504c48864d63917836e0dc335725 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
313<tr class="memitem:a8d4c5571a4b3db2badf7f1dce3467391 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a8d4c5571a4b3db2badf7f1dce3467391">VisitResizeBilinearLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_resize_bilinear_descriptor.xhtml">ResizeBilinearDescriptor</a> &amp;, const char *) override</td></tr>
314<tr class="memdesc:a8d4c5571a4b3db2badf7f1dce3467391 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a resize bilinear layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a8d4c5571a4b3db2badf7f1dce3467391">More...</a><br /></td></tr>
315<tr class="separator:a8d4c5571a4b3db2badf7f1dce3467391 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
316<tr class="memitem:a49c296c5d0f9efb76f165954cf40c281 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a49c296c5d0f9efb76f165954cf40c281">VisitResizeLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_resize_descriptor.xhtml">ResizeDescriptor</a> &amp;, const char *) override</td></tr>
317<tr class="memdesc:a49c296c5d0f9efb76f165954cf40c281 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a resize layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a49c296c5d0f9efb76f165954cf40c281">More...</a><br /></td></tr>
318<tr class="separator:a49c296c5d0f9efb76f165954cf40c281 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
319<tr class="memitem:a6a62605ac51992ce0913cc119b59546b inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a6a62605ac51992ce0913cc119b59546b">VisitRsqrtLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
320<tr class="memdesc:a6a62605ac51992ce0913cc119b59546b inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a Reciprocal of square root layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a6a62605ac51992ce0913cc119b59546b">More...</a><br /></td></tr>
321<tr class="separator:a6a62605ac51992ce0913cc119b59546b inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
322<tr class="memitem:a1c023b3170bed9368b65730bc7fff60b inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a1c023b3170bed9368b65730bc7fff60b">VisitSliceLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_slice_descriptor.xhtml">SliceDescriptor</a> &amp;, const char *) override</td></tr>
323<tr class="memdesc:a1c023b3170bed9368b65730bc7fff60b inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a slice layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a1c023b3170bed9368b65730bc7fff60b">More...</a><br /></td></tr>
324<tr class="separator:a1c023b3170bed9368b65730bc7fff60b inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
325<tr class="memitem:abd8b0b2e365bbeabceddc35a1cb52916 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#abd8b0b2e365bbeabceddc35a1cb52916">VisitSoftmaxLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_softmax_descriptor.xhtml">SoftmaxDescriptor</a> &amp;, const char *) override</td></tr>
326<tr class="memdesc:abd8b0b2e365bbeabceddc35a1cb52916 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a softmax layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#abd8b0b2e365bbeabceddc35a1cb52916">More...</a><br /></td></tr>
327<tr class="separator:abd8b0b2e365bbeabceddc35a1cb52916 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
328<tr class="memitem:a9478c4f41840a2e2c12b7f336e725a8a inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a9478c4f41840a2e2c12b7f336e725a8a">VisitSpaceToBatchNdLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_space_to_batch_nd_descriptor.xhtml">SpaceToBatchNdDescriptor</a> &amp;, const char *) override</td></tr>
329<tr class="memdesc:a9478c4f41840a2e2c12b7f336e725a8a inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a space to batch layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a9478c4f41840a2e2c12b7f336e725a8a">More...</a><br /></td></tr>
330<tr class="separator:a9478c4f41840a2e2c12b7f336e725a8a inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
331<tr class="memitem:acdedda623455cc7a0f982d6f4e96d53a inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#acdedda623455cc7a0f982d6f4e96d53a">VisitSpaceToDepthLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_space_to_depth_descriptor.xhtml">SpaceToDepthDescriptor</a> &amp;, const char *) override</td></tr>
332<tr class="memdesc:acdedda623455cc7a0f982d6f4e96d53a inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a space to depth layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#acdedda623455cc7a0f982d6f4e96d53a">More...</a><br /></td></tr>
333<tr class="separator:acdedda623455cc7a0f982d6f4e96d53a inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
334<tr class="memitem:a8689a80f8939de6323319aba5806ee9e inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a8689a80f8939de6323319aba5806ee9e">VisitSplitterLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_views_descriptor.xhtml">ViewsDescriptor</a> &amp;, const char *) override</td></tr>
335<tr class="memdesc:a8689a80f8939de6323319aba5806ee9e inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a splitter layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a8689a80f8939de6323319aba5806ee9e">More...</a><br /></td></tr>
336<tr class="separator:a8689a80f8939de6323319aba5806ee9e inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
337<tr class="memitem:a8b47d411d147aa420f7a69356d84fb80 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a8b47d411d147aa420f7a69356d84fb80">VisitStackLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_stack_descriptor.xhtml">StackDescriptor</a> &amp;, const char *) override</td></tr>
338<tr class="memdesc:a8b47d411d147aa420f7a69356d84fb80 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a stack layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a8b47d411d147aa420f7a69356d84fb80">More...</a><br /></td></tr>
339<tr class="separator:a8b47d411d147aa420f7a69356d84fb80 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
340<tr class="memitem:a3c15053a7e295099a1a34c4add5a03b8 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a3c15053a7e295099a1a34c4add5a03b8">VisitStandInLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_stand_in_descriptor.xhtml">StandInDescriptor</a> &amp;, const char *) override</td></tr>
341<tr class="memdesc:a3c15053a7e295099a1a34c4add5a03b8 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a StandInLayer should call back to when its Accept(ILaterVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a3c15053a7e295099a1a34c4add5a03b8">More...</a><br /></td></tr>
342<tr class="separator:a3c15053a7e295099a1a34c4add5a03b8 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
343<tr class="memitem:a31862ce4ffaddde96ebe0afcf04f3577 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a31862ce4ffaddde96ebe0afcf04f3577">VisitStridedSliceLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_strided_slice_descriptor.xhtml">StridedSliceDescriptor</a> &amp;, const char *) override</td></tr>
344<tr class="memdesc:a31862ce4ffaddde96ebe0afcf04f3577 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a strided slice layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a31862ce4ffaddde96ebe0afcf04f3577">More...</a><br /></td></tr>
345<tr class="separator:a31862ce4ffaddde96ebe0afcf04f3577 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
346<tr class="memitem:ac42c3a57a82260c8315d4f0320620934 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#ac42c3a57a82260c8315d4f0320620934">VisitSubtractionLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
347<tr class="memdesc:ac42c3a57a82260c8315d4f0320620934 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a subtraction layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#ac42c3a57a82260c8315d4f0320620934">More...</a><br /></td></tr>
348<tr class="separator:ac42c3a57a82260c8315d4f0320620934 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
349<tr class="memitem:a877d400155151a5afba9f0b17fbcf8f3 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a877d400155151a5afba9f0b17fbcf8f3">VisitSwitchLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const char *) override</td></tr>
350<tr class="memdesc:a877d400155151a5afba9f0b17fbcf8f3 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function a switch layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a877d400155151a5afba9f0b17fbcf8f3">More...</a><br /></td></tr>
351<tr class="separator:a877d400155151a5afba9f0b17fbcf8f3 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
352<tr class="memitem:a4dfb04de9aa0b8b55c70fe96af13e1e1 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a4dfb04de9aa0b8b55c70fe96af13e1e1">VisitTransposeConvolution2dLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_transpose_convolution2d_descriptor.xhtml">TransposeConvolution2dDescriptor</a> &amp;, const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;, const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>&lt; <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &gt; &amp;, const char *) override</td></tr>
353<tr class="memdesc:a4dfb04de9aa0b8b55c70fe96af13e1e1 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a 2D transpose convolution layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a4dfb04de9aa0b8b55c70fe96af13e1e1">More...</a><br /></td></tr>
354<tr class="separator:a4dfb04de9aa0b8b55c70fe96af13e1e1 inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
355<tr class="memitem:a2cb213b083367f4fe9bed2916206525f inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#a2cb213b083367f4fe9bed2916206525f">VisitTransposeLayer</a> (const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *, const <a class="el" href="structarmnn_1_1_transpose_descriptor.xhtml">TransposeDescriptor</a> &amp;, const char *) override</td></tr>
356<tr class="memdesc:a2cb213b083367f4fe9bed2916206525f inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function that a transpose layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. <a href="classarmnn_1_1_layer_visitor_base.xhtml#a2cb213b083367f4fe9bed2916206525f">More...</a><br /></td></tr>
357<tr class="separator:a2cb213b083367f4fe9bed2916206525f inherit pub_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
358<tr class="inherit_header pub_methods_classarmnn_1_1_i_layer_visitor"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classarmnn_1_1_i_layer_visitor')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml">ILayerVisitor</a></td></tr>
359<tr class="memitem:a463965a96896bf0d261b44eea5172c7b inherit pub_methods_classarmnn_1_1_i_layer_visitor"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#a463965a96896bf0d261b44eea5172c7b">StartVisit</a> ()</td></tr>
360<tr class="separator:a463965a96896bf0d261b44eea5172c7b inherit pub_methods_classarmnn_1_1_i_layer_visitor"><td class="memSeparator" colspan="2">&#160;</td></tr>
361</table><table class="memberdecls">
362<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
363Additional Inherited Members</h2></td></tr>
364<tr class="inherit_header pro_methods_classarmnn_1_1_layer_visitor_base"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classarmnn_1_1_layer_visitor_base')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml">LayerVisitorBase&lt; VisitorNoThrowPolicy &gt;</a></td></tr>
365<tr class="memitem:aec6644c81f84f086262dfd06088acd99 inherit pro_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#aec6644c81f84f086262dfd06088acd99">LayerVisitorBase</a> ()</td></tr>
366<tr class="separator:aec6644c81f84f086262dfd06088acd99 inherit pro_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
367<tr class="memitem:ab59e5e8c65aa44857c27db70fc412baa inherit pro_methods_classarmnn_1_1_layer_visitor_base"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_visitor_base.xhtml#ab59e5e8c65aa44857c27db70fc412baa">~LayerVisitorBase</a> ()</td></tr>
368<tr class="separator:ab59e5e8c65aa44857c27db70fc412baa inherit pro_methods_classarmnn_1_1_layer_visitor_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
369<tr class="inherit_header pro_methods_classarmnn_1_1_i_layer_visitor"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classarmnn_1_1_i_layer_visitor')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml">ILayerVisitor</a></td></tr>
370<tr class="memitem:a27fa880bce96ac7355284a7681f2377e inherit pro_methods_classarmnn_1_1_i_layer_visitor"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#a27fa880bce96ac7355284a7681f2377e">ILayerVisitor</a> ()</td></tr>
371<tr class="separator:a27fa880bce96ac7355284a7681f2377e inherit pro_methods_classarmnn_1_1_i_layer_visitor"><td class="memSeparator" colspan="2">&#160;</td></tr>
372<tr class="memitem:a7ad7aeeaf26228ef11c15fa5d4507d8a inherit pro_methods_classarmnn_1_1_i_layer_visitor"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#a7ad7aeeaf26228ef11c15fa5d4507d8a">~ILayerVisitor</a> ()</td></tr>
373<tr class="separator:a7ad7aeeaf26228ef11c15fa5d4507d8a inherit pro_methods_classarmnn_1_1_i_layer_visitor"><td class="memSeparator" colspan="2">&#160;</td></tr>
374</table>
375<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
376<div class="textblock"><p>Visitor class to establish min/max ranges based on the type of the layer. </p>
377
378<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8hpp_source.xhtml#l00019">19</a> of file <a class="el" href="_dynamic_quantization_visitor_8hpp_source.xhtml">DynamicQuantizationVisitor.hpp</a>.</p>
379</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
380<a id="af377247c8cdc9bf91e9e5edd87331fef"></a>
381<h2 class="memtitle"><span class="permalink"><a href="#af377247c8cdc9bf91e9e5edd87331fef">&#9670;&nbsp;</a></span>DynamicQuantizationVisitor()</h2>
382
383<div class="memitem">
384<div class="memproto">
385 <table class="memname">
386 <tr>
387 <td class="memname"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml">DynamicQuantizationVisitor</a> </td>
388 <td>(</td>
389 <td class="paramtype"><a class="el" href="classarmnn_1_1_range_tracker.xhtml">RangeTracker</a> &amp;&#160;</td>
390 <td class="paramname"><em>rangeTracker</em>, </td>
391 </tr>
392 <tr>
393 <td class="paramkey"></td>
394 <td></td>
395 <td class="paramtype"><a class="el" href="classarmnn_1_1_graph.xhtml">Graph</a> &amp;&#160;</td>
396 <td class="paramname"><em>graph</em>&#160;</td>
397 </tr>
398 <tr>
399 <td></td>
400 <td>)</td>
401 <td></td><td></td>
402 </tr>
403 </table>
404</div><div class="memdoc">
405
406<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00018">18</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
407
408<p class="reference">References <a class="el" href="classarmnn_1_1_i_output_slot.xhtml#a41d30a9cd272e05986d71a69d6ad618b">IOutputSlot::CalculateIndexOnOwner()</a>, <a class="el" href="classarmnn_1_1_i_input_slot.xhtml#a81fbf6103761e55061b62ba989b00f10">IInputSlot::GetConnection()</a>, <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml#a6ec9e0eb66d7d6a01240492a0b18104c">IConnectableLayer::GetInputSlot()</a>, <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml#a9c2cba04b6d7ace4fc2a2436b82a5a63">IConnectableLayer::GetNumInputSlots()</a>, <a class="el" href="classarmnn_1_1_i_output_slot.xhtml#ad0c3555b126975ad6b3e250fe2a59534">IOutputSlot::GetOwningLayerGuid()</a>, <a class="el" href="_range_tracker_8cpp_source.xhtml#l00029">RangeTracker::GetRange()</a>, and <a class="el" href="_range_tracker_8cpp_source.xhtml#l00012">RangeTracker::SetRange()</a>.</p>
409<div class="fragment"><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; : m_RangeTracker(rangeTracker),</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; m_Graph(graph)</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;{}</div></div><!-- fragment -->
410</div>
411</div>
412<a id="a4f083823a44ede4d3482361dcb61bebe"></a>
413<h2 class="memtitle"><span class="permalink"><a href="#a4f083823a44ede4d3482361dcb61bebe">&#9670;&nbsp;</a></span>~DynamicQuantizationVisitor()</h2>
414
415<div class="memitem">
416<div class="memproto">
417<table class="mlabels">
418 <tr>
419 <td class="mlabels-left">
420 <table class="memname">
421 <tr>
422 <td class="memname">~<a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml">DynamicQuantizationVisitor</a> </td>
423 <td>(</td>
424 <td class="paramname"></td><td>)</td>
425 <td></td>
426 </tr>
427 </table>
428 </td>
429 <td class="mlabels-right">
430<span class="mlabels"><span class="mlabel">default</span></span> </td>
431 </tr>
432</table>
433</div><div class="memdoc">
434
435</div>
436</div>
437<h2 class="groupheader">Member Function Documentation</h2>
438<a id="a65ad16db7d3eab9c6bfc2cdb7271ef3b"></a>
439<h2 class="memtitle"><span class="permalink"><a href="#a65ad16db7d3eab9c6bfc2cdb7271ef3b">&#9670;&nbsp;</a></span>FinishVisit()</h2>
440
441<div class="memitem">
442<div class="memproto">
443<table class="mlabels">
444 <tr>
445 <td class="mlabels-left">
446 <table class="memname">
447 <tr>
448 <td class="memname">void FinishVisit </td>
449 <td>(</td>
450 <td class="paramname"></td><td>)</td>
451 <td></td>
452 </tr>
453 </table>
454 </td>
455 <td class="mlabels-right">
456<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
457 </tr>
458</table>
459</div><div class="memdoc">
460
461<p>Reimplemented from <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#a4549b1bbb63fa26700d74854e388784f">ILayerVisitor</a>.</p>
462
463<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00050">50</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
464
465<p class="reference">References <a class="el" href="_layer_8cpp_source.xhtml#l00079">OutputSlot::Connect()</a>, <a class="el" href="_layer_8cpp_source.xhtml#l00087">OutputSlot::Disconnect()</a>, <a class="el" href="_graph_8hpp_source.xhtml#l00442">Graph::EraseLayer()</a>, and <a class="el" href="_network_utils_8cpp_source.xhtml#l00112">armnn::InsertDebugLayerAfter()</a>.</p>
466<div class="fragment"><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;{</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> IConnectableLayer* layer : m_LayersToCalibrate)</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; {</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; std::vector&lt;DebugLayer*&gt; newDebugLayers = <a class="code" href="namespacearmnn.xhtml#a2616ffdae2db993af5c08019fb61860a">InsertDebugLayerAfter</a>(</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; m_Graph, *boost::polymorphic_downcast&lt;Layer*&gt;(const_cast&lt;IConnectableLayer*&gt;(layer)));</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="comment">// record them so we can take them out again efficiently afterward</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; m_DebugLayers.insert(std::end(m_DebugLayers), std::begin(newDebugLayers), std::end(newDebugLayers));</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; }</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a2616ffdae2db993af5c08019fb61860a"><div class="ttname"><a href="namespacearmnn.xhtml#a2616ffdae2db993af5c08019fb61860a">armnn::InsertDebugLayerAfter</a></div><div class="ttdeci">std::vector&lt; DebugLayer * &gt; InsertDebugLayerAfter(Graph &amp;graph, Layer &amp;layer)</div><div class="ttdef"><b>Definition:</b> <a href="_network_utils_8cpp_source.xhtml#l00112">NetworkUtils.cpp:112</a></div></div>
467</div><!-- fragment -->
468</div>
469</div>
470<a id="a2004cc285dba7f2d4e69352e60a9a7a0"></a>
471<h2 class="memtitle"><span class="permalink"><a href="#a2004cc285dba7f2d4e69352e60a9a7a0">&#9670;&nbsp;</a></span>GetOutputLayers()</h2>
472
473<div class="memitem">
474<div class="memproto">
475 <table class="memname">
476 <tr>
477 <td class="memname">const std::vector&lt; <a class="el" href="namespacearmnn.xhtml#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a> &gt; &amp; GetOutputLayers </td>
478 <td>(</td>
479 <td class="paramname"></td><td>)</td>
480 <td></td>
481 </tr>
482 </table>
483</div><div class="memdoc">
484
485<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00330">330</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
486<div class="fragment"><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;{</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">return</span> m_OutputLayers;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;}</div></div><!-- fragment -->
487</div>
488</div>
489<a id="af493528dec93f39f5081dbefb40bff75"></a>
490<h2 class="memtitle"><span class="permalink"><a href="#af493528dec93f39f5081dbefb40bff75">&#9670;&nbsp;</a></span>VisitActivationLayer()</h2>
491
492<div class="memitem">
493<div class="memproto">
494<table class="mlabels">
495 <tr>
496 <td class="mlabels-left">
497 <table class="memname">
498 <tr>
499 <td class="memname">void VisitActivationLayer </td>
500 <td>(</td>
501 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
502 <td class="paramname"><em>layer</em>, </td>
503 </tr>
504 <tr>
505 <td class="paramkey"></td>
506 <td></td>
507 <td class="paramtype">const <a class="el" href="structarmnn_1_1_activation_descriptor.xhtml">ActivationDescriptor</a> &amp;&#160;</td>
508 <td class="paramname"><em>activationDescriptor</em>, </td>
509 </tr>
510 <tr>
511 <td class="paramkey"></td>
512 <td></td>
513 <td class="paramtype">const char *&#160;</td>
514 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
515 </tr>
516 <tr>
517 <td></td>
518 <td>)</td>
519 <td></td><td></td>
520 </tr>
521 </table>
522 </td>
523 <td class="mlabels-right">
524<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
525 </tr>
526</table>
527</div><div class="memdoc">
528
529<p>Function that an activation layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
530<dl class="params"><dt>Parameters</dt><dd>
531 <table class="params">
532 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
533 <tr><td class="paramname">activationDescriptor</td><td>- <a class="el" href="structarmnn_1_1_activation_descriptor.xhtml" title="An ActivationDescriptor for the ActivationLayer. ">ActivationDescriptor</a> to configure the activation. </td></tr>
534 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
535 </table>
536 </dd>
537</dl>
538
539<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#ab2a1e493b983a932792bc5d0c1a20127">ILayerVisitor</a>.</p>
540
541<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00139">139</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
542
543<p class="reference">References <a class="el" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6">armnn::Abs</a>, <a class="el" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaabc5a0f0d6e7cf7fca73299dcd46c0f0d">armnn::BoundedReLu</a>, <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>, <a class="el" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaacb7667f5ec2f6e8a5943b781ba6c2735">armnn::LeakyReLu</a>, <a class="el" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa32a843da6ea40ab3b17a3421ccdf671b">armnn::Linear</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00037">ActivationDescriptor::m_A</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00035">ActivationDescriptor::m_Function</a>, <a class="el" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa3d90c0a5ab3fcf8e6f6608cb3d3a1559">armnn::ReLu</a>, <a class="el" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa6bba7052636d1740303b1b2ef3b53fef">armnn::SoftReLu</a>, and <a class="el" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa23b68da1de2b77d74da9da2635722a3e">armnn::TanH</a>.</p>
544<div class="fragment"><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;{</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name, activationDescriptor);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">switch</span> (activationDescriptor.m_Function)</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; {</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="comment">// Range is 0, 15 for Abs, Linear, ReLu and Soft ReLu</span></div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6">ActivationFunction::Abs</a>:</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa32a843da6ea40ab3b17a3421ccdf671b">ActivationFunction::Linear</a>:</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa3d90c0a5ab3fcf8e6f6608cb3d3a1559">ActivationFunction::ReLu</a>:</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa6bba7052636d1740303b1b2ef3b53fef">ActivationFunction::SoftReLu</a>:</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; SetRange(layer, 0, 0.f, 15.f);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaabc5a0f0d6e7cf7fca73299dcd46c0f0d">ActivationFunction::BoundedReLu</a>:</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; SetRange(layer, 0, 0.f, activationDescriptor.m_A);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa23b68da1de2b77d74da9da2635722a3e">ActivationFunction::TanH</a>:</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; SetRange(layer, 0, -1.f, 1.f);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaacb7667f5ec2f6e8a5943b781ba6c2735">ActivationFunction::LeakyReLu</a>:</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; SetRange(layer, 0, -5.f, 15.f);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; SetRange(layer, 0, -15.f, 15.f);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; }</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; AddToCalibratedLayers(layer);</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a56297e0f7b215eea46c818cb7528d9eaa3d90c0a5ab3fcf8e6f6608cb3d3a1559"><div class="ttname"><a href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa3d90c0a5ab3fcf8e6f6608cb3d3a1559">armnn::ActivationFunction::ReLu</a></div></div>
545<div class="ttc" id="namespacearmnn_xhtml_a56297e0f7b215eea46c818cb7528d9eaacb7667f5ec2f6e8a5943b781ba6c2735"><div class="ttname"><a href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaacb7667f5ec2f6e8a5943b781ba6c2735">armnn::ActivationFunction::LeakyReLu</a></div></div>
546<div class="ttc" id="namespacearmnn_xhtml_a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6"><div class="ttname"><a href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6">armnn::ActivationFunction::Abs</a></div></div>
547<div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
548<div class="ttc" id="namespacearmnn_xhtml_a56297e0f7b215eea46c818cb7528d9eaa6bba7052636d1740303b1b2ef3b53fef"><div class="ttname"><a href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa6bba7052636d1740303b1b2ef3b53fef">armnn::ActivationFunction::SoftReLu</a></div></div>
549<div class="ttc" id="namespacearmnn_xhtml_a56297e0f7b215eea46c818cb7528d9eaabc5a0f0d6e7cf7fca73299dcd46c0f0d"><div class="ttname"><a href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaabc5a0f0d6e7cf7fca73299dcd46c0f0d">armnn::ActivationFunction::BoundedReLu</a></div><div class="ttdoc">min(a, max(b, input)) ReLu1 &amp; ReLu6. </div></div>
550<div class="ttc" id="namespacearmnn_xhtml_a56297e0f7b215eea46c818cb7528d9eaa32a843da6ea40ab3b17a3421ccdf671b"><div class="ttname"><a href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa32a843da6ea40ab3b17a3421ccdf671b">armnn::ActivationFunction::Linear</a></div></div>
551<div class="ttc" id="namespacearmnn_xhtml_a56297e0f7b215eea46c818cb7528d9eaa23b68da1de2b77d74da9da2635722a3e"><div class="ttname"><a href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa23b68da1de2b77d74da9da2635722a3e">armnn::ActivationFunction::TanH</a></div></div>
552</div><!-- fragment -->
553</div>
554</div>
555<a id="a7cb4ef1bc9588c4319144460c288022f"></a>
556<h2 class="memtitle"><span class="permalink"><a href="#a7cb4ef1bc9588c4319144460c288022f">&#9670;&nbsp;</a></span>VisitAdditionLayer()</h2>
557
558<div class="memitem">
559<div class="memproto">
560<table class="mlabels">
561 <tr>
562 <td class="mlabels-left">
563 <table class="memname">
564 <tr>
565 <td class="memname">void VisitAdditionLayer </td>
566 <td>(</td>
567 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
568 <td class="paramname"><em>layer</em>, </td>
569 </tr>
570 <tr>
571 <td class="paramkey"></td>
572 <td></td>
573 <td class="paramtype">const char *&#160;</td>
574 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
575 </tr>
576 <tr>
577 <td></td>
578 <td>)</td>
579 <td></td><td></td>
580 </tr>
581 </table>
582 </td>
583 <td class="mlabels-right">
584<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
585 </tr>
586</table>
587</div><div class="memdoc">
588
589<p>Functions to set the Range on a per-layer-type basis. </p>
590
591<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#a2d20b94b7de822f3d29ab12e47e3be4e">ILayerVisitor</a>.</p>
592
593<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00086">86</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
594
595<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
596<div class="fragment"><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;{</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; SetRange(layer, 0, -20.f, 20.f);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; AddToCalibratedLayers(layer);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
597</div><!-- fragment -->
598</div>
599</div>
600<a id="a1532cb8f551812e784ccc14faae407b9"></a>
601<h2 class="memtitle"><span class="permalink"><a href="#a1532cb8f551812e784ccc14faae407b9">&#9670;&nbsp;</a></span>VisitBatchNormalizationLayer()</h2>
602
603<div class="memitem">
604<div class="memproto">
605<table class="mlabels">
606 <tr>
607 <td class="mlabels-left">
608 <table class="memname">
609 <tr>
610 <td class="memname">void VisitBatchNormalizationLayer </td>
611 <td>(</td>
612 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
613 <td class="paramname"><em>layer</em>, </td>
614 </tr>
615 <tr>
616 <td class="paramkey"></td>
617 <td></td>
618 <td class="paramtype">const <a class="el" href="structarmnn_1_1_batch_normalization_descriptor.xhtml">BatchNormalizationDescriptor</a> &amp;&#160;</td>
619 <td class="paramname"><em>desc</em>, </td>
620 </tr>
621 <tr>
622 <td class="paramkey"></td>
623 <td></td>
624 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;&#160;</td>
625 <td class="paramname"><em>mean</em>, </td>
626 </tr>
627 <tr>
628 <td class="paramkey"></td>
629 <td></td>
630 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;&#160;</td>
631 <td class="paramname"><em>variance</em>, </td>
632 </tr>
633 <tr>
634 <td class="paramkey"></td>
635 <td></td>
636 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;&#160;</td>
637 <td class="paramname"><em>beta</em>, </td>
638 </tr>
639 <tr>
640 <td class="paramkey"></td>
641 <td></td>
642 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;&#160;</td>
643 <td class="paramname"><em>gamma</em>, </td>
644 </tr>
645 <tr>
646 <td class="paramkey"></td>
647 <td></td>
648 <td class="paramtype">const char *&#160;</td>
649 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
650 </tr>
651 <tr>
652 <td></td>
653 <td>)</td>
654 <td></td><td></td>
655 </tr>
656 </table>
657 </td>
658 <td class="mlabels-right">
659<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
660 </tr>
661</table>
662</div><div class="memdoc">
663
664<p>Function that a batch normalization layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
665<dl class="params"><dt>Parameters</dt><dd>
666 <table class="params">
667 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
668 <tr><td class="paramname">mean</td><td>- Pre-calculated mean for each channel. </td></tr>
669 <tr><td class="paramname">variance</td><td>- Pre-calculated variance for each channel. </td></tr>
670 <tr><td class="paramname">beta</td><td>- Per-channel additive factor. </td></tr>
671 <tr><td class="paramname">gamma</td><td>- Per-channel multiplicative factor. </td></tr>
672 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
673 </table>
674 </dd>
675</dl>
676
677<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#a9e642355474f31268e66a404e6c1b81d">ILayerVisitor</a>.</p>
678
679<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00093">93</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
680
681<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
682<div class="fragment"><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;{</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(desc);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(mean);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(variance);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(beta);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(gamma);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; SetRange(layer, 0, -15.0f, 15.0f);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; AddToCalibratedLayers(layer);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
683</div><!-- fragment -->
684</div>
685</div>
686<a id="af5d09e03a578afa9c0bb8afd11c65485"></a>
687<h2 class="memtitle"><span class="permalink"><a href="#af5d09e03a578afa9c0bb8afd11c65485">&#9670;&nbsp;</a></span>VisitBatchToSpaceNdLayer()</h2>
688
689<div class="memitem">
690<div class="memproto">
691<table class="mlabels">
692 <tr>
693 <td class="mlabels-left">
694 <table class="memname">
695 <tr>
696 <td class="memname">void VisitBatchToSpaceNdLayer </td>
697 <td>(</td>
698 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
699 <td class="paramname"><em>layer</em>, </td>
700 </tr>
701 <tr>
702 <td class="paramkey"></td>
703 <td></td>
704 <td class="paramtype">const <a class="el" href="structarmnn_1_1_batch_to_space_nd_descriptor.xhtml">BatchToSpaceNdDescriptor</a> &amp;&#160;</td>
705 <td class="paramname"><em>batchToSpaceNdDescriptor</em>, </td>
706 </tr>
707 <tr>
708 <td class="paramkey"></td>
709 <td></td>
710 <td class="paramtype">const char *&#160;</td>
711 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
712 </tr>
713 <tr>
714 <td></td>
715 <td>)</td>
716 <td></td><td></td>
717 </tr>
718 </table>
719 </td>
720 <td class="mlabels-right">
721<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
722 </tr>
723</table>
724</div><div class="memdoc">
725
726<p>Function that a batch to space ND layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
727<dl class="params"><dt>Parameters</dt><dd>
728 <table class="params">
729 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
730 <tr><td class="paramname">batchToSpaceNdDescriptor</td><td>- Description of the layer. </td></tr>
731 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
732 </table>
733 </dd>
734</dl>
735
736<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#a1cee693185bcda15bd777008e60c7cf7">ILayerVisitor</a>.</p>
737
738<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00305">305</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
739
740<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
741<div class="fragment"><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;{</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(batchToSpaceNdDescriptor);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; AddToNonCalibratedLayers(layer);</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
742</div><!-- fragment -->
743</div>
744</div>
745<a id="a8a3cd0b0d46a765ad2b0652c72a31d0c"></a>
746<h2 class="memtitle"><span class="permalink"><a href="#a8a3cd0b0d46a765ad2b0652c72a31d0c">&#9670;&nbsp;</a></span>VisitConcatLayer()</h2>
747
748<div class="memitem">
749<div class="memproto">
750<table class="mlabels">
751 <tr>
752 <td class="mlabels-left">
753 <table class="memname">
754 <tr>
755 <td class="memname">void VisitConcatLayer </td>
756 <td>(</td>
757 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
758 <td class="paramname"><em>layer</em>, </td>
759 </tr>
760 <tr>
761 <td class="paramkey"></td>
762 <td></td>
763 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#a7863c179ff92feec660c48ab7b95ae55">ConcatDescriptor</a> &amp;&#160;</td>
764 <td class="paramname"><em>concatDescriptor</em>, </td>
765 </tr>
766 <tr>
767 <td class="paramkey"></td>
768 <td></td>
769 <td class="paramtype">const char *&#160;</td>
770 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
771 </tr>
772 <tr>
773 <td></td>
774 <td>)</td>
775 <td></td><td></td>
776 </tr>
777 </table>
778 </td>
779 <td class="mlabels-right">
780<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
781 </tr>
782</table>
783</div><div class="memdoc">
784
785<p>Function that a concat layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
786<dl class="params"><dt>Parameters</dt><dd>
787 <table class="params">
788 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
789 <tr><td class="paramname">concatDescriptor</td><td>- ConcatDescriptor (synonym for <a class="el" href="structarmnn_1_1_origins_descriptor.xhtml" title="An OriginsDescriptor for the ConcatLayer. ">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>
790 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
791 </table>
792 </dd>
793</dl>
794
795<p>Reimplemented from <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#aeb90d7587f7887aee1f2b43261d4ee5c">ILayerVisitor</a>.</p>
796
797<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00248">248</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
798
799<p class="reference">References <a class="el" href="classarmnn_1_1_i_output_slot.xhtml#a41d30a9cd272e05986d71a69d6ad618b">IOutputSlot::CalculateIndexOnOwner()</a>, <a class="el" href="classarmnn_1_1_i_input_slot.xhtml#a81fbf6103761e55061b62ba989b00f10">IInputSlot::GetConnection()</a>, <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml#a6ec9e0eb66d7d6a01240492a0b18104c">IConnectableLayer::GetInputSlot()</a>, <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml#a9c2cba04b6d7ace4fc2a2436b82a5a63">IConnectableLayer::GetNumInputSlots()</a>, <a class="el" href="classarmnn_1_1_i_output_slot.xhtml#ad0c3555b126975ad6b3e250fe2a59534">IOutputSlot::GetOwningLayerGuid()</a>, <a class="el" href="_range_tracker_8cpp_source.xhtml#l00029">RangeTracker::GetRange()</a>, and <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
800<div class="fragment"><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;{</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(originsDescriptor);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordtype">float</span> min = std::numeric_limits&lt;float&gt;::max();</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordtype">float</span> max = std::numeric_limits&lt;float&gt;::lowest();</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; layer-&gt;GetNumInputSlots(); ++i)</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; {</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keyword">const</span> IOutputSlot* outputSlot = layer-&gt;GetInputSlot(i).GetConnection();</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <a class="code" href="namespacearmnn.xhtml#afad4088a9a058114ee5f87246f87bf49">LayerGuid</a> layerId = outputSlot-&gt;GetOwningLayerGuid();</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> slotIndex = outputSlot-&gt;CalculateIndexOnOwner();</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <a class="code" href="classarmnn_1_1_range_tracker.xhtml#a997e96288bdb106c922202e3f33d5d7b">RangeTracker::MinMaxRange</a> range = m_RangeTracker.<a class="code" href="classarmnn_1_1_range_tracker.xhtml#a507bae23f59e94b4161886ebe663cdf4">GetRange</a>(layerId, slotIndex);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; min = std::min(min, range.first);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; max = std::max(max, range.second);</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; }</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; SetRange(layer, 0, min, max);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; AddToCalibratedLayers(layer);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
801<div class="ttc" id="classarmnn_1_1_range_tracker_xhtml_a997e96288bdb106c922202e3f33d5d7b"><div class="ttname"><a href="classarmnn_1_1_range_tracker.xhtml#a997e96288bdb106c922202e3f33d5d7b">armnn::RangeTracker::MinMaxRange</a></div><div class="ttdeci">std::pair&lt; float, float &gt; MinMaxRange</div><div class="ttdef"><b>Definition:</b> <a href="_range_tracker_8hpp_source.xhtml#l00020">RangeTracker.hpp:20</a></div></div>
802<div class="ttc" id="classarmnn_1_1_range_tracker_xhtml_a507bae23f59e94b4161886ebe663cdf4"><div class="ttname"><a href="classarmnn_1_1_range_tracker.xhtml#a507bae23f59e94b4161886ebe663cdf4">armnn::RangeTracker::GetRange</a></div><div class="ttdeci">MinMaxRange GetRange(LayerGuid guid, unsigned int idx) const</div><div class="ttdoc">Retrieve the Range for a particular output slot on a particular layer. </div><div class="ttdef"><b>Definition:</b> <a href="_range_tracker_8cpp_source.xhtml#l00029">RangeTracker.cpp:29</a></div></div>
803<div class="ttc" id="namespacearmnn_xhtml_afad4088a9a058114ee5f87246f87bf49"><div class="ttname"><a href="namespacearmnn.xhtml#afad4088a9a058114ee5f87246f87bf49">armnn::LayerGuid</a></div><div class="ttdeci">profiling::ProfilingGuid LayerGuid</div><div class="ttdoc">Define LayerGuid type. </div><div class="ttdef"><b>Definition:</b> <a href="_types_8hpp_source.xhtml#l00236">Types.hpp:236</a></div></div>
804</div><!-- fragment -->
805</div>
806</div>
807<a id="aeb652d74e4b3596e85b22c2d52144f73"></a>
808<h2 class="memtitle"><span class="permalink"><a href="#aeb652d74e4b3596e85b22c2d52144f73">&#9670;&nbsp;</a></span>VisitConstantLayer()</h2>
809
810<div class="memitem">
811<div class="memproto">
812<table class="mlabels">
813 <tr>
814 <td class="mlabels-left">
815 <table class="memname">
816 <tr>
817 <td class="memname">void VisitConstantLayer </td>
818 <td>(</td>
819 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
820 <td class="paramname"><em>layer</em>, </td>
821 </tr>
822 <tr>
823 <td class="paramkey"></td>
824 <td></td>
825 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;&#160;</td>
826 <td class="paramname"><em>input</em>, </td>
827 </tr>
828 <tr>
829 <td class="paramkey"></td>
830 <td></td>
831 <td class="paramtype">const char *&#160;</td>
832 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
833 </tr>
834 <tr>
835 <td></td>
836 <td>)</td>
837 <td></td><td></td>
838 </tr>
839 </table>
840 </td>
841 <td class="mlabels-right">
842<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
843 </tr>
844</table>
845</div><div class="memdoc">
846
847<p>Function a layer with no inputs and a single output, which always corresponds to the passed in constant tensor should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
848<dl class="params"><dt>Parameters</dt><dd>
849 <table class="params">
850 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
851 <tr><td class="paramname">input</td><td>- <a class="el" href="classarmnn_1_1_tensor.xhtml" 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>
852 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
853 </table>
854 </dd>
855</dl>
856
857<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#a2f123a6a99ac143c0f3806cb505765cd">ILayerVisitor</a>.</p>
858
859<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
860
861<p class="reference">References <a class="el" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::Float32</a>, <a class="el" href="_tensor_8hpp_source.xhtml#l00172">BaseTensor&lt; MemoryType &gt;::GetDataType()</a>, <a class="el" href="_tensor_8hpp_source.xhtml#l00177">BaseTensor&lt; MemoryType &gt;::GetMemoryArea()</a>, <a class="el" href="_tensor_8hpp_source.xhtml#l00175">BaseTensor&lt; MemoryType &gt;::GetNumElements()</a>, and <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
862<div class="fragment"><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;{</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">if</span> (input.GetDataType() != <a class="code" href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">DataType::Float32</a>)</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; {</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keywordflow">throw</span> InvalidArgumentException(<span class="stringliteral">&quot;Quantization is supported only for FP32 tensors&quot;</span>);</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; }</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="comment">// Work out the range based on the input constants</span></div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> inputNumElements = input.GetNumElements();</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span>* inputData = <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span><span class="keywordtype">float</span>*<span class="keyword">&gt;</span>(input.GetMemoryArea());</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordtype">float</span> min = std::numeric_limits&lt;float&gt;::max();</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordtype">float</span> max = std::numeric_limits&lt;float&gt;::lowest();</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; inputNumElements; i++)</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; {</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> inputValue = inputData[i];</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; min = std::min(min, inputValue);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; max = std::max(max, inputValue);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; }</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; SetRange(layer, 0, min, max);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
863<div class="ttc" id="namespacearmnn_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204"><div class="ttname"><a href="namespacearmnn.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a166495adc0d0f53bee6baecc577f5204">armnn::DataType::Float32</a></div></div>
864</div><!-- fragment -->
865</div>
866</div>
867<a id="ac2f379ba77b06095e0c024e232ec1fd4"></a>
868<h2 class="memtitle"><span class="permalink"><a href="#ac2f379ba77b06095e0c024e232ec1fd4">&#9670;&nbsp;</a></span>VisitConvolution2dLayer()</h2>
869
870<div class="memitem">
871<div class="memproto">
872<table class="mlabels">
873 <tr>
874 <td class="mlabels-left">
875 <table class="memname">
876 <tr>
877 <td class="memname">void VisitConvolution2dLayer </td>
878 <td>(</td>
879 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
880 <td class="paramname"><em>layer</em>, </td>
881 </tr>
882 <tr>
883 <td class="paramkey"></td>
884 <td></td>
885 <td class="paramtype">const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.xhtml">Convolution2dDescriptor</a> &amp;&#160;</td>
886 <td class="paramname"><em>convolution2dDescriptor</em>, </td>
887 </tr>
888 <tr>
889 <td class="paramkey"></td>
890 <td></td>
891 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;&#160;</td>
892 <td class="paramname"><em>weights</em>, </td>
893 </tr>
894 <tr>
895 <td class="paramkey"></td>
896 <td></td>
897 <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>&lt; <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &gt; &amp;&#160;</td>
898 <td class="paramname"><em>biases</em>, </td>
899 </tr>
900 <tr>
901 <td class="paramkey"></td>
902 <td></td>
903 <td class="paramtype">const char *&#160;</td>
904 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
905 </tr>
906 <tr>
907 <td></td>
908 <td>)</td>
909 <td></td><td></td>
910 </tr>
911 </table>
912 </td>
913 <td class="mlabels-right">
914<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
915 </tr>
916</table>
917</div><div class="memdoc">
918
919<p>Function that a 2D convolution layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
920<dl class="params"><dt>Parameters</dt><dd>
921 <table class="params">
922 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
923 <tr><td class="paramname">convolution2dDescriptor</td><td>- Description of the 2D convolution layer. </td></tr>
924 <tr><td class="paramname">weights</td><td>- <a class="el" href="classarmnn_1_1_tensor.xhtml" title="A tensor defined by a TensorInfo (shape and data type) and a mutable backing store. ">Tensor</a> for the weights data. </td></tr>
925 <tr><td class="paramname">biases</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> tensor for the bias data. If specified, must match the output tensor shape. </td></tr>
926 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
927 </table>
928 </dd>
929</dl>
930
931<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#abc8fe4c6cbc8fa2b13c525500dddfbf6">ILayerVisitor</a>.</p>
932
933<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00111">111</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
934
935<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
936<div class="fragment"><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;{</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(convolution2dDescriptor);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(weights);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(biases);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; SetRange(layer, 0, -15.0f, 15.0f);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; AddToCalibratedLayers(layer);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
937</div><!-- fragment -->
938</div>
939</div>
940<a id="a554e88817e6fd98645388873a108f868"></a>
941<h2 class="memtitle"><span class="permalink"><a href="#a554e88817e6fd98645388873a108f868">&#9670;&nbsp;</a></span>VisitDepthwiseConvolution2dLayer()</h2>
942
943<div class="memitem">
944<div class="memproto">
945<table class="mlabels">
946 <tr>
947 <td class="mlabels-left">
948 <table class="memname">
949 <tr>
950 <td class="memname">void VisitDepthwiseConvolution2dLayer </td>
951 <td>(</td>
952 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
953 <td class="paramname"><em>layer</em>, </td>
954 </tr>
955 <tr>
956 <td class="paramkey"></td>
957 <td></td>
958 <td class="paramtype">const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml">DepthwiseConvolution2dDescriptor</a> &amp;&#160;</td>
959 <td class="paramname"><em>convolution2dDescriptor</em>, </td>
960 </tr>
961 <tr>
962 <td class="paramkey"></td>
963 <td></td>
964 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;&#160;</td>
965 <td class="paramname"><em>weights</em>, </td>
966 </tr>
967 <tr>
968 <td class="paramkey"></td>
969 <td></td>
970 <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>&lt; <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &gt; &amp;&#160;</td>
971 <td class="paramname"><em>biases</em>, </td>
972 </tr>
973 <tr>
974 <td class="paramkey"></td>
975 <td></td>
976 <td class="paramtype">const char *&#160;</td>
977 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
978 </tr>
979 <tr>
980 <td></td>
981 <td>)</td>
982 <td></td><td></td>
983 </tr>
984 </table>
985 </td>
986 <td class="mlabels-right">
987<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
988 </tr>
989</table>
990</div><div class="memdoc">
991
992<p>Function that a 2D depthwise convolution layer with biases should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
993<dl class="params"><dt>Parameters</dt><dd>
994 <table class="params">
995 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
996 <tr><td class="paramname">convolution2dDescriptor</td><td>- Description of the 2D depthwise convolution layer. </td></tr>
997 <tr><td class="paramname">weights</td><td>- <a class="el" href="classarmnn_1_1_tensor.xhtml" 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>
998 <tr><td class="paramname">biases</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> tensor for the bias data. If specified, must match the output tensor shape. </td></tr>
999 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
1000 </table>
1001 </dd>
1002</dl>
1003
1004<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#ad39aaac8f8fb790ae364c87f1a249d68">ILayerVisitor</a>.</p>
1005
1006<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00125">125</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
1007
1008<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
1009<div class="fragment"><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;{</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(desc);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(weights);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(biases);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; SetRange(layer, 0, -15.0f, 15.0f);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; AddToCalibratedLayers(layer);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
1010</div><!-- fragment -->
1011</div>
1012</div>
1013<a id="ac98eae261af6c8d5f7161a01a1959e72"></a>
1014<h2 class="memtitle"><span class="permalink"><a href="#ac98eae261af6c8d5f7161a01a1959e72">&#9670;&nbsp;</a></span>VisitFullyConnectedLayer()</h2>
1015
1016<div class="memitem">
1017<div class="memproto">
1018<table class="mlabels">
1019 <tr>
1020 <td class="mlabels-left">
1021 <table class="memname">
1022 <tr>
1023 <td class="memname">void VisitFullyConnectedLayer </td>
1024 <td>(</td>
1025 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
1026 <td class="paramname"><em>layer</em>, </td>
1027 </tr>
1028 <tr>
1029 <td class="paramkey"></td>
1030 <td></td>
1031 <td class="paramtype">const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.xhtml">FullyConnectedDescriptor</a> &amp;&#160;</td>
1032 <td class="paramname"><em>fullyConnectedDescriptor</em>, </td>
1033 </tr>
1034 <tr>
1035 <td class="paramkey"></td>
1036 <td></td>
1037 <td class="paramtype">const <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &amp;&#160;</td>
1038 <td class="paramname"><em>weights</em>, </td>
1039 </tr>
1040 <tr>
1041 <td class="paramkey"></td>
1042 <td></td>
1043 <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>&lt; <a class="el" href="classarmnn_1_1_const_tensor.xhtml">ConstTensor</a> &gt; &amp;&#160;</td>
1044 <td class="paramname"><em>biases</em>, </td>
1045 </tr>
1046 <tr>
1047 <td class="paramkey"></td>
1048 <td></td>
1049 <td class="paramtype">const char *&#160;</td>
1050 <td class="paramname"><em>name</em>&#160;</td>
1051 </tr>
1052 <tr>
1053 <td></td>
1054 <td>)</td>
1055 <td></td><td></td>
1056 </tr>
1057 </table>
1058 </td>
1059 <td class="mlabels-right">
1060<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1061 </tr>
1062</table>
1063</div><div class="memdoc">
1064
1065<p>Function that a fully connected layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
1066<dl class="params"><dt>Parameters</dt><dd>
1067 <table class="params">
1068 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
1069 <tr><td class="paramname">fullyConnectedDescriptor</td><td>- Description of the fully connected layer. </td></tr>
1070 <tr><td class="paramname">weights</td><td>- <a class="el" href="classarmnn_1_1_tensor.xhtml" title="A tensor defined by a TensorInfo (shape and data type) and a mutable backing store. ">Tensor</a> for the weights data. </td></tr>
1071 <tr><td class="paramname">biases</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> tensor for the bias data. </td></tr>
1072 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
1073 </table>
1074 </dd>
1075</dl>
1076
1077<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#ab93a48970564c6eabbc982a2116c1262">ILayerVisitor</a>.</p>
1078
1079<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00169">169</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
1080
1081<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
1082<div class="fragment"><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;{</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(desc);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(weights);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(biases);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; SetRange(layer, 0, -15.0f, 15.0f);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; AddToCalibratedLayers(layer);</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
1083</div><!-- fragment -->
1084</div>
1085</div>
1086<a id="a2ca539d734553e606c0134940e444298"></a>
1087<h2 class="memtitle"><span class="permalink"><a href="#a2ca539d734553e606c0134940e444298">&#9670;&nbsp;</a></span>VisitInputLayer()</h2>
1088
1089<div class="memitem">
1090<div class="memproto">
1091<table class="mlabels">
1092 <tr>
1093 <td class="mlabels-left">
1094 <table class="memname">
1095 <tr>
1096 <td class="memname">void VisitInputLayer </td>
1097 <td>(</td>
1098 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
1099 <td class="paramname"><em>layer</em>, </td>
1100 </tr>
1101 <tr>
1102 <td class="paramkey"></td>
1103 <td></td>
1104 <td class="paramtype"><a class="el" href="namespacearmnn.xhtml#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a>&#160;</td>
1105 <td class="paramname"><em>id</em>, </td>
1106 </tr>
1107 <tr>
1108 <td class="paramkey"></td>
1109 <td></td>
1110 <td class="paramtype">const char *&#160;</td>
1111 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1112 </tr>
1113 <tr>
1114 <td></td>
1115 <td>)</td>
1116 <td></td><td></td>
1117 </tr>
1118 </table>
1119 </td>
1120 <td class="mlabels-right">
1121<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1122 </tr>
1123</table>
1124</div><div class="memdoc">
1125
1126<p>Function that an <a class="el" href="classarmnn_1_1_input_layer.xhtml" title="A layer user-provided data can be bound to (e.g. inputs, outputs). ">InputLayer</a> should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
1127<dl class="params"><dt>Parameters</dt><dd>
1128 <table class="params">
1129 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
1130 <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.xhtml#aec0dc8016a3b1e444dfc1ffb5f15195c" title="Evaluates a network using input in inputTensors and outputs filled into outputTensors. ">IRuntime::EnqueueWorkload()</a> function. </td></tr>
1131 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
1132 </table>
1133 </dd>
1134</dl>
1135
1136<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#ab6dc51682cb4178194f3f00c2309ec7b">ILayerVisitor</a>.</p>
1137
1138<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00314">314</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
1139
1140<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
1141<div class="fragment"><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;{</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; SetRange(layer, 0, -0.0f, 0.0f);</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; AddToCalibratedLayers(layer);</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
1142</div><!-- fragment -->
1143</div>
1144</div>
1145<a id="a795e9253dab52825add51ffc569eb81e"></a>
1146<h2 class="memtitle"><span class="permalink"><a href="#a795e9253dab52825add51ffc569eb81e">&#9670;&nbsp;</a></span>VisitNonCalibratedLayers()</h2>
1147
1148<div class="memitem">
1149<div class="memproto">
1150 <table class="memname">
1151 <tr>
1152 <td class="memname">void VisitNonCalibratedLayers </td>
1153 <td>(</td>
1154 <td class="paramname"></td><td>)</td>
1155 <td></td>
1156 </tr>
1157 </table>
1158</div><div class="memdoc">
1159
1160<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00078">78</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
1161<div class="fragment"><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; {</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; RemoveDebugLayers();</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> IConnectableLayer* layer : m_LayersNotToCalibrate)</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; {</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; ForwardParentParameters(layer);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; }</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;}</div></div><!-- fragment -->
1162</div>
1163</div>
1164<a id="ac75d60924c52b96ea6f9567fcfa2db10"></a>
1165<h2 class="memtitle"><span class="permalink"><a href="#ac75d60924c52b96ea6f9567fcfa2db10">&#9670;&nbsp;</a></span>VisitOutputLayer()</h2>
1166
1167<div class="memitem">
1168<div class="memproto">
1169<table class="mlabels">
1170 <tr>
1171 <td class="mlabels-left">
1172 <table class="memname">
1173 <tr>
1174 <td class="memname">void VisitOutputLayer </td>
1175 <td>(</td>
1176 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
1177 <td class="paramname"><em>layer</em>, </td>
1178 </tr>
1179 <tr>
1180 <td class="paramkey"></td>
1181 <td></td>
1182 <td class="paramtype"><a class="el" href="namespacearmnn.xhtml#ab8cf8f9fb6792e654c2d8d8382f6f01b">LayerBindingId</a>&#160;</td>
1183 <td class="paramname"><em>id</em>, </td>
1184 </tr>
1185 <tr>
1186 <td class="paramkey"></td>
1187 <td></td>
1188 <td class="paramtype">const char *&#160;</td>
1189 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1190 </tr>
1191 <tr>
1192 <td></td>
1193 <td>)</td>
1194 <td></td><td></td>
1195 </tr>
1196 </table>
1197 </td>
1198 <td class="mlabels-right">
1199<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1200 </tr>
1201</table>
1202</div><div class="memdoc">
1203
1204<p>Function an output layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
1205<dl class="params"><dt>Parameters</dt><dd>
1206 <table class="params">
1207 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
1208 <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.xhtml#aec0dc8016a3b1e444dfc1ffb5f15195c" title="Evaluates a network using input in inputTensors and outputs filled into outputTensors. ">IRuntime::EnqueueWorkload()</a> function. </td></tr>
1209 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
1210 </table>
1211 </dd>
1212</dl>
1213
1214<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#a0da6bde681d919b7282eddad4a446890">ILayerVisitor</a>.</p>
1215
1216<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00322">322</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
1217
1218<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
1219<div class="fragment"><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;{</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; AddToNonCalibratedLayers(layer);</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; m_OutputLayers.push_back(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
1220</div><!-- fragment -->
1221</div>
1222</div>
1223<a id="ad5532a4626c0228acc7b01fa0f5515eb"></a>
1224<h2 class="memtitle"><span class="permalink"><a href="#ad5532a4626c0228acc7b01fa0f5515eb">&#9670;&nbsp;</a></span>VisitPermuteLayer()</h2>
1225
1226<div class="memitem">
1227<div class="memproto">
1228<table class="mlabels">
1229 <tr>
1230 <td class="mlabels-left">
1231 <table class="memname">
1232 <tr>
1233 <td class="memname">void VisitPermuteLayer </td>
1234 <td>(</td>
1235 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
1236 <td class="paramname"><em>layer</em>, </td>
1237 </tr>
1238 <tr>
1239 <td class="paramkey"></td>
1240 <td></td>
1241 <td class="paramtype">const <a class="el" href="structarmnn_1_1_permute_descriptor.xhtml">PermuteDescriptor</a> &amp;&#160;</td>
1242 <td class="paramname"><em>permuteDescriptor</em>, </td>
1243 </tr>
1244 <tr>
1245 <td class="paramkey"></td>
1246 <td></td>
1247 <td class="paramtype">const char *&#160;</td>
1248 <td class="paramname"><em>name</em>&#160;</td>
1249 </tr>
1250 <tr>
1251 <td></td>
1252 <td>)</td>
1253 <td></td><td></td>
1254 </tr>
1255 </table>
1256 </td>
1257 <td class="mlabels-right">
1258<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1259 </tr>
1260</table>
1261</div><div class="memdoc">
1262
1263<p>Function that a permute layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
1264<dl class="params"><dt>Parameters</dt><dd>
1265 <table class="params">
1266 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
1267 <tr><td class="paramname">permuteDescriptor</td><td>- <a class="el" href="structarmnn_1_1_permute_descriptor.xhtml" title="A PermuteDescriptor for the PermuteLayer. ">PermuteDescriptor</a> to configure the permute. </td></tr>
1268 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
1269 </table>
1270 </dd>
1271</dl>
1272
1273<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#a211e587a05b0c7e7202f8f8894f89894">ILayerVisitor</a>.</p>
1274
1275<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00183">183</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
1276
1277<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
1278<div class="fragment"><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;{</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(permuteDescriptor);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; AddToNonCalibratedLayers(layer);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
1279</div><!-- fragment -->
1280</div>
1281</div>
1282<a id="aaca77d69321f5ba94d639fe40dbd0b1c"></a>
1283<h2 class="memtitle"><span class="permalink"><a href="#aaca77d69321f5ba94d639fe40dbd0b1c">&#9670;&nbsp;</a></span>VisitPooling2dLayer()</h2>
1284
1285<div class="memitem">
1286<div class="memproto">
1287<table class="mlabels">
1288 <tr>
1289 <td class="mlabels-left">
1290 <table class="memname">
1291 <tr>
1292 <td class="memname">void VisitPooling2dLayer </td>
1293 <td>(</td>
1294 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
1295 <td class="paramname"><em>layer</em>, </td>
1296 </tr>
1297 <tr>
1298 <td class="paramkey"></td>
1299 <td></td>
1300 <td class="paramtype">const <a class="el" href="structarmnn_1_1_pooling2d_descriptor.xhtml">Pooling2dDescriptor</a> &amp;&#160;</td>
1301 <td class="paramname"><em>pooling2dDescriptor</em>, </td>
1302 </tr>
1303 <tr>
1304 <td class="paramkey"></td>
1305 <td></td>
1306 <td class="paramtype">const char *&#160;</td>
1307 <td class="paramname"><em>name</em>&#160;</td>
1308 </tr>
1309 <tr>
1310 <td></td>
1311 <td>)</td>
1312 <td></td><td></td>
1313 </tr>
1314 </table>
1315 </td>
1316 <td class="mlabels-right">
1317<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1318 </tr>
1319</table>
1320</div><div class="memdoc">
1321
1322<p>Function that a pooling layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
1323<dl class="params"><dt>Parameters</dt><dd>
1324 <table class="params">
1325 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
1326 <tr><td class="paramname">pooling2dDescriptor</td><td>- <a class="el" href="structarmnn_1_1_pooling2d_descriptor.xhtml" title="A Pooling2dDescriptor for the Pooling2dLayer. ">Pooling2dDescriptor</a> to configure the pooling. </td></tr>
1327 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
1328 </table>
1329 </dd>
1330</dl>
1331
1332<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#aef56afef7d87afa51fd363487c375af5">ILayerVisitor</a>.</p>
1333
1334<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00201">201</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
1335
1336<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
1337<div class="fragment"><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;{</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(pooling2dDescriptor);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; AddToNonCalibratedLayers(layer);</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
1338</div><!-- fragment -->
1339</div>
1340</div>
1341<a id="a4a7f7f33591fd91e8fb1c08d06c0733a"></a>
1342<h2 class="memtitle"><span class="permalink"><a href="#a4a7f7f33591fd91e8fb1c08d06c0733a">&#9670;&nbsp;</a></span>VisitReshapeLayer()</h2>
1343
1344<div class="memitem">
1345<div class="memproto">
1346<table class="mlabels">
1347 <tr>
1348 <td class="mlabels-left">
1349 <table class="memname">
1350 <tr>
1351 <td class="memname">void VisitReshapeLayer </td>
1352 <td>(</td>
1353 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
1354 <td class="paramname"><em>layer</em>, </td>
1355 </tr>
1356 <tr>
1357 <td class="paramkey"></td>
1358 <td></td>
1359 <td class="paramtype">const <a class="el" href="structarmnn_1_1_reshape_descriptor.xhtml">ReshapeDescriptor</a> &amp;&#160;</td>
1360 <td class="paramname"><em>reshapeDescriptor</em>, </td>
1361 </tr>
1362 <tr>
1363 <td class="paramkey"></td>
1364 <td></td>
1365 <td class="paramtype">const char *&#160;</td>
1366 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1367 </tr>
1368 <tr>
1369 <td></td>
1370 <td>)</td>
1371 <td></td><td></td>
1372 </tr>
1373 </table>
1374 </td>
1375 <td class="mlabels-right">
1376<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1377 </tr>
1378</table>
1379</div><div class="memdoc">
1380
1381<p>Function a reshape layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
1382<dl class="params"><dt>Parameters</dt><dd>
1383 <table class="params">
1384 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
1385 <tr><td class="paramname">reshapeDescriptor</td><td>- Parameters for the reshape operation. </td></tr>
1386 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
1387 </table>
1388 </dd>
1389</dl>
1390
1391<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#acb732489554691ba852ca323888093ac">ILayerVisitor</a>.</p>
1392
1393<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00269">269</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
1394
1395<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
1396<div class="fragment"><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;{</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(reshapeDescriptor);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; AddToNonCalibratedLayers(layer);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
1397</div><!-- fragment -->
1398</div>
1399</div>
1400<a id="a5abbca55c908440acecfa6e0f921092d"></a>
1401<h2 class="memtitle"><span class="permalink"><a href="#a5abbca55c908440acecfa6e0f921092d">&#9670;&nbsp;</a></span>VisitResizeBilinearLayer()</h2>
1402
1403<div class="memitem">
1404<div class="memproto">
1405<table class="mlabels">
1406 <tr>
1407 <td class="mlabels-left">
1408 <table class="memname">
1409 <tr>
1410 <td class="memname">void VisitResizeBilinearLayer </td>
1411 <td>(</td>
1412 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
1413 <td class="paramname"><em>layer</em>, </td>
1414 </tr>
1415 <tr>
1416 <td class="paramkey"></td>
1417 <td></td>
1418 <td class="paramtype">const <a class="el" href="structarmnn_1_1_resize_bilinear_descriptor.xhtml">ResizeBilinearDescriptor</a> &amp;&#160;</td>
1419 <td class="paramname"><em>resizeDesc</em>, </td>
1420 </tr>
1421 <tr>
1422 <td class="paramkey"></td>
1423 <td></td>
1424 <td class="paramtype">const char *&#160;</td>
1425 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1426 </tr>
1427 <tr>
1428 <td></td>
1429 <td>)</td>
1430 <td></td><td></td>
1431 </tr>
1432 </table>
1433 </td>
1434 <td class="mlabels-right">
1435<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1436 </tr>
1437</table>
1438</div><div class="memdoc">
1439
1440<p>Function that a resize bilinear layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
1441<dl class="params"><dt>Parameters</dt><dd>
1442 <table class="params">
1443 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
1444 <tr><td class="paramname">resizeDesc</td><td>- Parameters for the resize operation. </td></tr>
1445 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
1446 </table>
1447 </dd>
1448</dl>
1449
1450<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#a8d87dab666a8aa6e132fcd93717a3c4b">ILayerVisitor</a>.</p>
1451
1452<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00287">287</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
1453
1454<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
1455<div class="fragment"><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;{</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(resizeDesc);</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; AddToNonCalibratedLayers(layer);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
1456</div><!-- fragment -->
1457</div>
1458</div>
1459<a id="a98f34d2511f43324833060154cbdba8d"></a>
1460<h2 class="memtitle"><span class="permalink"><a href="#a98f34d2511f43324833060154cbdba8d">&#9670;&nbsp;</a></span>VisitSoftmaxLayer()</h2>
1461
1462<div class="memitem">
1463<div class="memproto">
1464<table class="mlabels">
1465 <tr>
1466 <td class="mlabels-left">
1467 <table class="memname">
1468 <tr>
1469 <td class="memname">void VisitSoftmaxLayer </td>
1470 <td>(</td>
1471 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
1472 <td class="paramname"><em>layer</em>, </td>
1473 </tr>
1474 <tr>
1475 <td class="paramkey"></td>
1476 <td></td>
1477 <td class="paramtype">const <a class="el" href="structarmnn_1_1_softmax_descriptor.xhtml">SoftmaxDescriptor</a> &amp;&#160;</td>
1478 <td class="paramname"><em>softmaxDescriptor</em>, </td>
1479 </tr>
1480 <tr>
1481 <td class="paramkey"></td>
1482 <td></td>
1483 <td class="paramtype">const char *&#160;</td>
1484 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1485 </tr>
1486 <tr>
1487 <td></td>
1488 <td>)</td>
1489 <td></td><td></td>
1490 </tr>
1491 </table>
1492 </td>
1493 <td class="mlabels-right">
1494<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1495 </tr>
1496</table>
1497</div><div class="memdoc">
1498
1499<p>Function that a softmax layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
1500<dl class="params"><dt>Parameters</dt><dd>
1501 <table class="params">
1502 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
1503 <tr><td class="paramname">softmaxDescriptor</td><td>- <a class="el" href="structarmnn_1_1_softmax_descriptor.xhtml" title="A SoftmaxDescriptor for the SoftmaxLayer. ">SoftmaxDescriptor</a> to configure the softmax. </td></tr>
1504 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
1505 </table>
1506 </dd>
1507</dl>
1508
1509<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#ae47c90e3188970462a28d297644133d1">ILayerVisitor</a>.</p>
1510
1511<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00210">210</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
1512
1513<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
1514<div class="fragment"><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;{</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(softmaxDescriptor);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; SetRange(layer, 0, 0.f, 1.f);</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; AddToCalibratedLayers(layer);</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
1515</div><!-- fragment -->
1516</div>
1517</div>
1518<a id="a8e327cc6432697fd55d6b91e554360d9"></a>
1519<h2 class="memtitle"><span class="permalink"><a href="#a8e327cc6432697fd55d6b91e554360d9">&#9670;&nbsp;</a></span>VisitSpaceToBatchNdLayer()</h2>
1520
1521<div class="memitem">
1522<div class="memproto">
1523<table class="mlabels">
1524 <tr>
1525 <td class="mlabels-left">
1526 <table class="memname">
1527 <tr>
1528 <td class="memname">void VisitSpaceToBatchNdLayer </td>
1529 <td>(</td>
1530 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
1531 <td class="paramname"><em>layer</em>, </td>
1532 </tr>
1533 <tr>
1534 <td class="paramkey"></td>
1535 <td></td>
1536 <td class="paramtype">const <a class="el" href="structarmnn_1_1_space_to_batch_nd_descriptor.xhtml">SpaceToBatchNdDescriptor</a> &amp;&#160;</td>
1537 <td class="paramname"><em>spaceToBatchNdDescriptor</em>, </td>
1538 </tr>
1539 <tr>
1540 <td class="paramkey"></td>
1541 <td></td>
1542 <td class="paramtype">const char *&#160;</td>
1543 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1544 </tr>
1545 <tr>
1546 <td></td>
1547 <td>)</td>
1548 <td></td><td></td>
1549 </tr>
1550 </table>
1551 </td>
1552 <td class="mlabels-right">
1553<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1554 </tr>
1555</table>
1556</div><div class="memdoc">
1557
1558<p>Function a space to batch layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
1559<dl class="params"><dt>Parameters</dt><dd>
1560 <table class="params">
1561 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
1562 <tr><td class="paramname">spaceToBatchNdDescriptor</td><td>- Parameters for the space to batch operation. </td></tr>
1563 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
1564 </table>
1565 </dd>
1566</dl>
1567
1568<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#aa8c1ec6712293700fb3874f63f2ec5f0">ILayerVisitor</a>.</p>
1569
1570<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00192">192</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
1571
1572<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
1573<div class="fragment"><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;{</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(spaceToBatchNdDescriptor);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; AddToNonCalibratedLayers(layer);</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
1574</div><!-- fragment -->
1575</div>
1576</div>
1577<a id="afbea8aa2295f2ab71ea5bb64ccd47871"></a>
1578<h2 class="memtitle"><span class="permalink"><a href="#afbea8aa2295f2ab71ea5bb64ccd47871">&#9670;&nbsp;</a></span>VisitSplitterLayer()</h2>
1579
1580<div class="memitem">
1581<div class="memproto">
1582<table class="mlabels">
1583 <tr>
1584 <td class="mlabels-left">
1585 <table class="memname">
1586 <tr>
1587 <td class="memname">void VisitSplitterLayer </td>
1588 <td>(</td>
1589 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
1590 <td class="paramname"><em>layer</em>, </td>
1591 </tr>
1592 <tr>
1593 <td class="paramkey"></td>
1594 <td></td>
1595 <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#a60291543fe872b795e71e05bcd835fd1">SplitterDescriptor</a> &amp;&#160;</td>
1596 <td class="paramname"><em>splitterDescriptor</em>, </td>
1597 </tr>
1598 <tr>
1599 <td class="paramkey"></td>
1600 <td></td>
1601 <td class="paramtype">const char *&#160;</td>
1602 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1603 </tr>
1604 <tr>
1605 <td></td>
1606 <td>)</td>
1607 <td></td><td></td>
1608 </tr>
1609 </table>
1610 </td>
1611 <td class="mlabels-right">
1612<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1613 </tr>
1614</table>
1615</div><div class="memdoc">
1616
1617<p>Function that a splitter layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
1618<dl class="params"><dt>Parameters</dt><dd>
1619 <table class="params">
1620 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
1621 <tr><td class="paramname">splitterDescriptor</td><td>- <a class="el" href="structarmnn_1_1_views_descriptor.xhtml" title="A ViewsDescriptor for the SplitterLayer. ">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>
1622 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
1623 </table>
1624 </dd>
1625</dl>
1626
1627<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#a45c613d43c30b3314cafb1be3ef7685c">ILayerVisitor</a>.</p>
1628
1629<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00278">278</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
1630
1631<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
1632<div class="fragment"><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;{</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(splitterDescriptor);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; AddToNonCalibratedLayers(layer);</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
1633</div><!-- fragment -->
1634</div>
1635</div>
1636<a id="a61b7aa0305e7c45a625f7835fa26b9b6"></a>
1637<h2 class="memtitle"><span class="permalink"><a href="#a61b7aa0305e7c45a625f7835fa26b9b6">&#9670;&nbsp;</a></span>VisitStridedSliceLayer()</h2>
1638
1639<div class="memitem">
1640<div class="memproto">
1641<table class="mlabels">
1642 <tr>
1643 <td class="mlabels-left">
1644 <table class="memname">
1645 <tr>
1646 <td class="memname">void VisitStridedSliceLayer </td>
1647 <td>(</td>
1648 <td class="paramtype">const <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">IConnectableLayer</a> *&#160;</td>
1649 <td class="paramname"><em>layer</em>, </td>
1650 </tr>
1651 <tr>
1652 <td class="paramkey"></td>
1653 <td></td>
1654 <td class="paramtype">const <a class="el" href="structarmnn_1_1_strided_slice_descriptor.xhtml">StridedSliceDescriptor</a> &amp;&#160;</td>
1655 <td class="paramname"><em>stridedSliceDescriptor</em>, </td>
1656 </tr>
1657 <tr>
1658 <td class="paramkey"></td>
1659 <td></td>
1660 <td class="paramtype">const char *&#160;</td>
1661 <td class="paramname"><em>name</em> = <code>nullptr</code>&#160;</td>
1662 </tr>
1663 <tr>
1664 <td></td>
1665 <td>)</td>
1666 <td></td><td></td>
1667 </tr>
1668 </table>
1669 </td>
1670 <td class="mlabels-right">
1671<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1672 </tr>
1673</table>
1674</div><div class="memdoc">
1675
1676<p>Function a strided slice layer should call back to when its Accept(ILayerVisitor&amp;) function is invoked. </p>
1677<dl class="params"><dt>Parameters</dt><dd>
1678 <table class="params">
1679 <tr><td class="paramname">layer</td><td>- pointer to the layer which is calling back to this visit function. </td></tr>
1680 <tr><td class="paramname">stridedSliceDescriptor</td><td>- Parameters for the strided slice operation. </td></tr>
1681 <tr><td class="paramname">name</td><td>- <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a> name for the layer. </td></tr>
1682 </table>
1683 </dd>
1684</dl>
1685
1686<p>Implements <a class="el" href="classarmnn_1_1_i_layer_visitor.xhtml#ac2f4ca5ada6d8fcf82d7bea2e6a06924">ILayerVisitor</a>.</p>
1687
1688<p class="definition">Definition at line <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml#l00296">296</a> of file <a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a>.</p>
1689
1690<p class="reference">References <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
1691<div class="fragment"><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;{</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(stridedSliceDescriptor);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(name);</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; AddToNonCalibratedLayers(layer);</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_a44affeeb090c3c6a3062830562672e84"><div class="ttname"><a href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">armnn::IgnoreUnused</a></div><div class="ttdeci">void IgnoreUnused(Ts &amp;&amp;...)</div><div class="ttdef"><b>Definition:</b> <a href="_ignore_unused_8hpp_source.xhtml#l00014">IgnoreUnused.hpp:14</a></div></div>
1692</div><!-- fragment -->
1693</div>
1694</div>
1695<hr/>The documentation for this class was generated from the following files:<ul>
1696<li>src/armnn/<a class="el" href="_dynamic_quantization_visitor_8hpp_source.xhtml">DynamicQuantizationVisitor.hpp</a></li>
1697<li>src/armnn/<a class="el" href="_dynamic_quantization_visitor_8cpp_source.xhtml">DynamicQuantizationVisitor.cpp</a></li>
1698</ul>
1699</div><!-- contents -->
1700</div><!-- doc-content -->
1701<!-- start footer part -->
1702<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
1703 <ul>
1704 <li class="navelem"><a class="el" href="namespacearmnn.xhtml">armnn</a></li><li class="navelem"><a class="el" href="classarmnn_1_1_dynamic_quantization_visitor.xhtml">DynamicQuantizationVisitor</a></li>
1705 <li class="footer">Generated on Fri Mar 13 2020 16:09:17 for ArmNN by
1706 <a href="http://www.doxygen.org/index.html">
1707 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
1708 </ul>
1709</div>
1710</body>
1711</html>