aboutsummaryrefslogtreecommitdiff
path: root/20.11/classarmnn_deserializer_1_1_deserializer.xhtml
diff options
context:
space:
mode:
authorJames Ward <james.ward@arm.com>2020-11-26 11:08:12 +0000
committerColm Donelan <colm.donelan@arm.com>2020-11-26 14:39:49 +0000
commitfb14ebbd68e04876809145296af96f6f41857418 (patch)
tree7eacc90dd6c79f3a6eae6e3c7b04d3a04161c794 /20.11/classarmnn_deserializer_1_1_deserializer.xhtml
parent4840dfb7543d66652dc11c5ff39c8f5c1e2f9370 (diff)
downloadarmnn-fb14ebbd68e04876809145296af96f6f41857418.tar.gz
IVGCVSW-5348 Update Doxygen Docu
* Update Doxygen Documentation for 20.11 release Signed-off-by: James Ward <james.ward@arm.com> Change-Id: Ib47edac7923a642a277b1169d1085e5622021dc0
Diffstat (limited to '20.11/classarmnn_deserializer_1_1_deserializer.xhtml')
-rw-r--r--20.11/classarmnn_deserializer_1_1_deserializer.xhtml1208
1 files changed, 1208 insertions, 0 deletions
diff --git a/20.11/classarmnn_deserializer_1_1_deserializer.xhtml b/20.11/classarmnn_deserializer_1_1_deserializer.xhtml
new file mode 100644
index 0000000000..9b592ead24
--- /dev/null
+++ b/20.11/classarmnn_deserializer_1_1_deserializer.xhtml
@@ -0,0 +1,1208 @@
+<!-- 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: Deserializer 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">20.11</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_deserializer.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-types">Public Types</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_deserializer-members.xhtml">List of all members</a> </div>
+ <div class="headertitle">
+<div class="title">Deserializer 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>
+<div class="dynheader">
+Inheritance diagram for Deserializer:</div>
+<div class="dyncontent">
+ <div class="center">
+ <img src="classarmnn_deserializer_1_1_deserializer.png" usemap="#Deserializer_map" alt=""/>
+ <map id="Deserializer_map" name="Deserializer_map">
+<area href="classarmnn_deserializer_1_1_i_deserializer.xhtml" alt="IDeserializer" shape="rect" coords="0,0,83,24"/>
+</map>
+ </div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a68b76ee033fdd629404369171c3d4f90"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a68b76ee033fdd629404369171c3d4f90">ConstTensorRawPtr</a> = const armnnSerializer::ConstTensor *</td></tr>
+<tr class="separator:a68b76ee033fdd629404369171c3d4f90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a38c1f8ba8e51364802669c968cf98ff5"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> = const armnnSerializer::SerializedGraph *</td></tr>
+<tr class="separator:a38c1f8ba8e51364802669c968cf98ff5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80888061963ddd18e87105807a035d9a"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a80888061963ddd18e87105807a035d9a">TensorRawPtr</a> = const armnnSerializer::TensorInfo *</td></tr>
+<tr class="separator:a80888061963ddd18e87105807a035d9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0dc66e036f16781886a1ce530e11c2d8"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a0dc66e036f16781886a1ce530e11c2d8">PoolingDescriptor</a> = const armnnSerializer::Pooling2dDescriptor *</td></tr>
+<tr class="separator:a0dc66e036f16781886a1ce530e11c2d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a282cf18fcfe848b47e946327ca1048"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a2a282cf18fcfe848b47e946327ca1048">NormalizationDescriptorPtr</a> = const armnnSerializer::NormalizationDescriptor *</td></tr>
+<tr class="separator:a2a282cf18fcfe848b47e946327ca1048"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a15397ee26bc4b7d3a459b05e457be428"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a15397ee26bc4b7d3a459b05e457be428">LstmDescriptorPtr</a> = const armnnSerializer::LstmDescriptor *</td></tr>
+<tr class="separator:a15397ee26bc4b7d3a459b05e457be428"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93460fcf78d1b2dcab72dd8378739145"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a93460fcf78d1b2dcab72dd8378739145">LstmInputParamsPtr</a> = const armnnSerializer::LstmInputParams *</td></tr>
+<tr class="separator:a93460fcf78d1b2dcab72dd8378739145"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5cd994198e775b8e919853fd0da5b9c1"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a5cd994198e775b8e919853fd0da5b9c1">QLstmDescriptorPtr</a> = const armnnSerializer::QLstmDescriptor *</td></tr>
+<tr class="separator:a5cd994198e775b8e919853fd0da5b9c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7acf3a0a92158bf8a2df8ab5467ad6f4"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a7acf3a0a92158bf8a2df8ab5467ad6f4">QunatizedLstmInputParamsPtr</a> = const armnnSerializer::QuantizedLstmInputParams *</td></tr>
+<tr class="separator:a7acf3a0a92158bf8a2df8ab5467ad6f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd8bee7fb9b86485a60bc7ee05114270"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a> = std::vector&lt; <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a80888061963ddd18e87105807a035d9a">TensorRawPtr</a> &gt;</td></tr>
+<tr class="separator:abd8bee7fb9b86485a60bc7ee05114270"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a39be8e36d57d85162d1d72c320bc22f6"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a39be8e36d57d85162d1d72c320bc22f6">LayerRawPtr</a> = const armnnSerializer::LayerBase *</td></tr>
+<tr class="separator:a39be8e36d57d85162d1d72c320bc22f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91ade61b5704e4f2c38c263c2be148ef"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a91ade61b5704e4f2c38c263c2be148ef">LayerBaseRawPtr</a> = const armnnSerializer::LayerBase *</td></tr>
+<tr class="separator:a91ade61b5704e4f2c38c263c2be148ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaabcc180b1c18918e92459fc282848c1"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#aaabcc180b1c18918e92459fc282848c1">LayerBaseRawPtrVector</a> = std::vector&lt; <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a91ade61b5704e4f2c38c263c2be148ef">LayerBaseRawPtr</a> &gt;</td></tr>
+<tr class="separator:aaabcc180b1c18918e92459fc282848c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><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:ae8ee09f5e3e78ecfdf00acfdc37588dc"><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_deserializer.xhtml#ae8ee09f5e3e78ecfdf00acfdc37588dc">CreateNetworkFromBinary</a> (const std::vector&lt; uint8_t &gt; &amp;binaryContent) override</td></tr>
+<tr class="memdesc:ae8ee09f5e3e78ecfdf00acfdc37588dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an input network from binary file contents. <a href="#ae8ee09f5e3e78ecfdf00acfdc37588dc">More...</a><br /></td></tr>
+<tr class="separator:ae8ee09f5e3e78ecfdf00acfdc37588dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba8f9e71e60dd58b6e1165b3accd43b8"><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_deserializer.xhtml#aba8f9e71e60dd58b6e1165b3accd43b8">CreateNetworkFromBinary</a> (std::istream &amp;binaryContent) override</td></tr>
+<tr class="memdesc:aba8f9e71e60dd58b6e1165b3accd43b8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an input network from a binary input stream. <a href="#aba8f9e71e60dd58b6e1165b3accd43b8">More...</a><br /></td></tr>
+<tr class="separator:aba8f9e71e60dd58b6e1165b3accd43b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66c5e4250559faefd7f0fa35ccbdc9eb"><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_deserializer.xhtml#a66c5e4250559faefd7f0fa35ccbdc9eb">GetNetworkInputBindingInfo</a> (unsigned int layerId, const std::string &amp;name) const override</td></tr>
+<tr class="memdesc:a66c5e4250559faefd7f0fa35ccbdc9eb"><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="#a66c5e4250559faefd7f0fa35ccbdc9eb">More...</a><br /></td></tr>
+<tr class="separator:a66c5e4250559faefd7f0fa35ccbdc9eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae9cf8ca62e8da6d21e08dc130f68dce4"><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_deserializer.xhtml#ae9cf8ca62e8da6d21e08dc130f68dce4">GetNetworkOutputBindingInfo</a> (unsigned int layerId, const std::string &amp;name) const override</td></tr>
+<tr class="memdesc:ae9cf8ca62e8da6d21e08dc130f68dce4"><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="#ae9cf8ca62e8da6d21e08dc130f68dce4">More...</a><br /></td></tr>
+<tr class="separator:ae9cf8ca62e8da6d21e08dc130f68dce4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43e0ec855f3a7ebf9f98fbee5321edcf"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a43e0ec855f3a7ebf9f98fbee5321edcf">Deserializer</a> ()</td></tr>
+<tr class="separator:a43e0ec855f3a7ebf9f98fbee5321edcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcc4ae100496aaa3e6766dce0271033d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#adcc4ae100496aaa3e6766dce0271033d">~Deserializer</a> ()</td></tr>
+<tr class="separator:adcc4ae100496aaa3e6766dce0271033d"><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:a0ba4effa5ee7ef715b1f452365c41f97"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a0ba4effa5ee7ef715b1f452365c41f97">LoadGraphFromBinary</a> (const uint8_t *binaryContent, size_t len)</td></tr>
+<tr class="separator:a0ba4effa5ee7ef715b1f452365c41f97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0953e42cc1f6bb2a50504b631d68b114"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a0953e42cc1f6bb2a50504b631d68b114">GetInputs</a> (const <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> &amp;graph, unsigned int layerIndex)</td></tr>
+<tr class="separator:a0953e42cc1f6bb2a50504b631d68b114"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c9267a47f5d254898c67bc0cb2535b9"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a0c9267a47f5d254898c67bc0cb2535b9">GetOutputs</a> (const <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> &amp;graph, unsigned int layerIndex)</td></tr>
+<tr class="separator:a0c9267a47f5d254898c67bc0cb2535b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f332fc8fc6cf6488f8d8e374a4264fc"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a91ade61b5704e4f2c38c263c2be148ef">LayerBaseRawPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a6f332fc8fc6cf6488f8d8e374a4264fc">GetBaseLayer</a> (const <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> &amp;graphPtr, unsigned int layerIndex)</td></tr>
+<tr class="separator:a6f332fc8fc6cf6488f8d8e374a4264fc"><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_deserializer.xhtml#afcc87bf0e20779861dd5d01a4bedcda9">GetBindingLayerInfo</a> (const <a class="el" href="classarmnn_deserializer_1_1_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_deserializer.xhtml#af2e5b4595b6abc056779ecd12bd271c2">GetLayerName</a> (const <a class="el" href="classarmnn_deserializer_1_1_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:a271f00048f7e48392794c2eee17c1e2c"><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_deserializer.xhtml#a271f00048f7e48392794c2eee17c1e2c">GetPoolingDescriptor</a> (<a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a0dc66e036f16781886a1ce530e11c2d8">PoolingDescriptor</a> pooling2dDescriptor, unsigned int layerIndex)</td></tr>
+<tr class="separator:a271f00048f7e48392794c2eee17c1e2c"><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_deserializer.xhtml#a920251d49a8f32085d458ba23f776800">GetNormalizationDescriptor</a> (<a class="el" href="classarmnn_deserializer_1_1_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_deserializer.xhtml#af7bb02c61c6a5663121da024b7e042e8">GetLstmDescriptor</a> (<a class="el" href="classarmnn_deserializer_1_1_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_deserializer.xhtml#a327a399d46f8216c9f4c1eea5f18a542">GetLstmInputParams</a> (<a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a15397ee26bc4b7d3a459b05e457be428">LstmDescriptorPtr</a> lstmDescriptor, <a class="el" href="classarmnn_deserializer_1_1_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_deserializer.xhtml#a57e32d26ac8c87b118e77da920481123">GetQLstmDescriptor</a> (<a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a5cd994198e775b8e919853fd0da5b9c1">QLstmDescriptorPtr</a> qLstmDescriptorPtr)</td></tr>
+<tr class="separator:a57e32d26ac8c87b118e77da920481123"><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_deserializer.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>
+<tr class="inherit_header pub_static_methods_classarmnn_deserializer_1_1_i_deserializer"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classarmnn_deserializer_1_1_i_deserializer')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classarmnn_deserializer_1_1_i_deserializer.xhtml">IDeserializer</a></td></tr>
+<tr class="memitem:a85f0c438b389992a68adeb6af59f362d inherit pub_static_methods_classarmnn_deserializer_1_1_i_deserializer"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_deserializer_1_1_i_deserializer.xhtml">IDeserializer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer.xhtml#a85f0c438b389992a68adeb6af59f362d">CreateRaw</a> ()</td></tr>
+<tr class="separator:a85f0c438b389992a68adeb6af59f362d inherit pub_static_methods_classarmnn_deserializer_1_1_i_deserializer"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af116abd698a7feb92876ae48917005a4 inherit pub_static_methods_classarmnn_deserializer_1_1_i_deserializer"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacearmnn_deserializer.xhtml#ad33c6040680106b9af566d7269d8c949">IDeserializerPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer.xhtml#af116abd698a7feb92876ae48917005a4">Create</a> ()</td></tr>
+<tr class="separator:af116abd698a7feb92876ae48917005a4 inherit pub_static_methods_classarmnn_deserializer_1_1_i_deserializer"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe33a6c8701eff4d2f7233ce441e0426 inherit pub_static_methods_classarmnn_deserializer_1_1_i_deserializer"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer.xhtml#afe33a6c8701eff4d2f7233ce441e0426">Destroy</a> (<a class="el" href="classarmnn_deserializer_1_1_i_deserializer.xhtml">IDeserializer</a> *parser)</td></tr>
+<tr class="separator:afe33a6c8701eff4d2f7233ce441e0426 inherit pub_static_methods_classarmnn_deserializer_1_1_i_deserializer"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_methods_classarmnn_deserializer_1_1_i_deserializer"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classarmnn_deserializer_1_1_i_deserializer')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classarmnn_deserializer_1_1_i_deserializer.xhtml">IDeserializer</a></td></tr>
+<tr class="memitem:aa46cab6453307d54a7ff94f19ee47d53 inherit pro_methods_classarmnn_deserializer_1_1_i_deserializer"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_deserializer_1_1_i_deserializer.xhtml#aa46cab6453307d54a7ff94f19ee47d53">~IDeserializer</a> ()</td></tr>
+<tr class="separator:aa46cab6453307d54a7ff94f19ee47d53 inherit pro_methods_classarmnn_deserializer_1_1_i_deserializer"><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#l00016">16</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+</div><h2 class="groupheader">Member Typedef Documentation</h2>
+<a id="a68b76ee033fdd629404369171c3d4f90"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a68b76ee033fdd629404369171c3d4f90">&#9670;&nbsp;</a></span>ConstTensorRawPtr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">using <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a68b76ee033fdd629404369171c3d4f90">ConstTensorRawPtr</a> = const armnnSerializer::ConstTensor *</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00020">20</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+
+</div>
+</div>
+<a id="a38c1f8ba8e51364802669c968cf98ff5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a38c1f8ba8e51364802669c968cf98ff5">&#9670;&nbsp;</a></span>GraphPtr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">using <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> = const armnnSerializer::SerializedGraph *</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00021">21</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+
+</div>
+</div>
+<a id="a91ade61b5704e4f2c38c263c2be148ef"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a91ade61b5704e4f2c38c263c2be148ef">&#9670;&nbsp;</a></span>LayerBaseRawPtr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">using <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a91ade61b5704e4f2c38c263c2be148ef">LayerBaseRawPtr</a> = const armnnSerializer::LayerBase *</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00031">31</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+
+</div>
+</div>
+<a id="aaabcc180b1c18918e92459fc282848c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaabcc180b1c18918e92459fc282848c1">&#9670;&nbsp;</a></span>LayerBaseRawPtrVector</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">using <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#aaabcc180b1c18918e92459fc282848c1">LayerBaseRawPtrVector</a> = std::vector&lt;<a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a91ade61b5704e4f2c38c263c2be148ef">LayerBaseRawPtr</a>&gt;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00032">32</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+
+</div>
+</div>
+<a id="a39be8e36d57d85162d1d72c320bc22f6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a39be8e36d57d85162d1d72c320bc22f6">&#9670;&nbsp;</a></span>LayerRawPtr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">using <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a39be8e36d57d85162d1d72c320bc22f6">LayerRawPtr</a> = const armnnSerializer::LayerBase *</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00030">30</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+
+</div>
+</div>
+<a id="a15397ee26bc4b7d3a459b05e457be428"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a15397ee26bc4b7d3a459b05e457be428">&#9670;&nbsp;</a></span>LstmDescriptorPtr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">using <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a15397ee26bc4b7d3a459b05e457be428">LstmDescriptorPtr</a> = const armnnSerializer::LstmDescriptor *</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00025">25</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+
+</div>
+</div>
+<a id="a93460fcf78d1b2dcab72dd8378739145"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a93460fcf78d1b2dcab72dd8378739145">&#9670;&nbsp;</a></span>LstmInputParamsPtr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">using <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a93460fcf78d1b2dcab72dd8378739145">LstmInputParamsPtr</a> = const armnnSerializer::LstmInputParams *</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00026">26</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+
+</div>
+</div>
+<a id="a2a282cf18fcfe848b47e946327ca1048"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2a282cf18fcfe848b47e946327ca1048">&#9670;&nbsp;</a></span>NormalizationDescriptorPtr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">using <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a2a282cf18fcfe848b47e946327ca1048">NormalizationDescriptorPtr</a> = const armnnSerializer::NormalizationDescriptor *</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00024">24</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+
+</div>
+</div>
+<a id="a0dc66e036f16781886a1ce530e11c2d8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0dc66e036f16781886a1ce530e11c2d8">&#9670;&nbsp;</a></span>PoolingDescriptor</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">using <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a0dc66e036f16781886a1ce530e11c2d8">PoolingDescriptor</a> = const armnnSerializer::Pooling2dDescriptor *</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00023">23</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+
+</div>
+</div>
+<a id="a5cd994198e775b8e919853fd0da5b9c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5cd994198e775b8e919853fd0da5b9c1">&#9670;&nbsp;</a></span>QLstmDescriptorPtr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">using <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a5cd994198e775b8e919853fd0da5b9c1">QLstmDescriptorPtr</a> = const armnnSerializer::QLstmDescriptor *</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00027">27</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+
+</div>
+</div>
+<a id="a7acf3a0a92158bf8a2df8ab5467ad6f4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7acf3a0a92158bf8a2df8ab5467ad6f4">&#9670;&nbsp;</a></span>QunatizedLstmInputParamsPtr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">using <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a7acf3a0a92158bf8a2df8ab5467ad6f4">QunatizedLstmInputParamsPtr</a> = const armnnSerializer::QuantizedLstmInputParams *</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00028">28</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+
+</div>
+</div>
+<a id="a80888061963ddd18e87105807a035d9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a80888061963ddd18e87105807a035d9a">&#9670;&nbsp;</a></span>TensorRawPtr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">using <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a80888061963ddd18e87105807a035d9a">TensorRawPtr</a> = const armnnSerializer::TensorInfo *</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00022">22</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+
+</div>
+</div>
+<a id="abd8bee7fb9b86485a60bc7ee05114270"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd8bee7fb9b86485a60bc7ee05114270">&#9670;&nbsp;</a></span>TensorRawPtrVector</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">using <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a> = std::vector&lt;<a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a80888061963ddd18e87105807a035d9a">TensorRawPtr</a>&gt;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00029">29</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a43e0ec855f3a7ebf9f98fbee5321edcf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a43e0ec855f3a7ebf9f98fbee5321edcf">&#9670;&nbsp;</a></span>Deserializer()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml">Deserializer</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#l00167">167</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#l00688">IDeserializer::CreateRaw()</a>, and <a class="el" href="_deserializer_8hpp_source.xhtml#l00049">Deserializer::~Deserializer()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;: m_Network(<span class="keyword">nullptr</span>, <span class="keyword">nullptr</span>),</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="comment">//May require LayerType_Max to be included</span></div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;m_ParserFunctions(Layer_MAX+1, &amp;Deserializer::ParseUnsupportedLayer)</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;{</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="comment">// register supported layers</span></div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; m_ParserFunctions[Layer_AbsLayer] = &amp;Deserializer::ParseAbs;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; m_ParserFunctions[Layer_ActivationLayer] = &amp;Deserializer::ParseActivation;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; m_ParserFunctions[Layer_AdditionLayer] = &amp;Deserializer::ParseAdd;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; m_ParserFunctions[Layer_ArgMinMaxLayer] = &amp;Deserializer::ParseArgMinMax;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; m_ParserFunctions[Layer_BatchToSpaceNdLayer] = &amp;Deserializer::ParseBatchToSpaceNd;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; m_ParserFunctions[Layer_BatchNormalizationLayer] = &amp;Deserializer::ParseBatchNormalization;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; m_ParserFunctions[Layer_ComparisonLayer] = &amp;Deserializer::ParseComparison;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; m_ParserFunctions[Layer_ConcatLayer] = &amp;Deserializer::ParseConcat;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; m_ParserFunctions[Layer_ConstantLayer] = &amp;Deserializer::ParseConstant;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; m_ParserFunctions[Layer_Convolution2dLayer] = &amp;Deserializer::ParseConvolution2d;</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; m_ParserFunctions[Layer_DepthToSpaceLayer] = &amp;Deserializer::ParseDepthToSpace;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; m_ParserFunctions[Layer_DepthwiseConvolution2dLayer] = &amp;Deserializer::ParseDepthwiseConvolution2d;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; m_ParserFunctions[Layer_DequantizeLayer] = &amp;Deserializer::ParseDequantize;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; m_ParserFunctions[Layer_DetectionPostProcessLayer] = &amp;Deserializer::ParseDetectionPostProcess;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; m_ParserFunctions[Layer_DivisionLayer] = &amp;Deserializer::ParseDivision;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; m_ParserFunctions[Layer_ElementwiseUnaryLayer] = &amp;Deserializer::ParseElementwiseUnary;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; m_ParserFunctions[Layer_EqualLayer] = &amp;Deserializer::ParseEqual;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; m_ParserFunctions[Layer_FullyConnectedLayer] = &amp;Deserializer::ParseFullyConnected;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; m_ParserFunctions[Layer_FillLayer] = &amp;Deserializer::ParseFill;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; m_ParserFunctions[Layer_FloorLayer] = &amp;Deserializer::ParseFloor;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; m_ParserFunctions[Layer_GatherLayer] = &amp;Deserializer::ParseGather;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; m_ParserFunctions[Layer_GreaterLayer] = &amp;Deserializer::ParseGreater;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; m_ParserFunctions[Layer_InstanceNormalizationLayer] = &amp;Deserializer::ParseInstanceNormalization;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; m_ParserFunctions[Layer_L2NormalizationLayer] = &amp;Deserializer::ParseL2Normalization;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; m_ParserFunctions[Layer_LogicalBinaryLayer] = &amp;Deserializer::ParseLogicalBinary;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; m_ParserFunctions[Layer_LogSoftmaxLayer] = &amp;Deserializer::ParseLogSoftmax;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; m_ParserFunctions[Layer_LstmLayer] = &amp;Deserializer::ParseLstm;</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; m_ParserFunctions[Layer_MaximumLayer] = &amp;Deserializer::ParseMaximum;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; m_ParserFunctions[Layer_MeanLayer] = &amp;Deserializer::ParseMean;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; m_ParserFunctions[Layer_MinimumLayer] = &amp;Deserializer::ParseMinimum;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; m_ParserFunctions[Layer_MergeLayer] = &amp;Deserializer::ParseMerge;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; m_ParserFunctions[Layer_MergerLayer] = &amp;Deserializer::ParseConcat;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; m_ParserFunctions[Layer_MultiplicationLayer] = &amp;Deserializer::ParseMultiplication;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; m_ParserFunctions[Layer_NormalizationLayer] = &amp;Deserializer::ParseNormalization;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; m_ParserFunctions[Layer_PadLayer] = &amp;Deserializer::ParsePad;</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; m_ParserFunctions[Layer_PermuteLayer] = &amp;Deserializer::ParsePermute;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; m_ParserFunctions[Layer_Pooling2dLayer] = &amp;Deserializer::ParsePooling2d;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; m_ParserFunctions[Layer_PreluLayer] = &amp;Deserializer::ParsePrelu;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; m_ParserFunctions[Layer_QLstmLayer] = &amp;Deserializer::ParseQLstm;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; m_ParserFunctions[Layer_QuantizeLayer] = &amp;Deserializer::ParseQuantize;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; m_ParserFunctions[Layer_QuantizedLstmLayer] = &amp;Deserializer::ParseQuantizedLstm;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; m_ParserFunctions[Layer_RankLayer] = &amp;Deserializer::ParseRank;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; m_ParserFunctions[Layer_ReshapeLayer] = &amp;Deserializer::ParseReshape;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; m_ParserFunctions[Layer_ResizeBilinearLayer] = &amp;Deserializer::ParseResizeBilinear;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; m_ParserFunctions[Layer_ResizeLayer] = &amp;Deserializer::ParseResize;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; m_ParserFunctions[Layer_RsqrtLayer] = &amp;Deserializer::ParseRsqrt;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; m_ParserFunctions[Layer_SliceLayer] = &amp;Deserializer::ParseSlice;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; m_ParserFunctions[Layer_SoftmaxLayer] = &amp;Deserializer::ParseSoftmax;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; m_ParserFunctions[Layer_SpaceToBatchNdLayer] = &amp;Deserializer::ParseSpaceToBatchNd;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; m_ParserFunctions[Layer_SpaceToDepthLayer] = &amp;Deserializer::ParseSpaceToDepth;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; m_ParserFunctions[Layer_SplitterLayer] = &amp;Deserializer::ParseSplitter;</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; m_ParserFunctions[Layer_StackLayer] = &amp;Deserializer::ParseStack;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; m_ParserFunctions[Layer_StandInLayer] = &amp;Deserializer::ParseStandIn;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; m_ParserFunctions[Layer_StridedSliceLayer] = &amp;Deserializer::ParseStridedSlice;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; m_ParserFunctions[Layer_SubtractionLayer] = &amp;Deserializer::ParseSubtraction;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; m_ParserFunctions[Layer_SwitchLayer] = &amp;Deserializer::ParseSwitch;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; m_ParserFunctions[Layer_TransposeConvolution2dLayer] = &amp;Deserializer::ParseTransposeConvolution2d;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; m_ParserFunctions[Layer_TransposeLayer] = &amp;Deserializer::ParseTranspose;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="adcc4ae100496aaa3e6766dce0271033d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adcc4ae100496aaa3e6766dce0271033d">&#9670;&nbsp;</a></span>~Deserializer()</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_deserializer.xhtml">Deserializer</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">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8hpp_source.xhtml#l00049">49</a> of file <a class="el" href="_deserializer_8hpp_source.xhtml">Deserializer.hpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_deserializer_8cpp_source.xhtml#l00167">Deserializer::Deserializer()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00233">Deserializer::GetBaseLayer()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00372">Deserializer::GetBindingLayerInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00636">Deserializer::GetInputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00365">Deserializer::GetLayerName()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02564">Deserializer::GetLstmDescriptor()</a>, <a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a327a399d46f8216c9f4c1eea5f18a542">Deserializer::GetLstmInputParams()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02255">Deserializer::GetNormalizationDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00654">Deserializer::GetOutputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l01880">Deserializer::GetPoolingDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02695">Deserializer::GetQLstmDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00718">Deserializer::LoadGraphFromBinary()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l02010">Deserializer::OutputShapeOfReshape()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;{}</div></div><!-- fragment -->
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ae8ee09f5e3e78ecfdf00acfdc37588dc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae8ee09f5e3e78ecfdf00acfdc37588dc">&#9670;&nbsp;</a></span>CreateNetworkFromBinary() <span class="overload">[1/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="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>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Create an input network from binary file contents. </p>
+
+<p>Implements <a class="el" href="classarmnn_deserializer_1_1_i_deserializer.xhtml#a7dd0134440a006226f95d547f0b3e89c">IDeserializer</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00703">703</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#l00718">Deserializer::LoadGraphFromBinary()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160;{</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; ResetParser();</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; <a class="code" href="classarmnn_deserializer_1_1_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> graph = <a class="code" href="classarmnn_deserializer_1_1_deserializer.xhtml#a0ba4effa5ee7ef715b1f452365c41f97">LoadGraphFromBinary</a>(binaryContent.data(), binaryContent.size());</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; <span class="keywordflow">return</span> CreateNetworkFromGraph(graph);</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160;}</div><div class="ttc" id="classarmnn_deserializer_1_1_deserializer_xhtml_a0ba4effa5ee7ef715b1f452365c41f97"><div class="ttname"><a href="classarmnn_deserializer_1_1_deserializer.xhtml#a0ba4effa5ee7ef715b1f452365c41f97">armnnDeserializer::Deserializer::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#l00718">Deserializer.cpp:718</a></div></div>
+<div class="ttc" id="classarmnn_deserializer_1_1_deserializer_xhtml_a38c1f8ba8e51364802669c968cf98ff5"><div class="ttname"><a href="classarmnn_deserializer_1_1_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">armnnDeserializer::Deserializer::GraphPtr</a></div><div class="ttdeci">const armnnSerializer::SerializedGraph * GraphPtr</div><div class="ttdef"><b>Definition:</b> <a href="_deserializer_8hpp_source.xhtml#l00021">Deserializer.hpp:21</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="aba8f9e71e60dd58b6e1165b3accd43b8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aba8f9e71e60dd58b6e1165b3accd43b8">&#9670;&nbsp;</a></span>CreateNetworkFromBinary() <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="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>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Create an input network from a binary input stream. </p>
+
+<p>Implements <a class="el" href="classarmnn_deserializer_1_1_i_deserializer.xhtml#af2fc17d61fa555423b2b1665c918cf5a">IDeserializer</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00710">710</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#l00718">Deserializer::LoadGraphFromBinary()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160;{</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; ResetParser();</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; std::vector&lt;uint8_t&gt; content((std::istreambuf_iterator&lt;char&gt;(binaryContent)), std::istreambuf_iterator&lt;char&gt;());</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; <a class="code" href="classarmnn_deserializer_1_1_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">GraphPtr</a> graph = <a class="code" href="classarmnn_deserializer_1_1_deserializer.xhtml#a0ba4effa5ee7ef715b1f452365c41f97">LoadGraphFromBinary</a>(content.data(), content.size());</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; <span class="keywordflow">return</span> CreateNetworkFromGraph(graph);</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160;}</div><div class="ttc" id="classarmnn_deserializer_1_1_deserializer_xhtml_a0ba4effa5ee7ef715b1f452365c41f97"><div class="ttname"><a href="classarmnn_deserializer_1_1_deserializer.xhtml#a0ba4effa5ee7ef715b1f452365c41f97">armnnDeserializer::Deserializer::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#l00718">Deserializer.cpp:718</a></div></div>
+<div class="ttc" id="classarmnn_deserializer_1_1_deserializer_xhtml_a38c1f8ba8e51364802669c968cf98ff5"><div class="ttname"><a href="classarmnn_deserializer_1_1_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">armnnDeserializer::Deserializer::GraphPtr</a></div><div class="ttdeci">const armnnSerializer::SerializedGraph * GraphPtr</div><div class="ttdef"><b>Definition:</b> <a href="_deserializer_8hpp_source.xhtml#l00021">Deserializer.hpp:21</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a6f332fc8fc6cf6488f8d8e374a4264fc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6f332fc8fc6cf6488f8d8e374a4264fc">&#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="classarmnn_deserializer_1_1_deserializer.xhtml#a91ade61b5704e4f2c38c263c2be148ef">Deserializer::LayerBaseRawPtr</a> GetBaseLayer </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classarmnn_deserializer_1_1_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#l00233">233</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#l00636">Deserializer::GetInputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00365">Deserializer::GetLayerName()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00793">Deserializer::GetNetworkOutputBindingInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00654">Deserializer::GetOutputs()</a>, and <a class="el" href="_deserializer_8hpp_source.xhtml#l00049">Deserializer::~Deserializer()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;{</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keyword">auto</span> layerType = graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_type();</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keywordflow">switch</span>(layerType)</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; {</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="keywordflow">case</span> Layer::Layer_AbsLayer:</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</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="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ActivationLayer:</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</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="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">case</span> Layer::Layer_AdditionLayer:</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</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="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ArgMinMaxLayer:</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</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="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">case</span> Layer::Layer_BatchToSpaceNdLayer:</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</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="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">case</span> Layer::Layer_BatchNormalizationLayer:</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</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="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ComparisonLayer:</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</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="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ConcatLayer:</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</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="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ConstantLayer:</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</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="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">case</span> Layer::Layer_Convolution2dLayer:</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</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="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordflow">case</span> Layer::Layer_DepthToSpaceLayer:</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</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="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">case</span> Layer::Layer_DepthwiseConvolution2dLayer:</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</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="l00263"></a><span class="lineno"> 263</span>&#160; <span class="keywordflow">case</span> Layer::Layer_DequantizeLayer:</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</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="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordflow">case</span> Layer::Layer_DetectionPostProcessLayer:</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</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="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">case</span> Layer::Layer_DivisionLayer:</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</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="l00269"></a><span class="lineno"> 269</span>&#160; <span class="keywordflow">case</span> Layer::Layer_EqualLayer:</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</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="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ElementwiseUnaryLayer:</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</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="l00273"></a><span class="lineno"> 273</span>&#160; <span class="keywordflow">case</span> Layer::Layer_FullyConnectedLayer:</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</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="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">case</span> Layer::Layer_FillLayer:</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</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="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">case</span> Layer::Layer_FloorLayer:</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</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="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordflow">case</span> Layer::Layer_GatherLayer:</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</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="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">case</span> Layer::Layer_GreaterLayer:</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</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="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">case</span> Layer::Layer_InputLayer:</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</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="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">case</span> Layer::Layer_InstanceNormalizationLayer:</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</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="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">case</span> Layer::Layer_L2NormalizationLayer:</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</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="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">case</span> Layer::Layer_LogicalBinaryLayer:</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</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="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">case</span> Layer::Layer_LogSoftmaxLayer:</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</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="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">case</span> Layer::Layer_LstmLayer:</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</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="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">case</span> Layer::Layer_MeanLayer:</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</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="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">case</span> Layer::Layer_MinimumLayer:</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</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="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">case</span> Layer::Layer_MaximumLayer:</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</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="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keywordflow">case</span> Layer::Layer_MergeLayer:</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</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="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">case</span> Layer::Layer_MergerLayer:</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</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="l00305"></a><span class="lineno"> 305</span>&#160; <span class="keywordflow">case</span> Layer::Layer_MultiplicationLayer:</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</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="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">case</span> Layer::Layer_NormalizationLayer:</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</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="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordflow">case</span> Layer::Layer_OutputLayer:</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</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="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keywordflow">case</span> Layer::Layer_PadLayer:</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</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="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">case</span> Layer::Layer_PermuteLayer:</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</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="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">case</span> Layer::Layer_Pooling2dLayer:</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</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="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">case</span> Layer::Layer_PreluLayer:</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</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="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">case</span> Layer::Layer_QLstmLayer:</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</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="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keywordflow">case</span> Layer::Layer_QuantizeLayer:</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</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="l00323"></a><span class="lineno"> 323</span>&#160; <span class="keywordflow">case</span> Layer::Layer_QuantizedLstmLayer:</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</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="l00325"></a><span class="lineno"> 325</span>&#160; <span class="keywordflow">case</span> Layer::Layer_RankLayer:</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</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="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ReshapeLayer:</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</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="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ResizeBilinearLayer:</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</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="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">case</span> Layer::Layer_ResizeLayer:</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</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="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">case</span> Layer::Layer_RsqrtLayer:</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</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="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordflow">case</span> Layer::Layer_SliceLayer:</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</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="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">case</span> Layer::Layer_SoftmaxLayer:</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</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="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">case</span> Layer::Layer_SpaceToBatchNdLayer:</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</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="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">case</span> Layer::Layer_SpaceToDepthLayer:</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</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="l00343"></a><span class="lineno"> 343</span>&#160; <span class="keywordflow">case</span> Layer::Layer_SplitterLayer:</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</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="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordflow">case</span> Layer::Layer_StackLayer:</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</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="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keywordflow">case</span> Layer::Layer_StandInLayer:</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</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="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">case</span> Layer::Layer_StridedSliceLayer:</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</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="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keywordflow">case</span> Layer::Layer_SubtractionLayer:</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</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="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">case</span> Layer::Layer_SwitchLayer:</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</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="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">case</span> Layer::Layer_TransposeConvolution2dLayer:</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</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="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">case</span> Layer::Layer_TransposeLayer:</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</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="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keywordflow">case</span> Layer::Layer_NONE:</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</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="l00362"></a><span class="lineno"> 362</span>&#160; }</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</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="classarmnn_deserializer_1_1_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#l00372">372</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#l00793">Deserializer::GetNetworkOutputBindingInfo()</a>, and <a class="el" href="_deserializer_8hpp_source.xhtml#l00049">Deserializer::~Deserializer()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;{</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keyword">auto</span> layerType = graphPtr-&gt;layers()-&gt;Get(layerIndex)-&gt;layer_type();</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <span class="keywordflow">if</span> (layerType == Layer::Layer_InputLayer)</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; {</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</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="l00379"></a><span class="lineno"> 379</span>&#160; }</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( layerType == Layer::Layer_OutputLayer )</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; {</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</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="l00383"></a><span class="lineno"> 383</span>&#160; }</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;}</div></div><!-- fragment -->
+</div>
+</div>
+<a id="a0953e42cc1f6bb2a50504b631d68b114"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0953e42cc1f6bb2a50504b631d68b114">&#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="classarmnn_deserializer_1_1_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">Deserializer::TensorRawPtrVector</a> GetInputs </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classarmnn_deserializer_1_1_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#l00636">636</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#l00141">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#l00233">Deserializer::GetBaseLayer()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8cpp_source.xhtml#l02564">Deserializer::GetLstmDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00793">Deserializer::GetNetworkOutputBindingInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02255">Deserializer::GetNormalizationDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l01626">armnnDeserializer::GetOriginsDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l01880">Deserializer::GetPoolingDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02695">Deserializer::GetQLstmDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02010">Deserializer::OutputShapeOfReshape()</a>, and <a class="el" href="_deserializer_8hpp_source.xhtml#l00049">Deserializer::~Deserializer()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160;{</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; <a class="code" href="_deserializer_8cpp.xhtml#aa6798881c467e8e1a1906303f6d9e26d">CHECK_LAYERS</a>(graphPtr, 0, layerIndex);</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; <span class="keyword">auto</span> layer = <a class="code" href="classarmnn_deserializer_1_1_deserializer.xhtml#a6f332fc8fc6cf6488f8d8e374a4264fc">GetBaseLayer</a>(graphPtr, layerIndex);</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</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="l00642"></a><span class="lineno"> 642</span>&#160;</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; <a class="code" href="classarmnn_deserializer_1_1_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a> result(numInputs);</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160;</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</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="l00646"></a><span class="lineno"> 646</span>&#160; {</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</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="l00648"></a><span class="lineno"> 648</span>&#160; (layer-&gt;inputSlots()-&gt;Get(i)-&gt;connection()-&gt;sourceLayerIndex()));</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; result[i] = <a class="code" href="classarmnn_deserializer_1_1_deserializer.xhtml#a6f332fc8fc6cf6488f8d8e374a4264fc">GetBaseLayer</a>(graphPtr, inputId)-&gt;outputSlots()-&gt;Get(0)-&gt;tensorInfo();</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; }</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; <span class="keywordflow">return</span> result;</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</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#l00141">Deserializer.cpp:141</a></div></div>
+<div class="ttc" id="classarmnn_deserializer_1_1_deserializer_xhtml_a6f332fc8fc6cf6488f8d8e374a4264fc"><div class="ttname"><a href="classarmnn_deserializer_1_1_deserializer.xhtml#a6f332fc8fc6cf6488f8d8e374a4264fc">armnnDeserializer::Deserializer::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#l00233">Deserializer.cpp:233</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 class="ttc" id="classarmnn_deserializer_1_1_deserializer_xhtml_abd8bee7fb9b86485a60bc7ee05114270"><div class="ttname"><a href="classarmnn_deserializer_1_1_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">armnnDeserializer::Deserializer::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#l00029">Deserializer.hpp:29</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="classarmnn_deserializer_1_1_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#l00365">365</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#l00233">Deserializer::GetBaseLayer()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8cpp_source.xhtml#l02564">Deserializer::GetLstmDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00793">Deserializer::GetNetworkOutputBindingInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02255">Deserializer::GetNormalizationDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l01626">armnnDeserializer::GetOriginsDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l01880">Deserializer::GetPoolingDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02695">Deserializer::GetQLstmDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02010">Deserializer::OutputShapeOfReshape()</a>, and <a class="el" href="_deserializer_8hpp_source.xhtml#l00049">Deserializer::~Deserializer()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160;{</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <span class="keyword">auto</span> layer = <a class="code" href="classarmnn_deserializer_1_1_deserializer.xhtml#a6f332fc8fc6cf6488f8d8e374a4264fc">GetBaseLayer</a>(graph, index);</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; assert(layer);</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keywordflow">return</span> layer-&gt;layerName()-&gt;str();</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;}</div><div class="ttc" id="classarmnn_deserializer_1_1_deserializer_xhtml_a6f332fc8fc6cf6488f8d8e374a4264fc"><div class="ttname"><a href="classarmnn_deserializer_1_1_deserializer.xhtml#a6f332fc8fc6cf6488f8d8e374a4264fc">armnnDeserializer::Deserializer::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#l00233">Deserializer.cpp:233</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="classarmnn_deserializer_1_1_deserializer.xhtml#a15397ee26bc4b7d3a459b05e457be428">Deserializer::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#l02564">2564</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#l00141">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#l00636">Deserializer::GetInputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00365">Deserializer::GetLayerName()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00654">Deserializer::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#l00921">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#l00927">LstmDescriptor::m_CifgEnabled</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00923">LstmDescriptor::m_ClippingThresCell</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00925">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#l00933">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#l00929">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#l00931">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#l00594">armnnDeserializer::ToConstTensor()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00509">armnnDeserializer::ToTensorInfo()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8hpp_source.xhtml#l00049">Deserializer::~Deserializer()</a>.</p>
+<div class="fragment"><div class="line"><a name="l02565"></a><span class="lineno"> 2565</span>&#160;{</div><div class="line"><a name="l02566"></a><span class="lineno"> 2566</span>&#160; <a class="code" href="structarmnn_1_1_lstm_descriptor.xhtml">armnn::LstmDescriptor</a> desc;</div><div class="line"><a name="l02567"></a><span class="lineno"> 2567</span>&#160;</div><div class="line"><a name="l02568"></a><span class="lineno"> 2568</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="l02569"></a><span class="lineno"> 2569</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="l02570"></a><span class="lineno"> 2570</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="l02571"></a><span class="lineno"> 2571</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="l02572"></a><span class="lineno"> 2572</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="l02573"></a><span class="lineno"> 2573</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="l02574"></a><span class="lineno"> 2574</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="l02575"></a><span class="lineno"> 2575</span>&#160;</div><div class="line"><a name="l02576"></a><span class="lineno"> 2576</span>&#160; <span class="keywordflow">return</span> desc;</div><div class="line"><a name="l02577"></a><span class="lineno"> 2577</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#l00931">Descriptors.hpp:931</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#l00925">Descriptors.hpp:925</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#l00897">Descriptors.hpp:897</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#l00929">Descriptors.hpp:929</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#l00921">Descriptors.hpp:921</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#l00923">Descriptors.hpp:923</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#l00927">Descriptors.hpp:927</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#l00933">Descriptors.hpp:933</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="classarmnn_deserializer_1_1_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="classarmnn_deserializer_1_1_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">
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8hpp_source.xhtml#l00049">Deserializer::~Deserializer()</a>.</p>
+
+</div>
+</div>
+<a id="a66c5e4250559faefd7f0fa35ccbdc9eb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a66c5e4250559faefd7f0fa35ccbdc9eb">&#9670;&nbsp;</a></span>GetNetworkInputBindingInfo()</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_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>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Retrieve binding info (layer id and tensor info) for the network input identified by the given layer name. </p>
+
+<p>Implements <a class="el" href="classarmnn_deserializer_1_1_i_deserializer.xhtml#a81942c860d8fb0a0e728df3d81063695">IDeserializer</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00777">777</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#l00197">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="l00779"></a><span class="lineno"> 779</span>&#160;{</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(layerIndex);</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> inputBinding : m_InputBindings)</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; {</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; <span class="keywordflow">if</span> (inputBinding.first == name)</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; {</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; <span class="keywordflow">return</span> inputBinding.second;</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; }</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; <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="l00789"></a><span class="lineno"> 789</span>&#160; name,</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; <a class="code" href="_exceptions_8hpp.xhtml#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</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#l00197">Exceptions.hpp:197</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="ae9cf8ca62e8da6d21e08dc130f68dce4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae9cf8ca62e8da6d21e08dc130f68dce4">&#9670;&nbsp;</a></span>GetNetworkOutputBindingInfo()</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_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>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Retrieve binding info (layer id and tensor info) for the network output identified by the given layer name. </p>
+
+<p>Implements <a class="el" href="classarmnn_deserializer_1_1_i_deserializer.xhtml#a55f70496b6f2ff261e36a5fceacf240d">IDeserializer</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_deserializer_8cpp_source.xhtml#l00793">793</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="_neon_end_to_end_tests_8cpp.xhtml#ac0981848e4ae57729f14f72bd4caa9f8">anchors()</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#l00144">CHECK_GRAPH</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00141">CHECK_LAYERS</a>, <a class="el" href="_exceptions_8hpp_source.xhtml#l00197">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#l00233">Deserializer::GetBaseLayer()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00372">Deserializer::GetBindingLayerInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00636">Deserializer::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#l00365">Deserializer::GetLayerName()</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#l00654">Deserializer::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#l00045">ActivationDescriptor::m_A</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00067">ArgMinMaxDescriptor::m_Axis</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00047">ActivationDescriptor::m_B</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00147">SoftmaxDescriptor::m_Beta</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00660">InstanceNormalizationDescriptor::m_Beta</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00449">Convolution2dDescriptor::m_BiasEnabled</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00501">DepthwiseConvolution2dDescriptor::m_BiasEnabled</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00691">BatchToSpaceNdDescriptor::m_BlockShape</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00887">SpaceToDepthDescriptor::m_BlockSize</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00693">BatchToSpaceNdDescriptor::m_Crops</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00451">Convolution2dDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00503">DepthwiseConvolution2dDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00617">L2NormalizationDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00636">BatchNormalizationDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00664">InstanceNormalizationDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00695">BatchToSpaceNdDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00890">SpaceToDepthDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00542">DetectionPostProcessDescriptor::m_DetectionsPerClass</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00445">Convolution2dDescriptor::m_DilationX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00497">DepthwiseConvolution2dDescriptor::m_DilationX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00447">Convolution2dDescriptor::m_DilationY</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00499">DepthwiseConvolution2dDescriptor::m_DilationY</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00615">L2NormalizationDescriptor::m_Eps</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00634">BatchNormalizationDescriptor::m_Eps</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00662">InstanceNormalizationDescriptor::m_Eps</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00043">ActivationDescriptor::m_Function</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00065">ArgMinMaxDescriptor::m_Function</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00658">InstanceNormalizationDescriptor::m_Gamma</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00540">DetectionPostProcessDescriptor::m_MaxClassesPerDetection</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00538">DetectionPostProcessDescriptor::m_MaxDetections</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00546">DetectionPostProcessDescriptor::m_NmsIouThreshold</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00544">DetectionPostProcessDescriptor::m_NmsScoreThreshold</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00548">DetectionPostProcessDescriptor::m_NumClasses</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01286">LogicalBinaryDescriptor::m_Operation</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00439">Convolution2dDescriptor::m_PadBottom</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00491">DepthwiseConvolution2dDescriptor::m_PadBottom</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00433">Convolution2dDescriptor::m_PadLeft</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00485">DepthwiseConvolution2dDescriptor::m_PadLeft</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00435">Convolution2dDescriptor::m_PadRight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00487">DepthwiseConvolution2dDescriptor::m_PadRight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00437">Convolution2dDescriptor::m_PadTop</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00489">DepthwiseConvolution2dDescriptor::m_PadTop</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00558">DetectionPostProcessDescriptor::m_ScaleH</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00556">DetectionPostProcessDescriptor::m_ScaleW</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00552">DetectionPostProcessDescriptor::m_ScaleX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00554">DetectionPostProcessDescriptor::m_ScaleY</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00441">Convolution2dDescriptor::m_StrideX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00493">DepthwiseConvolution2dDescriptor::m_StrideX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00443">Convolution2dDescriptor::m_StrideY</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00495">DepthwiseConvolution2dDescriptor::m_StrideY</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00550">DetectionPostProcessDescriptor::m_UseRegularNms</a>, <a class="el" href="_numeric_cast_8hpp_source.xhtml#l00035">armnn::numeric_cast()</a>, <a class="el" href="classarmnn_1_1_i_output_slot.xhtml#a5ee4a6c9a2481245487b1b1a70d20fd0">IOutputSlot::SetTensorInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00399">armnnDeserializer::ToActivationFunction()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00430">armnnDeserializer::ToArgMinMaxFunction()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00594">armnnDeserializer::ToConstTensor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00387">armnnDeserializer::ToDataLayout()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00462">armnnDeserializer::ToLogicalBinaryOperation()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00509">armnnDeserializer::ToTensorInfo()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160;{</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(layerIndex);</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> outputBinding : m_OutputBindings)</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; {</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; <span class="keywordflow">if</span> (outputBinding.first == name)</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; {</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; <span class="keywordflow">return</span> outputBinding.second;</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; }</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; }</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</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="l00805"></a><span class="lineno"> 805</span>&#160; name,</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160; <a class="code" href="_exceptions_8hpp.xhtml#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</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#l00197">Exceptions.hpp:197</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="classarmnn_deserializer_1_1_deserializer.xhtml#a2a282cf18fcfe848b47e946327ca1048">Deserializer::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#l02255">2255</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#l00141">CHECK_LAYERS</a>, <a class="el" href="_exceptions_8hpp_source.xhtml#l00197">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#l00636">Deserializer::GetInputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00365">Deserializer::GetLayerName()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00654">Deserializer::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#l00592">NormalizationDescriptor::m_Alpha</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00753">GatherDescriptor::m_Axis</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00955">MeanDescriptor::m_Axis</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01003">SliceDescriptor::m_Begin</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00594">NormalizationDescriptor::m_Beta</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00598">NormalizationDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00596">NormalizationDescriptor::m_K</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00957">MeanDescriptor::m_KeepDims</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00586">NormalizationDescriptor::m_NormChannelType</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00588">NormalizationDescriptor::m_NormMethodType</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00590">NormalizationDescriptor::m_NormSize</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01006">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#l00387">armnnDeserializer::ToDataLayout()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00509">armnnDeserializer::ToTensorInfo()</a>, and <a class="el" href="namespacearmnn.xhtml#abe18a5033f2ab9c0de82c676b48f5437a37bac6dce4f46277d89bfa3003e2e39b">armnn::Within</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8hpp_source.xhtml#l00049">Deserializer::~Deserializer()</a>.</p>
+<div class="fragment"><div class="line"><a name="l02258"></a><span class="lineno"> 2258</span>&#160;{</div><div class="line"><a name="l02259"></a><span class="lineno"> 2259</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(layerIndex);</div><div class="line"><a name="l02260"></a><span class="lineno"> 2260</span>&#160; <a class="code" href="structarmnn_1_1_normalization_descriptor.xhtml">armnn::NormalizationDescriptor</a> desc;</div><div class="line"><a name="l02261"></a><span class="lineno"> 2261</span>&#160;</div><div class="line"><a name="l02262"></a><span class="lineno"> 2262</span>&#160; <span class="keywordflow">switch</span> (normalizationDescriptor-&gt;normChannelType())</div><div class="line"><a name="l02263"></a><span class="lineno"> 2263</span>&#160; {</div><div class="line"><a name="l02264"></a><span class="lineno"> 2264</span>&#160; <span class="keywordflow">case</span> NormalizationAlgorithmChannel_Across:</div><div class="line"><a name="l02265"></a><span class="lineno"> 2265</span>&#160; {</div><div class="line"><a name="l02266"></a><span class="lineno"> 2266</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="l02267"></a><span class="lineno"> 2267</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02268"></a><span class="lineno"> 2268</span>&#160; }</div><div class="line"><a name="l02269"></a><span class="lineno"> 2269</span>&#160; <span class="keywordflow">case</span> NormalizationAlgorithmChannel_Within:</div><div class="line"><a name="l02270"></a><span class="lineno"> 2270</span>&#160; {</div><div class="line"><a name="l02271"></a><span class="lineno"> 2271</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="l02272"></a><span class="lineno"> 2272</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02273"></a><span class="lineno"> 2273</span>&#160; }</div><div class="line"><a name="l02274"></a><span class="lineno"> 2274</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02275"></a><span class="lineno"> 2275</span>&#160; {</div><div class="line"><a name="l02276"></a><span class="lineno"> 2276</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="l02277"></a><span class="lineno"> 2277</span>&#160; }</div><div class="line"><a name="l02278"></a><span class="lineno"> 2278</span>&#160; }</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">switch</span> (normalizationDescriptor-&gt;normMethodType())</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; <span class="keywordflow">case</span> NormalizationAlgorithmMethod_LocalBrightness:</div><div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>&#160; {</div><div class="line"><a name="l02284"></a><span class="lineno"> 2284</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="l02285"></a><span class="lineno"> 2285</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> NormalizationAlgorithmMethod_LocalContrast:</div><div class="line"><a name="l02288"></a><span class="lineno"> 2288</span>&#160; {</div><div class="line"><a name="l02289"></a><span class="lineno"> 2289</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="l02290"></a><span class="lineno"> 2290</span>&#160; <span class="keywordflow">break</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; <span class="keywordflow">default</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; <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="l02295"></a><span class="lineno"> 2295</span>&#160; }</div><div class="line"><a name="l02296"></a><span class="lineno"> 2296</span>&#160; }</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">switch</span> (normalizationDescriptor-&gt;dataLayout())</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; <span class="keywordflow">case</span> DataLayout_NCHW:</div><div class="line"><a name="l02301"></a><span class="lineno"> 2301</span>&#160; {</div><div class="line"><a name="l02302"></a><span class="lineno"> 2302</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="l02303"></a><span class="lineno"> 2303</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> DataLayout_NHWC:</div><div class="line"><a name="l02306"></a><span class="lineno"> 2306</span>&#160; {</div><div class="line"><a name="l02307"></a><span class="lineno"> 2307</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="l02308"></a><span class="lineno"> 2308</span>&#160; <span class="keywordflow">break</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; <span class="keywordflow">default</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; <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="l02313"></a><span class="lineno"> 2313</span>&#160; }</div><div class="line"><a name="l02314"></a><span class="lineno"> 2314</span>&#160; }</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; desc.<a class="code" href="structarmnn_1_1_normalization_descriptor.xhtml#a174279be57d7596eeb04c6b7f7510f99">m_Alpha</a> = normalizationDescriptor-&gt;alpha();</div><div class="line"><a name="l02317"></a><span class="lineno"> 2317</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="l02318"></a><span class="lineno"> 2318</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="l02319"></a><span class="lineno"> 2319</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="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">return</span> desc;</div><div class="line"><a name="l02322"></a><span class="lineno"> 2322</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#l00596">Descriptors.hpp:596</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#l00592">Descriptors.hpp:592</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#l00598">Descriptors.hpp:598</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#l00588">Descriptors.hpp:588</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#l00586">Descriptors.hpp:586</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#l00562">Descriptors.hpp:562</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#l00594">Descriptors.hpp:594</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#l00590">Descriptors.hpp:590</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="a0c9267a47f5d254898c67bc0cb2535b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0c9267a47f5d254898c67bc0cb2535b9">&#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="classarmnn_deserializer_1_1_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">Deserializer::TensorRawPtrVector</a> GetOutputs </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classarmnn_deserializer_1_1_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#l00654">654</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#l00141">CHECK_LAYERS</a>, <a class="el" href="_exceptions_8hpp_source.xhtml#l00197">CHECK_LOCATION</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00233">Deserializer::GetBaseLayer()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8cpp_source.xhtml#l02564">Deserializer::GetLstmDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00793">Deserializer::GetNetworkOutputBindingInfo()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02255">Deserializer::GetNormalizationDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l01626">armnnDeserializer::GetOriginsDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l01880">Deserializer::GetPoolingDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02695">Deserializer::GetQLstmDescriptor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l02010">Deserializer::OutputShapeOfReshape()</a>, and <a class="el" href="_deserializer_8hpp_source.xhtml#l00049">Deserializer::~Deserializer()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160;{</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; <a class="code" href="_deserializer_8cpp.xhtml#aa6798881c467e8e1a1906303f6d9e26d">CHECK_LAYERS</a>(graphPtr, 0, layerIndex);</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; <span class="keyword">auto</span> layer = <a class="code" href="classarmnn_deserializer_1_1_deserializer.xhtml#a6f332fc8fc6cf6488f8d8e374a4264fc">GetBaseLayer</a>(graphPtr, layerIndex);</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</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="l00660"></a><span class="lineno"> 660</span>&#160;</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <a class="code" href="classarmnn_deserializer_1_1_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a> result(numOutputs);</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160;</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</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="l00664"></a><span class="lineno"> 664</span>&#160; {</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; result[i] = layer-&gt;outputSlots()-&gt;Get(i)-&gt;tensorInfo();</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; }</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; <span class="keywordflow">return</span> result;</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</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#l00141">Deserializer.cpp:141</a></div></div>
+<div class="ttc" id="classarmnn_deserializer_1_1_deserializer_xhtml_a6f332fc8fc6cf6488f8d8e374a4264fc"><div class="ttname"><a href="classarmnn_deserializer_1_1_deserializer.xhtml#a6f332fc8fc6cf6488f8d8e374a4264fc">armnnDeserializer::Deserializer::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#l00233">Deserializer.cpp:233</a></div></div>
+<div class="ttc" id="classarmnn_deserializer_1_1_deserializer_xhtml_abd8bee7fb9b86485a60bc7ee05114270"><div class="ttname"><a href="classarmnn_deserializer_1_1_deserializer.xhtml#abd8bee7fb9b86485a60bc7ee05114270">armnnDeserializer::Deserializer::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#l00029">Deserializer.hpp:29</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a271f00048f7e48392794c2eee17c1e2c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a271f00048f7e48392794c2eee17c1e2c">&#9670;&nbsp;</a></span>GetPoolingDescriptor()</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> GetPoolingDescriptor </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classarmnn_deserializer_1_1_deserializer.xhtml#a0dc66e036f16781886a1ce530e11c2d8">Deserializer::PoolingDescriptor</a>&#160;</td>
+ <td class="paramname"><em>pooling2dDesc</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#l01880">1880</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#l00141">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#l00636">Deserializer::GetInputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00365">Deserializer::GetLayerName()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00654">Deserializer::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#a3888429b6ebc79f9a7df549e5e4d9a2faad301514192636ad34210adce598a45a">armnn::IgnoreValue</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00380">Pooling2dDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00376">Pooling2dDescriptor::m_OutputShapeRounding</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00366">Pooling2dDescriptor::m_PadBottom</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00378">Pooling2dDescriptor::m_PaddingMethod</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00360">Pooling2dDescriptor::m_PadLeft</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00362">Pooling2dDescriptor::m_PadRight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00364">Pooling2dDescriptor::m_PadTop</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00370">Pooling2dDescriptor::m_PoolHeight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00358">Pooling2dDescriptor::m_PoolType</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00368">Pooling2dDescriptor::m_PoolWidth</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00372">Pooling2dDescriptor::m_StrideX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00374">Pooling2dDescriptor::m_StrideY</a>, <a class="el" href="namespacearmnn.xhtml#a961bbfe1db71a848eff5a1f0ab775718a6a061313d22e51e0f25b7cd4dc065233">armnn::Max</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="classarmnn_1_1_i_output_slot.xhtml#a5ee4a6c9a2481245487b1b1a70d20fd0">IOutputSlot::SetTensorInfo()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00509">armnnDeserializer::ToTensorInfo()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8hpp_source.xhtml#l00049">Deserializer::~Deserializer()</a>.</p>
+<div class="fragment"><div class="line"><a name="l01882"></a><span class="lineno"> 1882</span>&#160;{</div><div class="line"><a name="l01883"></a><span class="lineno"> 1883</span>&#160; <a class="code" href="namespacearmnn.xhtml#a44affeeb090c3c6a3062830562672e84">IgnoreUnused</a>(layerIndex);</div><div class="line"><a name="l01884"></a><span class="lineno"> 1884</span>&#160; <a class="code" href="structarmnn_1_1_pooling2d_descriptor.xhtml">armnn::Pooling2dDescriptor</a> desc;</div><div class="line"><a name="l01885"></a><span class="lineno"> 1885</span>&#160;</div><div class="line"><a name="l01886"></a><span class="lineno"> 1886</span>&#160; <span class="keywordflow">switch</span> (pooling2dDesc-&gt;poolType())</div><div class="line"><a name="l01887"></a><span class="lineno"> 1887</span>&#160; {</div><div class="line"><a name="l01888"></a><span class="lineno"> 1888</span>&#160; <span class="keywordflow">case</span> PoolingAlgorithm_Average:</div><div class="line"><a name="l01889"></a><span class="lineno"> 1889</span>&#160; {</div><div class="line"><a name="l01890"></a><span class="lineno"> 1890</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="l01891"></a><span class="lineno"> 1891</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01892"></a><span class="lineno"> 1892</span>&#160; }</div><div class="line"><a name="l01893"></a><span class="lineno"> 1893</span>&#160; <span class="keywordflow">case</span> PoolingAlgorithm_Max:</div><div class="line"><a name="l01894"></a><span class="lineno"> 1894</span>&#160; {</div><div class="line"><a name="l01895"></a><span class="lineno"> 1895</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="l01896"></a><span class="lineno"> 1896</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01897"></a><span class="lineno"> 1897</span>&#160; }</div><div class="line"><a name="l01898"></a><span class="lineno"> 1898</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01899"></a><span class="lineno"> 1899</span>&#160; {</div><div class="line"><a name="l01900"></a><span class="lineno"> 1900</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="l01901"></a><span class="lineno"> 1901</span>&#160; }</div><div class="line"><a name="l01902"></a><span class="lineno"> 1902</span>&#160; }</div><div class="line"><a name="l01903"></a><span class="lineno"> 1903</span>&#160;</div><div class="line"><a name="l01904"></a><span class="lineno"> 1904</span>&#160; <span class="keywordflow">switch</span> (pooling2dDesc-&gt;outputShapeRounding())</div><div class="line"><a name="l01905"></a><span class="lineno"> 1905</span>&#160; {</div><div class="line"><a name="l01906"></a><span class="lineno"> 1906</span>&#160; <span class="keywordflow">case</span> OutputShapeRounding_Floor:</div><div class="line"><a name="l01907"></a><span class="lineno"> 1907</span>&#160; {</div><div class="line"><a name="l01908"></a><span class="lineno"> 1908</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="l01909"></a><span class="lineno"> 1909</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>&#160; }</div><div class="line"><a name="l01911"></a><span class="lineno"> 1911</span>&#160; <span class="keywordflow">case</span> OutputShapeRounding_Ceiling:</div><div class="line"><a name="l01912"></a><span class="lineno"> 1912</span>&#160; {</div><div class="line"><a name="l01913"></a><span class="lineno"> 1913</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="l01914"></a><span class="lineno"> 1914</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01915"></a><span class="lineno"> 1915</span>&#160; }</div><div class="line"><a name="l01916"></a><span class="lineno"> 1916</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01917"></a><span class="lineno"> 1917</span>&#160; {</div><div class="line"><a name="l01918"></a><span class="lineno"> 1918</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="l01919"></a><span class="lineno"> 1919</span>&#160; }</div><div class="line"><a name="l01920"></a><span class="lineno"> 1920</span>&#160; }</div><div class="line"><a name="l01921"></a><span class="lineno"> 1921</span>&#160;</div><div class="line"><a name="l01922"></a><span class="lineno"> 1922</span>&#160; <span class="keywordflow">switch</span> (pooling2dDesc-&gt;paddingMethod())</div><div class="line"><a name="l01923"></a><span class="lineno"> 1923</span>&#160; {</div><div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>&#160; <span class="keywordflow">case</span> PaddingMethod_Exclude:</div><div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>&#160; {</div><div class="line"><a name="l01926"></a><span class="lineno"> 1926</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="l01927"></a><span class="lineno"> 1927</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01928"></a><span class="lineno"> 1928</span>&#160; }</div><div class="line"><a name="l01929"></a><span class="lineno"> 1929</span>&#160; <span class="keywordflow">case</span> PaddingMethod_IgnoreValue:</div><div class="line"><a name="l01930"></a><span class="lineno"> 1930</span>&#160; {</div><div class="line"><a name="l01931"></a><span class="lineno"> 1931</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="l01932"></a><span class="lineno"> 1932</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01933"></a><span class="lineno"> 1933</span>&#160; }</div><div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>&#160; {</div><div class="line"><a name="l01936"></a><span class="lineno"> 1936</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="l01937"></a><span class="lineno"> 1937</span>&#160; }</div><div class="line"><a name="l01938"></a><span class="lineno"> 1938</span>&#160; }</div><div class="line"><a name="l01939"></a><span class="lineno"> 1939</span>&#160;</div><div class="line"><a name="l01940"></a><span class="lineno"> 1940</span>&#160; <span class="keywordflow">switch</span> (pooling2dDesc-&gt;dataLayout())</div><div class="line"><a name="l01941"></a><span class="lineno"> 1941</span>&#160; {</div><div class="line"><a name="l01942"></a><span class="lineno"> 1942</span>&#160; <span class="keywordflow">case</span> DataLayout_NCHW:</div><div class="line"><a name="l01943"></a><span class="lineno"> 1943</span>&#160; {</div><div class="line"><a name="l01944"></a><span class="lineno"> 1944</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="l01945"></a><span class="lineno"> 1945</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01946"></a><span class="lineno"> 1946</span>&#160; }</div><div class="line"><a name="l01947"></a><span class="lineno"> 1947</span>&#160; <span class="keywordflow">case</span> DataLayout_NHWC:</div><div class="line"><a name="l01948"></a><span class="lineno"> 1948</span>&#160; {</div><div class="line"><a name="l01949"></a><span class="lineno"> 1949</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="l01950"></a><span class="lineno"> 1950</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01951"></a><span class="lineno"> 1951</span>&#160; }</div><div class="line"><a name="l01952"></a><span class="lineno"> 1952</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01953"></a><span class="lineno"> 1953</span>&#160; {</div><div class="line"><a name="l01954"></a><span class="lineno"> 1954</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="l01955"></a><span class="lineno"> 1955</span>&#160; }</div><div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>&#160; }</div><div class="line"><a name="l01957"></a><span class="lineno"> 1957</span>&#160;</div><div class="line"><a name="l01958"></a><span class="lineno"> 1958</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="l01959"></a><span class="lineno"> 1959</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="l01960"></a><span class="lineno"> 1960</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="l01961"></a><span class="lineno"> 1961</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="l01962"></a><span class="lineno"> 1962</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="l01963"></a><span class="lineno"> 1963</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="l01964"></a><span class="lineno"> 1964</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="l01965"></a><span class="lineno"> 1965</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="l01966"></a><span class="lineno"> 1966</span>&#160;</div><div class="line"><a name="l01967"></a><span class="lineno"> 1967</span>&#160; <span class="keywordflow">return</span> desc;</div><div class="line"><a name="l01968"></a><span class="lineno"> 1968</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#l00366">Descriptors.hpp:366</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#l00360">Descriptors.hpp:360</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#l00368">Descriptors.hpp:368</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#l00378">Descriptors.hpp:378</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#l00364">Descriptors.hpp:364</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#l00372">Descriptors.hpp:372</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#l00370">Descriptors.hpp:370</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#l00362">Descriptors.hpp:362</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#l00380">Descriptors.hpp:380</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#l00358">Descriptors.hpp:358</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#l00376">Descriptors.hpp:376</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_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#l00324">Descriptors.hpp:324</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#l00374">Descriptors.hpp:374</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="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="classarmnn_deserializer_1_1_deserializer.xhtml#a5cd994198e775b8e919853fd0da5b9c1">Deserializer::QLstmDescriptorPtr</a>&#160;</td>
+ <td class="paramname"><em>qLstmDescriptor</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#l02695">2695</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#l00141">CHECK_LAYERS</a>, <a class="el" href="_exceptions_8hpp_source.xhtml#l00197">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#l00636">Deserializer::GetInputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00365">Deserializer::GetLayerName()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00654">Deserializer::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#l00187">TensorInfo::GetShape()</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01240">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#l01173">QLstmDescriptor::m_CellClip</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01189">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#l01177">QLstmDescriptor::m_CifgEnabled</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01242">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#l01187">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#l01195">QLstmDescriptor::m_HiddenStateScale</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01193">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#l01185">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#l01183">QLstmDescriptor::m_LayerNormEnabled</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01056">StandInDescriptor::m_NumInputs</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01058">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#l01191">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#l01234">TransposeConvolution2dDescriptor::m_PadBottom</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01228">TransposeConvolution2dDescriptor::m_PadLeft</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01230">TransposeConvolution2dDescriptor::m_PadRight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01232">TransposeConvolution2dDescriptor::m_PadTop</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01179">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#l01175">QLstmDescriptor::m_ProjectionClip</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01181">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#l01236">TransposeConvolution2dDescriptor::m_StrideX</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l01238">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#l00594">armnnDeserializer::ToConstTensor()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00387">armnnDeserializer::ToDataLayout()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00509">armnnDeserializer::ToTensorInfo()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8hpp_source.xhtml#l00049">Deserializer::~Deserializer()</a>.</p>
+<div class="fragment"><div class="line"><a name="l02696"></a><span class="lineno"> 2696</span>&#160;{</div><div class="line"><a name="l02697"></a><span class="lineno"> 2697</span>&#160; <a class="code" href="structarmnn_1_1_q_lstm_descriptor.xhtml">armnn::QLstmDescriptor</a> desc;</div><div class="line"><a name="l02698"></a><span class="lineno"> 2698</span>&#160;</div><div class="line"><a name="l02699"></a><span class="lineno"> 2699</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="l02700"></a><span class="lineno"> 2700</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="l02701"></a><span class="lineno"> 2701</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="l02702"></a><span class="lineno"> 2702</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="l02703"></a><span class="lineno"> 2703</span>&#160;</div><div class="line"><a name="l02704"></a><span class="lineno"> 2704</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="l02705"></a><span class="lineno"> 2705</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="l02706"></a><span class="lineno"> 2706</span>&#160;</div><div class="line"><a name="l02707"></a><span class="lineno"> 2707</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="l02708"></a><span class="lineno"> 2708</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="l02709"></a><span class="lineno"> 2709</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="l02710"></a><span class="lineno"> 2710</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="l02711"></a><span class="lineno"> 2711</span>&#160;</div><div class="line"><a name="l02712"></a><span class="lineno"> 2712</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="l02713"></a><span class="lineno"> 2713</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="l02714"></a><span class="lineno"> 2714</span>&#160;</div><div class="line"><a name="l02715"></a><span class="lineno"> 2715</span>&#160; <span class="keywordflow">return</span> desc;</div><div class="line"><a name="l02716"></a><span class="lineno"> 2716</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#l01179">Descriptors.hpp:1179</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#l01195">Descriptors.hpp:1195</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#l01191">Descriptors.hpp:1191</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#l01183">Descriptors.hpp:1183</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#l01175">Descriptors.hpp:1175</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#l01185">Descriptors.hpp:1185</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#l01139">Descriptors.hpp:1139</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#l01187">Descriptors.hpp:1187</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#l01173">Descriptors.hpp:1173</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#l01181">Descriptors.hpp:1181</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#l01189">Descriptors.hpp:1189</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#l01177">Descriptors.hpp:1177</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#l01193">Descriptors.hpp:1193</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a0ba4effa5ee7ef715b1f452365c41f97"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0ba4effa5ee7ef715b1f452365c41f97">&#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="classarmnn_deserializer_1_1_deserializer.xhtml#a38c1f8ba8e51364802669c968cf98ff5">Deserializer::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#l00718">718</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#l00197">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#l00703">Deserializer::CreateNetworkFromBinary()</a>, and <a class="el" href="_deserializer_8hpp_source.xhtml#l00049">Deserializer::~Deserializer()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;{</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; <span class="keywordflow">if</span> (binaryContent == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; {</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</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="l00723"></a><span class="lineno"> 723</span>&#160; <a class="code" href="_exceptions_8hpp.xhtml#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; }</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; flatbuffers::Verifier verifier(binaryContent, len);</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; <span class="keywordflow">if</span> (verifier.VerifyBuffer&lt;SerializedGraph&gt;() == <span class="keyword">false</span>)</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; {</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</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="l00729"></a><span class="lineno"> 729</span>&#160; <span class="stringliteral">&quot;flatbuffers format. size:{0} {1}&quot;</span>,</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; len,</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; <a class="code" href="_exceptions_8hpp.xhtml#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; }</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; <span class="keywordflow">return</span> GetSerializedGraph(binaryContent);</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</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#l00197">Exceptions.hpp:197</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="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#l02010">2010</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#l00141">CHECK_LAYERS</a>, <a class="el" href="_exceptions_8hpp_source.xhtml#l00197">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#l00148">armnnDeserializer::CheckShape()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00636">Deserializer::GetInputs()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00365">Deserializer::GetLayerName()</a>, <a class="el" href="_tensor_8hpp_source.xhtml#l00192">TensorInfo::GetNumElements()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00654">Deserializer::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#l00187">TensorInfo::GetShape()</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00811">ResizeDescriptor::m_AlignCorners</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00147">SoftmaxDescriptor::m_Beta</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00861">SpaceToBatchNdDescriptor::m_BlockShape</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00887">SpaceToDepthDescriptor::m_BlockSize</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00809">ResizeDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00866">SpaceToBatchNdDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00890">SpaceToDepthDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00813">ResizeDescriptor::m_HalfPixelCenters</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00807">ResizeDescriptor::m_Method</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00864">SpaceToBatchNdDescriptor::m_PadList</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00804">ResizeDescriptor::m_TargetHeight</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00834">ReshapeDescriptor::m_TargetShape</a>, <a class="el" href="_descriptors_8hpp_source.xhtml#l00802">ResizeDescriptor::m_TargetWidth</a>, <a class="el" href="_numeric_cast_8hpp_source.xhtml#l00035">armnn::numeric_cast()</a>, <a class="el" href="_tensor_8hpp_source.xhtml#l00189">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#l00387">armnnDeserializer::ToDataLayout()</a>, <a class="el" href="_deserializer_8cpp_source.xhtml#l00496">armnnDeserializer::ToResizeMethod()</a>, and <a class="el" href="_deserializer_8cpp_source.xhtml#l00509">armnnDeserializer::ToTensorInfo()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_deserializer_8hpp_source.xhtml#l00049">Deserializer::~Deserializer()</a>.</p>
+<div class="fragment"><div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>&#160;{</div><div class="line"><a name="l02013"></a><span class="lineno"> 2013</span>&#160; std::vector&lt;unsigned int&gt; outputDims(targetDimsIn.begin(), targetDimsIn.end());</div><div class="line"><a name="l02014"></a><span class="lineno"> 2014</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="l02015"></a><span class="lineno"> 2015</span>&#160;</div><div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>&#160; <span class="keywordflow">if</span> (stretchDim != targetDimsIn.end())</div><div class="line"><a name="l02017"></a><span class="lineno"> 2017</span>&#160; {</div><div class="line"><a name="l02018"></a><span class="lineno"> 2018</span>&#160; <span class="keywordflow">if</span> (std::find(std::next(stretchDim), targetDimsIn.end(), -1) != targetDimsIn.end())</div><div class="line"><a name="l02019"></a><span class="lineno"> 2019</span>&#160; {</div><div class="line"><a name="l02020"></a><span class="lineno"> 2020</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="l02021"></a><span class="lineno"> 2021</span>&#160; <a class="code" href="_exceptions_8hpp.xhtml#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div><div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>&#160; }</div><div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>&#160;</div><div class="line"><a name="l02024"></a><span class="lineno"> 2024</span>&#160; <span class="keyword">auto</span> targetNumElements =</div><div class="line"><a name="l02025"></a><span class="lineno"> 2025</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="l02026"></a><span class="lineno"> 2026</span>&#160; std::accumulate(targetDimsIn.begin(), targetDimsIn.end(), -1, std::multiplies&lt;int32_t&gt;()));</div><div class="line"><a name="l02027"></a><span class="lineno"> 2027</span>&#160;</div><div class="line"><a name="l02028"></a><span class="lineno"> 2028</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="l02029"></a><span class="lineno"> 2029</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="l02030"></a><span class="lineno"> 2030</span>&#160; }</div><div class="line"><a name="l02031"></a><span class="lineno"> 2031</span>&#160;</div><div class="line"><a name="l02032"></a><span class="lineno"> 2032</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="l02033"></a><span class="lineno"> 2033</span>&#160;</div><div class="line"><a name="l02034"></a><span class="lineno"> 2034</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> reshapeInfo = inputTensorInfo;</div><div class="line"><a name="l02035"></a><span class="lineno"> 2035</span>&#160; reshapeInfo.<a class="code" href="classarmnn_1_1_tensor_info.xhtml#abe8889e8150beef5fd204b2d87b49298">SetShape</a>(outputShape);</div><div class="line"><a name="l02036"></a><span class="lineno"> 2036</span>&#160;</div><div class="line"><a name="l02037"></a><span class="lineno"> 2037</span>&#160; <span class="keywordflow">return</span> reshapeInfo;</div><div class="line"><a name="l02038"></a><span class="lineno"> 2038</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#l00189">Tensor.hpp:189</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#l00197">Exceptions.hpp:197</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#l00192">Tensor.hpp:192</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_deserializer.xhtml">Deserializer</a></li>
+ <li class="footer">Generated on Thu Nov 26 2020 11:04:33 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>