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