aboutsummaryrefslogtreecommitdiff
path: root/23.02/classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml
diff options
context:
space:
mode:
authorNikhil Raj <nikhil.raj@arm.com>2023-02-24 10:28:19 +0000
committerNikhil Raj <nikhil.raj@arm.com>2023-02-24 10:28:19 +0000
commit8d2ca734165a068478df7cffa46185680b05cd20 (patch)
tree0433a7e6b007fe4639334c4438e58e9872a34b20 /23.02/classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml
parentcb0630959aeae05bc2ae9f6d80cf5f5983a8fb77 (diff)
downloadarmnn-8d2ca734165a068478df7cffa46185680b05cd20.tar.gz
Update Doxygen docu for 23.02
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com> Change-Id: Ie6c19a27d50fefab2796b2b5875374e81f5bf971
Diffstat (limited to '23.02/classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml')
-rw-r--r--23.02/classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml1061
1 files changed, 1061 insertions, 0 deletions
diff --git a/23.02/classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml b/23.02/classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml
new file mode 100644
index 0000000000..b5c6c3adea
--- /dev/null
+++ b/23.02/classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml
@@ -0,0 +1,1061 @@
+<!-- Copyright (c) 2020 ARM Limited. -->
+<!-- -->
+<!-- SPDX-License-Identifier: MIT -->
+<!-- -->
+<!-- HTML header for doxygen 1.8.13-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="robots" content="NOINDEX, NOFOLLOW" />
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>ArmNN: IDeserializer::DeserializerImpl Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/x-mathjax-config">
+ MathJax.Hub.Config({
+ extensions: ["tex2jax.js"],
+ jax: ["input/TeX","output/HTML-CSS"],
+});
+</script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 10rem; margin-top: .5rem; margin-left 10px"/>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">
+ &#160;<span id="projectnumber">23.02</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl-members.xhtml">List of all members</a> </div>
+ <div class="headertitle">
+<div class="title">IDeserializer::DeserializerImpl Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a32a96909bc8a8ee9076bd4d5c1028301"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn.xhtml#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a32a96909bc8a8ee9076bd4d5c1028301">CreateNetworkFromBinary</a> (const std::vector&lt; uint8_t &gt; &amp;binaryContent)</td></tr>
+<tr class="memdesc:a32a96909bc8a8ee9076bd4d5c1028301"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an input network from binary file contents. <a href="#a32a96909bc8a8ee9076bd4d5c1028301">More...</a><br /></td></tr>
+<tr class="separator:a32a96909bc8a8ee9076bd4d5c1028301"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa83e3be25485ec6d6e5a2b21f8201a59"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn.xhtml#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#aa83e3be25485ec6d6e5a2b21f8201a59">CreateNetworkFromBinary</a> (std::istream &amp;binaryContent)</td></tr>
+<tr class="memdesc:aa83e3be25485ec6d6e5a2b21f8201a59"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an input network from a binary input stream. <a href="#aa83e3be25485ec6d6e5a2b21f8201a59">More...</a><br /></td></tr>
+<tr class="separator:aa83e3be25485ec6d6e5a2b21f8201a59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5de68e32eabd643f55a35f288ba10294"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structarmnn_deserializer_1_1_binding_point_info.xhtml">BindingPointInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a5de68e32eabd643f55a35f288ba10294">GetNetworkInputBindingInfo</a> (unsigned int layerId, const std::string &amp;name) const</td></tr>
+<tr class="memdesc:a5de68e32eabd643f55a35f288ba10294"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve binding info (layer id and tensor info) for the network input identified by the given layer name. <a href="#a5de68e32eabd643f55a35f288ba10294">More...</a><br /></td></tr>
+<tr class="separator:a5de68e32eabd643f55a35f288ba10294"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f66de823cd61765a40407fee754655e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structarmnn_deserializer_1_1_binding_point_info.xhtml">BindingPointInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a2f66de823cd61765a40407fee754655e">GetNetworkOutputBindingInfo</a> (unsigned int layerId, const std::string &amp;name) const</td></tr>
+<tr class="memdesc:a2f66de823cd61765a40407fee754655e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve binding info (layer id and tensor info) for the network output identified by the given layer name. <a href="#a2f66de823cd61765a40407fee754655e">More...</a><br /></td></tr>
+<tr class="separator:a2f66de823cd61765a40407fee754655e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abfdc037ebcc11de0e1432ba4d3d98fe7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#abfdc037ebcc11de0e1432ba4d3d98fe7">DeserializerImpl</a> ()</td></tr>
+<tr class="separator:abfdc037ebcc11de0e1432ba4d3d98fe7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a28e2ce091ba1ac8242f17134c662ea0f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a28e2ce091ba1ac8242f17134c662ea0f">~DeserializerImpl</a> ()=default</td></tr>
+<tr class="separator:a28e2ce091ba1ac8242f17134c662ea0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7309cee724dcf328419a5a611698308d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a7309cee724dcf328419a5a611698308d">DeserializerImpl</a> (const <a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml">DeserializerImpl</a> &amp;)=delete</td></tr>
+<tr class="separator:a7309cee724dcf328419a5a611698308d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe99e44e1f642428be714ebac948915e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml">DeserializerImpl</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#abe99e44e1f642428be714ebac948915e">operator=</a> (const <a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml">DeserializerImpl</a> &amp;)=delete</td></tr>
+<tr class="separator:abe99e44e1f642428be714ebac948915e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a0bab2006e8fafc4a7fd02efa536f2828"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a0bab2006e8fafc4a7fd02efa536f2828">LoadGraphFromBinary</a> (const uint8_t *binaryContent, size_t len)</td></tr>
+<tr class="separator:a0bab2006e8fafc4a7fd02efa536f2828"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac337f5478049cba1da222da655be49cc"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacearmnn_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#ac337f5478049cba1da222da655be49cc">GetInputs</a> (const <a class="el" href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> &amp;graph, unsigned int layerIndex)</td></tr>
+<tr class="separator:ac337f5478049cba1da222da655be49cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9069127d4430d97fe0f2c53fb2c32ab9"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacearmnn_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a9069127d4430d97fe0f2c53fb2c32ab9">GetOutputs</a> (const <a class="el" href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> &amp;graph, unsigned int layerIndex)</td></tr>
+<tr class="separator:a9069127d4430d97fe0f2c53fb2c32ab9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab3dff510bec873d3e4ffe5cdfa71f1cd"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacearmnn_deserializer.xhtml#a91ade61b5704e4f2c38c263c2be148ef">LayerBaseRawPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#ab3dff510bec873d3e4ffe5cdfa71f1cd">GetBaseLayer</a> (const <a class="el" href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> &amp;graphPtr, unsigned int layerIndex)</td></tr>
+<tr class="separator:ab3dff510bec873d3e4ffe5cdfa71f1cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcc87bf0e20779861dd5d01a4bedcda9"><td class="memItemLeft" align="right" valign="top">static int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#afcc87bf0e20779861dd5d01a4bedcda9">GetBindingLayerInfo</a> (const <a class="el" href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> &amp;graphPtr, unsigned int layerIndex)</td></tr>
+<tr class="separator:afcc87bf0e20779861dd5d01a4bedcda9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2e5b4595b6abc056779ecd12bd271c2"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#af2e5b4595b6abc056779ecd12bd271c2">GetLayerName</a> (const <a class="el" href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> &amp;graph, unsigned int index)</td></tr>
+<tr class="separator:af2e5b4595b6abc056779ecd12bd271c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac17b9b154461bfa49ff7ade08f3c4bdf"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structarmnn_1_1_pooling2d_descriptor.xhtml">armnn::Pooling2dDescriptor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#ac17b9b154461bfa49ff7ade08f3c4bdf">GetPooling2dDescriptor</a> (<a class="el" href="namespacearmnn_deserializer.xhtml#a7e75f47f676327bce37149932aa4a011">Pooling2dDescriptor</a> pooling2dDescriptor, unsigned int layerIndex)</td></tr>
+<tr class="separator:ac17b9b154461bfa49ff7ade08f3c4bdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1467999b659959577bb2efc8fc62e15a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structarmnn_1_1_pooling3d_descriptor.xhtml">armnn::Pooling3dDescriptor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a1467999b659959577bb2efc8fc62e15a">GetPooling3dDescriptor</a> (<a class="el" href="namespacearmnn_deserializer.xhtml#a6713b8a83104db317823b5367b195d2e">Pooling3dDescriptor</a> pooling3dDescriptor, unsigned int layerIndex)</td></tr>
+<tr class="separator:a1467999b659959577bb2efc8fc62e15a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a920251d49a8f32085d458ba23f776800"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structarmnn_1_1_normalization_descriptor.xhtml">armnn::NormalizationDescriptor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a920251d49a8f32085d458ba23f776800">GetNormalizationDescriptor</a> (<a class="el" href="namespacearmnn_deserializer.xhtml#a2a282cf18fcfe848b47e946327ca1048">NormalizationDescriptorPtr</a> normalizationDescriptor, unsigned int layerIndex)</td></tr>
+<tr class="separator:a920251d49a8f32085d458ba23f776800"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7bb02c61c6a5663121da024b7e042e8"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structarmnn_1_1_lstm_descriptor.xhtml">armnn::LstmDescriptor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#af7bb02c61c6a5663121da024b7e042e8">GetLstmDescriptor</a> (<a class="el" href="namespacearmnn_deserializer.xhtml#a15397ee26bc4b7d3a459b05e457be428">LstmDescriptorPtr</a> lstmDescriptor)</td></tr>
+<tr class="separator:af7bb02c61c6a5663121da024b7e042e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a327a399d46f8216c9f4c1eea5f18a542"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structarmnn_1_1_lstm_input_params.xhtml">armnn::LstmInputParams</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a327a399d46f8216c9f4c1eea5f18a542">GetLstmInputParams</a> (<a class="el" href="namespacearmnn_deserializer.xhtml#a15397ee26bc4b7d3a459b05e457be428">LstmDescriptorPtr</a> lstmDescriptor, <a class="el" href="namespacearmnn_deserializer.xhtml#a93460fcf78d1b2dcab72dd8378739145">LstmInputParamsPtr</a> lstmInputParams)</td></tr>
+<tr class="separator:a327a399d46f8216c9f4c1eea5f18a542"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57e32d26ac8c87b118e77da920481123"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structarmnn_1_1_q_lstm_descriptor.xhtml">armnn::QLstmDescriptor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a57e32d26ac8c87b118e77da920481123">GetQLstmDescriptor</a> (<a class="el" href="namespacearmnn_deserializer.xhtml#a5cd994198e775b8e919853fd0da5b9c1">QLstmDescriptorPtr</a> qLstmDescriptorPtr)</td></tr>
+<tr class="separator:a57e32d26ac8c87b118e77da920481123"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad04b4361ec1ded6b9334dae64c7c4579"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacearmnn.xhtml#ae6c5f1b51bd32133c4dcc632045d6b58">armnn::UnidirectionalSequenceLstmDescriptor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#ad04b4361ec1ded6b9334dae64c7c4579">GetUnidirectionalSequenceLstmDescriptor</a> (<a class="el" href="namespacearmnn_deserializer.xhtml#a9eb5db921d6fa5015a57916a5d0c7cd9">UnidirectionalSequenceLstmDescriptorPtr</a> descriptor)</td></tr>
+<tr class="separator:ad04b4361ec1ded6b9334dae64c7c4579"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8752c2b994619ae67201a297c2c76be2"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a8752c2b994619ae67201a297c2c76be2">OutputShapeOfReshape</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> &amp;inputTensorInfo, const std::vector&lt; uint32_t &gt; &amp;targetDimsIn)</td></tr>
+<tr class="separator:a8752c2b994619ae67201a297c2c76be2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00034">34</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="abfdc037ebcc11de0e1432ba4d3d98fe7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abfdc037ebcc11de0e1432ba4d3d98fe7">&#9670;&nbsp;</a></span>DeserializerImpl() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml">DeserializerImpl</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00207">207</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+<div class="fragment"><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;: m_Network(<span class="keyword">nullptr</span>, <span class="keyword">nullptr</span>),</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="comment">//May require LayerType_Max to be included</span></div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;m_ParserFunctions(Layer_MAX+1, &amp;IDeserializer::DeserializerImpl::ParseUnsupportedLayer)</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;{</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="comment">// register supported layers</span></div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; m_ParserFunctions[Layer_AbsLayer] = &amp;DeserializerImpl::ParseAbs;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; m_ParserFunctions[Layer_ActivationLayer] = &amp;DeserializerImpl::ParseActivation;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; m_ParserFunctions[Layer_AdditionLayer] = &amp;DeserializerImpl::ParseAdd;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; m_ParserFunctions[Layer_ArgMinMaxLayer] = &amp;DeserializerImpl::ParseArgMinMax;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; m_ParserFunctions[Layer_BatchMatMulLayer] = &amp;DeserializerImpl::ParseBatchMatMul;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; m_ParserFunctions[Layer_BatchToSpaceNdLayer] = &amp;DeserializerImpl::ParseBatchToSpaceNd;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; m_ParserFunctions[Layer_BatchNormalizationLayer] = &amp;DeserializerImpl::ParseBatchNormalization;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; m_ParserFunctions[Layer_CastLayer] = &amp;DeserializerImpl::ParseCast;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; m_ParserFunctions[Layer_ChannelShuffleLayer] = &amp;DeserializerImpl::ParseChannelShuffle;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; m_ParserFunctions[Layer_ComparisonLayer] = &amp;DeserializerImpl::ParseComparison;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; m_ParserFunctions[Layer_ConcatLayer] = &amp;DeserializerImpl::ParseConcat;</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; m_ParserFunctions[Layer_ConstantLayer] = &amp;DeserializerImpl::ParseConstant;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; m_ParserFunctions[Layer_Convolution2dLayer] = &amp;DeserializerImpl::ParseConvolution2d;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; m_ParserFunctions[Layer_Convolution3dLayer] = &amp;DeserializerImpl::ParseConvolution3d;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; m_ParserFunctions[Layer_DepthToSpaceLayer] = &amp;DeserializerImpl::ParseDepthToSpace;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; m_ParserFunctions[Layer_DepthwiseConvolution2dLayer] = &amp;DeserializerImpl::ParseDepthwiseConvolution2d;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; m_ParserFunctions[Layer_DequantizeLayer] = &amp;DeserializerImpl::ParseDequantize;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; m_ParserFunctions[Layer_DetectionPostProcessLayer] = &amp;DeserializerImpl::ParseDetectionPostProcess;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; m_ParserFunctions[Layer_DivisionLayer] = &amp;DeserializerImpl::ParseDivision;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; m_ParserFunctions[Layer_ElementwiseUnaryLayer] = &amp;DeserializerImpl::ParseElementwiseUnary;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; m_ParserFunctions[Layer_EqualLayer] = &amp;DeserializerImpl::ParseEqual;</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; m_ParserFunctions[Layer_FullyConnectedLayer] = &amp;DeserializerImpl::ParseFullyConnected;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; m_ParserFunctions[Layer_FillLayer] = &amp;DeserializerImpl::ParseFill;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; m_ParserFunctions[Layer_FloorLayer] = &amp;DeserializerImpl::ParseFloor;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; m_ParserFunctions[Layer_GatherLayer] = &amp;DeserializerImpl::ParseGather;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; m_ParserFunctions[Layer_GatherNdLayer] = &amp;DeserializerImpl::ParseGatherNd;</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; m_ParserFunctions[Layer_GreaterLayer] = &amp;DeserializerImpl::ParseGreater;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; m_ParserFunctions[Layer_InstanceNormalizationLayer] = &amp;DeserializerImpl::ParseInstanceNormalization;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; m_ParserFunctions[Layer_L2NormalizationLayer] = &amp;DeserializerImpl::ParseL2Normalization;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; m_ParserFunctions[Layer_LogicalBinaryLayer] = &amp;DeserializerImpl::ParseLogicalBinary;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; m_ParserFunctions[Layer_LogSoftmaxLayer] = &amp;DeserializerImpl::ParseLogSoftmax;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; m_ParserFunctions[Layer_LstmLayer] = &amp;DeserializerImpl::ParseLstm;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; m_ParserFunctions[Layer_MaximumLayer] = &amp;DeserializerImpl::ParseMaximum;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; m_ParserFunctions[Layer_MeanLayer] = &amp;DeserializerImpl::ParseMean;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; m_ParserFunctions[Layer_MinimumLayer] = &amp;DeserializerImpl::ParseMinimum;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; m_ParserFunctions[Layer_MergeLayer] = &amp;DeserializerImpl::ParseMerge;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; m_ParserFunctions[Layer_MergerLayer] = &amp;DeserializerImpl::ParseConcat;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; m_ParserFunctions[Layer_MultiplicationLayer] = &amp;DeserializerImpl::ParseMultiplication;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; m_ParserFunctions[Layer_NormalizationLayer] = &amp;DeserializerImpl::ParseNormalization;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; m_ParserFunctions[Layer_PadLayer] = &amp;DeserializerImpl::ParsePad;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; m_ParserFunctions[Layer_PermuteLayer] = &amp;DeserializerImpl::ParsePermute;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; m_ParserFunctions[Layer_Pooling2dLayer] = &amp;DeserializerImpl::ParsePooling2d;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; m_ParserFunctions[Layer_Pooling3dLayer] = &amp;DeserializerImpl::ParsePooling3d;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; m_ParserFunctions[Layer_PreluLayer] = &amp;DeserializerImpl::ParsePrelu;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; m_ParserFunctions[Layer_QLstmLayer] = &amp;DeserializerImpl::ParseQLstm;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; m_ParserFunctions[Layer_QuantizeLayer] = &amp;DeserializerImpl::ParseQuantize;</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; m_ParserFunctions[Layer_QuantizedLstmLayer] = &amp;DeserializerImpl::ParseQuantizedLstm;</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; m_ParserFunctions[Layer_RankLayer] = &amp;DeserializerImpl::ParseRank;</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; m_ParserFunctions[Layer_ReduceLayer] = &amp;DeserializerImpl::ParseReduce;</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; m_ParserFunctions[Layer_ReshapeLayer] = &amp;DeserializerImpl::ParseReshape;</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; m_ParserFunctions[Layer_ResizeBilinearLayer] = &amp;DeserializerImpl::ParseResizeBilinear;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; m_ParserFunctions[Layer_ResizeLayer] = &amp;DeserializerImpl::ParseResize;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; m_ParserFunctions[Layer_RsqrtLayer] = &amp;DeserializerImpl::ParseRsqrt;</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; m_ParserFunctions[Layer_ShapeLayer] = &amp;DeserializerImpl::ParseShape;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; m_ParserFunctions[Layer_SliceLayer] = &amp;DeserializerImpl::ParseSlice;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; m_ParserFunctions[Layer_SoftmaxLayer] = &amp;DeserializerImpl::ParseSoftmax;</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; m_ParserFunctions[Layer_SpaceToBatchNdLayer] = &amp;DeserializerImpl::ParseSpaceToBatchNd;</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; m_ParserFunctions[Layer_SpaceToDepthLayer] = &amp;DeserializerImpl::ParseSpaceToDepth;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; m_ParserFunctions[Layer_SplitterLayer] = &amp;DeserializerImpl::ParseSplitter;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; m_ParserFunctions[Layer_StackLayer] = &amp;DeserializerImpl::ParseStack;</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; m_ParserFunctions[Layer_StandInLayer] = &amp;DeserializerImpl::ParseStandIn;</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; m_ParserFunctions[Layer_StridedSliceLayer] = &amp;DeserializerImpl::ParseStridedSlice;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; m_ParserFunctions[Layer_SubtractionLayer] = &amp;DeserializerImpl::ParseSubtraction;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; m_ParserFunctions[Layer_SwitchLayer] = &amp;DeserializerImpl::ParseSwitch;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; m_ParserFunctions[Layer_TransposeConvolution2dLayer] = &amp;DeserializerImpl::ParseTransposeConvolution2d;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; m_ParserFunctions[Layer_TransposeLayer] = &amp;DeserializerImpl::ParseTranspose;</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; m_ParserFunctions[Layer_UnidirectionalSequenceLstmLayer] = &amp;DeserializerImpl::ParseUnidirectionalSequenceLstm;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a28e2ce091ba1ac8242f17134c662ea0f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a28e2ce091ba1ac8242f17134c662ea0f">&#9670;&nbsp;</a></span>~DeserializerImpl()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">~<a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml">DeserializerImpl</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a7309cee724dcf328419a5a611698308d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7309cee724dcf328419a5a611698308d">&#9670;&nbsp;</a></span>DeserializerImpl() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml">DeserializerImpl</a> </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml">DeserializerImpl</a> &amp;&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">delete</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a32a96909bc8a8ee9076bd4d5c1028301"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a32a96909bc8a8ee9076bd4d5c1028301">&#9670;&nbsp;</a></span>CreateNetworkFromBinary() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacearmnn.xhtml#ace74f6f9feb95a964a49d79458232703">INetworkPtr</a> CreateNetworkFromBinary </td>
+ <td>(</td>
+ <td class="paramtype">const std::vector&lt; uint8_t &gt; &amp;&#160;</td>
+ <td class="paramname"><em>binaryContent</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create an input network from binary file contents. </p>
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00816">816</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_deserializer_8cpp_source.xhtml#l00839">IDeserializer::DeserializerImpl::LoadGraphFromBinary()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160;{</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; ResetParser();</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; <a class="code" href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> graph = <a class="code" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a0bab2006e8fafc4a7fd02efa536f2828">LoadGraphFromBinary</a>(binaryContent.data(), binaryContent.size());</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; <span class="keywordflow">return</span> CreateNetworkFromGraph(graph);</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160;}</div><div class="ttc" id="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl_xhtml_a0bab2006e8fafc4a7fd02efa536f2828"><div class="ttname"><a href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a0bab2006e8fafc4a7fd02efa536f2828">armnnDeserializer::IDeserializer::DeserializerImpl::LoadGraphFromBinary</a></div><div class="ttdeci">static GraphPtr LoadGraphFromBinary(const uint8_t *binaryContent, size_t len)</div><div class="ttdef"><b>Definition:</b> <a href="_deserializer_8cpp_source.xhtml#l00839">Deserializer.cpp:839</a></div></div>
+<div class="ttc" id="namespacearmnn_deserializer_xhtml_a38c1f8ba8e51364802669c968cf98ff5"><div class="ttname"><a href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">armnnDeserializer::GraphPtr</a></div><div class="ttdeci">const armnnSerializer::SerializedGraph * GraphPtr</div><div class="ttdef"><b>Definition:</b> <a href="_deserializer_8hpp_source.xhtml#l00019">Deserializer.hpp:19</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="aa83e3be25485ec6d6e5a2b21f8201a59"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa83e3be25485ec6d6e5a2b21f8201a59">&#9670;&nbsp;</a></span>CreateNetworkFromBinary() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacearmnn.xhtml#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a> CreateNetworkFromBinary </td>
+ <td>(</td>
+ <td class="paramtype">std::istream &amp;&#160;</td>
+ <td class="paramname"><em>binaryContent</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create an input network from a binary input stream. </p>
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00823">823</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_logging_8hpp_source.xhtml#l00212">ARMNN_LOG</a>, <a class="el" href="namespacearmnn.xhtml#a4dc0adc6737b5944e7671bee71788407acb5e100e5a9a3e7f6d1fd97512215282">armnn::error</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00839">IDeserializer::DeserializerImpl::LoadGraphFromBinary()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160;{</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160; ResetParser();</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; <span class="keywordflow">if</span> (binaryContent.fail()) {</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; <a class="code" href="_logging_8hpp.xhtml#a7b6ad073975f437ec38ca7d20154727f">ARMNN_LOG</a>(error) &lt;&lt; (std::string(<span class="stringliteral">&quot;Cannot read input&quot;</span>));</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.xhtml">ParseException</a>(<span class="stringliteral">&quot;Unable to read Input stream data&quot;</span>);</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160; }</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; binaryContent.seekg(0, std::ios::end);</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; <span class="keyword">const</span> std::streamoff size = binaryContent.tellg();</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; std::vector&lt;char&gt; content(static_cast&lt;size_t&gt;(size));</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; binaryContent.seekg(0);</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; binaryContent.read(content.data(), <span class="keyword">static_cast&lt;</span>std::streamsize<span class="keyword">&gt;</span>(size));</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; <a class="code" href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> graph = <a class="code" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a0bab2006e8fafc4a7fd02efa536f2828">LoadGraphFromBinary</a>(reinterpret_cast&lt;uint8_t*&gt;(content.data()), static_cast&lt;size_t&gt;(size));</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; <span class="keywordflow">return</span> CreateNetworkFromGraph(graph);</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160;}</div><div class="ttc" id="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl_xhtml_a0bab2006e8fafc4a7fd02efa536f2828"><div class="ttname"><a href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#a0bab2006e8fafc4a7fd02efa536f2828">armnnDeserializer::IDeserializer::DeserializerImpl::LoadGraphFromBinary</a></div><div class="ttdeci">static GraphPtr LoadGraphFromBinary(const uint8_t *binaryContent, size_t len)</div><div class="ttdef"><b>Definition:</b> <a href="_deserializer_8cpp_source.xhtml#l00839">Deserializer.cpp:839</a></div></div>
+<div class="ttc" id="_logging_8hpp_xhtml_a7b6ad073975f437ec38ca7d20154727f"><div class="ttname"><a href="_logging_8hpp.xhtml#a7b6ad073975f437ec38ca7d20154727f">ARMNN_LOG</a></div><div class="ttdeci">#define ARMNN_LOG(severity)</div><div class="ttdef"><b>Definition:</b> <a href="_logging_8hpp_source.xhtml#l00212">Logging.hpp:212</a></div></div>
+<div class="ttc" id="namespacearmnn_deserializer_xhtml_a38c1f8ba8e51364802669c968cf98ff5"><div class="ttname"><a href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">armnnDeserializer::GraphPtr</a></div><div class="ttdeci">const armnnSerializer::SerializedGraph * GraphPtr</div><div class="ttdef"><b>Definition:</b> <a href="_deserializer_8hpp_source.xhtml#l00019">Deserializer.hpp:19</a></div></div>
+<div class="ttc" id="classarmnn_1_1_parse_exception_xhtml"><div class="ttname"><a href="classarmnn_1_1_parse_exception.xhtml">armnn::ParseException</a></div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.xhtml#l00092">Exceptions.hpp:92</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="ab3dff510bec873d3e4ffe5cdfa71f1cd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab3dff510bec873d3e4ffe5cdfa71f1cd">&#9670;&nbsp;</a></span>GetBaseLayer()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacearmnn_deserializer.xhtml#a91ade61b5704e4f2c38c263c2be148ef">LayerBaseRawPtr</a> GetBaseLayer </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>graphPtr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int&#160;</td>
+ <td class="paramname"><em>layerIndex</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00282">282</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8cpp_source.xhtml#l00765">IDeserializer::DeserializerImpl::GetInputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00432">IDeserializer::DeserializerImpl::GetLayerName()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00914">IDeserializer::DeserializerImpl::GetNetworkOutputBindingInfo()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00782">IDeserializer::DeserializerImpl::GetOutputs()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;{</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keyword">auto</span> layerType = graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_type();</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keywordflow">switch</span>(layerType)</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; {</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keywordflow">case</span> Layer::Layer_AbsLayer:</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_AbsLayer()-&gt;base();</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ActivationLayer:</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_ActivationLayer()-&gt;base();</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keywordflow">case</span> Layer::Layer_AdditionLayer:</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_AdditionLayer()-&gt;base();</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ArgMinMaxLayer:</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_ArgMinMaxLayer()-&gt;base();</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="keywordflow">case</span> Layer::Layer_BatchMatMulLayer:</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_BatchMatMulLayer()-&gt;base();</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">case</span> Layer::Layer_BatchToSpaceNdLayer:</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_BatchToSpaceNdLayer()-&gt;base();</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">case</span> Layer::Layer_BatchNormalizationLayer:</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_BatchNormalizationLayer()-&gt;base();</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">case</span> Layer::Layer_CastLayer:</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_CastLayer()-&gt;base();</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ChannelShuffleLayer:</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_ChannelShuffleLayer()-&gt;base();</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ComparisonLayer:</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_ComparisonLayer()-&gt;base();</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ConcatLayer:</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_ConcatLayer()-&gt;base();</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ConstantLayer:</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_ConstantLayer()-&gt;base();</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">case</span> Layer::Layer_Convolution2dLayer:</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_Convolution2dLayer()-&gt;base();</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">case</span> Layer::Layer_Convolution3dLayer:</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_Convolution3dLayer()-&gt;base();</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">case</span> Layer::Layer_DepthToSpaceLayer:</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_DepthToSpaceLayer()-&gt;base();</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">case</span> Layer::Layer_DepthwiseConvolution2dLayer:</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_DepthwiseConvolution2dLayer()-&gt;base();</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keywordflow">case</span> Layer::Layer_DequantizeLayer:</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_DequantizeLayer()-&gt;base();</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">case</span> Layer::Layer_DetectionPostProcessLayer:</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_DetectionPostProcessLayer()-&gt;base();</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keywordflow">case</span> Layer::Layer_DivisionLayer:</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_DivisionLayer()-&gt;base();</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keywordflow">case</span> Layer::Layer_EqualLayer:</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_EqualLayer()-&gt;base();</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ElementwiseUnaryLayer:</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_ElementwiseUnaryLayer()-&gt;base();</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">case</span> Layer::Layer_FullyConnectedLayer:</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_FullyConnectedLayer()-&gt;base();</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">case</span> Layer::Layer_FillLayer:</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_FillLayer()-&gt;base();</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">case</span> Layer::Layer_FloorLayer:</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_FloorLayer()-&gt;base();</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="keywordflow">case</span> Layer::Layer_GatherLayer:</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_GatherLayer()-&gt;base();</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keywordflow">case</span> Layer::Layer_GatherNdLayer:</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_GatherNdLayer()-&gt;base();</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">case</span> Layer::Layer_GreaterLayer:</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_GreaterLayer()-&gt;base();</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="keywordflow">case</span> Layer::Layer_InputLayer:</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_InputLayer()-&gt;base()-&gt;base();</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordflow">case</span> Layer::Layer_InstanceNormalizationLayer:</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_InstanceNormalizationLayer()-&gt;base();</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">case</span> Layer::Layer_L2NormalizationLayer:</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_L2NormalizationLayer()-&gt;base();</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">case</span> Layer::Layer_LogicalBinaryLayer:</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_LogicalBinaryLayer()-&gt;base();</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="keywordflow">case</span> Layer::Layer_LogSoftmaxLayer:</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_LogSoftmaxLayer()-&gt;base();</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordflow">case</span> Layer::Layer_LstmLayer:</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_LstmLayer()-&gt;base();</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <span class="keywordflow">case</span> Layer::Layer_MeanLayer:</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_MeanLayer()-&gt;base();</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">case</span> Layer::Layer_MinimumLayer:</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_MinimumLayer()-&gt;base();</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordflow">case</span> Layer::Layer_MaximumLayer:</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_MaximumLayer()-&gt;base();</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keywordflow">case</span> Layer::Layer_MergeLayer:</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_MergeLayer()-&gt;base();</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">case</span> Layer::Layer_MergerLayer:</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_MergerLayer()-&gt;base();</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keywordflow">case</span> Layer::Layer_MultiplicationLayer:</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_MultiplicationLayer()-&gt;base();</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keywordflow">case</span> Layer::Layer_NormalizationLayer:</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_NormalizationLayer()-&gt;base();</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keywordflow">case</span> Layer::Layer_OutputLayer:</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_OutputLayer()-&gt;base()-&gt;base();</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <span class="keywordflow">case</span> Layer::Layer_PadLayer:</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_PadLayer()-&gt;base();</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="keywordflow">case</span> Layer::Layer_PermuteLayer:</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_PermuteLayer()-&gt;base();</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keywordflow">case</span> Layer::Layer_Pooling2dLayer:</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_Pooling2dLayer()-&gt;base();</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <span class="keywordflow">case</span> Layer::Layer_Pooling3dLayer:</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_Pooling3dLayer()-&gt;base();</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordflow">case</span> Layer::Layer_PreluLayer:</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_PreluLayer()-&gt;base();</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">case</span> Layer::Layer_QLstmLayer:</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_QLstmLayer()-&gt;base();</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordflow">case</span> Layer::Layer_QuantizeLayer:</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_QuantizeLayer()-&gt;base();</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">case</span> Layer::Layer_QuantizedLstmLayer:</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_QuantizedLstmLayer()-&gt;base();</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">case</span> Layer::Layer_RankLayer:</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_RankLayer()-&gt;base();</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ReduceLayer:</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_ReduceLayer()-&gt;base();</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ReshapeLayer:</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_ReshapeLayer()-&gt;base();</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ResizeBilinearLayer:</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_ResizeBilinearLayer()-&gt;base();</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ResizeLayer:</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_ResizeLayer()-&gt;base();</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <span class="keywordflow">case</span> Layer::Layer_RsqrtLayer:</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_RsqrtLayer()-&gt;base();</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ShapeLayer:</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_ShapeLayer()-&gt;base();</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="keywordflow">case</span> Layer::Layer_SliceLayer:</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_SliceLayer()-&gt;base();</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordflow">case</span> Layer::Layer_SoftmaxLayer:</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_SoftmaxLayer()-&gt;base();</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordflow">case</span> Layer::Layer_SpaceToBatchNdLayer:</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_SpaceToBatchNdLayer()-&gt;base();</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <span class="keywordflow">case</span> Layer::Layer_SpaceToDepthLayer:</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_SpaceToDepthLayer()-&gt;base();</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <span class="keywordflow">case</span> Layer::Layer_SplitterLayer:</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_SplitterLayer()-&gt;base();</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keywordflow">case</span> Layer::Layer_StackLayer:</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_StackLayer()-&gt;base();</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordflow">case</span> Layer::Layer_StandInLayer:</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_StandInLayer()-&gt;base();</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keywordflow">case</span> Layer::Layer_StridedSliceLayer:</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_StridedSliceLayer()-&gt;base();</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keywordflow">case</span> Layer::Layer_SubtractionLayer:</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_SubtractionLayer()-&gt;base();</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordflow">case</span> Layer::Layer_SwitchLayer:</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_SwitchLayer()-&gt;base();</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">case</span> Layer::Layer_TransposeConvolution2dLayer:</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_TransposeConvolution2dLayer()-&gt;base();</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="keywordflow">case</span> Layer::Layer_TransposeLayer:</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_TransposeLayer()-&gt;base();</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">case</span> Layer::Layer_UnidirectionalSequenceLstmLayer:</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_UnidirectionalSequenceLstmLayer()-&gt;base();</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <span class="keywordflow">case</span> Layer::Layer_NONE:</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.xhtml">ParseException</a>(fmt::format(<span class="stringliteral">&quot;Layer type {} not recognized&quot;</span>, layerType));</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; }</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;}</div><div class="ttc" id="classarmnn_1_1_parse_exception_xhtml"><div class="ttname"><a href="classarmnn_1_1_parse_exception.xhtml">armnn::ParseException</a></div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.xhtml#l00092">Exceptions.hpp:92</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="afcc87bf0e20779861dd5d01a4bedcda9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afcc87bf0e20779861dd5d01a4bedcda9">&#9670;&nbsp;</a></span>GetBindingLayerInfo()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">int32_t GetBindingLayerInfo </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>graphPtr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int&#160;</td>
+ <td class="paramname"><em>layerIndex</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00439">439</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8cpp_source.xhtml#l00914">IDeserializer::DeserializerImpl::GetNetworkOutputBindingInfo()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;{</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <span class="keyword">auto</span> layerType = graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_type();</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160;</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">if</span> (layerType == Layer::Layer_InputLayer)</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; {</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_InputLayer()-&gt;base()-&gt;layerBindingId();</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; }</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( layerType == Layer::Layer_OutputLayer )</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; {</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="keywordflow">return</span> graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_as_OutputLayer()-&gt;base()-&gt;layerBindingId();</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; }</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="ac337f5478049cba1da222da655be49cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac337f5478049cba1da222da655be49cc">&#9670;&nbsp;</a></span>GetInputs()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacearmnn_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a> GetInputs </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>graph</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int&#160;</td>
+ <td class="paramname"><em>layerIndex</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00765">765</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_deserializer_8cpp_source.xhtml#l00181">CHECK_LAYERS</a>, <a class="el" href="_verification_helpers_8hpp_source.xhtml#l00035">CHECKED_NON_NEGATIVE</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00282">IDeserializer::DeserializerImpl::GetBaseLayer()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8cpp_source.xhtml#l03150">IDeserializer::DeserializerImpl::GetLstmDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00914">IDeserializer::DeserializerImpl::GetNetworkOutputBindingInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02821">IDeserializer::DeserializerImpl::GetNormalizationDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l01967">armnnDeserializer::GetOriginsDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02362">IDeserializer::DeserializerImpl::GetPooling3dDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l03281">IDeserializer::DeserializerImpl::GetQLstmDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l03713">IDeserializer::DeserializerImpl::GetUnidirectionalSequenceLstmDescriptor()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l02522">IDeserializer::DeserializerImpl::OutputShapeOfReshape()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160;{</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; <a class="code" href="_deserializer_8cpp.xhtml#aa6798881c467e8e1a1906303f6d9e26d">CHECK_LAYERS</a>(graphPtr, 0, layerIndex);</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; <span class="keyword">auto</span> layer = <a class="code" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#ab3dff510bec873d3e4ffe5cdfa71f1cd">GetBaseLayer</a>(graphPtr, layerIndex);</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; numInputs = layer-&gt;inputSlots()-&gt;size();</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160;</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; <a class="code" href="namespacearmnn_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a> result(numInputs);</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160;</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;numInputs; ++i)</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; {</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; <span class="keyword">auto</span> inputId = <a class="code" href="_verification_helpers_8hpp.xhtml#aaef93dc9a69f51b59f3cdd0ff0165927">CHECKED_NON_NEGATIVE</a>(static_cast&lt;int32_t&gt;</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; (layer-&gt;inputSlots()-&gt;Get(i)-&gt;connection()-&gt;sourceLayerIndex()));</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; result[i] = <a class="code" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#ab3dff510bec873d3e4ffe5cdfa71f1cd">GetBaseLayer</a>(graphPtr, inputId)-&gt;outputSlots()-&gt;Get(0)-&gt;tensorInfo();</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; }</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; <span class="keywordflow">return</span> result;</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160;}</div><div class="ttc" id="_deserializer_8cpp_xhtml_aa6798881c467e8e1a1906303f6d9e26d"><div class="ttname"><a href="_deserializer_8cpp.xhtml#aa6798881c467e8e1a1906303f6d9e26d">CHECK_LAYERS</a></div><div class="ttdeci">#define CHECK_LAYERS(GRAPH, LAYERS_INDEX, LAYER_INDEX)</div><div class="ttdef"><b>Definition:</b> <a href="_deserializer_8cpp_source.xhtml#l00181">Deserializer.cpp:181</a></div></div>
+<div class="ttc" id="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl_xhtml_ab3dff510bec873d3e4ffe5cdfa71f1cd"><div class="ttname"><a href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#ab3dff510bec873d3e4ffe5cdfa71f1cd">armnnDeserializer::IDeserializer::DeserializerImpl::GetBaseLayer</a></div><div class="ttdeci">static LayerBaseRawPtr GetBaseLayer(const GraphPtr &amp;graphPtr, unsigned int layerIndex)</div><div class="ttdef"><b>Definition:</b> <a href="_deserializer_8cpp_source.xhtml#l00282">Deserializer.cpp:282</a></div></div>
+<div class="ttc" id="namespacearmnn_deserializer_xhtml_abd8bee7fb9b86485a60bc7ee05114270"><div class="ttname"><a href="namespacearmnn_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">armnnDeserializer::TensorRawPtrVector</a></div><div class="ttdeci">std::vector&lt; TensorRawPtr &gt; TensorRawPtrVector</div><div class="ttdef"><b>Definition:</b> <a href="_deserializer_8hpp_source.xhtml#l00028">Deserializer.hpp:28</a></div></div>
+<div class="ttc" id="_verification_helpers_8hpp_xhtml_aaef93dc9a69f51b59f3cdd0ff0165927"><div class="ttname"><a href="_verification_helpers_8hpp.xhtml#aaef93dc9a69f51b59f3cdd0ff0165927">CHECKED_NON_NEGATIVE</a></div><div class="ttdeci">#define CHECKED_NON_NEGATIVE(VALUE)</div><div class="ttdef"><b>Definition:</b> <a href="_verification_helpers_8hpp_source.xhtml#l00035">VerificationHelpers.hpp:35</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="af2e5b4595b6abc056779ecd12bd271c2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af2e5b4595b6abc056779ecd12bd271c2">&#9670;&nbsp;</a></span>GetLayerName()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::string GetLayerName </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>graph</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int&#160;</td>
+ <td class="paramname"><em>index</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00432">432</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_deserializer_8cpp_source.xhtml#l00282">IDeserializer::DeserializerImpl::GetBaseLayer()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8cpp_source.xhtml#l03150">IDeserializer::DeserializerImpl::GetLstmDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00914">IDeserializer::DeserializerImpl::GetNetworkOutputBindingInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02821">IDeserializer::DeserializerImpl::GetNormalizationDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l01967">armnnDeserializer::GetOriginsDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02362">IDeserializer::DeserializerImpl::GetPooling3dDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l03281">IDeserializer::DeserializerImpl::GetQLstmDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l03713">IDeserializer::DeserializerImpl::GetUnidirectionalSequenceLstmDescriptor()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l02522">IDeserializer::DeserializerImpl::OutputShapeOfReshape()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;{</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="keyword">auto</span> layer = <a class="code" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#ab3dff510bec873d3e4ffe5cdfa71f1cd">GetBaseLayer</a>(graph, index);</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; assert(layer);</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="keywordflow">return</span> layer-&gt;layerName()-&gt;str();</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;}</div><div class="ttc" id="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl_xhtml_ab3dff510bec873d3e4ffe5cdfa71f1cd"><div class="ttname"><a href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#ab3dff510bec873d3e4ffe5cdfa71f1cd">armnnDeserializer::IDeserializer::DeserializerImpl::GetBaseLayer</a></div><div class="ttdeci">static LayerBaseRawPtr GetBaseLayer(const GraphPtr &amp;graphPtr, unsigned int layerIndex)</div><div class="ttdef"><b>Definition:</b> <a href="_deserializer_8cpp_source.xhtml#l00282">Deserializer.cpp:282</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="af7bb02c61c6a5663121da024b7e042e8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af7bb02c61c6a5663121da024b7e042e8">&#9670;&nbsp;</a></span>GetLstmDescriptor()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structarmnn_1_1_lstm_descriptor.xhtml">armnn::LstmDescriptor</a> GetLstmDescriptor </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="namespacearmnn_deserializer.xhtml#a15397ee26bc4b7d3a459b05e457be428">LstmDescriptorPtr</a>&#160;</td>
+ <td class="paramname"><em>lstmDescriptor</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l03150">3150</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_deserializer_8cpp_source.xhtml#l00181">CHECK_LAYERS</a>, <a class="el" href="_verification_helpers_8hpp_source.xhtml#l00032">CHECK_VALID_SIZE</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00765">IDeserializer::DeserializerImpl::GetInputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00432">IDeserializer::DeserializerImpl::GetLayerName()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00782">IDeserializer::DeserializerImpl::GetOutputs()</a>, <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml#a80ac4eda2e7f2757ec9dd96fc96dbd16">IConnectableLayer::GetOutputSlot()</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01087">LstmDescriptor::m_ActivationFunc</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00053">LstmInputParams::m_CellBias</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00059">LstmInputParams::m_CellLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00049">LstmInputParams::m_CellToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00048">LstmInputParams::m_CellToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00050">LstmInputParams::m_CellToOutputWeights</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01093">LstmDescriptor::m_CifgEnabled</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01089">LstmDescriptor::m_ClippingThresCell</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01091">LstmDescriptor::m_ClippingThresProj</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00052">LstmInputParams::m_ForgetGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00058">LstmInputParams::m_ForgetLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00051">LstmInputParams::m_InputGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00057">LstmInputParams::m_InputLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00042">LstmInputParams::m_InputToCellWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00041">LstmInputParams::m_InputToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00040">LstmInputParams::m_InputToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00043">LstmInputParams::m_InputToOutputWeights</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01099">LstmDescriptor::m_LayerNormEnabled</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00054">LstmInputParams::m_OutputGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00060">LstmInputParams::m_OutputLayerNormWeights</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01095">LstmDescriptor::m_PeepholeEnabled</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00056">LstmInputParams::m_ProjectionBias</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01097">LstmDescriptor::m_ProjectionEnabled</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00055">LstmInputParams::m_ProjectionWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00046">LstmInputParams::m_RecurrentToCellWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00045">LstmInputParams::m_RecurrentToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00044">LstmInputParams::m_RecurrentToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00047">LstmInputParams::m_RecurrentToOutputWeights</a>, <a class="el" href="classarmnn_1_1_i_output_slot.xhtml#a5ee4a6c9a2481245487b1b1a70d20fd0">IOutputSlot::SetTensorInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00722">armnnDeserializer::ToConstTensor()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00616">armnnDeserializer::ToTensorInfo()</a>.</p>
+<div class="fragment"><div class="line"><a name="l03151"></a><span class="lineno"> 3151</span>&#160;{</div><div class="line"><a name="l03152"></a><span class="lineno"> 3152</span>&#160; <a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml">armnn::LstmDescriptor</a> desc;</div><div class="line"><a name="l03153"></a><span class="lineno"> 3153</span>&#160;</div><div class="line"><a name="l03154"></a><span class="lineno"> 3154</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#ae1b07ed928036004bd257169e5aeeef4">m_ActivationFunc</a> = lstmDescriptor-&gt;activationFunc();</div><div class="line"><a name="l03155"></a><span class="lineno"> 3155</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a531a3907ec13d3772370da88030191a5">m_ClippingThresCell</a> = lstmDescriptor-&gt;clippingThresCell();</div><div class="line"><a name="l03156"></a><span class="lineno"> 3156</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a86e88bef0df4df96df752b4b8955a3af">m_ClippingThresProj</a> = lstmDescriptor-&gt;clippingThresProj();</div><div class="line"><a name="l03157"></a><span class="lineno"> 3157</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#ad474e5c51a0b194ef32e812b86c0cbdb">m_CifgEnabled</a> = lstmDescriptor-&gt;cifgEnabled();</div><div class="line"><a name="l03158"></a><span class="lineno"> 3158</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a2837b4396f20c956952d1a7286cab5f8">m_PeepholeEnabled</a> = lstmDescriptor-&gt;peepholeEnabled();</div><div class="line"><a name="l03159"></a><span class="lineno"> 3159</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a6c9de81fc65b3c4924cab11907075a17">m_ProjectionEnabled</a> = lstmDescriptor-&gt;projectionEnabled();</div><div class="line"><a name="l03160"></a><span class="lineno"> 3160</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a4a8ec49f130084445d44297549254780">m_LayerNormEnabled</a> = lstmDescriptor-&gt;layerNormEnabled();</div><div class="line"><a name="l03161"></a><span class="lineno"> 3161</span>&#160;</div><div class="line"><a name="l03162"></a><span class="lineno"> 3162</span>&#160; <span class="keywordflow">return</span> desc;</div><div class="line"><a name="l03163"></a><span class="lineno"> 3163</span>&#160;}</div><div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a6c9de81fc65b3c4924cab11907075a17"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a6c9de81fc65b3c4924cab11907075a17">armnn::LstmDescriptor::m_ProjectionEnabled</a></div><div class="ttdeci">bool m_ProjectionEnabled</div><div class="ttdoc">Enable/disable the projection layer. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01097">Descriptors.hpp:1097</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a86e88bef0df4df96df752b4b8955a3af"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a86e88bef0df4df96df752b4b8955a3af">armnn::LstmDescriptor::m_ClippingThresProj</a></div><div class="ttdeci">float m_ClippingThresProj</div><div class="ttdoc">Clipping threshold value for the projection. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01091">Descriptors.hpp:1091</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml">armnn::LstmDescriptor</a></div><div class="ttdoc">An LstmDescriptor for the LstmLayer. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01049">Descriptors.hpp:1049</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a2837b4396f20c956952d1a7286cab5f8"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a2837b4396f20c956952d1a7286cab5f8">armnn::LstmDescriptor::m_PeepholeEnabled</a></div><div class="ttdeci">bool m_PeepholeEnabled</div><div class="ttdoc">Enable/disable peephole. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01095">Descriptors.hpp:1095</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_ae1b07ed928036004bd257169e5aeeef4"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#ae1b07ed928036004bd257169e5aeeef4">armnn::LstmDescriptor::m_ActivationFunc</a></div><div class="ttdeci">uint32_t m_ActivationFunc</div><div class="ttdoc">The activation function to use. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01087">Descriptors.hpp:1087</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a531a3907ec13d3772370da88030191a5"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a531a3907ec13d3772370da88030191a5">armnn::LstmDescriptor::m_ClippingThresCell</a></div><div class="ttdeci">float m_ClippingThresCell</div><div class="ttdoc">Clipping threshold value for the cell state. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01089">Descriptors.hpp:1089</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_ad474e5c51a0b194ef32e812b86c0cbdb"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#ad474e5c51a0b194ef32e812b86c0cbdb">armnn::LstmDescriptor::m_CifgEnabled</a></div><div class="ttdeci">bool m_CifgEnabled</div><div class="ttdoc">Enable/disable cifg (coupled input &amp; forget gate). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01093">Descriptors.hpp:1093</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a4a8ec49f130084445d44297549254780"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a4a8ec49f130084445d44297549254780">armnn::LstmDescriptor::m_LayerNormEnabled</a></div><div class="ttdeci">bool m_LayerNormEnabled</div><div class="ttdoc">Enable/disable layer normalization. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01099">Descriptors.hpp:1099</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a327a399d46f8216c9f4c1eea5f18a542"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a327a399d46f8216c9f4c1eea5f18a542">&#9670;&nbsp;</a></span>GetLstmInputParams()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="structarmnn_1_1_lstm_input_params.xhtml">armnn::LstmInputParams</a> GetLstmInputParams </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="namespacearmnn_deserializer.xhtml#a15397ee26bc4b7d3a459b05e457be428">LstmDescriptorPtr</a>&#160;</td>
+ <td class="paramname"><em>lstmDescriptor</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="namespacearmnn_deserializer.xhtml#a93460fcf78d1b2dcab72dd8378739145">LstmInputParamsPtr</a>&#160;</td>
+ <td class="paramname"><em>lstmInputParams</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a5de68e32eabd643f55a35f288ba10294"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5de68e32eabd643f55a35f288ba10294">&#9670;&nbsp;</a></span>GetNetworkInputBindingInfo()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structarmnn_deserializer_1_1_binding_point_info.xhtml">BindingPointInfo</a> GetNetworkInputBindingInfo </td>
+ <td>(</td>
+ <td class="paramtype">unsigned int&#160;</td>
+ <td class="paramname"><em>layerId</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td> const</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Retrieve binding info (layer id and tensor info) for the network input identified by the given layer name. </p>
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00898">898</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_exceptions_8hpp_source.xhtml#l00203">CHECK_LOCATION</a>, and <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160;{</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(layerIndex);</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> inputBinding : m_InputBindings)</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160; {</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160; <span class="keywordflow">if</span> (inputBinding.first == name)</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160; {</div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span>&#160; <span class="keywordflow">return</span> inputBinding.second;</div><div class="line"><a name="l00907"></a><span class="lineno"> 907</span>&#160; }</div><div class="line"><a name="l00908"></a><span class="lineno"> 908</span>&#160; }</div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.xhtml">ParseException</a>(fmt::format(<span class="stringliteral">&quot;No input binding found for layer:{0} / {1}&quot;</span>,</div><div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160; name,</div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160; <a class="code" href="_exceptions_8hpp.xhtml#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</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>
+<div class="ttc" id="_exceptions_8hpp_xhtml_aa3be76aec4ce713822a5ea1ecbb7bc61"><div class="ttname"><a href="_exceptions_8hpp.xhtml#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a></div><div class="ttdeci">#define CHECK_LOCATION()</div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.xhtml#l00203">Exceptions.hpp:203</a></div></div>
+<div class="ttc" id="classarmnn_1_1_parse_exception_xhtml"><div class="ttname"><a href="classarmnn_1_1_parse_exception.xhtml">armnn::ParseException</a></div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.xhtml#l00092">Exceptions.hpp:92</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a2f66de823cd61765a40407fee754655e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2f66de823cd61765a40407fee754655e">&#9670;&nbsp;</a></span>GetNetworkOutputBindingInfo()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structarmnn_deserializer_1_1_binding_point_info.xhtml">BindingPointInfo</a> GetNetworkOutputBindingInfo </td>
+ <td>(</td>
+ <td class="paramtype">unsigned int&#160;</td>
+ <td class="paramname"><em>layerId</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td> const</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Retrieve binding info (layer id and tensor info) for the network output identified by the given layer name. </p>
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00914">914</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="namespacearmnn.xhtml#a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6">armnn::Abs</a>, <a class="el" href="_assert_8hpp_source.xhtml#l00014">ARMNN_ASSERT</a>, <a class="el" href="_assert_8hpp_source.xhtml#l00015">ARMNN_ASSERT_MSG</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00184">CHECK_GRAPH</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00181">CHECK_LAYERS</a>, <a class="el" href="_exceptions_8hpp_source.xhtml#l00203">CHECK_LOCATION</a>, <a class="el" href="_verification_helpers_8hpp_source.xhtml#l00032">CHECK_VALID_SIZE</a>, <a class="el" href="namespacearmnn.xhtml#a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5">armnn::Equal</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00282">IDeserializer::DeserializerImpl::GetBaseLayer()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00439">IDeserializer::DeserializerImpl::GetBindingLayerInfo()</a>, <a class="el" href="_types_utils_8hpp_source.xhtml#l00155">armnn::GetDataTypeSize()</a>, <a class="el" href="_tensor_8hpp_source.xhtml#l00295">BaseTensor&lt; MemoryType &gt;::GetInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00765">IDeserializer::DeserializerImpl::GetInputs()</a>, <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml#a6ec9e0eb66d7d6a01240492a0b18104c">IConnectableLayer::GetInputSlot()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00432">IDeserializer::DeserializerImpl::GetLayerName()</a>, <a class="el" href="_tensor_8hpp_source.xhtml#l00305">BaseTensor&lt; MemoryType &gt;::GetMemoryArea()</a>, <a class="el" href="_tensor_8cpp_source.xhtml#l00427">TensorInfo::GetNumBytes()</a>, <a class="el" href="_descriptors_8cpp_source.xhtml#l00443">Convolution2dDescriptor::GetNumInputs()</a>, <a class="el" href="_descriptors_8cpp_source.xhtml#l00438">Convolution3dDescriptor::GetNumInputs()</a>, <a class="el" href="_descriptors_8cpp_source.xhtml#l00453">DepthwiseConvolution2dDescriptor::GetNumInputs()</a>, <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml#a9c2cba04b6d7ace4fc2a2436b82a5a63">IConnectableLayer::GetNumInputSlots()</a>, <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml#ac2dac3b61c94de52093616be4ab17f8d">IConnectableLayer::GetNumOutputSlots()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00782">IDeserializer::DeserializerImpl::GetOutputs()</a>, <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml#a80ac4eda2e7f2757ec9dd96fc96dbd16">IConnectableLayer::GetOutputSlot()</a>, <a class="el" href="namespacearmnn.xhtml#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">armnn::Greater</a>, <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00061">ActivationDescriptor::m_A</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00083">ArgMinMaxDescriptor::m_Axis</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00063">ActivationDescriptor::m_B</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00170">SoftmaxDescriptor::m_Beta</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00835">InstanceNormalizationDescriptor::m_Beta</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00550">Convolution2dDescriptor::m_BiasEnabled</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00621">Convolution3dDescriptor::m_BiasEnabled</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00676">DepthwiseConvolution2dDescriptor::m_BiasEnabled</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00866">BatchToSpaceNdDescriptor::m_BlockShape</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01039">SpaceToDepthDescriptor::m_BlockSize</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00868">BatchToSpaceNdDescriptor::m_Crops</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00552">Convolution2dDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00623">Convolution3dDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00678">DepthwiseConvolution2dDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00792">L2NormalizationDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00811">BatchNormalizationDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00839">InstanceNormalizationDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00870">BatchToSpaceNdDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01042">SpaceToDepthDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00717">DetectionPostProcessDescriptor::m_DetectionsPerClass</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00546">Convolution2dDescriptor::m_DilationX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00615">Convolution3dDescriptor::m_DilationX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00672">DepthwiseConvolution2dDescriptor::m_DilationX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00548">Convolution2dDescriptor::m_DilationY</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00617">Convolution3dDescriptor::m_DilationY</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00674">DepthwiseConvolution2dDescriptor::m_DilationY</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00619">Convolution3dDescriptor::m_DilationZ</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00790">L2NormalizationDescriptor::m_Eps</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00809">BatchNormalizationDescriptor::m_Eps</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00837">InstanceNormalizationDescriptor::m_Eps</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00059">ActivationDescriptor::m_Function</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00081">ArgMinMaxDescriptor::m_Function</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00833">InstanceNormalizationDescriptor::m_Gamma</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00715">DetectionPostProcessDescriptor::m_MaxClassesPerDetection</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00713">DetectionPostProcessDescriptor::m_MaxDetections</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00721">DetectionPostProcessDescriptor::m_NmsIouThreshold</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00719">DetectionPostProcessDescriptor::m_NmsScoreThreshold</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00723">DetectionPostProcessDescriptor::m_NumClasses</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01481">LogicalBinaryDescriptor::m_Operation</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00607">Convolution3dDescriptor::m_PadBack</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00540">Convolution2dDescriptor::m_PadBottom</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00603">Convolution3dDescriptor::m_PadBottom</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00666">DepthwiseConvolution2dDescriptor::m_PadBottom</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00605">Convolution3dDescriptor::m_PadFront</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00534">Convolution2dDescriptor::m_PadLeft</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00597">Convolution3dDescriptor::m_PadLeft</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00660">DepthwiseConvolution2dDescriptor::m_PadLeft</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00536">Convolution2dDescriptor::m_PadRight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00599">Convolution3dDescriptor::m_PadRight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00662">DepthwiseConvolution2dDescriptor::m_PadRight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00538">Convolution2dDescriptor::m_PadTop</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00601">Convolution3dDescriptor::m_PadTop</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00664">DepthwiseConvolution2dDescriptor::m_PadTop</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00733">DetectionPostProcessDescriptor::m_ScaleH</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00731">DetectionPostProcessDescriptor::m_ScaleW</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00727">DetectionPostProcessDescriptor::m_ScaleX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00729">DetectionPostProcessDescriptor::m_ScaleY</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00542">Convolution2dDescriptor::m_StrideX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00609">Convolution3dDescriptor::m_StrideX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00668">DepthwiseConvolution2dDescriptor::m_StrideX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00544">Convolution2dDescriptor::m_StrideY</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00611">Convolution3dDescriptor::m_StrideY</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00670">DepthwiseConvolution2dDescriptor::m_StrideY</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00613">Convolution3dDescriptor::m_StrideZ</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00725">DetectionPostProcessDescriptor::m_UseRegularNms</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00908">FillDescriptor::m_Value</a>, <a class="el" href="_numeric_cast_8hpp_source.xhtml#l00035">armnn::numeric_cast()</a>, <a class="el" href="_permute_8cpp_source.xhtml#l00131">armnnUtils::Permute()</a>, <a class="el" href="_permute_8cpp_source.xhtml#l00098">armnnUtils::Permuted()</a>, <a class="el" href="_tensor_8cpp_source.xhtml#l00514">TensorInfo::SetConstant()</a>, <a class="el" href="classarmnn_1_1_i_output_slot.xhtml#a5ee4a6c9a2481245487b1b1a70d20fd0">IOutputSlot::SetTensorInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00470">armnnDeserializer::ToActivationFunction()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00501">armnnDeserializer::ToArgMinMaxFunction()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00722">armnnDeserializer::ToConstTensor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00454">armnnDeserializer::ToDataLayout()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00552">armnnDeserializer::ToLogicalBinaryOperation()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00616">armnnDeserializer::ToTensorInfo()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160;{</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(layerIndex);</div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> outputBinding : m_OutputBindings)</div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>&#160; {</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; <span class="keywordflow">if</span> (outputBinding.first == name)</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; {</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; <span class="keywordflow">return</span> outputBinding.second;</div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160; }</div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; }</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.xhtml">ParseException</a>(fmt::format(<span class="stringliteral">&quot;No output binding found for layer:{0} / {1}&quot;</span>,</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; name,</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; <a class="code" href="_exceptions_8hpp.xhtml#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</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>
+<div class="ttc" id="_exceptions_8hpp_xhtml_aa3be76aec4ce713822a5ea1ecbb7bc61"><div class="ttname"><a href="_exceptions_8hpp.xhtml#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a></div><div class="ttdeci">#define CHECK_LOCATION()</div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.xhtml#l00203">Exceptions.hpp:203</a></div></div>
+<div class="ttc" id="classarmnn_1_1_parse_exception_xhtml"><div class="ttname"><a href="classarmnn_1_1_parse_exception.xhtml">armnn::ParseException</a></div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.xhtml#l00092">Exceptions.hpp:92</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a920251d49a8f32085d458ba23f776800"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a920251d49a8f32085d458ba23f776800">&#9670;&nbsp;</a></span>GetNormalizationDescriptor()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structarmnn_1_1_normalization_descriptor.xhtml">armnn::NormalizationDescriptor</a> GetNormalizationDescriptor </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="namespacearmnn_deserializer.xhtml#a2a282cf18fcfe848b47e946327ca1048">NormalizationDescriptorPtr</a>&#160;</td>
+ <td class="paramname"><em>normalizationDescriptor</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int&#160;</td>
+ <td class="paramname"><em>layerIndex</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l02821">2821</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="namespacearmnn.xhtml#abe18a5033f2ab9c0de82c676b48f5437a810f43f3996922151c39b76143faeecc">armnn::Across</a>, <a class="el" href="_assert_8hpp_source.xhtml#l00015">ARMNN_ASSERT_MSG</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00181">CHECK_LAYERS</a>, <a class="el" href="_exceptions_8hpp_source.xhtml#l00203">CHECK_LOCATION</a>, <a class="el" href="_verification_helpers_8hpp_source.xhtml#l00032">CHECK_VALID_SIZE</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00765">IDeserializer::DeserializerImpl::GetInputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00432">IDeserializer::DeserializerImpl::GetLayerName()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00782">IDeserializer::DeserializerImpl::GetOutputs()</a>, <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml#a80ac4eda2e7f2757ec9dd96fc96dbd16">IConnectableLayer::GetOutputSlot()</a>, <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>, <a class="el" href="namespacearmnn.xhtml#ad605d1661fa0d8c7fea651d82fbe11c9ac65d2e51c610dd3853a3c777aa8bfe9d">armnn::LocalBrightness</a>, <a class="el" href="namespacearmnn.xhtml#ad605d1661fa0d8c7fea651d82fbe11c9aa94d2fcabc6b001015aeddfa19266e6f">armnn::LocalContrast</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00767">NormalizationDescriptor::m_Alpha</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00928">GatherDescriptor::m_Axis</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01137">MeanDescriptor::m_Axis</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01191">SliceDescriptor::m_Begin</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00769">NormalizationDescriptor::m_Beta</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00773">NormalizationDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00771">NormalizationDescriptor::m_K</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01139">MeanDescriptor::m_KeepDims</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00761">NormalizationDescriptor::m_NormChannelType</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00763">NormalizationDescriptor::m_NormMethodType</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00765">NormalizationDescriptor::m_NormSize</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01194">SliceDescriptor::m_Size</a>, <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">armnn::NCHW</a>, <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">armnn::NHWC</a>, <a class="el" href="namespacearmnn.xhtml#a1cfaa710db2a54673b21d2ea2da757c8a09bb7f6e2118c85a6a55bd4bf2beeca4">armnn::Rsqrt</a>, <a class="el" href="classarmnn_1_1_i_output_slot.xhtml#a5ee4a6c9a2481245487b1b1a70d20fd0">IOutputSlot::SetTensorInfo()</a>, <a class="el" href="_descriptors_8cpp_source.xhtml#l00310">ViewsDescriptor::SetViewOriginCoord()</a>, <a class="el" href="_descriptors_8cpp_source.xhtml#l00315">ViewsDescriptor::SetViewSize()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00454">armnnDeserializer::ToDataLayout()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00616">armnnDeserializer::ToTensorInfo()</a>, and <a class="el" href="namespacearmnn.xhtml#abe18a5033f2ab9c0de82c676b48f5437a37bac6dce4f46277d89bfa3003e2e39b">armnn::Within</a>.</p>
+<div class="fragment"><div class="line"><a name="l02824"></a><span class="lineno"> 2824</span>&#160;{</div><div class="line"><a name="l02825"></a><span class="lineno"> 2825</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(layerIndex);</div><div class="line"><a name="l02826"></a><span class="lineno"> 2826</span>&#160; <a class="code" href="structarmnn_1_1_normalization_descriptor.xhtml">armnn::NormalizationDescriptor</a> desc;</div><div class="line"><a name="l02827"></a><span class="lineno"> 2827</span>&#160;</div><div class="line"><a name="l02828"></a><span class="lineno"> 2828</span>&#160; <span class="keywordflow">switch</span> (normalizationDescriptor-&gt;normChannelType())</div><div class="line"><a name="l02829"></a><span class="lineno"> 2829</span>&#160; {</div><div class="line"><a name="l02830"></a><span class="lineno"> 2830</span>&#160; <span class="keywordflow">case</span> NormalizationAlgorithmChannel_Across:</div><div class="line"><a name="l02831"></a><span class="lineno"> 2831</span>&#160; {</div><div class="line"><a name="l02832"></a><span class="lineno"> 2832</span>&#160; desc.<a class="code" href="structarmnn_1_1_normalization_descriptor.xhtml#afe1f0f09d49ad2befc01f8789187b7dd">m_NormChannelType</a> = <a class="code" href="namespacearmnn.xhtml#abe18a5033f2ab9c0de82c676b48f5437a810f43f3996922151c39b76143faeecc">armnn::NormalizationAlgorithmChannel::Across</a>;</div><div class="line"><a name="l02833"></a><span class="lineno"> 2833</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02834"></a><span class="lineno"> 2834</span>&#160; }</div><div class="line"><a name="l02835"></a><span class="lineno"> 2835</span>&#160; <span class="keywordflow">case</span> NormalizationAlgorithmChannel_Within:</div><div class="line"><a name="l02836"></a><span class="lineno"> 2836</span>&#160; {</div><div class="line"><a name="l02837"></a><span class="lineno"> 2837</span>&#160; desc.<a class="code" href="structarmnn_1_1_normalization_descriptor.xhtml#afe1f0f09d49ad2befc01f8789187b7dd">m_NormChannelType</a> = <a class="code" href="namespacearmnn.xhtml#abe18a5033f2ab9c0de82c676b48f5437a37bac6dce4f46277d89bfa3003e2e39b">armnn::NormalizationAlgorithmChannel::Within</a>;</div><div class="line"><a name="l02838"></a><span class="lineno"> 2838</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02839"></a><span class="lineno"> 2839</span>&#160; }</div><div class="line"><a name="l02840"></a><span class="lineno"> 2840</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02841"></a><span class="lineno"> 2841</span>&#160; {</div><div class="line"><a name="l02842"></a><span class="lineno"> 2842</span>&#160; <a class="code" href="_assert_8hpp.xhtml#a91c4dfde57907d7698c7531785690a7f">ARMNN_ASSERT_MSG</a>(<span class="keyword">false</span>, <span class="stringliteral">&quot;Unsupported normalization channel type&quot;</span>);</div><div class="line"><a name="l02843"></a><span class="lineno"> 2843</span>&#160; }</div><div class="line"><a name="l02844"></a><span class="lineno"> 2844</span>&#160; }</div><div class="line"><a name="l02845"></a><span class="lineno"> 2845</span>&#160;</div><div class="line"><a name="l02846"></a><span class="lineno"> 2846</span>&#160; <span class="keywordflow">switch</span> (normalizationDescriptor-&gt;normMethodType())</div><div class="line"><a name="l02847"></a><span class="lineno"> 2847</span>&#160; {</div><div class="line"><a name="l02848"></a><span class="lineno"> 2848</span>&#160; <span class="keywordflow">case</span> NormalizationAlgorithmMethod_LocalBrightness:</div><div class="line"><a name="l02849"></a><span class="lineno"> 2849</span>&#160; {</div><div class="line"><a name="l02850"></a><span class="lineno"> 2850</span>&#160; desc.<a class="code" href="structarmnn_1_1_normalization_descriptor.xhtml#a05945f080edf694b631960728b87aadb">m_NormMethodType</a> = <a class="code" href="namespacearmnn.xhtml#ad605d1661fa0d8c7fea651d82fbe11c9ac65d2e51c610dd3853a3c777aa8bfe9d">armnn::NormalizationAlgorithmMethod::LocalBrightness</a>;</div><div class="line"><a name="l02851"></a><span class="lineno"> 2851</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02852"></a><span class="lineno"> 2852</span>&#160; }</div><div class="line"><a name="l02853"></a><span class="lineno"> 2853</span>&#160; <span class="keywordflow">case</span> NormalizationAlgorithmMethod_LocalContrast:</div><div class="line"><a name="l02854"></a><span class="lineno"> 2854</span>&#160; {</div><div class="line"><a name="l02855"></a><span class="lineno"> 2855</span>&#160; desc.<a class="code" href="structarmnn_1_1_normalization_descriptor.xhtml#a05945f080edf694b631960728b87aadb">m_NormMethodType</a> = <a class="code" href="namespacearmnn.xhtml#ad605d1661fa0d8c7fea651d82fbe11c9aa94d2fcabc6b001015aeddfa19266e6f">armnn::NormalizationAlgorithmMethod::LocalContrast</a>;</div><div class="line"><a name="l02856"></a><span class="lineno"> 2856</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02857"></a><span class="lineno"> 2857</span>&#160; }</div><div class="line"><a name="l02858"></a><span class="lineno"> 2858</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02859"></a><span class="lineno"> 2859</span>&#160; {</div><div class="line"><a name="l02860"></a><span class="lineno"> 2860</span>&#160; <a class="code" href="_assert_8hpp.xhtml#a91c4dfde57907d7698c7531785690a7f">ARMNN_ASSERT_MSG</a>(<span class="keyword">false</span>, <span class="stringliteral">&quot;Unsupported normalization method type&quot;</span>);</div><div class="line"><a name="l02861"></a><span class="lineno"> 2861</span>&#160; }</div><div class="line"><a name="l02862"></a><span class="lineno"> 2862</span>&#160; }</div><div class="line"><a name="l02863"></a><span class="lineno"> 2863</span>&#160;</div><div class="line"><a name="l02864"></a><span class="lineno"> 2864</span>&#160; <span class="keywordflow">switch</span> (normalizationDescriptor-&gt;dataLayout())</div><div class="line"><a name="l02865"></a><span class="lineno"> 2865</span>&#160; {</div><div class="line"><a name="l02866"></a><span class="lineno"> 2866</span>&#160; <span class="keywordflow">case</span> DataLayout_NCHW:</div><div class="line"><a name="l02867"></a><span class="lineno"> 2867</span>&#160; {</div><div class="line"><a name="l02868"></a><span class="lineno"> 2868</span>&#160; desc.<a class="code" href="structarmnn_1_1_normalization_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">m_DataLayout</a> = <a class="code" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">armnn::DataLayout::NCHW</a>;</div><div class="line"><a name="l02869"></a><span class="lineno"> 2869</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02870"></a><span class="lineno"> 2870</span>&#160; }</div><div class="line"><a name="l02871"></a><span class="lineno"> 2871</span>&#160; <span class="keywordflow">case</span> DataLayout_NHWC:</div><div class="line"><a name="l02872"></a><span class="lineno"> 2872</span>&#160; {</div><div class="line"><a name="l02873"></a><span class="lineno"> 2873</span>&#160; desc.<a class="code" href="structarmnn_1_1_normalization_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">m_DataLayout</a> = <a class="code" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">armnn::DataLayout::NHWC</a>;</div><div class="line"><a name="l02874"></a><span class="lineno"> 2874</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02875"></a><span class="lineno"> 2875</span>&#160; }</div><div class="line"><a name="l02876"></a><span class="lineno"> 2876</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02877"></a><span class="lineno"> 2877</span>&#160; {</div><div class="line"><a name="l02878"></a><span class="lineno"> 2878</span>&#160; <a class="code" href="_assert_8hpp.xhtml#a91c4dfde57907d7698c7531785690a7f">ARMNN_ASSERT_MSG</a>(<span class="keyword">false</span>, <span class="stringliteral">&quot;Unsupported data layout&quot;</span>);</div><div class="line"><a name="l02879"></a><span class="lineno"> 2879</span>&#160; }</div><div class="line"><a name="l02880"></a><span class="lineno"> 2880</span>&#160; }</div><div class="line"><a name="l02881"></a><span class="lineno"> 2881</span>&#160;</div><div class="line"><a name="l02882"></a><span class="lineno"> 2882</span>&#160; desc.<a class="code" href="structarmnn_1_1_normalization_descriptor.xhtml#a174279be57d7596eeb04c6b7f7510f99">m_Alpha</a> = normalizationDescriptor-&gt;alpha();</div><div class="line"><a name="l02883"></a><span class="lineno"> 2883</span>&#160; desc.<a class="code" href="structarmnn_1_1_normalization_descriptor.xhtml#a8275d51ef9a584feb95726ea0522f6e5">m_Beta</a> = normalizationDescriptor-&gt;beta();</div><div class="line"><a name="l02884"></a><span class="lineno"> 2884</span>&#160; desc.<a class="code" href="structarmnn_1_1_normalization_descriptor.xhtml#a8526ea7cf860d8e7f8340e9f9354f9f0">m_K</a> = normalizationDescriptor-&gt;k();</div><div class="line"><a name="l02885"></a><span class="lineno"> 2885</span>&#160; desc.<a class="code" href="structarmnn_1_1_normalization_descriptor.xhtml#aa70c05f1aad12fbd9d9ec43ea4557b03">m_NormSize</a> = normalizationDescriptor-&gt;normSize();</div><div class="line"><a name="l02886"></a><span class="lineno"> 2886</span>&#160;</div><div class="line"><a name="l02887"></a><span class="lineno"> 2887</span>&#160; <span class="keywordflow">return</span> desc;</div><div class="line"><a name="l02888"></a><span class="lineno"> 2888</span>&#160;}</div><div class="ttc" id="structarmnn_1_1_normalization_descriptor_xhtml_a8526ea7cf860d8e7f8340e9f9354f9f0"><div class="ttname"><a href="structarmnn_1_1_normalization_descriptor.xhtml#a8526ea7cf860d8e7f8340e9f9354f9f0">armnn::NormalizationDescriptor::m_K</a></div><div class="ttdeci">float m_K</div><div class="ttdoc">Kappa value used for the across channel normalization equation. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00771">Descriptors.hpp:771</a></div></div>
+<div class="ttc" id="structarmnn_1_1_normalization_descriptor_xhtml_a174279be57d7596eeb04c6b7f7510f99"><div class="ttname"><a href="structarmnn_1_1_normalization_descriptor.xhtml#a174279be57d7596eeb04c6b7f7510f99">armnn::NormalizationDescriptor::m_Alpha</a></div><div class="ttdeci">float m_Alpha</div><div class="ttdoc">Alpha value for the normalization equation. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00767">Descriptors.hpp:767</a></div></div>
+<div class="ttc" id="structarmnn_1_1_normalization_descriptor_xhtml_a6089e1ca91914015777ea780a513131a"><div class="ttname"><a href="structarmnn_1_1_normalization_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">armnn::NormalizationDescriptor::m_DataLayout</a></div><div class="ttdeci">DataLayout m_DataLayout</div><div class="ttdoc">The data layout to be used (NCHW, NHWC). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00773">Descriptors.hpp:773</a></div></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>
+<div class="ttc" id="structarmnn_1_1_normalization_descriptor_xhtml_a05945f080edf694b631960728b87aadb"><div class="ttname"><a href="structarmnn_1_1_normalization_descriptor.xhtml#a05945f080edf694b631960728b87aadb">armnn::NormalizationDescriptor::m_NormMethodType</a></div><div class="ttdeci">NormalizationAlgorithmMethod m_NormMethodType</div><div class="ttdoc">Normalization method algorithm to use (LocalBrightness, LocalContrast). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00763">Descriptors.hpp:763</a></div></div>
+<div class="ttc" id="_assert_8hpp_xhtml_a91c4dfde57907d7698c7531785690a7f"><div class="ttname"><a href="_assert_8hpp.xhtml#a91c4dfde57907d7698c7531785690a7f">ARMNN_ASSERT_MSG</a></div><div class="ttdeci">#define ARMNN_ASSERT_MSG(COND, MSG)</div><div class="ttdef"><b>Definition:</b> <a href="_assert_8hpp_source.xhtml#l00015">Assert.hpp:15</a></div></div>
+<div class="ttc" id="structarmnn_1_1_normalization_descriptor_xhtml_afe1f0f09d49ad2befc01f8789187b7dd"><div class="ttname"><a href="structarmnn_1_1_normalization_descriptor.xhtml#afe1f0f09d49ad2befc01f8789187b7dd">armnn::NormalizationDescriptor::m_NormChannelType</a></div><div class="ttdeci">NormalizationAlgorithmChannel m_NormChannelType</div><div class="ttdoc">Normalization channel algorithm to use (Across, Within). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00761">Descriptors.hpp:761</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_ad605d1661fa0d8c7fea651d82fbe11c9aa94d2fcabc6b001015aeddfa19266e6f"><div class="ttname"><a href="namespacearmnn.xhtml#ad605d1661fa0d8c7fea651d82fbe11c9aa94d2fcabc6b001015aeddfa19266e6f">armnn::NormalizationAlgorithmMethod::LocalContrast</a></div><div class="ttdoc">Jarret 2009: Local Contrast Normalization. </div></div>
+<div class="ttc" id="namespacearmnn_xhtml_abe18a5033f2ab9c0de82c676b48f5437a37bac6dce4f46277d89bfa3003e2e39b"><div class="ttname"><a href="namespacearmnn.xhtml#abe18a5033f2ab9c0de82c676b48f5437a37bac6dce4f46277d89bfa3003e2e39b">armnn::NormalizationAlgorithmChannel::Within</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f"><div class="ttname"><a href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">armnn::DataLayout::NCHW</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_ad605d1661fa0d8c7fea651d82fbe11c9ac65d2e51c610dd3853a3c777aa8bfe9d"><div class="ttname"><a href="namespacearmnn.xhtml#ad605d1661fa0d8c7fea651d82fbe11c9ac65d2e51c610dd3853a3c777aa8bfe9d">armnn::NormalizationAlgorithmMethod::LocalBrightness</a></div><div class="ttdoc">Krichevsky 2012: Local Brightness Normalization. </div></div>
+<div class="ttc" id="namespacearmnn_xhtml_abe18a5033f2ab9c0de82c676b48f5437a810f43f3996922151c39b76143faeecc"><div class="ttname"><a href="namespacearmnn.xhtml#abe18a5033f2ab9c0de82c676b48f5437a810f43f3996922151c39b76143faeecc">armnn::NormalizationAlgorithmChannel::Across</a></div></div>
+<div class="ttc" id="structarmnn_1_1_normalization_descriptor_xhtml"><div class="ttname"><a href="structarmnn_1_1_normalization_descriptor.xhtml">armnn::NormalizationDescriptor</a></div><div class="ttdoc">A NormalizationDescriptor for the NormalizationLayer. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00737">Descriptors.hpp:737</a></div></div>
+<div class="ttc" id="structarmnn_1_1_normalization_descriptor_xhtml_a8275d51ef9a584feb95726ea0522f6e5"><div class="ttname"><a href="structarmnn_1_1_normalization_descriptor.xhtml#a8275d51ef9a584feb95726ea0522f6e5">armnn::NormalizationDescriptor::m_Beta</a></div><div class="ttdeci">float m_Beta</div><div class="ttdoc">Beta value for the normalization equation. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00769">Descriptors.hpp:769</a></div></div>
+<div class="ttc" id="structarmnn_1_1_normalization_descriptor_xhtml_aa70c05f1aad12fbd9d9ec43ea4557b03"><div class="ttname"><a href="structarmnn_1_1_normalization_descriptor.xhtml#aa70c05f1aad12fbd9d9ec43ea4557b03">armnn::NormalizationDescriptor::m_NormSize</a></div><div class="ttdeci">uint32_t m_NormSize</div><div class="ttdoc">Depth radius value. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00765">Descriptors.hpp:765</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51"><div class="ttname"><a href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">armnn::DataLayout::NHWC</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a9069127d4430d97fe0f2c53fb2c32ab9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9069127d4430d97fe0f2c53fb2c32ab9">&#9670;&nbsp;</a></span>GetOutputs()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacearmnn_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a> GetOutputs </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> &amp;&#160;</td>
+ <td class="paramname"><em>graph</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int&#160;</td>
+ <td class="paramname"><em>layerIndex</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00782">782</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_deserializer_8cpp_source.xhtml#l00181">CHECK_LAYERS</a>, <a class="el" href="_exceptions_8hpp_source.xhtml#l00203">CHECK_LOCATION</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00282">IDeserializer::DeserializerImpl::GetBaseLayer()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8cpp_source.xhtml#l03150">IDeserializer::DeserializerImpl::GetLstmDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00914">IDeserializer::DeserializerImpl::GetNetworkOutputBindingInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02821">IDeserializer::DeserializerImpl::GetNormalizationDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l01967">armnnDeserializer::GetOriginsDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02362">IDeserializer::DeserializerImpl::GetPooling3dDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l03281">IDeserializer::DeserializerImpl::GetQLstmDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l03713">IDeserializer::DeserializerImpl::GetUnidirectionalSequenceLstmDescriptor()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l02522">IDeserializer::DeserializerImpl::OutputShapeOfReshape()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160;{</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; <a class="code" href="_deserializer_8cpp.xhtml#aa6798881c467e8e1a1906303f6d9e26d">CHECK_LAYERS</a>(graphPtr, 0, layerIndex);</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; <span class="keyword">auto</span> layer = <a class="code" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#ab3dff510bec873d3e4ffe5cdfa71f1cd">GetBaseLayer</a>(graphPtr, layerIndex);</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; numOutputs = layer-&gt;outputSlots()-&gt;size();</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160;</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; <a class="code" href="namespacearmnn_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a> result(numOutputs);</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160;</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;numOutputs; ++i)</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; {</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; result[i] = layer-&gt;outputSlots()-&gt;Get(i)-&gt;tensorInfo();</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; }</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; <span class="keywordflow">return</span> result;</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160;}</div><div class="ttc" id="_deserializer_8cpp_xhtml_aa6798881c467e8e1a1906303f6d9e26d"><div class="ttname"><a href="_deserializer_8cpp.xhtml#aa6798881c467e8e1a1906303f6d9e26d">CHECK_LAYERS</a></div><div class="ttdeci">#define CHECK_LAYERS(GRAPH, LAYERS_INDEX, LAYER_INDEX)</div><div class="ttdef"><b>Definition:</b> <a href="_deserializer_8cpp_source.xhtml#l00181">Deserializer.cpp:181</a></div></div>
+<div class="ttc" id="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl_xhtml_ab3dff510bec873d3e4ffe5cdfa71f1cd"><div class="ttname"><a href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml#ab3dff510bec873d3e4ffe5cdfa71f1cd">armnnDeserializer::IDeserializer::DeserializerImpl::GetBaseLayer</a></div><div class="ttdeci">static LayerBaseRawPtr GetBaseLayer(const GraphPtr &amp;graphPtr, unsigned int layerIndex)</div><div class="ttdef"><b>Definition:</b> <a href="_deserializer_8cpp_source.xhtml#l00282">Deserializer.cpp:282</a></div></div>
+<div class="ttc" id="namespacearmnn_deserializer_xhtml_abd8bee7fb9b86485a60bc7ee05114270"><div class="ttname"><a href="namespacearmnn_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">armnnDeserializer::TensorRawPtrVector</a></div><div class="ttdeci">std::vector&lt; TensorRawPtr &gt; TensorRawPtrVector</div><div class="ttdef"><b>Definition:</b> <a href="_deserializer_8hpp_source.xhtml#l00028">Deserializer.hpp:28</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="ac17b9b154461bfa49ff7ade08f3c4bdf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac17b9b154461bfa49ff7ade08f3c4bdf">&#9670;&nbsp;</a></span>GetPooling2dDescriptor()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structarmnn_1_1_pooling2d_descriptor.xhtml">armnn::Pooling2dDescriptor</a> GetPooling2dDescriptor </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="namespacearmnn_deserializer.xhtml#a7e75f47f676327bce37149932aa4a011">Pooling2dDescriptor</a>&#160;</td>
+ <td class="paramname"><em>pooling2dDescriptor</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int&#160;</td>
+ <td class="paramname"><em>layerIndex</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l02267">2267</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_assert_8hpp_source.xhtml#l00015">ARMNN_ASSERT_MSG</a>, <a class="el" href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718ab1897515d548a960afe49ecf66a29021">armnn::Average</a>, <a class="el" href="namespacearmnn.xhtml#adf2e5515c4c36a3e7e46bb8b83c6754ea3237fbc8204064c106cb9080088a17cb">armnn::Ceiling</a>, <a class="el" href="namespacearmnn.xhtml#a3888429b6ebc79f9a7df549e5e4d9a2fa843f2812f595e7ec7c5036e89fde02d6">armnn::Exclude</a>, <a class="el" href="namespacearmnn.xhtml#adf2e5515c4c36a3e7e46bb8b83c6754eaf3f6d0343d56ce88ce7958170ed05cb3">armnn::Floor</a>, <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>, <a class="el" href="namespacearmnn.xhtml#a3888429b6ebc79f9a7df549e5e4d9a2faad301514192636ad34210adce598a45a">armnn::IgnoreValue</a>, <a class="el" href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718a7e6aa2d53f6ee2b1a34b017fa403cb76">armnn::L2</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00395">Pooling2dDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00391">Pooling2dDescriptor::m_OutputShapeRounding</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00381">Pooling2dDescriptor::m_PadBottom</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00393">Pooling2dDescriptor::m_PaddingMethod</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00375">Pooling2dDescriptor::m_PadLeft</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00377">Pooling2dDescriptor::m_PadRight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00379">Pooling2dDescriptor::m_PadTop</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00385">Pooling2dDescriptor::m_PoolHeight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00373">Pooling2dDescriptor::m_PoolType</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00383">Pooling2dDescriptor::m_PoolWidth</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00387">Pooling2dDescriptor::m_StrideX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00389">Pooling2dDescriptor::m_StrideY</a>, <a class="el" href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718a6a061313d22e51e0f25b7cd4dc065233">armnn::Max</a>, <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">armnn::NCHW</a>, and <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">armnn::NHWC</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8cpp_source.xhtml#l02362">IDeserializer::DeserializerImpl::GetPooling3dDescriptor()</a>.</p>
+<div class="fragment"><div class="line"><a name="l02269"></a><span class="lineno"> 2269</span>&#160;{</div><div class="line"><a name="l02270"></a><span class="lineno"> 2270</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(layerIndex);</div><div class="line"><a name="l02271"></a><span class="lineno"> 2271</span>&#160; <a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml">armnn::Pooling2dDescriptor</a> desc;</div><div class="line"><a name="l02272"></a><span class="lineno"> 2272</span>&#160;</div><div class="line"><a name="l02273"></a><span class="lineno"> 2273</span>&#160; <span class="keywordflow">switch</span> (pooling2dDesc-&gt;poolType())</div><div class="line"><a name="l02274"></a><span class="lineno"> 2274</span>&#160; {</div><div class="line"><a name="l02275"></a><span class="lineno"> 2275</span>&#160; <span class="keywordflow">case</span> PoolingAlgorithm_Average:</div><div class="line"><a name="l02276"></a><span class="lineno"> 2276</span>&#160; {</div><div class="line"><a name="l02277"></a><span class="lineno"> 2277</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#a0031997bf43bd2747656c31e4977793a">m_PoolType</a> = <a class="code" href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718ab1897515d548a960afe49ecf66a29021">armnn::PoolingAlgorithm::Average</a>;</div><div class="line"><a name="l02278"></a><span class="lineno"> 2278</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02279"></a><span class="lineno"> 2279</span>&#160; }</div><div class="line"><a name="l02280"></a><span class="lineno"> 2280</span>&#160; <span class="keywordflow">case</span> PoolingAlgorithm_Max:</div><div class="line"><a name="l02281"></a><span class="lineno"> 2281</span>&#160; {</div><div class="line"><a name="l02282"></a><span class="lineno"> 2282</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#a0031997bf43bd2747656c31e4977793a">m_PoolType</a> = <a class="code" href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718a6a061313d22e51e0f25b7cd4dc065233">armnn::PoolingAlgorithm::Max</a>;</div><div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02284"></a><span class="lineno"> 2284</span>&#160; }</div><div class="line"><a name="l02285"></a><span class="lineno"> 2285</span>&#160; <span class="keywordflow">case</span> PoolingAlgorithm_L2:</div><div class="line"><a name="l02286"></a><span class="lineno"> 2286</span>&#160; {</div><div class="line"><a name="l02287"></a><span class="lineno"> 2287</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#a0031997bf43bd2747656c31e4977793a">m_PoolType</a> = <a class="code" href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718a7e6aa2d53f6ee2b1a34b017fa403cb76">armnn::PoolingAlgorithm::L2</a>;</div><div class="line"><a name="l02288"></a><span class="lineno"> 2288</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02289"></a><span class="lineno"> 2289</span>&#160; }</div><div class="line"><a name="l02290"></a><span class="lineno"> 2290</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02291"></a><span class="lineno"> 2291</span>&#160; {</div><div class="line"><a name="l02292"></a><span class="lineno"> 2292</span>&#160; <a class="code" href="_assert_8hpp.xhtml#a91c4dfde57907d7698c7531785690a7f">ARMNN_ASSERT_MSG</a>(<span class="keyword">false</span>, <span class="stringliteral">&quot;Unsupported pooling algorithm&quot;</span>);</div><div class="line"><a name="l02293"></a><span class="lineno"> 2293</span>&#160; }</div><div class="line"><a name="l02294"></a><span class="lineno"> 2294</span>&#160; }</div><div class="line"><a name="l02295"></a><span class="lineno"> 2295</span>&#160;</div><div class="line"><a name="l02296"></a><span class="lineno"> 2296</span>&#160; <span class="keywordflow">switch</span> (pooling2dDesc-&gt;outputShapeRounding())</div><div class="line"><a name="l02297"></a><span class="lineno"> 2297</span>&#160; {</div><div class="line"><a name="l02298"></a><span class="lineno"> 2298</span>&#160; <span class="keywordflow">case</span> OutputShapeRounding_Floor:</div><div class="line"><a name="l02299"></a><span class="lineno"> 2299</span>&#160; {</div><div class="line"><a name="l02300"></a><span class="lineno"> 2300</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#affb5b68b3eba3ed45a06c7cde7781962">m_OutputShapeRounding</a> = <a class="code" href="namespacearmnn.xhtml#adf2e5515c4c36a3e7e46bb8b83c6754eaf3f6d0343d56ce88ce7958170ed05cb3">armnn::OutputShapeRounding::Floor</a>;</div><div class="line"><a name="l02301"></a><span class="lineno"> 2301</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02302"></a><span class="lineno"> 2302</span>&#160; }</div><div class="line"><a name="l02303"></a><span class="lineno"> 2303</span>&#160; <span class="keywordflow">case</span> OutputShapeRounding_Ceiling:</div><div class="line"><a name="l02304"></a><span class="lineno"> 2304</span>&#160; {</div><div class="line"><a name="l02305"></a><span class="lineno"> 2305</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#affb5b68b3eba3ed45a06c7cde7781962">m_OutputShapeRounding</a> = <a class="code" href="namespacearmnn.xhtml#adf2e5515c4c36a3e7e46bb8b83c6754ea3237fbc8204064c106cb9080088a17cb">armnn::OutputShapeRounding::Ceiling</a>;</div><div class="line"><a name="l02306"></a><span class="lineno"> 2306</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02307"></a><span class="lineno"> 2307</span>&#160; }</div><div class="line"><a name="l02308"></a><span class="lineno"> 2308</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02309"></a><span class="lineno"> 2309</span>&#160; {</div><div class="line"><a name="l02310"></a><span class="lineno"> 2310</span>&#160; <a class="code" href="_assert_8hpp.xhtml#a91c4dfde57907d7698c7531785690a7f">ARMNN_ASSERT_MSG</a>(<span class="keyword">false</span>, <span class="stringliteral">&quot;Unsupported output shape rounding&quot;</span>);</div><div class="line"><a name="l02311"></a><span class="lineno"> 2311</span>&#160; }</div><div class="line"><a name="l02312"></a><span class="lineno"> 2312</span>&#160; }</div><div class="line"><a name="l02313"></a><span class="lineno"> 2313</span>&#160;</div><div class="line"><a name="l02314"></a><span class="lineno"> 2314</span>&#160; <span class="keywordflow">switch</span> (pooling2dDesc-&gt;paddingMethod())</div><div class="line"><a name="l02315"></a><span class="lineno"> 2315</span>&#160; {</div><div class="line"><a name="l02316"></a><span class="lineno"> 2316</span>&#160; <span class="keywordflow">case</span> PaddingMethod_Exclude:</div><div class="line"><a name="l02317"></a><span class="lineno"> 2317</span>&#160; {</div><div class="line"><a name="l02318"></a><span class="lineno"> 2318</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#a8c29d6ea9b4186d69aad5961c910939c">m_PaddingMethod</a> = <a class="code" href="namespacearmnn.xhtml#a3888429b6ebc79f9a7df549e5e4d9a2fa843f2812f595e7ec7c5036e89fde02d6">armnn::PaddingMethod::Exclude</a>;</div><div class="line"><a name="l02319"></a><span class="lineno"> 2319</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02320"></a><span class="lineno"> 2320</span>&#160; }</div><div class="line"><a name="l02321"></a><span class="lineno"> 2321</span>&#160; <span class="keywordflow">case</span> PaddingMethod_IgnoreValue:</div><div class="line"><a name="l02322"></a><span class="lineno"> 2322</span>&#160; {</div><div class="line"><a name="l02323"></a><span class="lineno"> 2323</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#a8c29d6ea9b4186d69aad5961c910939c">m_PaddingMethod</a> = <a class="code" href="namespacearmnn.xhtml#a3888429b6ebc79f9a7df549e5e4d9a2faad301514192636ad34210adce598a45a">armnn::PaddingMethod::IgnoreValue</a>;</div><div class="line"><a name="l02324"></a><span class="lineno"> 2324</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02325"></a><span class="lineno"> 2325</span>&#160; }</div><div class="line"><a name="l02326"></a><span class="lineno"> 2326</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02327"></a><span class="lineno"> 2327</span>&#160; {</div><div class="line"><a name="l02328"></a><span class="lineno"> 2328</span>&#160; <a class="code" href="_assert_8hpp.xhtml#a91c4dfde57907d7698c7531785690a7f">ARMNN_ASSERT_MSG</a>(<span class="keyword">false</span>, <span class="stringliteral">&quot;Unsupported padding method&quot;</span>);</div><div class="line"><a name="l02329"></a><span class="lineno"> 2329</span>&#160; }</div><div class="line"><a name="l02330"></a><span class="lineno"> 2330</span>&#160; }</div><div class="line"><a name="l02331"></a><span class="lineno"> 2331</span>&#160;</div><div class="line"><a name="l02332"></a><span class="lineno"> 2332</span>&#160; <span class="keywordflow">switch</span> (pooling2dDesc-&gt;dataLayout())</div><div class="line"><a name="l02333"></a><span class="lineno"> 2333</span>&#160; {</div><div class="line"><a name="l02334"></a><span class="lineno"> 2334</span>&#160; <span class="keywordflow">case</span> DataLayout_NCHW:</div><div class="line"><a name="l02335"></a><span class="lineno"> 2335</span>&#160; {</div><div class="line"><a name="l02336"></a><span class="lineno"> 2336</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">m_DataLayout</a> = <a class="code" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">armnn::DataLayout::NCHW</a>;</div><div class="line"><a name="l02337"></a><span class="lineno"> 2337</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02338"></a><span class="lineno"> 2338</span>&#160; }</div><div class="line"><a name="l02339"></a><span class="lineno"> 2339</span>&#160; <span class="keywordflow">case</span> DataLayout_NHWC:</div><div class="line"><a name="l02340"></a><span class="lineno"> 2340</span>&#160; {</div><div class="line"><a name="l02341"></a><span class="lineno"> 2341</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">m_DataLayout</a> = <a class="code" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">armnn::DataLayout::NHWC</a>;</div><div class="line"><a name="l02342"></a><span class="lineno"> 2342</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02343"></a><span class="lineno"> 2343</span>&#160; }</div><div class="line"><a name="l02344"></a><span class="lineno"> 2344</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02345"></a><span class="lineno"> 2345</span>&#160; {</div><div class="line"><a name="l02346"></a><span class="lineno"> 2346</span>&#160; <a class="code" href="_assert_8hpp.xhtml#a91c4dfde57907d7698c7531785690a7f">ARMNN_ASSERT_MSG</a>(<span class="keyword">false</span>, <span class="stringliteral">&quot;Unsupported data layout&quot;</span>);</div><div class="line"><a name="l02347"></a><span class="lineno"> 2347</span>&#160; }</div><div class="line"><a name="l02348"></a><span class="lineno"> 2348</span>&#160; }</div><div class="line"><a name="l02349"></a><span class="lineno"> 2349</span>&#160;</div><div class="line"><a name="l02350"></a><span class="lineno"> 2350</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#a002bc30e590d78cbb4f4d12171055ca7">m_PadRight</a> = pooling2dDesc-&gt;padRight();</div><div class="line"><a name="l02351"></a><span class="lineno"> 2351</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#ac18546ebbebbb32fe0a03baa9bf2c600">m_PadLeft</a> = pooling2dDesc-&gt;padLeft();</div><div class="line"><a name="l02352"></a><span class="lineno"> 2352</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#aa9e49717ebdb741e8c767741647fc618">m_PadBottom</a> = pooling2dDesc-&gt;padBottom();</div><div class="line"><a name="l02353"></a><span class="lineno"> 2353</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#a56b51f56cef50cdfa554258eecdab046">m_PadTop</a> = pooling2dDesc-&gt;padTop();</div><div class="line"><a name="l02354"></a><span class="lineno"> 2354</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#afe6a3377c4531315354def9023c8fdda">m_StrideX</a> = pooling2dDesc-&gt;strideX();</div><div class="line"><a name="l02355"></a><span class="lineno"> 2355</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#ac1fe174bbadfb39a2b636940c2e647c8">m_StrideY</a> = pooling2dDesc-&gt;strideY();</div><div class="line"><a name="l02356"></a><span class="lineno"> 2356</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#a6d8fb685cc1ff224f25aa127fcf62c86">m_PoolWidth</a> = pooling2dDesc-&gt;poolWidth();</div><div class="line"><a name="l02357"></a><span class="lineno"> 2357</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml#a5699e8606c37d18c03910b242cd1b010">m_PoolHeight</a> = pooling2dDesc-&gt;poolHeight();</div><div class="line"><a name="l02358"></a><span class="lineno"> 2358</span>&#160;</div><div class="line"><a name="l02359"></a><span class="lineno"> 2359</span>&#160; <span class="keywordflow">return</span> desc;</div><div class="line"><a name="l02360"></a><span class="lineno"> 2360</span>&#160;}</div><div class="ttc" id="structarmnn_1_1_pooling2d_descriptor_xhtml_aa9e49717ebdb741e8c767741647fc618"><div class="ttname"><a href="structarmnn_1_1_pooling2d_descriptor.xhtml#aa9e49717ebdb741e8c767741647fc618">armnn::Pooling2dDescriptor::m_PadBottom</a></div><div class="ttdeci">uint32_t m_PadBottom</div><div class="ttdoc">Padding bottom value in the height dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00381">Descriptors.hpp:381</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_adf2e5515c4c36a3e7e46bb8b83c6754ea3237fbc8204064c106cb9080088a17cb"><div class="ttname"><a href="namespacearmnn.xhtml#adf2e5515c4c36a3e7e46bb8b83c6754ea3237fbc8204064c106cb9080088a17cb">armnn::OutputShapeRounding::Ceiling</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling2d_descriptor_xhtml_ac18546ebbebbb32fe0a03baa9bf2c600"><div class="ttname"><a href="structarmnn_1_1_pooling2d_descriptor.xhtml#ac18546ebbebbb32fe0a03baa9bf2c600">armnn::Pooling2dDescriptor::m_PadLeft</a></div><div class="ttdeci">uint32_t m_PadLeft</div><div class="ttdoc">Padding left value in the width dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00375">Descriptors.hpp:375</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_adf2e5515c4c36a3e7e46bb8b83c6754eaf3f6d0343d56ce88ce7958170ed05cb3"><div class="ttname"><a href="namespacearmnn.xhtml#adf2e5515c4c36a3e7e46bb8b83c6754eaf3f6d0343d56ce88ce7958170ed05cb3">armnn::OutputShapeRounding::Floor</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling2d_descriptor_xhtml_a6d8fb685cc1ff224f25aa127fcf62c86"><div class="ttname"><a href="structarmnn_1_1_pooling2d_descriptor.xhtml#a6d8fb685cc1ff224f25aa127fcf62c86">armnn::Pooling2dDescriptor::m_PoolWidth</a></div><div class="ttdeci">uint32_t m_PoolWidth</div><div class="ttdoc">Pooling width value. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00383">Descriptors.hpp:383</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_a3888429b6ebc79f9a7df549e5e4d9a2fa843f2812f595e7ec7c5036e89fde02d6"><div class="ttname"><a href="namespacearmnn.xhtml#a3888429b6ebc79f9a7df549e5e4d9a2fa843f2812f595e7ec7c5036e89fde02d6">armnn::PaddingMethod::Exclude</a></div><div class="ttdoc">The padding fields don&amp;#39;t count and are ignored. </div></div>
+<div class="ttc" id="structarmnn_1_1_pooling2d_descriptor_xhtml_a8c29d6ea9b4186d69aad5961c910939c"><div class="ttname"><a href="structarmnn_1_1_pooling2d_descriptor.xhtml#a8c29d6ea9b4186d69aad5961c910939c">armnn::Pooling2dDescriptor::m_PaddingMethod</a></div><div class="ttdeci">PaddingMethod m_PaddingMethod</div><div class="ttdoc">The padding method to be used. (Exclude, IgnoreValue). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00393">Descriptors.hpp:393</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling2d_descriptor_xhtml_a56b51f56cef50cdfa554258eecdab046"><div class="ttname"><a href="structarmnn_1_1_pooling2d_descriptor.xhtml#a56b51f56cef50cdfa554258eecdab046">armnn::Pooling2dDescriptor::m_PadTop</a></div><div class="ttdeci">uint32_t m_PadTop</div><div class="ttdoc">Padding top value in the height dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00379">Descriptors.hpp:379</a></div></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>
+<div class="ttc" id="structarmnn_1_1_pooling2d_descriptor_xhtml_afe6a3377c4531315354def9023c8fdda"><div class="ttname"><a href="structarmnn_1_1_pooling2d_descriptor.xhtml#afe6a3377c4531315354def9023c8fdda">armnn::Pooling2dDescriptor::m_StrideX</a></div><div class="ttdeci">uint32_t m_StrideX</div><div class="ttdoc">Stride value when proceeding through input for the width dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00387">Descriptors.hpp:387</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling2d_descriptor_xhtml_a5699e8606c37d18c03910b242cd1b010"><div class="ttname"><a href="structarmnn_1_1_pooling2d_descriptor.xhtml#a5699e8606c37d18c03910b242cd1b010">armnn::Pooling2dDescriptor::m_PoolHeight</a></div><div class="ttdeci">uint32_t m_PoolHeight</div><div class="ttdoc">Pooling height value. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00385">Descriptors.hpp:385</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling2d_descriptor_xhtml_a002bc30e590d78cbb4f4d12171055ca7"><div class="ttname"><a href="structarmnn_1_1_pooling2d_descriptor.xhtml#a002bc30e590d78cbb4f4d12171055ca7">armnn::Pooling2dDescriptor::m_PadRight</a></div><div class="ttdeci">uint32_t m_PadRight</div><div class="ttdoc">Padding right value in the width dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00377">Descriptors.hpp:377</a></div></div>
+<div class="ttc" id="_assert_8hpp_xhtml_a91c4dfde57907d7698c7531785690a7f"><div class="ttname"><a href="_assert_8hpp.xhtml#a91c4dfde57907d7698c7531785690a7f">ARMNN_ASSERT_MSG</a></div><div class="ttdeci">#define ARMNN_ASSERT_MSG(COND, MSG)</div><div class="ttdef"><b>Definition:</b> <a href="_assert_8hpp_source.xhtml#l00015">Assert.hpp:15</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_a961bbfe1db71a848eff5a1f0ab775718ab1897515d548a960afe49ecf66a29021"><div class="ttname"><a href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718ab1897515d548a960afe49ecf66a29021">armnn::PoolingAlgorithm::Average</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling2d_descriptor_xhtml_a6089e1ca91914015777ea780a513131a"><div class="ttname"><a href="structarmnn_1_1_pooling2d_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">armnn::Pooling2dDescriptor::m_DataLayout</a></div><div class="ttdeci">DataLayout m_DataLayout</div><div class="ttdoc">The data layout to be used (NCHW, NHWC). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00395">Descriptors.hpp:395</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling2d_descriptor_xhtml_a0031997bf43bd2747656c31e4977793a"><div class="ttname"><a href="structarmnn_1_1_pooling2d_descriptor.xhtml#a0031997bf43bd2747656c31e4977793a">armnn::Pooling2dDescriptor::m_PoolType</a></div><div class="ttdeci">PoolingAlgorithm m_PoolType</div><div class="ttdoc">The pooling algorithm to use (Max. Average, L2). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00373">Descriptors.hpp:373</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_a3888429b6ebc79f9a7df549e5e4d9a2faad301514192636ad34210adce598a45a"><div class="ttname"><a href="namespacearmnn.xhtml#a3888429b6ebc79f9a7df549e5e4d9a2faad301514192636ad34210adce598a45a">armnn::PaddingMethod::IgnoreValue</a></div><div class="ttdoc">The padding fields count, but are ignored. </div></div>
+<div class="ttc" id="structarmnn_1_1_pooling2d_descriptor_xhtml_affb5b68b3eba3ed45a06c7cde7781962"><div class="ttname"><a href="structarmnn_1_1_pooling2d_descriptor.xhtml#affb5b68b3eba3ed45a06c7cde7781962">armnn::Pooling2dDescriptor::m_OutputShapeRounding</a></div><div class="ttdeci">OutputShapeRounding m_OutputShapeRounding</div><div class="ttdoc">The rounding method for the output shape. (Floor, Ceiling). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00391">Descriptors.hpp:391</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_a961bbfe1db71a848eff5a1f0ab775718a6a061313d22e51e0f25b7cd4dc065233"><div class="ttname"><a href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718a6a061313d22e51e0f25b7cd4dc065233">armnn::PoolingAlgorithm::Max</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_a961bbfe1db71a848eff5a1f0ab775718a7e6aa2d53f6ee2b1a34b017fa403cb76"><div class="ttname"><a href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718a7e6aa2d53f6ee2b1a34b017fa403cb76">armnn::PoolingAlgorithm::L2</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f"><div class="ttname"><a href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">armnn::DataLayout::NCHW</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling2d_descriptor_xhtml"><div class="ttname"><a href="structarmnn_1_1_pooling2d_descriptor.xhtml">armnn::Pooling2dDescriptor</a></div><div class="ttdoc">A Pooling2dDescriptor for the Pooling2dLayer. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00339">Descriptors.hpp:339</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling2d_descriptor_xhtml_ac1fe174bbadfb39a2b636940c2e647c8"><div class="ttname"><a href="structarmnn_1_1_pooling2d_descriptor.xhtml#ac1fe174bbadfb39a2b636940c2e647c8">armnn::Pooling2dDescriptor::m_StrideY</a></div><div class="ttdeci">uint32_t m_StrideY</div><div class="ttdoc">Stride value when proceeding through input for the height dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00389">Descriptors.hpp:389</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51"><div class="ttname"><a href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">armnn::DataLayout::NHWC</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a1467999b659959577bb2efc8fc62e15a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1467999b659959577bb2efc8fc62e15a">&#9670;&nbsp;</a></span>GetPooling3dDescriptor()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structarmnn_1_1_pooling3d_descriptor.xhtml">armnn::Pooling3dDescriptor</a> GetPooling3dDescriptor </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="namespacearmnn_deserializer.xhtml#a6713b8a83104db317823b5367b195d2e">Pooling3dDescriptor</a>&#160;</td>
+ <td class="paramname"><em>pooling3dDescriptor</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int&#160;</td>
+ <td class="paramname"><em>layerIndex</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l02362">2362</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_assert_8hpp_source.xhtml#l00015">ARMNN_ASSERT_MSG</a>, <a class="el" href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718ab1897515d548a960afe49ecf66a29021">armnn::Average</a>, <a class="el" href="namespacearmnn.xhtml#adf2e5515c4c36a3e7e46bb8b83c6754ea3237fbc8204064c106cb9080088a17cb">armnn::Ceiling</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00181">CHECK_LAYERS</a>, <a class="el" href="_verification_helpers_8hpp_source.xhtml#l00032">CHECK_VALID_SIZE</a>, <a class="el" href="namespacearmnn.xhtml#a3888429b6ebc79f9a7df549e5e4d9a2fa843f2812f595e7ec7c5036e89fde02d6">armnn::Exclude</a>, <a class="el" href="namespacearmnn.xhtml#adf2e5515c4c36a3e7e46bb8b83c6754eaf3f6d0343d56ce88ce7958170ed05cb3">armnn::Floor</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00765">IDeserializer::DeserializerImpl::GetInputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00432">IDeserializer::DeserializerImpl::GetLayerName()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00782">IDeserializer::DeserializerImpl::GetOutputs()</a>, <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml#a80ac4eda2e7f2757ec9dd96fc96dbd16">IConnectableLayer::GetOutputSlot()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02267">IDeserializer::DeserializerImpl::GetPooling2dDescriptor()</a>, <a class="el" href="_ignore_unused_8hpp_source.xhtml#l00014">armnn::IgnoreUnused()</a>, <a class="el" href="namespacearmnn.xhtml#a3888429b6ebc79f9a7df549e5e4d9a2faad301514192636ad34210adce598a45a">armnn::IgnoreValue</a>, <a class="el" href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718a7e6aa2d53f6ee2b1a34b017fa403cb76">armnn::L2</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00471">Pooling3dDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00467">Pooling3dDescriptor::m_OutputShapeRounding</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00453">Pooling3dDescriptor::m_PadBack</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00449">Pooling3dDescriptor::m_PadBottom</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00469">Pooling3dDescriptor::m_PaddingMethod</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00451">Pooling3dDescriptor::m_PadFront</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00443">Pooling3dDescriptor::m_PadLeft</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00445">Pooling3dDescriptor::m_PadRight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00447">Pooling3dDescriptor::m_PadTop</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00459">Pooling3dDescriptor::m_PoolDepth</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00457">Pooling3dDescriptor::m_PoolHeight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00441">Pooling3dDescriptor::m_PoolType</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00455">Pooling3dDescriptor::m_PoolWidth</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00461">Pooling3dDescriptor::m_StrideX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00463">Pooling3dDescriptor::m_StrideY</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00465">Pooling3dDescriptor::m_StrideZ</a>, <a class="el" href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718a6a061313d22e51e0f25b7cd4dc065233">armnn::Max</a>, <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a884e0167ebf9bbe6cfd6ca5ab97ab015">armnn::NCDHW</a>, <a class="el" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a4dd0194b114cbf51da5b3a72569863ef">armnn::NDHWC</a>, <a class="el" href="classarmnn_1_1_i_output_slot.xhtml#a5ee4a6c9a2481245487b1b1a70d20fd0">IOutputSlot::SetTensorInfo()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00616">armnnDeserializer::ToTensorInfo()</a>.</p>
+<div class="fragment"><div class="line"><a name="l02364"></a><span class="lineno"> 2364</span>&#160;{</div><div class="line"><a name="l02365"></a><span class="lineno"> 2365</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(layerIndex);</div><div class="line"><a name="l02366"></a><span class="lineno"> 2366</span>&#160; <a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml">armnn::Pooling3dDescriptor</a> desc;</div><div class="line"><a name="l02367"></a><span class="lineno"> 2367</span>&#160;</div><div class="line"><a name="l02368"></a><span class="lineno"> 2368</span>&#160; <span class="keywordflow">switch</span> (pooling3dDesc-&gt;poolType())</div><div class="line"><a name="l02369"></a><span class="lineno"> 2369</span>&#160; {</div><div class="line"><a name="l02370"></a><span class="lineno"> 2370</span>&#160; <span class="keywordflow">case</span> PoolingAlgorithm_Average:</div><div class="line"><a name="l02371"></a><span class="lineno"> 2371</span>&#160; {</div><div class="line"><a name="l02372"></a><span class="lineno"> 2372</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#a0031997bf43bd2747656c31e4977793a">m_PoolType</a> = <a class="code" href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718ab1897515d548a960afe49ecf66a29021">armnn::PoolingAlgorithm::Average</a>;</div><div class="line"><a name="l02373"></a><span class="lineno"> 2373</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02374"></a><span class="lineno"> 2374</span>&#160; }</div><div class="line"><a name="l02375"></a><span class="lineno"> 2375</span>&#160; <span class="keywordflow">case</span> PoolingAlgorithm_Max:</div><div class="line"><a name="l02376"></a><span class="lineno"> 2376</span>&#160; {</div><div class="line"><a name="l02377"></a><span class="lineno"> 2377</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#a0031997bf43bd2747656c31e4977793a">m_PoolType</a> = <a class="code" href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718a6a061313d22e51e0f25b7cd4dc065233">armnn::PoolingAlgorithm::Max</a>;</div><div class="line"><a name="l02378"></a><span class="lineno"> 2378</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02379"></a><span class="lineno"> 2379</span>&#160; }</div><div class="line"><a name="l02380"></a><span class="lineno"> 2380</span>&#160; <span class="keywordflow">case</span> PoolingAlgorithm_L2:</div><div class="line"><a name="l02381"></a><span class="lineno"> 2381</span>&#160; {</div><div class="line"><a name="l02382"></a><span class="lineno"> 2382</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#a0031997bf43bd2747656c31e4977793a">m_PoolType</a> = <a class="code" href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718a7e6aa2d53f6ee2b1a34b017fa403cb76">armnn::PoolingAlgorithm::L2</a>;</div><div class="line"><a name="l02383"></a><span class="lineno"> 2383</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02384"></a><span class="lineno"> 2384</span>&#160; }</div><div class="line"><a name="l02385"></a><span class="lineno"> 2385</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02386"></a><span class="lineno"> 2386</span>&#160; {</div><div class="line"><a name="l02387"></a><span class="lineno"> 2387</span>&#160; <a class="code" href="_assert_8hpp.xhtml#a91c4dfde57907d7698c7531785690a7f">ARMNN_ASSERT_MSG</a>(<span class="keyword">false</span>, <span class="stringliteral">&quot;Unsupported pooling algorithm&quot;</span>);</div><div class="line"><a name="l02388"></a><span class="lineno"> 2388</span>&#160; }</div><div class="line"><a name="l02389"></a><span class="lineno"> 2389</span>&#160; }</div><div class="line"><a name="l02390"></a><span class="lineno"> 2390</span>&#160;</div><div class="line"><a name="l02391"></a><span class="lineno"> 2391</span>&#160; <span class="keywordflow">switch</span> (pooling3dDesc-&gt;outputShapeRounding())</div><div class="line"><a name="l02392"></a><span class="lineno"> 2392</span>&#160; {</div><div class="line"><a name="l02393"></a><span class="lineno"> 2393</span>&#160; <span class="keywordflow">case</span> OutputShapeRounding_Floor:</div><div class="line"><a name="l02394"></a><span class="lineno"> 2394</span>&#160; {</div><div class="line"><a name="l02395"></a><span class="lineno"> 2395</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#affb5b68b3eba3ed45a06c7cde7781962">m_OutputShapeRounding</a> = <a class="code" href="namespacearmnn.xhtml#adf2e5515c4c36a3e7e46bb8b83c6754eaf3f6d0343d56ce88ce7958170ed05cb3">armnn::OutputShapeRounding::Floor</a>;</div><div class="line"><a name="l02396"></a><span class="lineno"> 2396</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02397"></a><span class="lineno"> 2397</span>&#160; }</div><div class="line"><a name="l02398"></a><span class="lineno"> 2398</span>&#160; <span class="keywordflow">case</span> OutputShapeRounding_Ceiling:</div><div class="line"><a name="l02399"></a><span class="lineno"> 2399</span>&#160; {</div><div class="line"><a name="l02400"></a><span class="lineno"> 2400</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#affb5b68b3eba3ed45a06c7cde7781962">m_OutputShapeRounding</a> = <a class="code" href="namespacearmnn.xhtml#adf2e5515c4c36a3e7e46bb8b83c6754ea3237fbc8204064c106cb9080088a17cb">armnn::OutputShapeRounding::Ceiling</a>;</div><div class="line"><a name="l02401"></a><span class="lineno"> 2401</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02402"></a><span class="lineno"> 2402</span>&#160; }</div><div class="line"><a name="l02403"></a><span class="lineno"> 2403</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02404"></a><span class="lineno"> 2404</span>&#160; {</div><div class="line"><a name="l02405"></a><span class="lineno"> 2405</span>&#160; <a class="code" href="_assert_8hpp.xhtml#a91c4dfde57907d7698c7531785690a7f">ARMNN_ASSERT_MSG</a>(<span class="keyword">false</span>, <span class="stringliteral">&quot;Unsupported output shape rounding&quot;</span>);</div><div class="line"><a name="l02406"></a><span class="lineno"> 2406</span>&#160; }</div><div class="line"><a name="l02407"></a><span class="lineno"> 2407</span>&#160; }</div><div class="line"><a name="l02408"></a><span class="lineno"> 2408</span>&#160;</div><div class="line"><a name="l02409"></a><span class="lineno"> 2409</span>&#160; <span class="keywordflow">switch</span> (pooling3dDesc-&gt;paddingMethod())</div><div class="line"><a name="l02410"></a><span class="lineno"> 2410</span>&#160; {</div><div class="line"><a name="l02411"></a><span class="lineno"> 2411</span>&#160; <span class="keywordflow">case</span> PaddingMethod_Exclude:</div><div class="line"><a name="l02412"></a><span class="lineno"> 2412</span>&#160; {</div><div class="line"><a name="l02413"></a><span class="lineno"> 2413</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#a8c29d6ea9b4186d69aad5961c910939c">m_PaddingMethod</a> = <a class="code" href="namespacearmnn.xhtml#a3888429b6ebc79f9a7df549e5e4d9a2fa843f2812f595e7ec7c5036e89fde02d6">armnn::PaddingMethod::Exclude</a>;</div><div class="line"><a name="l02414"></a><span class="lineno"> 2414</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02415"></a><span class="lineno"> 2415</span>&#160; }</div><div class="line"><a name="l02416"></a><span class="lineno"> 2416</span>&#160; <span class="keywordflow">case</span> PaddingMethod_IgnoreValue:</div><div class="line"><a name="l02417"></a><span class="lineno"> 2417</span>&#160; {</div><div class="line"><a name="l02418"></a><span class="lineno"> 2418</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#a8c29d6ea9b4186d69aad5961c910939c">m_PaddingMethod</a> = <a class="code" href="namespacearmnn.xhtml#a3888429b6ebc79f9a7df549e5e4d9a2faad301514192636ad34210adce598a45a">armnn::PaddingMethod::IgnoreValue</a>;</div><div class="line"><a name="l02419"></a><span class="lineno"> 2419</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02420"></a><span class="lineno"> 2420</span>&#160; }</div><div class="line"><a name="l02421"></a><span class="lineno"> 2421</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02422"></a><span class="lineno"> 2422</span>&#160; {</div><div class="line"><a name="l02423"></a><span class="lineno"> 2423</span>&#160; <a class="code" href="_assert_8hpp.xhtml#a91c4dfde57907d7698c7531785690a7f">ARMNN_ASSERT_MSG</a>(<span class="keyword">false</span>, <span class="stringliteral">&quot;Unsupported padding method&quot;</span>);</div><div class="line"><a name="l02424"></a><span class="lineno"> 2424</span>&#160; }</div><div class="line"><a name="l02425"></a><span class="lineno"> 2425</span>&#160; }</div><div class="line"><a name="l02426"></a><span class="lineno"> 2426</span>&#160;</div><div class="line"><a name="l02427"></a><span class="lineno"> 2427</span>&#160; <span class="keywordflow">switch</span> (pooling3dDesc-&gt;dataLayout())</div><div class="line"><a name="l02428"></a><span class="lineno"> 2428</span>&#160; {</div><div class="line"><a name="l02429"></a><span class="lineno"> 2429</span>&#160; <span class="keywordflow">case</span> DataLayout_NCDHW:</div><div class="line"><a name="l02430"></a><span class="lineno"> 2430</span>&#160; {</div><div class="line"><a name="l02431"></a><span class="lineno"> 2431</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">m_DataLayout</a> = <a class="code" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a884e0167ebf9bbe6cfd6ca5ab97ab015">armnn::DataLayout::NCDHW</a>;</div><div class="line"><a name="l02432"></a><span class="lineno"> 2432</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02433"></a><span class="lineno"> 2433</span>&#160; }</div><div class="line"><a name="l02434"></a><span class="lineno"> 2434</span>&#160; <span class="keywordflow">case</span> DataLayout_NDHWC:</div><div class="line"><a name="l02435"></a><span class="lineno"> 2435</span>&#160; {</div><div class="line"><a name="l02436"></a><span class="lineno"> 2436</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">m_DataLayout</a> = <a class="code" href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a4dd0194b114cbf51da5b3a72569863ef">armnn::DataLayout::NDHWC</a>;</div><div class="line"><a name="l02437"></a><span class="lineno"> 2437</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02438"></a><span class="lineno"> 2438</span>&#160; }</div><div class="line"><a name="l02439"></a><span class="lineno"> 2439</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02440"></a><span class="lineno"> 2440</span>&#160; {</div><div class="line"><a name="l02441"></a><span class="lineno"> 2441</span>&#160; <a class="code" href="_assert_8hpp.xhtml#a91c4dfde57907d7698c7531785690a7f">ARMNN_ASSERT_MSG</a>(<span class="keyword">false</span>, <span class="stringliteral">&quot;Unsupported data layout&quot;</span>);</div><div class="line"><a name="l02442"></a><span class="lineno"> 2442</span>&#160; }</div><div class="line"><a name="l02443"></a><span class="lineno"> 2443</span>&#160; }</div><div class="line"><a name="l02444"></a><span class="lineno"> 2444</span>&#160;</div><div class="line"><a name="l02445"></a><span class="lineno"> 2445</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#a002bc30e590d78cbb4f4d12171055ca7">m_PadRight</a> = pooling3dDesc-&gt;padRight();</div><div class="line"><a name="l02446"></a><span class="lineno"> 2446</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#ac18546ebbebbb32fe0a03baa9bf2c600">m_PadLeft</a> = pooling3dDesc-&gt;padLeft();</div><div class="line"><a name="l02447"></a><span class="lineno"> 2447</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#aa9e49717ebdb741e8c767741647fc618">m_PadBottom</a> = pooling3dDesc-&gt;padBottom();</div><div class="line"><a name="l02448"></a><span class="lineno"> 2448</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#a56b51f56cef50cdfa554258eecdab046">m_PadTop</a> = pooling3dDesc-&gt;padTop();</div><div class="line"><a name="l02449"></a><span class="lineno"> 2449</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#a83ca447892f460dabaa2f87d3dc3db61">m_PadFront</a> = pooling3dDesc-&gt;padFront();</div><div class="line"><a name="l02450"></a><span class="lineno"> 2450</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#a11d5c25face9b54e90f79ee8bdc1d0fb">m_PadBack</a> = pooling3dDesc-&gt;padBack();</div><div class="line"><a name="l02451"></a><span class="lineno"> 2451</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#afe6a3377c4531315354def9023c8fdda">m_StrideX</a> = pooling3dDesc-&gt;strideX();</div><div class="line"><a name="l02452"></a><span class="lineno"> 2452</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#ac1fe174bbadfb39a2b636940c2e647c8">m_StrideY</a> = pooling3dDesc-&gt;strideY();</div><div class="line"><a name="l02453"></a><span class="lineno"> 2453</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#a5164336f6a1b15be0d434a6bbf7289da">m_StrideZ</a> = pooling3dDesc-&gt;strideZ();</div><div class="line"><a name="l02454"></a><span class="lineno"> 2454</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#a6d8fb685cc1ff224f25aa127fcf62c86">m_PoolWidth</a> = pooling3dDesc-&gt;poolWidth();</div><div class="line"><a name="l02455"></a><span class="lineno"> 2455</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#a5699e8606c37d18c03910b242cd1b010">m_PoolHeight</a> = pooling3dDesc-&gt;poolHeight();</div><div class="line"><a name="l02456"></a><span class="lineno"> 2456</span>&#160; desc.<a class="code" href="structarmnn_1_1_pooling3d_descriptor.xhtml#acc978b36fd5d949bc781d7638e6e08b9">m_PoolDepth</a> = pooling3dDesc-&gt;poolDepth();</div><div class="line"><a name="l02457"></a><span class="lineno"> 2457</span>&#160;</div><div class="line"><a name="l02458"></a><span class="lineno"> 2458</span>&#160; <span class="keywordflow">return</span> desc;</div><div class="line"><a name="l02459"></a><span class="lineno"> 2459</span>&#160;}</div><div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_a0031997bf43bd2747656c31e4977793a"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#a0031997bf43bd2747656c31e4977793a">armnn::Pooling3dDescriptor::m_PoolType</a></div><div class="ttdeci">PoolingAlgorithm m_PoolType</div><div class="ttdoc">The pooling algorithm to use (Max. Average, L2). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00441">Descriptors.hpp:441</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_ac1fe174bbadfb39a2b636940c2e647c8"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#ac1fe174bbadfb39a2b636940c2e647c8">armnn::Pooling3dDescriptor::m_StrideY</a></div><div class="ttdeci">uint32_t m_StrideY</div><div class="ttdoc">Stride value when proceeding through input for the height dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00463">Descriptors.hpp:463</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_a6d8fb685cc1ff224f25aa127fcf62c86"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#a6d8fb685cc1ff224f25aa127fcf62c86">armnn::Pooling3dDescriptor::m_PoolWidth</a></div><div class="ttdeci">uint32_t m_PoolWidth</div><div class="ttdoc">Pooling width value. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00455">Descriptors.hpp:455</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_adf2e5515c4c36a3e7e46bb8b83c6754ea3237fbc8204064c106cb9080088a17cb"><div class="ttname"><a href="namespacearmnn.xhtml#adf2e5515c4c36a3e7e46bb8b83c6754ea3237fbc8204064c106cb9080088a17cb">armnn::OutputShapeRounding::Ceiling</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_acc978b36fd5d949bc781d7638e6e08b9"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#acc978b36fd5d949bc781d7638e6e08b9">armnn::Pooling3dDescriptor::m_PoolDepth</a></div><div class="ttdeci">uint32_t m_PoolDepth</div><div class="ttdoc">Pooling depth value. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00459">Descriptors.hpp:459</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_adf2e5515c4c36a3e7e46bb8b83c6754eaf3f6d0343d56ce88ce7958170ed05cb3"><div class="ttname"><a href="namespacearmnn.xhtml#adf2e5515c4c36a3e7e46bb8b83c6754eaf3f6d0343d56ce88ce7958170ed05cb3">armnn::OutputShapeRounding::Floor</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_a3888429b6ebc79f9a7df549e5e4d9a2fa843f2812f595e7ec7c5036e89fde02d6"><div class="ttname"><a href="namespacearmnn.xhtml#a3888429b6ebc79f9a7df549e5e4d9a2fa843f2812f595e7ec7c5036e89fde02d6">armnn::PaddingMethod::Exclude</a></div><div class="ttdoc">The padding fields don&amp;#39;t count and are ignored. </div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_a002bc30e590d78cbb4f4d12171055ca7"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#a002bc30e590d78cbb4f4d12171055ca7">armnn::Pooling3dDescriptor::m_PadRight</a></div><div class="ttdeci">uint32_t m_PadRight</div><div class="ttdoc">Padding right value in the width dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00445">Descriptors.hpp:445</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_a6089e1ca91914015777ea780a513131a"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#a6089e1ca91914015777ea780a513131a">armnn::Pooling3dDescriptor::m_DataLayout</a></div><div class="ttdeci">DataLayout m_DataLayout</div><div class="ttdoc">The data layout to be used (NCDHW, NDHWC). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00471">Descriptors.hpp:471</a></div></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>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_a83ca447892f460dabaa2f87d3dc3db61"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#a83ca447892f460dabaa2f87d3dc3db61">armnn::Pooling3dDescriptor::m_PadFront</a></div><div class="ttdeci">uint32_t m_PadFront</div><div class="ttdoc">Padding front value in the depth dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00451">Descriptors.hpp:451</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_a5699e8606c37d18c03910b242cd1b010"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#a5699e8606c37d18c03910b242cd1b010">armnn::Pooling3dDescriptor::m_PoolHeight</a></div><div class="ttdeci">uint32_t m_PoolHeight</div><div class="ttdoc">Pooling height value. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00457">Descriptors.hpp:457</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_a11d5c25face9b54e90f79ee8bdc1d0fb"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#a11d5c25face9b54e90f79ee8bdc1d0fb">armnn::Pooling3dDescriptor::m_PadBack</a></div><div class="ttdeci">uint32_t m_PadBack</div><div class="ttdoc">Padding back value in the depth dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00453">Descriptors.hpp:453</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0a884e0167ebf9bbe6cfd6ca5ab97ab015"><div class="ttname"><a href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a884e0167ebf9bbe6cfd6ca5ab97ab015">armnn::DataLayout::NCDHW</a></div></div>
+<div class="ttc" id="_assert_8hpp_xhtml_a91c4dfde57907d7698c7531785690a7f"><div class="ttname"><a href="_assert_8hpp.xhtml#a91c4dfde57907d7698c7531785690a7f">ARMNN_ASSERT_MSG</a></div><div class="ttdeci">#define ARMNN_ASSERT_MSG(COND, MSG)</div><div class="ttdef"><b>Definition:</b> <a href="_assert_8hpp_source.xhtml#l00015">Assert.hpp:15</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_affb5b68b3eba3ed45a06c7cde7781962"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#affb5b68b3eba3ed45a06c7cde7781962">armnn::Pooling3dDescriptor::m_OutputShapeRounding</a></div><div class="ttdeci">OutputShapeRounding m_OutputShapeRounding</div><div class="ttdoc">The rounding method for the output shape. (Floor, Ceiling). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00467">Descriptors.hpp:467</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_aa9e49717ebdb741e8c767741647fc618"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#aa9e49717ebdb741e8c767741647fc618">armnn::Pooling3dDescriptor::m_PadBottom</a></div><div class="ttdeci">uint32_t m_PadBottom</div><div class="ttdoc">Padding bottom value in the height dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00449">Descriptors.hpp:449</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_a961bbfe1db71a848eff5a1f0ab775718ab1897515d548a960afe49ecf66a29021"><div class="ttname"><a href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718ab1897515d548a960afe49ecf66a29021">armnn::PoolingAlgorithm::Average</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml">armnn::Pooling3dDescriptor</a></div><div class="ttdoc">A Pooling3dDescriptor for the Pooling3dLayer. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00399">Descriptors.hpp:399</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_a5164336f6a1b15be0d434a6bbf7289da"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#a5164336f6a1b15be0d434a6bbf7289da">armnn::Pooling3dDescriptor::m_StrideZ</a></div><div class="ttdeci">uint32_t m_StrideZ</div><div class="ttdoc">Stride value when proceeding through input for the depth dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00465">Descriptors.hpp:465</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_ac18546ebbebbb32fe0a03baa9bf2c600"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#ac18546ebbebbb32fe0a03baa9bf2c600">armnn::Pooling3dDescriptor::m_PadLeft</a></div><div class="ttdeci">uint32_t m_PadLeft</div><div class="ttdoc">Padding left value in the width dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00443">Descriptors.hpp:443</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_a3888429b6ebc79f9a7df549e5e4d9a2faad301514192636ad34210adce598a45a"><div class="ttname"><a href="namespacearmnn.xhtml#a3888429b6ebc79f9a7df549e5e4d9a2faad301514192636ad34210adce598a45a">armnn::PaddingMethod::IgnoreValue</a></div><div class="ttdoc">The padding fields count, but are ignored. </div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_a56b51f56cef50cdfa554258eecdab046"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#a56b51f56cef50cdfa554258eecdab046">armnn::Pooling3dDescriptor::m_PadTop</a></div><div class="ttdeci">uint32_t m_PadTop</div><div class="ttdoc">Padding top value in the height dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00447">Descriptors.hpp:447</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_a961bbfe1db71a848eff5a1f0ab775718a6a061313d22e51e0f25b7cd4dc065233"><div class="ttname"><a href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718a6a061313d22e51e0f25b7cd4dc065233">armnn::PoolingAlgorithm::Max</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_a961bbfe1db71a848eff5a1f0ab775718a7e6aa2d53f6ee2b1a34b017fa403cb76"><div class="ttname"><a href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718a7e6aa2d53f6ee2b1a34b017fa403cb76">armnn::PoolingAlgorithm::L2</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_afe6a3377c4531315354def9023c8fdda"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#afe6a3377c4531315354def9023c8fdda">armnn::Pooling3dDescriptor::m_StrideX</a></div><div class="ttdeci">uint32_t m_StrideX</div><div class="ttdoc">Stride value when proceeding through input for the width dimension. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00461">Descriptors.hpp:461</a></div></div>
+<div class="ttc" id="structarmnn_1_1_pooling3d_descriptor_xhtml_a8c29d6ea9b4186d69aad5961c910939c"><div class="ttname"><a href="structarmnn_1_1_pooling3d_descriptor.xhtml#a8c29d6ea9b4186d69aad5961c910939c">armnn::Pooling3dDescriptor::m_PaddingMethod</a></div><div class="ttdeci">PaddingMethod m_PaddingMethod</div><div class="ttdoc">The padding method to be used. (Exclude, IgnoreValue). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l00469">Descriptors.hpp:469</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0a4dd0194b114cbf51da5b3a72569863ef"><div class="ttname"><a href="namespacearmnn.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a4dd0194b114cbf51da5b3a72569863ef">armnn::DataLayout::NDHWC</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a57e32d26ac8c87b118e77da920481123"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a57e32d26ac8c87b118e77da920481123">&#9670;&nbsp;</a></span>GetQLstmDescriptor()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structarmnn_1_1_q_lstm_descriptor.xhtml">armnn::QLstmDescriptor</a> GetQLstmDescriptor </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="namespacearmnn_deserializer.xhtml#a5cd994198e775b8e919853fd0da5b9c1">QLstmDescriptorPtr</a>&#160;</td>
+ <td class="paramname"><em>qLstmDescriptorPtr</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l03281">3281</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_deserializer_8cpp_source.xhtml#l00181">CHECK_LAYERS</a>, <a class="el" href="_exceptions_8hpp_source.xhtml#l00203">CHECK_LOCATION</a>, <a class="el" href="_verification_helpers_8hpp_source.xhtml#l00032">CHECK_VALID_SIZE</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00765">IDeserializer::DeserializerImpl::GetInputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00432">IDeserializer::DeserializerImpl::GetLayerName()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00782">IDeserializer::DeserializerImpl::GetOutputs()</a>, <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml#a80ac4eda2e7f2757ec9dd96fc96dbd16">IConnectableLayer::GetOutputSlot()</a>, <a class="el" href="_tensor_8hpp_source.xhtml#l00191">TensorInfo::GetShape()</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01428">TransposeConvolution2dDescriptor::m_BiasEnabled</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.xhtml#l00045">QuantizedLstmInputParams::m_CellBias</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00053">LstmInputParams::m_CellBias</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01361">QLstmDescriptor::m_CellClip</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01377">QLstmDescriptor::m_CellIntermediateScale</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00059">LstmInputParams::m_CellLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00049">LstmInputParams::m_CellToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00048">LstmInputParams::m_CellToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00050">LstmInputParams::m_CellToOutputWeights</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01365">QLstmDescriptor::m_CifgEnabled</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01430">TransposeConvolution2dDescriptor::m_DataLayout</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.xhtml#l00044">QuantizedLstmInputParams::m_ForgetGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00052">LstmInputParams::m_ForgetGateBias</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01375">QLstmDescriptor::m_ForgetIntermediateScale</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00058">LstmInputParams::m_ForgetLayerNormWeights</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01383">QLstmDescriptor::m_HiddenStateScale</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01381">QLstmDescriptor::m_HiddenStateZeroPoint</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.xhtml#l00043">QuantizedLstmInputParams::m_InputGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00051">LstmInputParams::m_InputGateBias</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01373">QLstmDescriptor::m_InputIntermediateScale</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00057">LstmInputParams::m_InputLayerNormWeights</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.xhtml#l00035">QuantizedLstmInputParams::m_InputToCellWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00042">LstmInputParams::m_InputToCellWeights</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.xhtml#l00034">QuantizedLstmInputParams::m_InputToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00041">LstmInputParams::m_InputToForgetWeights</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.xhtml#l00033">QuantizedLstmInputParams::m_InputToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00040">LstmInputParams::m_InputToInputWeights</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.xhtml#l00036">QuantizedLstmInputParams::m_InputToOutputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00043">LstmInputParams::m_InputToOutputWeights</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01371">QLstmDescriptor::m_LayerNormEnabled</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01244">StandInDescriptor::m_NumInputs</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01246">StandInDescriptor::m_NumOutputs</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.xhtml#l00046">QuantizedLstmInputParams::m_OutputGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00054">LstmInputParams::m_OutputGateBias</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01379">QLstmDescriptor::m_OutputIntermediateScale</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00060">LstmInputParams::m_OutputLayerNormWeights</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01422">TransposeConvolution2dDescriptor::m_PadBottom</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01416">TransposeConvolution2dDescriptor::m_PadLeft</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01418">TransposeConvolution2dDescriptor::m_PadRight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01420">TransposeConvolution2dDescriptor::m_PadTop</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01367">QLstmDescriptor::m_PeepholeEnabled</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00056">LstmInputParams::m_ProjectionBias</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01363">QLstmDescriptor::m_ProjectionClip</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01369">QLstmDescriptor::m_ProjectionEnabled</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00055">LstmInputParams::m_ProjectionWeights</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.xhtml#l00040">QuantizedLstmInputParams::m_RecurrentToCellWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00046">LstmInputParams::m_RecurrentToCellWeights</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.xhtml#l00039">QuantizedLstmInputParams::m_RecurrentToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00045">LstmInputParams::m_RecurrentToForgetWeights</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.xhtml#l00038">QuantizedLstmInputParams::m_RecurrentToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00044">LstmInputParams::m_RecurrentToInputWeights</a>, <a class="el" href="_quantized_lstm_params_8hpp_source.xhtml#l00041">QuantizedLstmInputParams::m_RecurrentToOutputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00047">LstmInputParams::m_RecurrentToOutputWeights</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01424">TransposeConvolution2dDescriptor::m_StrideX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01426">TransposeConvolution2dDescriptor::m_StrideY</a>, <a class="el" href="classarmnn_1_1_i_output_slot.xhtml#a5ee4a6c9a2481245487b1b1a70d20fd0">IOutputSlot::SetTensorInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00722">armnnDeserializer::ToConstTensor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00454">armnnDeserializer::ToDataLayout()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00616">armnnDeserializer::ToTensorInfo()</a>.</p>
+<div class="fragment"><div class="line"><a name="l03282"></a><span class="lineno"> 3282</span>&#160;{</div><div class="line"><a name="l03283"></a><span class="lineno"> 3283</span>&#160; <a class="code" href="structarmnn_1_1_q_lstm_descriptor.xhtml">armnn::QLstmDescriptor</a> desc;</div><div class="line"><a name="l03284"></a><span class="lineno"> 3284</span>&#160;</div><div class="line"><a name="l03285"></a><span class="lineno"> 3285</span>&#160; desc.<a class="code" href="structarmnn_1_1_q_lstm_descriptor.xhtml#ad474e5c51a0b194ef32e812b86c0cbdb">m_CifgEnabled</a> = qLstmDescriptor-&gt;cifgEnabled();</div><div class="line"><a name="l03286"></a><span class="lineno"> 3286</span>&#160; desc.<a class="code" href="structarmnn_1_1_q_lstm_descriptor.xhtml#a2837b4396f20c956952d1a7286cab5f8">m_PeepholeEnabled</a> = qLstmDescriptor-&gt;peepholeEnabled();</div><div class="line"><a name="l03287"></a><span class="lineno"> 3287</span>&#160; desc.<a class="code" href="structarmnn_1_1_q_lstm_descriptor.xhtml#a6c9de81fc65b3c4924cab11907075a17">m_ProjectionEnabled</a> = qLstmDescriptor-&gt;projectionEnabled();</div><div class="line"><a name="l03288"></a><span class="lineno"> 3288</span>&#160; desc.<a class="code" href="structarmnn_1_1_q_lstm_descriptor.xhtml#a4a8ec49f130084445d44297549254780">m_LayerNormEnabled</a> = qLstmDescriptor-&gt;layerNormEnabled();</div><div class="line"><a name="l03289"></a><span class="lineno"> 3289</span>&#160;</div><div class="line"><a name="l03290"></a><span class="lineno"> 3290</span>&#160; desc.<a class="code" href="structarmnn_1_1_q_lstm_descriptor.xhtml#ac81fb0e66dc623dc37c77f219f53a6d3">m_CellClip</a> = qLstmDescriptor-&gt;cellClip();</div><div class="line"><a name="l03291"></a><span class="lineno"> 3291</span>&#160; desc.<a class="code" href="structarmnn_1_1_q_lstm_descriptor.xhtml#aa6a518b65088f34803b3214334bdff61">m_ProjectionClip</a> = qLstmDescriptor-&gt;projectionClip();</div><div class="line"><a name="l03292"></a><span class="lineno"> 3292</span>&#160;</div><div class="line"><a name="l03293"></a><span class="lineno"> 3293</span>&#160; desc.<a class="code" href="structarmnn_1_1_q_lstm_descriptor.xhtml#a09e1f097944f61cc901240f9300364cf">m_InputIntermediateScale</a> = qLstmDescriptor-&gt;inputIntermediateScale();</div><div class="line"><a name="l03294"></a><span class="lineno"> 3294</span>&#160; desc.<a class="code" href="structarmnn_1_1_q_lstm_descriptor.xhtml#afec7f36158448f723b426a9527acb189">m_ForgetIntermediateScale</a> = qLstmDescriptor-&gt;forgetIntermediateScale();</div><div class="line"><a name="l03295"></a><span class="lineno"> 3295</span>&#160; desc.<a class="code" href="structarmnn_1_1_q_lstm_descriptor.xhtml#a0477ee1b44ace6090119178eea78cb0b">m_CellIntermediateScale</a> = qLstmDescriptor-&gt;cellIntermediateScale();</div><div class="line"><a name="l03296"></a><span class="lineno"> 3296</span>&#160; desc.<a class="code" href="structarmnn_1_1_q_lstm_descriptor.xhtml#aa43409f9b457352c95c89f20ce5d844d">m_OutputIntermediateScale</a> = qLstmDescriptor-&gt;outputIntermediateScale();</div><div class="line"><a name="l03297"></a><span class="lineno"> 3297</span>&#160;</div><div class="line"><a name="l03298"></a><span class="lineno"> 3298</span>&#160; desc.<a class="code" href="structarmnn_1_1_q_lstm_descriptor.xhtml#af8f724af7210b52529216feefa993c98">m_HiddenStateScale</a> = qLstmDescriptor-&gt;hiddenStateScale();</div><div class="line"><a name="l03299"></a><span class="lineno"> 3299</span>&#160; desc.<a class="code" href="structarmnn_1_1_q_lstm_descriptor.xhtml#a4556cbd764d4848d8ad0637a9eed580d">m_HiddenStateZeroPoint</a> = qLstmDescriptor-&gt;hiddenStateZeroPoint();</div><div class="line"><a name="l03300"></a><span class="lineno"> 3300</span>&#160;</div><div class="line"><a name="l03301"></a><span class="lineno"> 3301</span>&#160; <span class="keywordflow">return</span> desc;</div><div class="line"><a name="l03302"></a><span class="lineno"> 3302</span>&#160;}</div><div class="ttc" id="structarmnn_1_1_q_lstm_descriptor_xhtml_a2837b4396f20c956952d1a7286cab5f8"><div class="ttname"><a href="structarmnn_1_1_q_lstm_descriptor.xhtml#a2837b4396f20c956952d1a7286cab5f8">armnn::QLstmDescriptor::m_PeepholeEnabled</a></div><div class="ttdeci">bool m_PeepholeEnabled</div><div class="ttdoc">Enable/disable peephole. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01367">Descriptors.hpp:1367</a></div></div>
+<div class="ttc" id="structarmnn_1_1_q_lstm_descriptor_xhtml_af8f724af7210b52529216feefa993c98"><div class="ttname"><a href="structarmnn_1_1_q_lstm_descriptor.xhtml#af8f724af7210b52529216feefa993c98">armnn::QLstmDescriptor::m_HiddenStateScale</a></div><div class="ttdeci">float m_HiddenStateScale</div><div class="ttdoc">Hidden State quantization scale. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01383">Descriptors.hpp:1383</a></div></div>
+<div class="ttc" id="structarmnn_1_1_q_lstm_descriptor_xhtml_aa43409f9b457352c95c89f20ce5d844d"><div class="ttname"><a href="structarmnn_1_1_q_lstm_descriptor.xhtml#aa43409f9b457352c95c89f20ce5d844d">armnn::QLstmDescriptor::m_OutputIntermediateScale</a></div><div class="ttdeci">float m_OutputIntermediateScale</div><div class="ttdoc">Output intermediate quantization scale. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01379">Descriptors.hpp:1379</a></div></div>
+<div class="ttc" id="structarmnn_1_1_q_lstm_descriptor_xhtml_a4a8ec49f130084445d44297549254780"><div class="ttname"><a href="structarmnn_1_1_q_lstm_descriptor.xhtml#a4a8ec49f130084445d44297549254780">armnn::QLstmDescriptor::m_LayerNormEnabled</a></div><div class="ttdeci">bool m_LayerNormEnabled</div><div class="ttdoc">Enable/disable layer normalization. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01371">Descriptors.hpp:1371</a></div></div>
+<div class="ttc" id="structarmnn_1_1_q_lstm_descriptor_xhtml_aa6a518b65088f34803b3214334bdff61"><div class="ttname"><a href="structarmnn_1_1_q_lstm_descriptor.xhtml#aa6a518b65088f34803b3214334bdff61">armnn::QLstmDescriptor::m_ProjectionClip</a></div><div class="ttdeci">float m_ProjectionClip</div><div class="ttdoc">Clipping threshold value for the projection. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01363">Descriptors.hpp:1363</a></div></div>
+<div class="ttc" id="structarmnn_1_1_q_lstm_descriptor_xhtml_a09e1f097944f61cc901240f9300364cf"><div class="ttname"><a href="structarmnn_1_1_q_lstm_descriptor.xhtml#a09e1f097944f61cc901240f9300364cf">armnn::QLstmDescriptor::m_InputIntermediateScale</a></div><div class="ttdeci">float m_InputIntermediateScale</div><div class="ttdoc">Input intermediate quantization scale. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01373">Descriptors.hpp:1373</a></div></div>
+<div class="ttc" id="structarmnn_1_1_q_lstm_descriptor_xhtml"><div class="ttname"><a href="structarmnn_1_1_q_lstm_descriptor.xhtml">armnn::QLstmDescriptor</a></div><div class="ttdoc">A QLstmDescriptor for the QLstmLayer. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01327">Descriptors.hpp:1327</a></div></div>
+<div class="ttc" id="structarmnn_1_1_q_lstm_descriptor_xhtml_afec7f36158448f723b426a9527acb189"><div class="ttname"><a href="structarmnn_1_1_q_lstm_descriptor.xhtml#afec7f36158448f723b426a9527acb189">armnn::QLstmDescriptor::m_ForgetIntermediateScale</a></div><div class="ttdeci">float m_ForgetIntermediateScale</div><div class="ttdoc">Forget intermediate quantization scale. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01375">Descriptors.hpp:1375</a></div></div>
+<div class="ttc" id="structarmnn_1_1_q_lstm_descriptor_xhtml_ac81fb0e66dc623dc37c77f219f53a6d3"><div class="ttname"><a href="structarmnn_1_1_q_lstm_descriptor.xhtml#ac81fb0e66dc623dc37c77f219f53a6d3">armnn::QLstmDescriptor::m_CellClip</a></div><div class="ttdeci">float m_CellClip</div><div class="ttdoc">Clipping threshold value for the cell state. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01361">Descriptors.hpp:1361</a></div></div>
+<div class="ttc" id="structarmnn_1_1_q_lstm_descriptor_xhtml_a6c9de81fc65b3c4924cab11907075a17"><div class="ttname"><a href="structarmnn_1_1_q_lstm_descriptor.xhtml#a6c9de81fc65b3c4924cab11907075a17">armnn::QLstmDescriptor::m_ProjectionEnabled</a></div><div class="ttdeci">bool m_ProjectionEnabled</div><div class="ttdoc">Enable/disable the projection layer. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01369">Descriptors.hpp:1369</a></div></div>
+<div class="ttc" id="structarmnn_1_1_q_lstm_descriptor_xhtml_a0477ee1b44ace6090119178eea78cb0b"><div class="ttname"><a href="structarmnn_1_1_q_lstm_descriptor.xhtml#a0477ee1b44ace6090119178eea78cb0b">armnn::QLstmDescriptor::m_CellIntermediateScale</a></div><div class="ttdeci">float m_CellIntermediateScale</div><div class="ttdoc">Cell intermediate quantization scale. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01377">Descriptors.hpp:1377</a></div></div>
+<div class="ttc" id="structarmnn_1_1_q_lstm_descriptor_xhtml_ad474e5c51a0b194ef32e812b86c0cbdb"><div class="ttname"><a href="structarmnn_1_1_q_lstm_descriptor.xhtml#ad474e5c51a0b194ef32e812b86c0cbdb">armnn::QLstmDescriptor::m_CifgEnabled</a></div><div class="ttdeci">bool m_CifgEnabled</div><div class="ttdoc">Enable/disable CIFG (coupled input &amp; forget gate). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01365">Descriptors.hpp:1365</a></div></div>
+<div class="ttc" id="structarmnn_1_1_q_lstm_descriptor_xhtml_a4556cbd764d4848d8ad0637a9eed580d"><div class="ttname"><a href="structarmnn_1_1_q_lstm_descriptor.xhtml#a4556cbd764d4848d8ad0637a9eed580d">armnn::QLstmDescriptor::m_HiddenStateZeroPoint</a></div><div class="ttdeci">int32_t m_HiddenStateZeroPoint</div><div class="ttdoc">Hidden State zero point. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01381">Descriptors.hpp:1381</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="ad04b4361ec1ded6b9334dae64c7c4579"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad04b4361ec1ded6b9334dae64c7c4579">&#9670;&nbsp;</a></span>GetUnidirectionalSequenceLstmDescriptor()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacearmnn.xhtml#ae6c5f1b51bd32133c4dcc632045d6b58">armnn::UnidirectionalSequenceLstmDescriptor</a> GetUnidirectionalSequenceLstmDescriptor </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="namespacearmnn_deserializer.xhtml#a9eb5db921d6fa5015a57916a5d0c7cd9">UnidirectionalSequenceLstmDescriptorPtr</a>&#160;</td>
+ <td class="paramname"><em>descriptor</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l03713">3713</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_deserializer_8cpp_source.xhtml#l00181">CHECK_LAYERS</a>, <a class="el" href="_verification_helpers_8hpp_source.xhtml#l00032">CHECK_VALID_SIZE</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00765">IDeserializer::DeserializerImpl::GetInputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00432">IDeserializer::DeserializerImpl::GetLayerName()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00782">IDeserializer::DeserializerImpl::GetOutputs()</a>, <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml#a80ac4eda2e7f2757ec9dd96fc96dbd16">IConnectableLayer::GetOutputSlot()</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01087">LstmDescriptor::m_ActivationFunc</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00053">LstmInputParams::m_CellBias</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00059">LstmInputParams::m_CellLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00049">LstmInputParams::m_CellToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00048">LstmInputParams::m_CellToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00050">LstmInputParams::m_CellToOutputWeights</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01093">LstmDescriptor::m_CifgEnabled</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01089">LstmDescriptor::m_ClippingThresCell</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01091">LstmDescriptor::m_ClippingThresProj</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00052">LstmInputParams::m_ForgetGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00058">LstmInputParams::m_ForgetLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00051">LstmInputParams::m_InputGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00057">LstmInputParams::m_InputLayerNormWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00042">LstmInputParams::m_InputToCellWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00041">LstmInputParams::m_InputToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00040">LstmInputParams::m_InputToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00043">LstmInputParams::m_InputToOutputWeights</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01099">LstmDescriptor::m_LayerNormEnabled</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00054">LstmInputParams::m_OutputGateBias</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00060">LstmInputParams::m_OutputLayerNormWeights</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01095">LstmDescriptor::m_PeepholeEnabled</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00056">LstmInputParams::m_ProjectionBias</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01097">LstmDescriptor::m_ProjectionEnabled</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00055">LstmInputParams::m_ProjectionWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00046">LstmInputParams::m_RecurrentToCellWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00045">LstmInputParams::m_RecurrentToForgetWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00044">LstmInputParams::m_RecurrentToInputWeights</a>, <a class="el" href="_lstm_params_8hpp_source.xhtml#l00047">LstmInputParams::m_RecurrentToOutputWeights</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01101">LstmDescriptor::m_TimeMajor</a>, <a class="el" href="classarmnn_1_1_i_output_slot.xhtml#a5ee4a6c9a2481245487b1b1a70d20fd0">IOutputSlot::SetTensorInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00722">armnnDeserializer::ToConstTensor()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00616">armnnDeserializer::ToTensorInfo()</a>.</p>
+<div class="fragment"><div class="line"><a name="l03715"></a><span class="lineno"> 3715</span>&#160;{</div><div class="line"><a name="l03716"></a><span class="lineno"> 3716</span>&#160; <a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml">armnn::UnidirectionalSequenceLstmDescriptor</a> desc;</div><div class="line"><a name="l03717"></a><span class="lineno"> 3717</span>&#160;</div><div class="line"><a name="l03718"></a><span class="lineno"> 3718</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#ae1b07ed928036004bd257169e5aeeef4">m_ActivationFunc</a> = descriptor-&gt;activationFunc();</div><div class="line"><a name="l03719"></a><span class="lineno"> 3719</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a531a3907ec13d3772370da88030191a5">m_ClippingThresCell</a> = descriptor-&gt;clippingThresCell();</div><div class="line"><a name="l03720"></a><span class="lineno"> 3720</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a86e88bef0df4df96df752b4b8955a3af">m_ClippingThresProj</a> = descriptor-&gt;clippingThresProj();</div><div class="line"><a name="l03721"></a><span class="lineno"> 3721</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#ad474e5c51a0b194ef32e812b86c0cbdb">m_CifgEnabled</a> = descriptor-&gt;cifgEnabled();</div><div class="line"><a name="l03722"></a><span class="lineno"> 3722</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a2837b4396f20c956952d1a7286cab5f8">m_PeepholeEnabled</a> = descriptor-&gt;peepholeEnabled();</div><div class="line"><a name="l03723"></a><span class="lineno"> 3723</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a6c9de81fc65b3c4924cab11907075a17">m_ProjectionEnabled</a> = descriptor-&gt;projectionEnabled();</div><div class="line"><a name="l03724"></a><span class="lineno"> 3724</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a4a8ec49f130084445d44297549254780">m_LayerNormEnabled</a> = descriptor-&gt;layerNormEnabled();</div><div class="line"><a name="l03725"></a><span class="lineno"> 3725</span>&#160; desc.<a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml#a3dcd10ca3ea2e132558b1e2814668c15">m_TimeMajor</a> = descriptor-&gt;timeMajor();</div><div class="line"><a name="l03726"></a><span class="lineno"> 3726</span>&#160;</div><div class="line"><a name="l03727"></a><span class="lineno"> 3727</span>&#160; <span class="keywordflow">return</span> desc;</div><div class="line"><a name="l03728"></a><span class="lineno"> 3728</span>&#160;}</div><div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a6c9de81fc65b3c4924cab11907075a17"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a6c9de81fc65b3c4924cab11907075a17">armnn::LstmDescriptor::m_ProjectionEnabled</a></div><div class="ttdeci">bool m_ProjectionEnabled</div><div class="ttdoc">Enable/disable the projection layer. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01097">Descriptors.hpp:1097</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a86e88bef0df4df96df752b4b8955a3af"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a86e88bef0df4df96df752b4b8955a3af">armnn::LstmDescriptor::m_ClippingThresProj</a></div><div class="ttdeci">float m_ClippingThresProj</div><div class="ttdoc">Clipping threshold value for the projection. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01091">Descriptors.hpp:1091</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a3dcd10ca3ea2e132558b1e2814668c15"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a3dcd10ca3ea2e132558b1e2814668c15">armnn::LstmDescriptor::m_TimeMajor</a></div><div class="ttdeci">bool m_TimeMajor</div><div class="ttdoc">Enable/disable time major. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01101">Descriptors.hpp:1101</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml">armnn::LstmDescriptor</a></div><div class="ttdoc">An LstmDescriptor for the LstmLayer. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01049">Descriptors.hpp:1049</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a2837b4396f20c956952d1a7286cab5f8"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a2837b4396f20c956952d1a7286cab5f8">armnn::LstmDescriptor::m_PeepholeEnabled</a></div><div class="ttdeci">bool m_PeepholeEnabled</div><div class="ttdoc">Enable/disable peephole. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01095">Descriptors.hpp:1095</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_ae1b07ed928036004bd257169e5aeeef4"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#ae1b07ed928036004bd257169e5aeeef4">armnn::LstmDescriptor::m_ActivationFunc</a></div><div class="ttdeci">uint32_t m_ActivationFunc</div><div class="ttdoc">The activation function to use. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01087">Descriptors.hpp:1087</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a531a3907ec13d3772370da88030191a5"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a531a3907ec13d3772370da88030191a5">armnn::LstmDescriptor::m_ClippingThresCell</a></div><div class="ttdeci">float m_ClippingThresCell</div><div class="ttdoc">Clipping threshold value for the cell state. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01089">Descriptors.hpp:1089</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_ad474e5c51a0b194ef32e812b86c0cbdb"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#ad474e5c51a0b194ef32e812b86c0cbdb">armnn::LstmDescriptor::m_CifgEnabled</a></div><div class="ttdeci">bool m_CifgEnabled</div><div class="ttdoc">Enable/disable cifg (coupled input &amp; forget gate). </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01093">Descriptors.hpp:1093</a></div></div>
+<div class="ttc" id="structarmnn_1_1_lstm_descriptor_xhtml_a4a8ec49f130084445d44297549254780"><div class="ttname"><a href="structarmnn_1_1_lstm_descriptor.xhtml#a4a8ec49f130084445d44297549254780">armnn::LstmDescriptor::m_LayerNormEnabled</a></div><div class="ttdeci">bool m_LayerNormEnabled</div><div class="ttdoc">Enable/disable layer normalization. </div><div class="ttdef"><b>Definition:</b> <a href="_descriptors_8hpp_source.xhtml#l01099">Descriptors.hpp:1099</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a0bab2006e8fafc4a7fd02efa536f2828"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0bab2006e8fafc4a7fd02efa536f2828">&#9670;&nbsp;</a></span>LoadGraphFromBinary()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacearmnn_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> LoadGraphFromBinary </td>
+ <td>(</td>
+ <td class="paramtype">const uint8_t *&#160;</td>
+ <td class="paramname"><em>binaryContent</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00839">839</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_assert_8hpp_source.xhtml#l00014">ARMNN_ASSERT</a>, <a class="el" href="_exceptions_8hpp_source.xhtml#l00203">CHECK_LOCATION</a>, and <a class="el" href="classarmnn_1_1_i_output_slot.xhtml#ac1835f8756a9f03c02fcf9664e3a0fce">IOutputSlot::Connect()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8cpp_source.xhtml#l00816">IDeserializer::DeserializerImpl::CreateNetworkFromBinary()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160;{</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; <span class="keywordflow">if</span> (binaryContent == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; {</div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.xhtml">InvalidArgumentException</a>(fmt::format(<span class="stringliteral">&quot;Invalid (null) binary content {}&quot;</span>,</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; <a class="code" href="_exceptions_8hpp.xhtml#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; }</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160; flatbuffers::Verifier verifier(binaryContent, len);</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160; <span class="keywordflow">if</span> (verifier.VerifyBuffer&lt;SerializedGraph&gt;() == <span class="keyword">false</span>)</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; {</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.xhtml">ParseException</a>(fmt::format(<span class="stringliteral">&quot;Buffer doesn&#39;t conform to the expected Armnn &quot;</span></div><div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160; <span class="stringliteral">&quot;flatbuffers format. size:{0} {1}&quot;</span>,</div><div class="line"><a name="l00851"></a><span class="lineno"> 851</span>&#160; len,</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160; <a class="code" href="_exceptions_8hpp.xhtml#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; }</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; <span class="keywordflow">return</span> GetSerializedGraph(binaryContent);</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160;}</div><div class="ttc" id="classarmnn_1_1_invalid_argument_exception_xhtml"><div class="ttname"><a href="classarmnn_1_1_invalid_argument_exception.xhtml">armnn::InvalidArgumentException</a></div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.xhtml#l00080">Exceptions.hpp:80</a></div></div>
+<div class="ttc" id="_exceptions_8hpp_xhtml_aa3be76aec4ce713822a5ea1ecbb7bc61"><div class="ttname"><a href="_exceptions_8hpp.xhtml#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a></div><div class="ttdeci">#define CHECK_LOCATION()</div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.xhtml#l00203">Exceptions.hpp:203</a></div></div>
+<div class="ttc" id="classarmnn_1_1_parse_exception_xhtml"><div class="ttname"><a href="classarmnn_1_1_parse_exception.xhtml">armnn::ParseException</a></div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.xhtml#l00092">Exceptions.hpp:92</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="abe99e44e1f642428be714ebac948915e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abe99e44e1f642428be714ebac948915e">&#9670;&nbsp;</a></span>operator=()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml">DeserializerImpl</a>&amp; operator= </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml">DeserializerImpl</a> &amp;&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">delete</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a8752c2b994619ae67201a297c2c76be2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8752c2b994619ae67201a297c2c76be2">&#9670;&nbsp;</a></span>OutputShapeOfReshape()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> OutputShapeOfReshape </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> &amp;&#160;</td>
+ <td class="paramname"><em>inputTensorInfo</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const std::vector&lt; uint32_t &gt; &amp;&#160;</td>
+ <td class="paramname"><em>targetDimsIn</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l02522">2522</a> of file <a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a>.</p>
+
+<p class="reference">References <a class="el" href="namespacearmnn.xhtml#a9a2af2f8c4af4f9efa8e79417d505ac4aaf17c98bbd83c27d6426d2ff3fa81d7f">armnn::Bilinear</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00181">CHECK_LAYERS</a>, <a class="el" href="_exceptions_8hpp_source.xhtml#l00203">CHECK_LOCATION</a>, <a class="el" href="_verification_helpers_8hpp_source.xhtml#l00032">CHECK_VALID_SIZE</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00188">armnnDeserializer::CheckShape()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00765">IDeserializer::DeserializerImpl::GetInputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00432">IDeserializer::DeserializerImpl::GetLayerName()</a>, <a class="el" href="_tensor_8hpp_source.xhtml#l00196">TensorInfo::GetNumElements()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00782">IDeserializer::DeserializerImpl::GetOutputs()</a>, <a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml#a80ac4eda2e7f2757ec9dd96fc96dbd16">IConnectableLayer::GetOutputSlot()</a>, <a class="el" href="_tensor_8hpp_source.xhtml#l00191">TensorInfo::GetShape()</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00963">ResizeDescriptor::m_AlignCorners</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00170">SoftmaxDescriptor::m_Beta</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01013">SpaceToBatchNdDescriptor::m_BlockShape</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01039">SpaceToDepthDescriptor::m_BlockSize</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00961">ResizeDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01018">SpaceToBatchNdDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01042">SpaceToDepthDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00965">ResizeDescriptor::m_HalfPixelCenters</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01501">ReduceDescriptor::m_KeepDims</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00959">ResizeDescriptor::m_Method</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01016">SpaceToBatchNdDescriptor::m_PadList</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01505">ReduceDescriptor::m_ReduceOperation</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00956">ResizeDescriptor::m_TargetHeight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00986">ReshapeDescriptor::m_TargetShape</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00954">ResizeDescriptor::m_TargetWidth</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01503">ReduceDescriptor::m_vAxis</a>, <a class="el" href="_numeric_cast_8hpp_source.xhtml#l00035">armnn::numeric_cast()</a>, <a class="el" href="_tensor_8hpp_source.xhtml#l00193">TensorInfo::SetShape()</a>, <a class="el" href="classarmnn_1_1_i_output_slot.xhtml#a5ee4a6c9a2481245487b1b1a70d20fd0">IOutputSlot::SetTensorInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00454">armnnDeserializer::ToDataLayout()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00533">armnnDeserializer::ToReduceOperation()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00603">armnnDeserializer::ToResizeMethod()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00616">armnnDeserializer::ToTensorInfo()</a>.</p>
+<div class="fragment"><div class="line"><a name="l02524"></a><span class="lineno"> 2524</span>&#160;{</div><div class="line"><a name="l02525"></a><span class="lineno"> 2525</span>&#160; std::vector&lt;unsigned int&gt; outputDims(targetDimsIn.begin(), targetDimsIn.end());</div><div class="line"><a name="l02526"></a><span class="lineno"> 2526</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> stretchDim = std::find(targetDimsIn.begin(), targetDimsIn.end(), -1);</div><div class="line"><a name="l02527"></a><span class="lineno"> 2527</span>&#160;</div><div class="line"><a name="l02528"></a><span class="lineno"> 2528</span>&#160; <span class="keywordflow">if</span> (stretchDim != targetDimsIn.end())</div><div class="line"><a name="l02529"></a><span class="lineno"> 2529</span>&#160; {</div><div class="line"><a name="l02530"></a><span class="lineno"> 2530</span>&#160; <span class="keywordflow">if</span> (std::find(std::next(stretchDim), targetDimsIn.end(), -1) != targetDimsIn.end())</div><div class="line"><a name="l02531"></a><span class="lineno"> 2531</span>&#160; {</div><div class="line"><a name="l02532"></a><span class="lineno"> 2532</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.xhtml">ParseException</a>(fmt::format(<span class="stringliteral">&quot;At most one component of shape can be -1 {}&quot;</span>,</div><div class="line"><a name="l02533"></a><span class="lineno"> 2533</span>&#160; <a class="code" href="_exceptions_8hpp.xhtml#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div><div class="line"><a name="l02534"></a><span class="lineno"> 2534</span>&#160; }</div><div class="line"><a name="l02535"></a><span class="lineno"> 2535</span>&#160;</div><div class="line"><a name="l02536"></a><span class="lineno"> 2536</span>&#160; <span class="keyword">auto</span> targetNumElements =</div><div class="line"><a name="l02537"></a><span class="lineno"> 2537</span>&#160; <a class="code" href="namespacearmnn.xhtml#a375ca3cff9f1b005d1412dc5f3cf5b6e">armnn::numeric_cast</a>&lt;<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>&gt;(</div><div class="line"><a name="l02538"></a><span class="lineno"> 2538</span>&#160; std::accumulate(targetDimsIn.begin(), targetDimsIn.end(), -1, std::multiplies&lt;int32_t&gt;()));</div><div class="line"><a name="l02539"></a><span class="lineno"> 2539</span>&#160;</div><div class="line"><a name="l02540"></a><span class="lineno"> 2540</span>&#160; <span class="keyword">auto</span> stretchIndex = <span class="keyword">static_cast&lt;</span><span class="keywordtype">size_t</span><span class="keyword">&gt;</span>(std::distance(targetDimsIn.begin(), stretchDim));</div><div class="line"><a name="l02541"></a><span class="lineno"> 2541</span>&#160; outputDims[stretchIndex] = inputTensorInfo.<a class="code" href="classarmnn_1_1_tensor_info.xhtml#a8846406ac37fbd2204f0be16ee05d5b7">GetNumElements</a>() / targetNumElements;</div><div class="line"><a name="l02542"></a><span class="lineno"> 2542</span>&#160; }</div><div class="line"><a name="l02543"></a><span class="lineno"> 2543</span>&#160;</div><div class="line"><a name="l02544"></a><span class="lineno"> 2544</span>&#160; <a class="code" href="classarmnn_1_1_tensor_shape.xhtml">TensorShape</a> outputShape = <a class="code" href="classarmnn_1_1_tensor_shape.xhtml">TensorShape</a>(static_cast&lt;unsigned int&gt;(outputDims.size()), outputDims.data());</div><div class="line"><a name="l02545"></a><span class="lineno"> 2545</span>&#160;</div><div class="line"><a name="l02546"></a><span class="lineno"> 2546</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> reshapeInfo = inputTensorInfo;</div><div class="line"><a name="l02547"></a><span class="lineno"> 2547</span>&#160; reshapeInfo.<a class="code" href="classarmnn_1_1_tensor_info.xhtml#abe8889e8150beef5fd204b2d87b49298">SetShape</a>(outputShape);</div><div class="line"><a name="l02548"></a><span class="lineno"> 2548</span>&#160;</div><div class="line"><a name="l02549"></a><span class="lineno"> 2549</span>&#160; <span class="keywordflow">return</span> reshapeInfo;</div><div class="line"><a name="l02550"></a><span class="lineno"> 2550</span>&#160;}</div><div class="ttc" id="classarmnn_1_1_tensor_info_xhtml"><div class="ttname"><a href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a></div><div class="ttdef"><b>Definition:</b> <a href="_tensor_8hpp_source.xhtml#l00152">Tensor.hpp:152</a></div></div>
+<div class="ttc" id="classarmnn_1_1_tensor_shape_xhtml"><div class="ttname"><a href="classarmnn_1_1_tensor_shape.xhtml">armnn::TensorShape</a></div><div class="ttdef"><b>Definition:</b> <a href="_tensor_8hpp_source.xhtml#l00020">Tensor.hpp:20</a></div></div>
+<div class="ttc" id="classarmnn_1_1_tensor_info_xhtml_abe8889e8150beef5fd204b2d87b49298"><div class="ttname"><a href="classarmnn_1_1_tensor_info.xhtml#abe8889e8150beef5fd204b2d87b49298">armnn::TensorInfo::SetShape</a></div><div class="ttdeci">void SetShape(const TensorShape &amp;newShape)</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_8hpp_source.xhtml#l00193">Tensor.hpp:193</a></div></div>
+<div class="ttc" id="_exceptions_8hpp_xhtml_aa3be76aec4ce713822a5ea1ecbb7bc61"><div class="ttname"><a href="_exceptions_8hpp.xhtml#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a></div><div class="ttdeci">#define CHECK_LOCATION()</div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.xhtml#l00203">Exceptions.hpp:203</a></div></div>
+<div class="ttc" id="classarmnn_1_1_parse_exception_xhtml"><div class="ttname"><a href="classarmnn_1_1_parse_exception.xhtml">armnn::ParseException</a></div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.xhtml#l00092">Exceptions.hpp:92</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_a375ca3cff9f1b005d1412dc5f3cf5b6e"><div class="ttname"><a href="namespacearmnn.xhtml#a375ca3cff9f1b005d1412dc5f3cf5b6e">armnn::numeric_cast</a></div><div class="ttdeci">std::enable_if_t&lt; std::is_unsigned&lt; Source &gt;::value &amp;&amp;std::is_unsigned&lt; Dest &gt;::value, Dest &gt; numeric_cast(Source source)</div><div class="ttdef"><b>Definition:</b> <a href="_numeric_cast_8hpp_source.xhtml#l00035">NumericCast.hpp:35</a></div></div>
+<div class="ttc" id="classarmnn_1_1_tensor_info_xhtml_a8846406ac37fbd2204f0be16ee05d5b7"><div class="ttname"><a href="classarmnn_1_1_tensor_info.xhtml#a8846406ac37fbd2204f0be16ee05d5b7">armnn::TensorInfo::GetNumElements</a></div><div class="ttdeci">unsigned int GetNumElements() const</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_8hpp_source.xhtml#l00196">Tensor.hpp:196</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/armnnDeserializer/<a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a></li>
+<li>src/armnnDeserializer/<a class="el" href="_deserializer_8cpp_source.xhtml">Deserializer.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="namespacearmnn_deserializer.xhtml">armnnDeserializer</a></li><li class="navelem"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer.xhtml">IDeserializer</a></li><li class="navelem"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer_1_1_deserializer_impl.xhtml">DeserializerImpl</a></li>
+ <li class="footer">Generated on Fri Feb 24 2023 10:24:34 for ArmNN by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>