blob: 2cc85c7b7c5e61133f268cfda222af35f2721492 [file] [log] [blame]
Nikhil Raj1dc83fe2024-05-16 09:47:51 +01001<!-- HTML header for doxygen 1.8.17-->
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml">
4<head>
5<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
6<meta http-equiv="X-UA-Compatible" content="IE=9"/>
7<meta name="generator" content="Doxygen 1.8.17"/>
8<meta name="viewport" content="width=device-width, initial-scale=1"/>
9<title>Arm NN: TfLiteParserImpl Class Reference</title>
10<link href="tabs.css" rel="stylesheet" type="text/css"/>
11<script type="text/javascript" src="jquery.js"></script>
12<script type="text/javascript" src="dynsections.js"></script>
13<link href="navtree.css" rel="stylesheet" type="text/css"/>
14<script type="text/javascript" src="resize.js"></script>
15<script type="text/javascript" src="navtreedata.js"></script>
16<script type="text/javascript" src="navtree.js"></script>
17<link href="search/search.css" rel="stylesheet" type="text/css"/>
18<script type="text/javascript" src="search/searchdata.js"></script>
19<script type="text/javascript" src="search/search.js"></script>
20<script type="text/x-mathjax-config">
21 MathJax.Hub.Config({
22 extensions: ["tex2jax.js"],
23 jax: ["input/TeX","output/HTML-CSS"],
24});
25</script>
26<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
27<link href="doxygen.css" rel="stylesheet" type="text/css" />
28<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
29</head>
30<body>
31<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
32<div id="titlearea">
33<table cellspacing="0" cellpadding="0">
34 <tbody>
35 <tr style="height: 56px;">
36 <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 15rem; margin-top: .5rem; margin-left 13px"/>
37 <td id="projectalign" style="padding-left: 0.9em;">
38 <div id="projectname">
39 &#160;<span id="projectnumber">24.05</span>
40 </div>
41 </td>
42 </tr>
43 </tbody>
44</table>
45</div>
46<!-- end header part -->
47<!-- Generated by Doxygen 1.8.17 -->
48<script type="text/javascript">
49/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
50var searchBox = new SearchBox("searchBox", "search",false,'Search');
51/* @license-end */
52</script>
53<script type="text/javascript" src="menudata.js"></script>
54<script type="text/javascript" src="menu.js"></script>
55<script type="text/javascript">
56/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
57$(function() {
58 initMenu('',true,false,'search.php','Search');
59 $(document).ready(function() { init_search(); });
60});
61/* @license-end */</script>
62<div id="main-nav"></div>
63</div><!-- top -->
64<div id="side-nav" class="ui-resizable side-nav-resizable">
65 <div id="nav-tree">
66 <div id="nav-tree-contents">
67 <div id="nav-sync" class="sync"></div>
68 </div>
69 </div>
70 <div id="splitbar" style="-moz-user-select:none;"
71 class="ui-resizable-handle">
72 </div>
73</div>
74<script type="text/javascript">
75/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
76$(document).ready(function(){initNavTree('classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html',''); initResizable(); });
77/* @license-end */
78</script>
79<div id="doc-content">
80<!-- window showing the filter options -->
81<div id="MSearchSelectWindow"
82 onmouseover="return searchBox.OnSearchSelectShow()"
83 onmouseout="return searchBox.OnSearchSelectHide()"
84 onkeydown="return searchBox.OnSearchSelectKey(event)">
85</div>
86
87<!-- iframe showing the search results (closed by default) -->
88<div id="MSearchResultsWindow">
89<iframe src="javascript:void(0)" frameborder="0"
90 name="MSearchResults" id="MSearchResults">
91</iframe>
92</div>
93
94<div class="header">
95 <div class="summary">
96<a href="#nested-classes">Classes</a> &#124;
97<a href="#pub-types">Public Types</a> &#124;
98<a href="#pub-methods">Public Member Functions</a> &#124;
99<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
100<a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl-members.html">List of all members</a> </div>
101 <div class="headertitle">
102<div class="title">TfLiteParserImpl Class Reference</div> </div>
103</div><!--header-->
104<div class="contents">
105
106<p><code>#include &lt;<a class="el" href="_tf_lite_parser_8hpp_source.html">TfLiteParser.hpp</a>&gt;</code></p>
107<table class="memberdecls">
108<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
109Public Types</h2></td></tr>
110<tr class="memitem:abfc86471394295357a23b3addd0b5b1c"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> = std::unique_ptr&lt; tflite::ModelT &gt;</td></tr>
111<tr class="separator:abfc86471394295357a23b3addd0b5b1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
112<tr class="memitem:a988cb5e216eb87d854414c6a0282eeb4"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a988cb5e216eb87d854414c6a0282eeb4">SubgraphPtr</a> = std::unique_ptr&lt; tflite::SubGraphT &gt;</td></tr>
113<tr class="separator:a988cb5e216eb87d854414c6a0282eeb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
114<tr class="memitem:aadad81a95152fe5aad839db352d4012c"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#aadad81a95152fe5aad839db352d4012c">OperatorPtr</a> = std::unique_ptr&lt; tflite::OperatorT &gt;</td></tr>
115<tr class="separator:aadad81a95152fe5aad839db352d4012c"><td class="memSeparator" colspan="2">&#160;</td></tr>
116<tr class="memitem:ab80edc19da7460a95a0ac05902f244b7"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#ab80edc19da7460a95a0ac05902f244b7">OperatorCodePtr</a> = std::unique_ptr&lt; tflite::OperatorCodeT &gt;</td></tr>
117<tr class="separator:ab80edc19da7460a95a0ac05902f244b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
118<tr class="memitem:a4ab952e29d01028931f75f997ad7cbd4"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a4ab952e29d01028931f75f997ad7cbd4">TensorPtr</a> = std::unique_ptr&lt; tflite::TensorT &gt;</td></tr>
119<tr class="separator:a4ab952e29d01028931f75f997ad7cbd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
120<tr class="memitem:ac3486e6c1a291aa67efd8b280ffb83cc"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#ac3486e6c1a291aa67efd8b280ffb83cc">TensorRawPtr</a> = const tflite::TensorT *</td></tr>
121<tr class="separator:ac3486e6c1a291aa67efd8b280ffb83cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
122<tr class="memitem:abd8bee7fb9b86485a60bc7ee05114270"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a> = std::vector&lt; <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#ac3486e6c1a291aa67efd8b280ffb83cc">TensorRawPtr</a> &gt;</td></tr>
123<tr class="separator:abd8bee7fb9b86485a60bc7ee05114270"><td class="memSeparator" colspan="2">&#160;</td></tr>
124<tr class="memitem:a7553cea300edaeb5722990f99f042ef0"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a7553cea300edaeb5722990f99f042ef0">TensorIdRawPtr</a> = std::pair&lt; size_t, <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#ac3486e6c1a291aa67efd8b280ffb83cc">TensorRawPtr</a> &gt;</td></tr>
125<tr class="separator:a7553cea300edaeb5722990f99f042ef0"><td class="memSeparator" colspan="2">&#160;</td></tr>
126<tr class="memitem:a86428e0c674542488c7292dfbe2ce381"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a86428e0c674542488c7292dfbe2ce381">TensorIdRawPtrVector</a> = std::vector&lt; <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a7553cea300edaeb5722990f99f042ef0">TensorIdRawPtr</a> &gt;</td></tr>
127<tr class="separator:a86428e0c674542488c7292dfbe2ce381"><td class="memSeparator" colspan="2">&#160;</td></tr>
128<tr class="memitem:ab93d9fb8a272789623edfa0b214c40f9"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#ab93d9fb8a272789623edfa0b214c40f9">BufferPtr</a> = std::unique_ptr&lt; tflite::BufferT &gt;</td></tr>
129<tr class="separator:ab93d9fb8a272789623edfa0b214c40f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
130<tr class="memitem:aaafbda6e6816876b3d7963cfe64dd2f8"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#aaafbda6e6816876b3d7963cfe64dd2f8">BufferRawPtr</a> = const tflite::BufferT *</td></tr>
131<tr class="separator:aaafbda6e6816876b3d7963cfe64dd2f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
132</table><table class="memberdecls">
133<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
134Public Member Functions</h2></td></tr>
135<tr class="memitem:aed935c554e4f6a4e7b9dcde057d00877"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn.html#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#aed935c554e4f6a4e7b9dcde057d00877">CreateNetworkFromBinaryFile</a> (const char *graphFile)</td></tr>
136<tr class="memdesc:aed935c554e4f6a4e7b9dcde057d00877"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create the network from a flatbuffers binary file on disk. <a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#aed935c554e4f6a4e7b9dcde057d00877">More...</a><br /></td></tr>
137<tr class="separator:aed935c554e4f6a4e7b9dcde057d00877"><td class="memSeparator" colspan="2">&#160;</td></tr>
138<tr class="memitem:a32a96909bc8a8ee9076bd4d5c1028301"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn.html#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a32a96909bc8a8ee9076bd4d5c1028301">CreateNetworkFromBinary</a> (const std::vector&lt; uint8_t &gt; &amp;binaryContent)</td></tr>
139<tr class="memdesc:a32a96909bc8a8ee9076bd4d5c1028301"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create the network from a flatbuffers binary. <a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a32a96909bc8a8ee9076bd4d5c1028301">More...</a><br /></td></tr>
140<tr class="separator:a32a96909bc8a8ee9076bd4d5c1028301"><td class="memSeparator" colspan="2">&#160;</td></tr>
141<tr class="memitem:a913d452e7766210b59a69d3c658b2862"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn_tf_lite_parser.html#a9084adbf804022c874039ad40d1939e9">BindingPointInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a913d452e7766210b59a69d3c658b2862">GetNetworkInputBindingInfo</a> (size_t subgraphId, const std::string &amp;name) const</td></tr>
142<tr class="memdesc:a913d452e7766210b59a69d3c658b2862"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve binding info (layer id and tensor info) for the network input identified by the given layer name and subgraph id. <a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a913d452e7766210b59a69d3c658b2862">More...</a><br /></td></tr>
143<tr class="separator:a913d452e7766210b59a69d3c658b2862"><td class="memSeparator" colspan="2">&#160;</td></tr>
144<tr class="memitem:a59139faede3a07a43c4c8f86bb03dc43"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn_tf_lite_parser.html#a9084adbf804022c874039ad40d1939e9">BindingPointInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a59139faede3a07a43c4c8f86bb03dc43">GetNetworkOutputBindingInfo</a> (size_t subgraphId, const std::string &amp;name) const</td></tr>
145<tr class="memdesc:a59139faede3a07a43c4c8f86bb03dc43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve binding info (layer id and tensor info) for the network output identified by the given layer name and subgraph id. <a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a59139faede3a07a43c4c8f86bb03dc43">More...</a><br /></td></tr>
146<tr class="separator:a59139faede3a07a43c4c8f86bb03dc43"><td class="memSeparator" colspan="2">&#160;</td></tr>
147<tr class="memitem:a1b7aed8466cc5792966d271a65285d0e"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a1b7aed8466cc5792966d271a65285d0e">GetSubgraphCount</a> () const</td></tr>
148<tr class="memdesc:a1b7aed8466cc5792966d271a65285d0e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of subgraphs in the parsed model. <a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a1b7aed8466cc5792966d271a65285d0e">More...</a><br /></td></tr>
149<tr class="separator:a1b7aed8466cc5792966d271a65285d0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
150<tr class="memitem:afe1ea028d8fcb9942c204d4415ff3319"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#afe1ea028d8fcb9942c204d4415ff3319">GetSubgraphInputTensorNames</a> (size_t subgraphId) const</td></tr>
151<tr class="memdesc:afe1ea028d8fcb9942c204d4415ff3319"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the input tensor names for a given subgraph. <a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#afe1ea028d8fcb9942c204d4415ff3319">More...</a><br /></td></tr>
152<tr class="separator:afe1ea028d8fcb9942c204d4415ff3319"><td class="memSeparator" colspan="2">&#160;</td></tr>
153<tr class="memitem:a949070abe70fabe18cc1eb29d5853f47"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a949070abe70fabe18cc1eb29d5853f47">GetSubgraphOutputTensorNames</a> (size_t subgraphId) const</td></tr>
154<tr class="memdesc:a949070abe70fabe18cc1eb29d5853f47"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the output tensor names for a given subgraph. <a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a949070abe70fabe18cc1eb29d5853f47">More...</a><br /></td></tr>
155<tr class="separator:a949070abe70fabe18cc1eb29d5853f47"><td class="memSeparator" colspan="2">&#160;</td></tr>
156<tr class="memitem:ad9199a42f5fae611db182fb4c31a11df"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#ad9199a42f5fae611db182fb4c31a11df">TfLiteParserImpl</a> (const <a class="el" href="classarmnn_1_1_optional.html">armnn::Optional</a>&lt; <a class="el" href="structarmnn_tf_lite_parser_1_1_i_tf_lite_parser_1_1_tf_lite_parser_options.html">ITfLiteParser::TfLiteParserOptions</a> &gt; &amp;options=<a class="el" href="structarmnn_1_1_empty_optional.html">armnn::EmptyOptional</a>())</td></tr>
157<tr class="separator:ad9199a42f5fae611db182fb4c31a11df"><td class="memSeparator" colspan="2">&#160;</td></tr>
158<tr class="memitem:aaccd84a6cf2f9bdd77f833e4b65ffd42"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#aaccd84a6cf2f9bdd77f833e4b65ffd42">~TfLiteParserImpl</a> ()=default</td></tr>
159<tr class="separator:aaccd84a6cf2f9bdd77f833e4b65ffd42"><td class="memSeparator" colspan="2">&#160;</td></tr>
160<tr class="memitem:ac8abb48132e89e5273ca888ca884e305"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn.html#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#ac8abb48132e89e5273ca888ca884e305">CreateNetworkFromBinaryAsDynamic</a> (const std::vector&lt; uint8_t &gt; &amp;binaryContent)</td></tr>
161<tr class="separator:ac8abb48132e89e5273ca888ca884e305"><td class="memSeparator" colspan="2">&#160;</td></tr>
162<tr class="memitem:a0da1e3b0281fa84f8b6f5ce3cd15b7c0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn.html#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a0da1e3b0281fa84f8b6f5ce3cd15b7c0">LoadModel</a> (std::unique_ptr&lt; tflite::ModelT &gt; model)</td></tr>
163<tr class="separator:a0da1e3b0281fa84f8b6f5ce3cd15b7c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
164</table><table class="memberdecls">
165<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
166Static Public Member Functions</h2></td></tr>
167<tr class="memitem:af9590c2ae8d68b5da999d3d6ab21dd3b"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#af9590c2ae8d68b5da999d3d6ab21dd3b">LoadModelFromFile</a> (const char *fileName)</td></tr>
168<tr class="separator:af9590c2ae8d68b5da999d3d6ab21dd3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
169<tr class="memitem:a7f3fc56b7306b444f06f45cdc4032bbf"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a7f3fc56b7306b444f06f45cdc4032bbf">LoadModelFromBinary</a> (const uint8_t *binaryContent, size_t len)</td></tr>
170<tr class="separator:a7f3fc56b7306b444f06f45cdc4032bbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
171<tr class="memitem:a342a58ab95b91af13b24dd4bdc7e09bb"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a342a58ab95b91af13b24dd4bdc7e09bb">GetInputs</a> (const <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> &amp;model, size_t subgraphIndex, size_t operatorIndex)</td></tr>
172<tr class="separator:a342a58ab95b91af13b24dd4bdc7e09bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
173<tr class="memitem:a279d0891900c191d5a0139e5c11fe488"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a279d0891900c191d5a0139e5c11fe488">GetOutputs</a> (const <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> &amp;model, size_t subgraphIndex, size_t operatorIndex)</td></tr>
174<tr class="separator:a279d0891900c191d5a0139e5c11fe488"><td class="memSeparator" colspan="2">&#160;</td></tr>
175<tr class="memitem:a20518e431cb501b172371b850e6c3ec7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a86428e0c674542488c7292dfbe2ce381">TensorIdRawPtrVector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a20518e431cb501b172371b850e6c3ec7">GetSubgraphInputs</a> (const <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> &amp;model, size_t subgraphIndex)</td></tr>
176<tr class="separator:a20518e431cb501b172371b850e6c3ec7"><td class="memSeparator" colspan="2">&#160;</td></tr>
177<tr class="memitem:a1bd7b663eb19e2355b6aa5c36232d6fc"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a86428e0c674542488c7292dfbe2ce381">TensorIdRawPtrVector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a1bd7b663eb19e2355b6aa5c36232d6fc">GetSubgraphOutputs</a> (const <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> &amp;model, size_t subgraphIndex)</td></tr>
178<tr class="separator:a1bd7b663eb19e2355b6aa5c36232d6fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
179<tr class="memitem:a8b4b0b88a5e79a88b8b60db76398f575"><td class="memItemLeft" align="right" valign="top">static std::vector&lt; int32_t &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a8b4b0b88a5e79a88b8b60db76398f575">GetInputTensorIds</a> (const <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> &amp;model, size_t subgraphIndex, size_t operatorIndex)</td></tr>
180<tr class="separator:a8b4b0b88a5e79a88b8b60db76398f575"><td class="memSeparator" colspan="2">&#160;</td></tr>
181<tr class="memitem:afe6c475f92d02dd1eb12acd746e4736f"><td class="memItemLeft" align="right" valign="top">static std::vector&lt; int32_t &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#afe6c475f92d02dd1eb12acd746e4736f">GetOutputTensorIds</a> (const <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> &amp;model, size_t subgraphIndex, size_t operatorIndex)</td></tr>
182<tr class="separator:afe6c475f92d02dd1eb12acd746e4736f"><td class="memSeparator" colspan="2">&#160;</td></tr>
183<tr class="memitem:a720f0206e377dd1808acc94b3b12c538"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#aaafbda6e6816876b3d7963cfe64dd2f8">BufferRawPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a720f0206e377dd1808acc94b3b12c538">GetBuffer</a> (const <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> &amp;model, size_t bufferIndex)</td></tr>
184<tr class="separator:a720f0206e377dd1808acc94b3b12c538"><td class="memSeparator" colspan="2">&#160;</td></tr>
185<tr class="memitem:a7d28f3a07c7ab30f66e7c70ded86eb49"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_1_1_tensor_info.html">armnn::TensorInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a7d28f3a07c7ab30f66e7c70ded86eb49">OutputShapeOfSqueeze</a> (std::vector&lt; uint32_t &gt; squeezeDims, const <a class="el" href="classarmnn_1_1_tensor_info.html">armnn::TensorInfo</a> &amp;inputTensorInfo)</td></tr>
186<tr class="separator:a7d28f3a07c7ab30f66e7c70ded86eb49"><td class="memSeparator" colspan="2">&#160;</td></tr>
187<tr class="memitem:aaebfa9a01a0bb8a0935114ff0140cc45"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classarmnn_1_1_tensor_info.html">armnn::TensorInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#aaebfa9a01a0bb8a0935114ff0140cc45">OutputShapeOfReshape</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">armnn::TensorInfo</a> &amp;inputTensorInfo, const std::vector&lt; int32_t &gt; &amp;targetDimsIn)</td></tr>
188<tr class="separator:aaebfa9a01a0bb8a0935114ff0140cc45"><td class="memSeparator" colspan="2">&#160;</td></tr>
189<tr class="memitem:aa09a8bb02eed50715082d8b7fccd2f8d"><td class="memItemLeft" align="right" valign="top">static const std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#aa09a8bb02eed50715082d8b7fccd2f8d">GetVersion</a> ()</td></tr>
190<tr class="memdesc:aa09a8bb02eed50715082d8b7fccd2f8d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve version in X.Y.Z form. <a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#aa09a8bb02eed50715082d8b7fccd2f8d">More...</a><br /></td></tr>
191<tr class="separator:aa09a8bb02eed50715082d8b7fccd2f8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
192</table>
193<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
194<div class="textblock">
195<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8hpp_source.html#l00026">26</a> of file <a class="el" href="_tf_lite_parser_8hpp_source.html">TfLiteParser.hpp</a>.</p>
196</div><h2 class="groupheader">Member Typedef Documentation</h2>
197<a id="ab93d9fb8a272789623edfa0b214c40f9"></a>
198<h2 class="memtitle"><span class="permalink"><a href="#ab93d9fb8a272789623edfa0b214c40f9">&#9670;&nbsp;</a></span>BufferPtr</h2>
199
200<div class="memitem">
201<div class="memproto">
202 <table class="memname">
203 <tr>
204 <td class="memname">using <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#ab93d9fb8a272789623edfa0b214c40f9">BufferPtr</a> = std::unique_ptr&lt;tflite::BufferT&gt;</td>
205 </tr>
206 </table>
207</div><div class="memdoc">
208
209<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8hpp_source.html#l00039">39</a> of file <a class="el" href="_tf_lite_parser_8hpp_source.html">TfLiteParser.hpp</a>.</p>
210
211</div>
212</div>
213<a id="aaafbda6e6816876b3d7963cfe64dd2f8"></a>
214<h2 class="memtitle"><span class="permalink"><a href="#aaafbda6e6816876b3d7963cfe64dd2f8">&#9670;&nbsp;</a></span>BufferRawPtr</h2>
215
216<div class="memitem">
217<div class="memproto">
218 <table class="memname">
219 <tr>
220 <td class="memname">using <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#aaafbda6e6816876b3d7963cfe64dd2f8">BufferRawPtr</a> = const tflite::BufferT *</td>
221 </tr>
222 </table>
223</div><div class="memdoc">
224
225<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8hpp_source.html#l00040">40</a> of file <a class="el" href="_tf_lite_parser_8hpp_source.html">TfLiteParser.hpp</a>.</p>
226
227</div>
228</div>
229<a id="abfc86471394295357a23b3addd0b5b1c"></a>
230<h2 class="memtitle"><span class="permalink"><a href="#abfc86471394295357a23b3addd0b5b1c">&#9670;&nbsp;</a></span>ModelPtr</h2>
231
232<div class="memitem">
233<div class="memproto">
234 <table class="memname">
235 <tr>
236 <td class="memname">using <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> = std::unique_ptr&lt;tflite::ModelT&gt;</td>
237 </tr>
238 </table>
239</div><div class="memdoc">
240
241<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8hpp_source.html#l00030">30</a> of file <a class="el" href="_tf_lite_parser_8hpp_source.html">TfLiteParser.hpp</a>.</p>
242
243</div>
244</div>
245<a id="ab80edc19da7460a95a0ac05902f244b7"></a>
246<h2 class="memtitle"><span class="permalink"><a href="#ab80edc19da7460a95a0ac05902f244b7">&#9670;&nbsp;</a></span>OperatorCodePtr</h2>
247
248<div class="memitem">
249<div class="memproto">
250 <table class="memname">
251 <tr>
252 <td class="memname">using <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#ab80edc19da7460a95a0ac05902f244b7">OperatorCodePtr</a> = std::unique_ptr&lt;tflite::OperatorCodeT&gt;</td>
253 </tr>
254 </table>
255</div><div class="memdoc">
256
257<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8hpp_source.html#l00033">33</a> of file <a class="el" href="_tf_lite_parser_8hpp_source.html">TfLiteParser.hpp</a>.</p>
258
259</div>
260</div>
261<a id="aadad81a95152fe5aad839db352d4012c"></a>
262<h2 class="memtitle"><span class="permalink"><a href="#aadad81a95152fe5aad839db352d4012c">&#9670;&nbsp;</a></span>OperatorPtr</h2>
263
264<div class="memitem">
265<div class="memproto">
266 <table class="memname">
267 <tr>
268 <td class="memname">using <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#aadad81a95152fe5aad839db352d4012c">OperatorPtr</a> = std::unique_ptr&lt;tflite::OperatorT&gt;</td>
269 </tr>
270 </table>
271</div><div class="memdoc">
272
273<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8hpp_source.html#l00032">32</a> of file <a class="el" href="_tf_lite_parser_8hpp_source.html">TfLiteParser.hpp</a>.</p>
274
275</div>
276</div>
277<a id="a988cb5e216eb87d854414c6a0282eeb4"></a>
278<h2 class="memtitle"><span class="permalink"><a href="#a988cb5e216eb87d854414c6a0282eeb4">&#9670;&nbsp;</a></span>SubgraphPtr</h2>
279
280<div class="memitem">
281<div class="memproto">
282 <table class="memname">
283 <tr>
284 <td class="memname">using <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a988cb5e216eb87d854414c6a0282eeb4">SubgraphPtr</a> = std::unique_ptr&lt;tflite::SubGraphT&gt;</td>
285 </tr>
286 </table>
287</div><div class="memdoc">
288
289<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8hpp_source.html#l00031">31</a> of file <a class="el" href="_tf_lite_parser_8hpp_source.html">TfLiteParser.hpp</a>.</p>
290
291</div>
292</div>
293<a id="a7553cea300edaeb5722990f99f042ef0"></a>
294<h2 class="memtitle"><span class="permalink"><a href="#a7553cea300edaeb5722990f99f042ef0">&#9670;&nbsp;</a></span>TensorIdRawPtr</h2>
295
296<div class="memitem">
297<div class="memproto">
298 <table class="memname">
299 <tr>
300 <td class="memname">using <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a7553cea300edaeb5722990f99f042ef0">TensorIdRawPtr</a> = std::pair&lt;size_t, <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#ac3486e6c1a291aa67efd8b280ffb83cc">TensorRawPtr</a>&gt;</td>
301 </tr>
302 </table>
303</div><div class="memdoc">
304
305<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8hpp_source.html#l00037">37</a> of file <a class="el" href="_tf_lite_parser_8hpp_source.html">TfLiteParser.hpp</a>.</p>
306
307</div>
308</div>
309<a id="a86428e0c674542488c7292dfbe2ce381"></a>
310<h2 class="memtitle"><span class="permalink"><a href="#a86428e0c674542488c7292dfbe2ce381">&#9670;&nbsp;</a></span>TensorIdRawPtrVector</h2>
311
312<div class="memitem">
313<div class="memproto">
314 <table class="memname">
315 <tr>
316 <td class="memname">using <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a86428e0c674542488c7292dfbe2ce381">TensorIdRawPtrVector</a> = std::vector&lt;<a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a7553cea300edaeb5722990f99f042ef0">TensorIdRawPtr</a>&gt;</td>
317 </tr>
318 </table>
319</div><div class="memdoc">
320
321<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8hpp_source.html#l00038">38</a> of file <a class="el" href="_tf_lite_parser_8hpp_source.html">TfLiteParser.hpp</a>.</p>
322
323</div>
324</div>
325<a id="a4ab952e29d01028931f75f997ad7cbd4"></a>
326<h2 class="memtitle"><span class="permalink"><a href="#a4ab952e29d01028931f75f997ad7cbd4">&#9670;&nbsp;</a></span>TensorPtr</h2>
327
328<div class="memitem">
329<div class="memproto">
330 <table class="memname">
331 <tr>
332 <td class="memname">using <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a4ab952e29d01028931f75f997ad7cbd4">TensorPtr</a> = std::unique_ptr&lt;tflite::TensorT&gt;</td>
333 </tr>
334 </table>
335</div><div class="memdoc">
336
337<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8hpp_source.html#l00034">34</a> of file <a class="el" href="_tf_lite_parser_8hpp_source.html">TfLiteParser.hpp</a>.</p>
338
339</div>
340</div>
341<a id="ac3486e6c1a291aa67efd8b280ffb83cc"></a>
342<h2 class="memtitle"><span class="permalink"><a href="#ac3486e6c1a291aa67efd8b280ffb83cc">&#9670;&nbsp;</a></span>TensorRawPtr</h2>
343
344<div class="memitem">
345<div class="memproto">
346 <table class="memname">
347 <tr>
348 <td class="memname">using <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#ac3486e6c1a291aa67efd8b280ffb83cc">TensorRawPtr</a> = const tflite::TensorT *</td>
349 </tr>
350 </table>
351</div><div class="memdoc">
352
353<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8hpp_source.html#l00035">35</a> of file <a class="el" href="_tf_lite_parser_8hpp_source.html">TfLiteParser.hpp</a>.</p>
354
355</div>
356</div>
357<a id="abd8bee7fb9b86485a60bc7ee05114270"></a>
358<h2 class="memtitle"><span class="permalink"><a href="#abd8bee7fb9b86485a60bc7ee05114270">&#9670;&nbsp;</a></span>TensorRawPtrVector</h2>
359
360<div class="memitem">
361<div class="memproto">
362 <table class="memname">
363 <tr>
364 <td class="memname">using <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a> = std::vector&lt;<a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#ac3486e6c1a291aa67efd8b280ffb83cc">TensorRawPtr</a>&gt;</td>
365 </tr>
366 </table>
367</div><div class="memdoc">
368
369<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8hpp_source.html#l00036">36</a> of file <a class="el" href="_tf_lite_parser_8hpp_source.html">TfLiteParser.hpp</a>.</p>
370
371</div>
372</div>
373<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
374<a id="ad9199a42f5fae611db182fb4c31a11df"></a>
375<h2 class="memtitle"><span class="permalink"><a href="#ad9199a42f5fae611db182fb4c31a11df">&#9670;&nbsp;</a></span>TfLiteParserImpl()</h2>
376
377<div class="memitem">
378<div class="memproto">
379 <table class="memname">
380 <tr>
381 <td class="memname"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html">TfLiteParserImpl</a> </td>
382 <td>(</td>
383 <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.html">armnn::Optional</a>&lt; <a class="el" href="structarmnn_tf_lite_parser_1_1_i_tf_lite_parser_1_1_tf_lite_parser_options.html">ITfLiteParser::TfLiteParserOptions</a> &gt; &amp;&#160;</td>
384 <td class="paramname"><em>options</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">armnn::EmptyOptional</a>()</code></td><td>)</td>
385 <td></td>
386 </tr>
387 </table>
388</div><div class="memdoc">
389
390<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l00744">744</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
391<div class="fragment"><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160;: m_Options(options)</div>
392<div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160;, m_Network(<span class="keyword">nullptr</span>, <span class="keyword">nullptr</span>)</div>
393<div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160;, m_ParserFunctions(tflite::BuiltinOperator_MAX+1, &amp;TfLiteParserImpl::ParseUnsupportedOperator)</div>
394<div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160;{</div>
395<div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; <span class="comment">// register supported operators</span></div>
396<div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_ABS] = &amp;TfLiteParserImpl::ParseAbs;</div>
397<div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_ADD] = &amp;TfLiteParserImpl::ParseAdd;</div>
398<div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_ARG_MIN] = &amp;TfLiteParserImpl::ParseArgMin;</div>
399<div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_ARG_MAX] = &amp;TfLiteParserImpl::ParseArgMax;</div>
400<div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_AVERAGE_POOL_2D] = &amp;TfLiteParserImpl::ParseAveragePool2D;</div>
401<div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_BATCH_TO_SPACE_ND] = &amp;TfLiteParserImpl::ParseBatchToSpaceND;</div>
402<div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_BATCH_MATMUL] = &amp;TfLiteParserImpl::ParseBatchMatMul;</div>
403<div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_BROADCAST_TO] = &amp;TfLiteParserImpl::ParseBroadcastTo;</div>
404<div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_CEIL] = &amp;TfLiteParserImpl::ParseCeil;</div>
405<div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_CAST] = &amp;TfLiteParserImpl::ParseCast;</div>
406<div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_CONCATENATION] = &amp;TfLiteParserImpl::ParseConcatenation;</div>
407<div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_CONV_2D] = &amp;TfLiteParserImpl::ParseConv2D;</div>
408<div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; <span class="comment">// Conv3D support was added in TF 2.5, so for backwards compatibility a hash define is needed.</span></div>
409<div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160;<span class="preprocessor"> #if defined(ARMNN_POST_TFLITE_2_4)</span></div>
410<div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_CONV_3D] = &amp;TfLiteParserImpl::ParseConv3D;</div>
411<div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160;<span class="preprocessor"> #endif</span></div>
412<div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_CUSTOM] = &amp;TfLiteParserImpl::ParseCustomOperator;</div>
413<div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_DEPTH_TO_SPACE] = &amp;TfLiteParserImpl::ParseDepthToSpace;</div>
414<div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_DEPTHWISE_CONV_2D] = &amp;TfLiteParserImpl::ParseDepthwiseConv2D;</div>
415<div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_DEQUANTIZE] = &amp;TfLiteParserImpl::ParseDequantize;</div>
416<div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_DIV] = &amp;TfLiteParserImpl::ParseDiv;</div>
417<div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_ELU] = &amp;TfLiteParserImpl::ParseElu;</div>
418<div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_EQUAL] = &amp;TfLiteParserImpl::ParseEqual;</div>
419<div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_EXP] = &amp;TfLiteParserImpl::ParseExp;</div>
420<div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_EXPAND_DIMS] = &amp;TfLiteParserImpl::ParseExpandDims;</div>
421<div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_FLOOR_DIV] = &amp;TfLiteParserImpl::ParseFloorDiv;</div>
422<div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_FULLY_CONNECTED] = &amp;TfLiteParserImpl::ParseFullyConnected;</div>
423<div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_GATHER] = &amp;TfLiteParserImpl::ParseGather;</div>
424<div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_GELU] = &amp;TfLiteParserImpl::ParseGelu;</div>
425<div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_GATHER_ND] = &amp;TfLiteParserImpl::ParseGatherNd;</div>
426<div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_GREATER] = &amp;TfLiteParserImpl::ParseGreater;</div>
427<div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_GREATER_EQUAL] = &amp;TfLiteParserImpl::ParseGreaterOrEqual;</div>
428<div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_HARD_SWISH] = &amp;TfLiteParserImpl::ParseHardSwish;</div>
429<div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_LEAKY_RELU] = &amp;TfLiteParserImpl::ParseLeakyRelu;</div>
430<div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_LESS] = &amp;TfLiteParserImpl::ParseLess;</div>
431<div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_LESS_EQUAL] = &amp;TfLiteParserImpl::ParseLessOrEqual;</div>
432<div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_LOCAL_RESPONSE_NORMALIZATION]</div>
433<div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; = &amp;TfLiteParserImpl::ParseLocalResponseNormalization;</div>
434<div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_LOG] = &amp;TfLiteParserImpl::ParseLog;</div>
435<div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_LOGICAL_NOT] = &amp;TfLiteParserImpl::ParseLogicalNot;</div>
436<div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_LOGISTIC] = &amp;TfLiteParserImpl::ParseLogistic;</div>
437<div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_LOG_SOFTMAX] = &amp;TfLiteParserImpl::ParseLogSoftmax;</div>
438<div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_L2_NORMALIZATION] = &amp;TfLiteParserImpl::ParseL2Normalization;</div>
439<div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_MAX_POOL_2D] = &amp;TfLiteParserImpl::ParseMaxPool2D;</div>
440<div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_MAXIMUM] = &amp;TfLiteParserImpl::ParseMaximum;</div>
441<div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_MEAN] = &amp;TfLiteParserImpl::ParseMean;</div>
442<div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_MINIMUM] = &amp;TfLiteParserImpl::ParseMinimum;</div>
443<div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_MIRROR_PAD] = &amp;TfLiteParserImpl::ParseMirrorPad;</div>
444<div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_MUL] = &amp;TfLiteParserImpl::ParseMul;</div>
445<div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_NEG] = &amp;TfLiteParserImpl::ParseNeg;</div>
446<div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_NOT_EQUAL] = &amp;TfLiteParserImpl::ParseNotEqual;</div>
447<div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_PACK] = &amp;TfLiteParserImpl::ParsePack;</div>
448<div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_PAD] = &amp;TfLiteParserImpl::ParsePad;</div>
449<div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_PADV2] = &amp;TfLiteParserImpl::ParsePad;</div>
450<div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_POW] = &amp;TfLiteParserImpl::ParsePower;</div>
451<div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_PRELU] = &amp;TfLiteParserImpl::ParsePrelu;</div>
452<div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_QUANTIZE] = &amp;TfLiteParserImpl::ParseQuantize;</div>
453<div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_RELU] = &amp;TfLiteParserImpl::ParseRelu;</div>
454<div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_RELU6] = &amp;TfLiteParserImpl::ParseRelu6;</div>
455<div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_REDUCE_MAX] = &amp;TfLiteParserImpl::ParseReduceMax;</div>
456<div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_REDUCE_MIN] = &amp;TfLiteParserImpl::ParseReduceMin;</div>
457<div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_REDUCE_PROD] = &amp;TfLiteParserImpl::ParseReduceProd;</div>
458<div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_RESHAPE] = &amp;TfLiteParserImpl::ParseReshape;</div>
459<div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_RESIZE_BILINEAR] = &amp;TfLiteParserImpl::ParseResizeBilinear;</div>
460<div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_RESIZE_NEAREST_NEIGHBOR] = &amp;TfLiteParserImpl::ParseResizeNearestNeighbor;</div>
461<div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_REVERSE_V2] = &amp;TfLiteParserImpl::ParseReverseV2;</div>
462<div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_RSQRT] = &amp;TfLiteParserImpl::ParseRsqrt;</div>
463<div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SCATTER_ND] = &amp;TfLiteParserImpl::ParseScatterNd;</div>
464<div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SQRT] = &amp;TfLiteParserImpl::ParseSqrt;</div>
465<div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SHAPE] = &amp;TfLiteParserImpl::ParseShape;</div>
466<div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SIN] = &amp;TfLiteParserImpl::ParseSin;</div>
467<div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SLICE] = &amp;TfLiteParserImpl::ParseSlice;</div>
468<div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SOFTMAX] = &amp;TfLiteParserImpl::ParseSoftmax;</div>
469<div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SPACE_TO_BATCH_ND] = &amp;TfLiteParserImpl::ParseSpaceToBatchND;</div>
470<div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SPACE_TO_DEPTH] = &amp;TfLiteParserImpl::ParseSpaceToDepth;</div>
471<div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SPLIT] = &amp;TfLiteParserImpl::ParseSplit;</div>
472<div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SPLIT_V] = &amp;TfLiteParserImpl::ParseSplitV;</div>
473<div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SQUEEZE] = &amp;TfLiteParserImpl::ParseSqueeze;</div>
474<div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SQUARE] = &amp;TfLiteParserImpl::ParseSquare;</div>
475<div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SQUARED_DIFFERENCE] = &amp;TfLiteParserImpl::ParseSquaredDifference;</div>
476<div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_STRIDED_SLICE] = &amp;TfLiteParserImpl::ParseStridedSlice;</div>
477<div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SUB] = &amp;TfLiteParserImpl::ParseSub;</div>
478<div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_SUM] = &amp;TfLiteParserImpl::ParseSum;</div>
479<div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_TANH] = &amp;TfLiteParserImpl::ParseTanH;</div>
480<div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_TILE] = &amp;TfLiteParserImpl::ParseTile;</div>
481<div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_TRANSPOSE] = &amp;TfLiteParserImpl::ParseTranspose;</div>
482<div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_TRANSPOSE_CONV] = &amp;TfLiteParserImpl::ParseTransposeConv;</div>
483<div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_LSTM]</div>
484<div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; = &amp;TfLiteParserImpl::ParseUnidirectionalSequenceLSTM;</div>
485<div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; m_ParserFunctions[tflite::BuiltinOperator_UNPACK] = &amp;TfLiteParserImpl::ParseUnpack;</div>
486<div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; </div>
487<div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; <span class="comment">// register supported custom operators</span></div>
488<div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; m_CustomParserFunctions[<span class="stringliteral">&quot;TFLite_Detection_PostProcess&quot;</span>] = &amp;TfLiteParserImpl::ParseDetectionPostProcess;</div>
489<div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160;}</div>
490</div><!-- fragment -->
491</div>
492</div>
493<a id="aaccd84a6cf2f9bdd77f833e4b65ffd42"></a>
494<h2 class="memtitle"><span class="permalink"><a href="#aaccd84a6cf2f9bdd77f833e4b65ffd42">&#9670;&nbsp;</a></span>~TfLiteParserImpl()</h2>
495
496<div class="memitem">
497<div class="memproto">
498<table class="mlabels">
499 <tr>
500 <td class="mlabels-left">
501 <table class="memname">
502 <tr>
503 <td class="memname">~<a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html">TfLiteParserImpl</a> </td>
504 <td>(</td>
505 <td class="paramname"></td><td>)</td>
506 <td></td>
507 </tr>
508 </table>
509 </td>
510 <td class="mlabels-right">
511<span class="mlabels"><span class="mlabel">default</span></span> </td>
512 </tr>
513</table>
514</div><div class="memdoc">
515
516</div>
517</div>
518<h2 class="groupheader">Member Function Documentation</h2>
519<a id="a32a96909bc8a8ee9076bd4d5c1028301"></a>
520<h2 class="memtitle"><span class="permalink"><a href="#a32a96909bc8a8ee9076bd4d5c1028301">&#9670;&nbsp;</a></span>CreateNetworkFromBinary()</h2>
521
522<div class="memitem">
523<div class="memproto">
524 <table class="memname">
525 <tr>
526 <td class="memname"><a class="el" href="namespacearmnn.html#ace74f6f9feb95a964a49d79458232703">INetworkPtr</a> CreateNetworkFromBinary </td>
527 <td>(</td>
528 <td class="paramtype">const std::vector&lt; uint8_t &gt; &amp;&#160;</td>
529 <td class="paramname"><em>binaryContent</em></td><td>)</td>
530 <td></td>
531 </tr>
532 </table>
533</div><div class="memdoc">
534
535<p>Create the network from a flatbuffers binary. </p>
536
537<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l00964">964</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
538<div class="fragment"><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160;{</div>
539<div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160; ResetParser();</div>
540<div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160; m_Model = <a class="code" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a7f3fc56b7306b444f06f45cdc4032bbf">LoadModelFromBinary</a>(binaryContent.data(), binaryContent.size());</div>
541<div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; <span class="keywordflow">return</span> CreateNetworkFromModel();</div>
542<div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160;}</div>
543</div><!-- fragment -->
544<p class="reference">References <a class="el" href="_tf_lite_parser_8cpp_source.html#l05432">TfLiteParserImpl::LoadModelFromBinary()</a>.</p>
545
546</div>
547</div>
548<a id="ac8abb48132e89e5273ca888ca884e305"></a>
549<h2 class="memtitle"><span class="permalink"><a href="#ac8abb48132e89e5273ca888ca884e305">&#9670;&nbsp;</a></span>CreateNetworkFromBinaryAsDynamic()</h2>
550
551<div class="memitem">
552<div class="memproto">
553 <table class="memname">
554 <tr>
555 <td class="memname"><a class="el" href="namespacearmnn.html#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a> CreateNetworkFromBinaryAsDynamic </td>
556 <td>(</td>
557 <td class="paramtype">const std::vector&lt; uint8_t &gt; &amp;&#160;</td>
558 <td class="paramname"><em>binaryContent</em></td><td>)</td>
559 <td></td>
560 </tr>
561 </table>
562</div><div class="memdoc">
563
564</div>
565</div>
566<a id="aed935c554e4f6a4e7b9dcde057d00877"></a>
567<h2 class="memtitle"><span class="permalink"><a href="#aed935c554e4f6a4e7b9dcde057d00877">&#9670;&nbsp;</a></span>CreateNetworkFromBinaryFile()</h2>
568
569<div class="memitem">
570<div class="memproto">
571 <table class="memname">
572 <tr>
573 <td class="memname"><a class="el" href="namespacearmnn.html#ace74f6f9feb95a964a49d79458232703">INetworkPtr</a> CreateNetworkFromBinaryFile </td>
574 <td>(</td>
575 <td class="paramtype">const char *&#160;</td>
576 <td class="paramname"><em>graphFile</em></td><td>)</td>
577 <td></td>
578 </tr>
579 </table>
580</div><div class="memdoc">
581
582<p>Create the network from a flatbuffers binary file on disk. </p>
583
584<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l00957">957</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
585<div class="fragment"><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160;{</div>
586<div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160; ResetParser();</div>
587<div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; m_Model = <a class="code" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#af9590c2ae8d68b5da999d3d6ab21dd3b">LoadModelFromFile</a>(graphFile);</div>
588<div class="line"><a name="l00961"></a><span class="lineno"> 961</span>&#160; <span class="keywordflow">return</span> CreateNetworkFromModel();</div>
589<div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160;}</div>
590</div><!-- fragment -->
591<p class="reference">References <a class="el" href="_tf_lite_parser_8cpp_source.html#l05402">TfLiteParserImpl::LoadModelFromFile()</a>.</p>
592
593</div>
594</div>
595<a id="a720f0206e377dd1808acc94b3b12c538"></a>
596<h2 class="memtitle"><span class="permalink"><a href="#a720f0206e377dd1808acc94b3b12c538">&#9670;&nbsp;</a></span>GetBuffer()</h2>
597
598<div class="memitem">
599<div class="memproto">
600<table class="mlabels">
601 <tr>
602 <td class="mlabels-left">
603 <table class="memname">
604 <tr>
605 <td class="memname"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#aaafbda6e6816876b3d7963cfe64dd2f8">TfLiteParserImpl::BufferRawPtr</a> GetBuffer </td>
606 <td>(</td>
607 <td class="paramtype">const <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> &amp;&#160;</td>
608 <td class="paramname"><em>model</em>, </td>
609 </tr>
610 <tr>
611 <td class="paramkey"></td>
612 <td></td>
613 <td class="paramtype">size_t&#160;</td>
614 <td class="paramname"><em>bufferIndex</em>&#160;</td>
615 </tr>
616 <tr>
617 <td></td>
618 <td>)</td>
619 <td></td><td></td>
620 </tr>
621 </table>
622 </td>
623 <td class="mlabels-right">
624<span class="mlabels"><span class="mlabel">static</span></span> </td>
625 </tr>
626</table>
627</div><div class="memdoc">
628
629<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l05763">5763</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
630<div class="fragment"><div class="line"><a name="l05764"></a><span class="lineno"> 5764</span>&#160;{</div>
631<div class="line"><a name="l05765"></a><span class="lineno"> 5765</span>&#160; <a class="code" href="_tf_lite_parser_8cpp.html#a7c88d54e3f895030c70330a4c9d76a7a">CHECK_BUFFER</a>(model, bufferIndex);</div>
632<div class="line"><a name="l05766"></a><span class="lineno"> 5766</span>&#160; <span class="keywordflow">return</span> model-&gt;buffers[bufferIndex].get();</div>
633<div class="line"><a name="l05767"></a><span class="lineno"> 5767</span>&#160;}</div>
634</div><!-- fragment -->
635<p class="reference">References <a class="el" href="_tf_lite_parser_8cpp_source.html#l00255">CHECK_BUFFER</a>.</p>
636
637</div>
638</div>
639<a id="a342a58ab95b91af13b24dd4bdc7e09bb"></a>
640<h2 class="memtitle"><span class="permalink"><a href="#a342a58ab95b91af13b24dd4bdc7e09bb">&#9670;&nbsp;</a></span>GetInputs()</h2>
641
642<div class="memitem">
643<div class="memproto">
644<table class="mlabels">
645 <tr>
646 <td class="mlabels-left">
647 <table class="memname">
648 <tr>
649 <td class="memname"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abd8bee7fb9b86485a60bc7ee05114270">TfLiteParserImpl::TensorRawPtrVector</a> GetInputs </td>
650 <td>(</td>
651 <td class="paramtype">const <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> &amp;&#160;</td>
652 <td class="paramname"><em>model</em>, </td>
653 </tr>
654 <tr>
655 <td class="paramkey"></td>
656 <td></td>
657 <td class="paramtype">size_t&#160;</td>
658 <td class="paramname"><em>subgraphIndex</em>, </td>
659 </tr>
660 <tr>
661 <td class="paramkey"></td>
662 <td></td>
663 <td class="paramtype">size_t&#160;</td>
664 <td class="paramname"><em>operatorIndex</em>&#160;</td>
665 </tr>
666 <tr>
667 <td></td>
668 <td>)</td>
669 <td></td><td></td>
670 </tr>
671 </table>
672 </td>
673 <td class="mlabels-right">
674<span class="mlabels"><span class="mlabel">static</span></span> </td>
675 </tr>
676</table>
677</div><div class="memdoc">
678
679<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l05451">5451</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
680<div class="fragment"><div class="line"><a name="l05454"></a><span class="lineno"> 5454</span>&#160;{</div>
681<div class="line"><a name="l05455"></a><span class="lineno"> 5455</span>&#160; <a class="code" href="_tf_lite_parser_8cpp.html#afbe702264a4e175da37c4941c0894bdb">CHECK_MODEL</a>(model, subgraphIndex, operatorIndex);</div>
682<div class="line"><a name="l05456"></a><span class="lineno"> 5456</span>&#160; </div>
683<div class="line"><a name="l05457"></a><span class="lineno"> 5457</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; subgraphPtr = model-&gt;subgraphs[subgraphIndex];</div>
684<div class="line"><a name="l05458"></a><span class="lineno"> 5458</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; operatorPtr = subgraphPtr-&gt;operators[operatorIndex];</div>
685<div class="line"><a name="l05459"></a><span class="lineno"> 5459</span>&#160; </div>
686<div class="line"><a name="l05460"></a><span class="lineno"> 5460</span>&#160; <span class="keywordtype">size_t</span> inputCount = operatorPtr-&gt;inputs.size();</div>
687<div class="line"><a name="l05461"></a><span class="lineno"> 5461</span>&#160; <a class="code" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a> result;</div>
688<div class="line"><a name="l05462"></a><span class="lineno"> 5462</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; inputCount; ++i)</div>
689<div class="line"><a name="l05463"></a><span class="lineno"> 5463</span>&#160; {</div>
690<div class="line"><a name="l05464"></a><span class="lineno"> 5464</span>&#160; <span class="comment">// If the input location is -1 then assume input is turned off.</span></div>
691<div class="line"><a name="l05465"></a><span class="lineno"> 5465</span>&#160; <span class="keywordflow">if</span> (operatorPtr-&gt;inputs[i] == -1)</div>
692<div class="line"><a name="l05466"></a><span class="lineno"> 5466</span>&#160; {</div>
693<div class="line"><a name="l05467"></a><span class="lineno"> 5467</span>&#160; <span class="keywordflow">continue</span>;</div>
694<div class="line"><a name="l05468"></a><span class="lineno"> 5468</span>&#160; }</div>
695<div class="line"><a name="l05469"></a><span class="lineno"> 5469</span>&#160; <span class="keywordflow">else</span></div>
696<div class="line"><a name="l05470"></a><span class="lineno"> 5470</span>&#160; {</div>
697<div class="line"><a name="l05471"></a><span class="lineno"> 5471</span>&#160; uint32_t inputId = <a class="code" href="_verification_helpers_8hpp.html#aaef93dc9a69f51b59f3cdd0ff0165927">CHECKED_NON_NEGATIVE</a>(operatorPtr-&gt;inputs[i]);</div>
698<div class="line"><a name="l05472"></a><span class="lineno"> 5472</span>&#160; result.push_back(subgraphPtr-&gt;tensors[inputId].get());</div>
699<div class="line"><a name="l05473"></a><span class="lineno"> 5473</span>&#160; }</div>
700<div class="line"><a name="l05474"></a><span class="lineno"> 5474</span>&#160; }</div>
701<div class="line"><a name="l05475"></a><span class="lineno"> 5475</span>&#160; <span class="keywordflow">return</span> result;</div>
702<div class="line"><a name="l05476"></a><span class="lineno"> 5476</span>&#160;}</div>
703</div><!-- fragment -->
704<p class="reference">References <a class="el" href="_tf_lite_parser_8cpp_source.html#l00186">CHECK_MODEL</a>, and <a class="el" href="_verification_helpers_8hpp_source.html#l00035">CHECKED_NON_NEGATIVE</a>.</p>
705
706</div>
707</div>
708<a id="a8b4b0b88a5e79a88b8b60db76398f575"></a>
709<h2 class="memtitle"><span class="permalink"><a href="#a8b4b0b88a5e79a88b8b60db76398f575">&#9670;&nbsp;</a></span>GetInputTensorIds()</h2>
710
711<div class="memitem">
712<div class="memproto">
713<table class="mlabels">
714 <tr>
715 <td class="mlabels-left">
716 <table class="memname">
717 <tr>
718 <td class="memname">std::vector&lt; int32_t &gt; &amp; GetInputTensorIds </td>
719 <td>(</td>
720 <td class="paramtype">const <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> &amp;&#160;</td>
721 <td class="paramname"><em>model</em>, </td>
722 </tr>
723 <tr>
724 <td class="paramkey"></td>
725 <td></td>
726 <td class="paramtype">size_t&#160;</td>
727 <td class="paramname"><em>subgraphIndex</em>, </td>
728 </tr>
729 <tr>
730 <td class="paramkey"></td>
731 <td></td>
732 <td class="paramtype">size_t&#160;</td>
733 <td class="paramname"><em>operatorIndex</em>&#160;</td>
734 </tr>
735 <tr>
736 <td></td>
737 <td>)</td>
738 <td></td><td></td>
739 </tr>
740 </table>
741 </td>
742 <td class="mlabels-right">
743<span class="mlabels"><span class="mlabel">static</span></span> </td>
744 </tr>
745</table>
746</div><div class="memdoc">
747
748<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l05531">5531</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
749<div class="fragment"><div class="line"><a name="l05534"></a><span class="lineno"> 5534</span>&#160;{</div>
750<div class="line"><a name="l05535"></a><span class="lineno"> 5535</span>&#160; <a class="code" href="_tf_lite_parser_8cpp.html#afbe702264a4e175da37c4941c0894bdb">CHECK_MODEL</a>(model, subgraphIndex, operatorIndex);</div>
751<div class="line"><a name="l05536"></a><span class="lineno"> 5536</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; subgraphPtr = model-&gt;subgraphs[subgraphIndex];</div>
752<div class="line"><a name="l05537"></a><span class="lineno"> 5537</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; operatorPtr = subgraphPtr-&gt;operators[operatorIndex];</div>
753<div class="line"><a name="l05538"></a><span class="lineno"> 5538</span>&#160; <span class="keywordflow">return</span> operatorPtr-&gt;inputs;</div>
754<div class="line"><a name="l05539"></a><span class="lineno"> 5539</span>&#160;}</div>
755</div><!-- fragment -->
756<p class="reference">References <a class="el" href="_tf_lite_parser_8cpp_source.html#l00186">CHECK_MODEL</a>.</p>
757
758</div>
759</div>
760<a id="a913d452e7766210b59a69d3c658b2862"></a>
761<h2 class="memtitle"><span class="permalink"><a href="#a913d452e7766210b59a69d3c658b2862">&#9670;&nbsp;</a></span>GetNetworkInputBindingInfo()</h2>
762
763<div class="memitem">
764<div class="memproto">
765 <table class="memname">
766 <tr>
767 <td class="memname"><a class="el" href="namespacearmnn_tf_lite_parser.html#a9084adbf804022c874039ad40d1939e9">BindingPointInfo</a> GetNetworkInputBindingInfo </td>
768 <td>(</td>
769 <td class="paramtype">size_t&#160;</td>
770 <td class="paramname"><em>subgraphId</em>, </td>
771 </tr>
772 <tr>
773 <td class="paramkey"></td>
774 <td></td>
775 <td class="paramtype">const std::string &amp;&#160;</td>
776 <td class="paramname"><em>name</em>&#160;</td>
777 </tr>
778 <tr>
779 <td></td>
780 <td>)</td>
781 <td></td><td> const</td>
782 </tr>
783 </table>
784</div><div class="memdoc">
785
786<p>Retrieve binding info (layer id and tensor info) for the network input identified by the given layer name and subgraph id. </p>
787
788<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l05941">5941</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
789<div class="fragment"><div class="line"><a name="l05943"></a><span class="lineno"> 5943</span>&#160;{</div>
790<div class="line"><a name="l05944"></a><span class="lineno"> 5944</span>&#160; <a class="code" href="_tf_lite_parser_8cpp.html#a315ccf3e3cb207b1fbd10a2ad3e6333a">CHECK_SUBGRAPH</a>(m_Model, subgraphId);</div>
791<div class="line"><a name="l05945"></a><span class="lineno"> 5945</span>&#160; <span class="keyword">auto</span> inputs = <a class="code" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a20518e431cb501b172371b850e6c3ec7">GetSubgraphInputs</a>(m_Model, subgraphId);</div>
792<div class="line"><a name="l05946"></a><span class="lineno"> 5946</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> <span class="keyword">const</span>&amp; input : inputs)</div>
793<div class="line"><a name="l05947"></a><span class="lineno"> 5947</span>&#160; {</div>
794<div class="line"><a name="l05948"></a><span class="lineno"> 5948</span>&#160; <span class="keywordflow">if</span> (input.second-&gt;name == name)</div>
795<div class="line"><a name="l05949"></a><span class="lineno"> 5949</span>&#160; {</div>
796<div class="line"><a name="l05950"></a><span class="lineno"> 5950</span>&#160; <span class="keyword">auto</span> bindingId = GenerateLayerBindingId(subgraphId, input.first);</div>
797<div class="line"><a name="l05951"></a><span class="lineno"> 5951</span>&#160; <span class="keyword">auto</span> inputTensorInfo = <a class="code" href="namespacearmnn_deserializer.html#a948b8c615ff06defa3b80d2352259ff2">ToTensorInfo</a>(input.second);</div>
798<div class="line"><a name="l05952"></a><span class="lineno"> 5952</span>&#160; <span class="comment">// Input tensors are always treated as constant tensors during network execution.</span></div>
799<div class="line"><a name="l05953"></a><span class="lineno"> 5953</span>&#160; inputTensorInfo.SetConstant(<span class="keyword">true</span>);</div>
800<div class="line"><a name="l05954"></a><span class="lineno"> 5954</span>&#160; <span class="keywordflow">return</span> std::make_pair(bindingId, inputTensorInfo);</div>
801<div class="line"><a name="l05955"></a><span class="lineno"> 5955</span>&#160; }</div>
802<div class="line"><a name="l05956"></a><span class="lineno"> 5956</span>&#160; }</div>
803<div class="line"><a name="l05957"></a><span class="lineno"> 5957</span>&#160; </div>
804<div class="line"><a name="l05958"></a><span class="lineno"> 5958</span>&#160; std::stringstream bindings;</div>
805<div class="line"><a name="l05959"></a><span class="lineno"> 5959</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> <span class="keyword">const</span>&amp; input : inputs)</div>
806<div class="line"><a name="l05960"></a><span class="lineno"> 5960</span>&#160; {</div>
807<div class="line"><a name="l05961"></a><span class="lineno"> 5961</span>&#160; bindings &lt;&lt; <span class="stringliteral">&quot;&#39;&quot;</span> &lt;&lt; input.second-&gt;name &lt;&lt; <span class="stringliteral">&quot;&#39; &quot;</span>;</div>
808<div class="line"><a name="l05962"></a><span class="lineno"> 5962</span>&#160; }</div>
809<div class="line"><a name="l05963"></a><span class="lineno"> 5963</span>&#160; </div>
810<div class="line"><a name="l05964"></a><span class="lineno"> 5964</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.html">ParseException</a>(</div>
811<div class="line"><a name="l05965"></a><span class="lineno"> 5965</span>&#160; fmt::format(<span class="stringliteral">&quot;No input binding found for subgraph:{} and name:{}. &quot;</span></div>
812<div class="line"><a name="l05966"></a><span class="lineno"> 5966</span>&#160; <span class="stringliteral">&quot;Possible inputs are: [{}] {}&quot;</span>,</div>
813<div class="line"><a name="l05967"></a><span class="lineno"> 5967</span>&#160; subgraphId,</div>
814<div class="line"><a name="l05968"></a><span class="lineno"> 5968</span>&#160; name,</div>
815<div class="line"><a name="l05969"></a><span class="lineno"> 5969</span>&#160; bindings.str(),</div>
816<div class="line"><a name="l05970"></a><span class="lineno"> 5970</span>&#160; <a class="code" href="_exceptions_8hpp.html#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div>
817<div class="line"><a name="l05971"></a><span class="lineno"> 5971</span>&#160;}</div>
818</div><!-- fragment -->
819<p class="reference">References <a class="el" href="_exceptions_8hpp_source.html#l00203">CHECK_LOCATION</a>, <a class="el" href="_tf_lite_parser_8cpp_source.html#l00144">CHECK_SUBGRAPH</a>, <a class="el" href="_tf_lite_parser_8cpp_source.html#l05498">TfLiteParserImpl::GetSubgraphInputs()</a>, <a class="el" href="_tensor_8cpp_source.html#l00518">TensorInfo::SetConstant()</a>, and <a class="el" href="_deserializer_8cpp_source.html#l00676">armnnDeserializer::ToTensorInfo()</a>.</p>
820
821</div>
822</div>
823<a id="a59139faede3a07a43c4c8f86bb03dc43"></a>
824<h2 class="memtitle"><span class="permalink"><a href="#a59139faede3a07a43c4c8f86bb03dc43">&#9670;&nbsp;</a></span>GetNetworkOutputBindingInfo()</h2>
825
826<div class="memitem">
827<div class="memproto">
828 <table class="memname">
829 <tr>
830 <td class="memname"><a class="el" href="namespacearmnn_tf_lite_parser.html#a9084adbf804022c874039ad40d1939e9">BindingPointInfo</a> GetNetworkOutputBindingInfo </td>
831 <td>(</td>
832 <td class="paramtype">size_t&#160;</td>
833 <td class="paramname"><em>subgraphId</em>, </td>
834 </tr>
835 <tr>
836 <td class="paramkey"></td>
837 <td></td>
838 <td class="paramtype">const std::string &amp;&#160;</td>
839 <td class="paramname"><em>name</em>&#160;</td>
840 </tr>
841 <tr>
842 <td></td>
843 <td>)</td>
844 <td></td><td> const</td>
845 </tr>
846 </table>
847</div><div class="memdoc">
848
849<p>Retrieve binding info (layer id and tensor info) for the network output identified by the given layer name and subgraph id. </p>
850
851<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l05973">5973</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
852<div class="fragment"><div class="line"><a name="l05975"></a><span class="lineno"> 5975</span>&#160;{</div>
853<div class="line"><a name="l05976"></a><span class="lineno"> 5976</span>&#160; <a class="code" href="_tf_lite_parser_8cpp.html#a315ccf3e3cb207b1fbd10a2ad3e6333a">CHECK_SUBGRAPH</a>(m_Model, subgraphId);</div>
854<div class="line"><a name="l05977"></a><span class="lineno"> 5977</span>&#160; <span class="keyword">auto</span> outputs = <a class="code" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a1bd7b663eb19e2355b6aa5c36232d6fc">GetSubgraphOutputs</a>(m_Model, subgraphId);</div>
855<div class="line"><a name="l05978"></a><span class="lineno"> 5978</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; outputs.size(); ++i)</div>
856<div class="line"><a name="l05979"></a><span class="lineno"> 5979</span>&#160; {</div>
857<div class="line"><a name="l05980"></a><span class="lineno"> 5980</span>&#160; <span class="keyword">auto</span> <span class="keyword">const</span> output = outputs[i];</div>
858<div class="line"><a name="l05981"></a><span class="lineno"> 5981</span>&#160; <span class="keywordflow">if</span> (output.second-&gt;name == name)</div>
859<div class="line"><a name="l05982"></a><span class="lineno"> 5982</span>&#160; {</div>
860<div class="line"><a name="l05983"></a><span class="lineno"> 5983</span>&#160; <span class="keyword">auto</span> bindingId = GenerateLayerBindingId(subgraphId, output.first);</div>
861<div class="line"><a name="l05984"></a><span class="lineno"> 5984</span>&#160; std::vector&lt;unsigned int&gt; shape = m_OverriddenOutputShapes.size() &gt; 0 ?</div>
862<div class="line"><a name="l05985"></a><span class="lineno"> 5985</span>&#160; m_OverriddenOutputShapes[i] : AsUnsignedVector(output.second-&gt;shape);</div>
863<div class="line"><a name="l05986"></a><span class="lineno"> 5986</span>&#160; <span class="keywordflow">return</span> std::make_pair(bindingId, <a class="code" href="namespacearmnn_deserializer.html#a948b8c615ff06defa3b80d2352259ff2">ToTensorInfo</a>(output.second, shape));</div>
864<div class="line"><a name="l05987"></a><span class="lineno"> 5987</span>&#160; }</div>
865<div class="line"><a name="l05988"></a><span class="lineno"> 5988</span>&#160; }</div>
866<div class="line"><a name="l05989"></a><span class="lineno"> 5989</span>&#160; </div>
867<div class="line"><a name="l05990"></a><span class="lineno"> 5990</span>&#160; std::stringstream bindings;</div>
868<div class="line"><a name="l05991"></a><span class="lineno"> 5991</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> <span class="keyword">const</span>&amp; output : outputs)</div>
869<div class="line"><a name="l05992"></a><span class="lineno"> 5992</span>&#160; {</div>
870<div class="line"><a name="l05993"></a><span class="lineno"> 5993</span>&#160; bindings &lt;&lt; <span class="stringliteral">&quot;&#39;&quot;</span> &lt;&lt; output.second-&gt;name &lt;&lt; <span class="stringliteral">&quot;&#39; &quot;</span>;</div>
871<div class="line"><a name="l05994"></a><span class="lineno"> 5994</span>&#160; }</div>
872<div class="line"><a name="l05995"></a><span class="lineno"> 5995</span>&#160; </div>
873<div class="line"><a name="l05996"></a><span class="lineno"> 5996</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.html">ParseException</a>(</div>
874<div class="line"><a name="l05997"></a><span class="lineno"> 5997</span>&#160; fmt::format(<span class="stringliteral">&quot;No output binding found for subgraph:{} and name:{}. &quot;</span></div>
875<div class="line"><a name="l05998"></a><span class="lineno"> 5998</span>&#160; <span class="stringliteral">&quot;Possible outputs are: [{}] {}&quot;</span>,</div>
876<div class="line"><a name="l05999"></a><span class="lineno"> 5999</span>&#160; subgraphId,</div>
877<div class="line"><a name="l06000"></a><span class="lineno"> 6000</span>&#160; name,</div>
878<div class="line"><a name="l06001"></a><span class="lineno"> 6001</span>&#160; bindings.str(),</div>
879<div class="line"><a name="l06002"></a><span class="lineno"> 6002</span>&#160; <a class="code" href="_exceptions_8hpp.html#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div>
880<div class="line"><a name="l06003"></a><span class="lineno"> 6003</span>&#160;}</div>
881</div><!-- fragment -->
882<p class="reference">References <a class="el" href="_exceptions_8hpp_source.html#l00203">CHECK_LOCATION</a>, <a class="el" href="_tf_lite_parser_8cpp_source.html#l00144">CHECK_SUBGRAPH</a>, <a class="el" href="_tf_lite_parser_8cpp_source.html#l05515">TfLiteParserImpl::GetSubgraphOutputs()</a>, and <a class="el" href="_deserializer_8cpp_source.html#l00676">armnnDeserializer::ToTensorInfo()</a>.</p>
883
884</div>
885</div>
886<a id="a279d0891900c191d5a0139e5c11fe488"></a>
887<h2 class="memtitle"><span class="permalink"><a href="#a279d0891900c191d5a0139e5c11fe488">&#9670;&nbsp;</a></span>GetOutputs()</h2>
888
889<div class="memitem">
890<div class="memproto">
891<table class="mlabels">
892 <tr>
893 <td class="mlabels-left">
894 <table class="memname">
895 <tr>
896 <td class="memname"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abd8bee7fb9b86485a60bc7ee05114270">TfLiteParserImpl::TensorRawPtrVector</a> GetOutputs </td>
897 <td>(</td>
898 <td class="paramtype">const <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> &amp;&#160;</td>
899 <td class="paramname"><em>model</em>, </td>
900 </tr>
901 <tr>
902 <td class="paramkey"></td>
903 <td></td>
904 <td class="paramtype">size_t&#160;</td>
905 <td class="paramname"><em>subgraphIndex</em>, </td>
906 </tr>
907 <tr>
908 <td class="paramkey"></td>
909 <td></td>
910 <td class="paramtype">size_t&#160;</td>
911 <td class="paramname"><em>operatorIndex</em>&#160;</td>
912 </tr>
913 <tr>
914 <td></td>
915 <td>)</td>
916 <td></td><td></td>
917 </tr>
918 </table>
919 </td>
920 <td class="mlabels-right">
921<span class="mlabels"><span class="mlabel">static</span></span> </td>
922 </tr>
923</table>
924</div><div class="memdoc">
925
926<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l05478">5478</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
927<div class="fragment"><div class="line"><a name="l05481"></a><span class="lineno"> 5481</span>&#160;{</div>
928<div class="line"><a name="l05482"></a><span class="lineno"> 5482</span>&#160; <a class="code" href="_tf_lite_parser_8cpp.html#afbe702264a4e175da37c4941c0894bdb">CHECK_MODEL</a>(model, subgraphIndex, operatorIndex);</div>
929<div class="line"><a name="l05483"></a><span class="lineno"> 5483</span>&#160; </div>
930<div class="line"><a name="l05484"></a><span class="lineno"> 5484</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; subgraphPtr = model-&gt;subgraphs[subgraphIndex];</div>
931<div class="line"><a name="l05485"></a><span class="lineno"> 5485</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; operatorPtr = subgraphPtr-&gt;operators[operatorIndex];</div>
932<div class="line"><a name="l05486"></a><span class="lineno"> 5486</span>&#160; </div>
933<div class="line"><a name="l05487"></a><span class="lineno"> 5487</span>&#160; <span class="keywordtype">size_t</span> outputCount = operatorPtr-&gt;outputs.size();</div>
934<div class="line"><a name="l05488"></a><span class="lineno"> 5488</span>&#160; <a class="code" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abd8bee7fb9b86485a60bc7ee05114270">TensorRawPtrVector</a> result(outputCount);</div>
935<div class="line"><a name="l05489"></a><span class="lineno"> 5489</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; outputCount; ++i)</div>
936<div class="line"><a name="l05490"></a><span class="lineno"> 5490</span>&#160; {</div>
937<div class="line"><a name="l05491"></a><span class="lineno"> 5491</span>&#160; uint32_t outputId = <a class="code" href="_verification_helpers_8hpp.html#aaef93dc9a69f51b59f3cdd0ff0165927">CHECKED_NON_NEGATIVE</a>(operatorPtr-&gt;outputs[i]);</div>
938<div class="line"><a name="l05492"></a><span class="lineno"> 5492</span>&#160; <a class="code" href="_tf_lite_parser_8cpp.html#aa1664dc13adbc85ac12fb584b76bfdae">CHECK_TENSOR</a>(model, subgraphIndex, outputId);</div>
939<div class="line"><a name="l05493"></a><span class="lineno"> 5493</span>&#160; result[i] = subgraphPtr-&gt;tensors[outputId].get();</div>
940<div class="line"><a name="l05494"></a><span class="lineno"> 5494</span>&#160; }</div>
941<div class="line"><a name="l05495"></a><span class="lineno"> 5495</span>&#160; <span class="keywordflow">return</span> result;</div>
942<div class="line"><a name="l05496"></a><span class="lineno"> 5496</span>&#160;}</div>
943</div><!-- fragment -->
944<p class="reference">References <a class="el" href="_tf_lite_parser_8cpp_source.html#l00186">CHECK_MODEL</a>, <a class="el" href="_tf_lite_parser_8cpp_source.html#l00207">CHECK_TENSOR</a>, and <a class="el" href="_verification_helpers_8hpp_source.html#l00035">CHECKED_NON_NEGATIVE</a>.</p>
945
946</div>
947</div>
948<a id="afe6c475f92d02dd1eb12acd746e4736f"></a>
949<h2 class="memtitle"><span class="permalink"><a href="#afe6c475f92d02dd1eb12acd746e4736f">&#9670;&nbsp;</a></span>GetOutputTensorIds()</h2>
950
951<div class="memitem">
952<div class="memproto">
953<table class="mlabels">
954 <tr>
955 <td class="mlabels-left">
956 <table class="memname">
957 <tr>
958 <td class="memname">std::vector&lt; int32_t &gt; &amp; GetOutputTensorIds </td>
959 <td>(</td>
960 <td class="paramtype">const <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> &amp;&#160;</td>
961 <td class="paramname"><em>model</em>, </td>
962 </tr>
963 <tr>
964 <td class="paramkey"></td>
965 <td></td>
966 <td class="paramtype">size_t&#160;</td>
967 <td class="paramname"><em>subgraphIndex</em>, </td>
968 </tr>
969 <tr>
970 <td class="paramkey"></td>
971 <td></td>
972 <td class="paramtype">size_t&#160;</td>
973 <td class="paramname"><em>operatorIndex</em>&#160;</td>
974 </tr>
975 <tr>
976 <td></td>
977 <td>)</td>
978 <td></td><td></td>
979 </tr>
980 </table>
981 </td>
982 <td class="mlabels-right">
983<span class="mlabels"><span class="mlabel">static</span></span> </td>
984 </tr>
985</table>
986</div><div class="memdoc">
987
988<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l05541">5541</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
989<div class="fragment"><div class="line"><a name="l05544"></a><span class="lineno"> 5544</span>&#160;{</div>
990<div class="line"><a name="l05545"></a><span class="lineno"> 5545</span>&#160; <a class="code" href="_tf_lite_parser_8cpp.html#afbe702264a4e175da37c4941c0894bdb">CHECK_MODEL</a>(model, subgraphIndex, operatorIndex);</div>
991<div class="line"><a name="l05546"></a><span class="lineno"> 5546</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; subgraphPtr = model-&gt;subgraphs[subgraphIndex];</div>
992<div class="line"><a name="l05547"></a><span class="lineno"> 5547</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; operatorPtr = subgraphPtr-&gt;operators[operatorIndex];</div>
993<div class="line"><a name="l05548"></a><span class="lineno"> 5548</span>&#160; <span class="keywordflow">return</span> operatorPtr-&gt;outputs;</div>
994<div class="line"><a name="l05549"></a><span class="lineno"> 5549</span>&#160;}</div>
995</div><!-- fragment -->
996<p class="reference">References <a class="el" href="_tf_lite_parser_8cpp_source.html#l00186">CHECK_MODEL</a>.</p>
997
998</div>
999</div>
1000<a id="a1b7aed8466cc5792966d271a65285d0e"></a>
1001<h2 class="memtitle"><span class="permalink"><a href="#a1b7aed8466cc5792966d271a65285d0e">&#9670;&nbsp;</a></span>GetSubgraphCount()</h2>
1002
1003<div class="memitem">
1004<div class="memproto">
1005 <table class="memname">
1006 <tr>
1007 <td class="memname">size_t GetSubgraphCount </td>
1008 <td>(</td>
1009 <td class="paramname"></td><td>)</td>
1010 <td> const</td>
1011 </tr>
1012 </table>
1013</div><div class="memdoc">
1014
1015<p>Return the number of subgraphs in the parsed model. </p>
1016
1017<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l06005">6005</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
1018<div class="fragment"><div class="line"><a name="l06006"></a><span class="lineno"> 6006</span>&#160;{</div>
1019<div class="line"><a name="l06007"></a><span class="lineno"> 6007</span>&#160; <span class="keywordflow">return</span> m_Model-&gt;subgraphs.size();</div>
1020<div class="line"><a name="l06008"></a><span class="lineno"> 6008</span>&#160;}</div>
1021</div><!-- fragment -->
1022</div>
1023</div>
1024<a id="a20518e431cb501b172371b850e6c3ec7"></a>
1025<h2 class="memtitle"><span class="permalink"><a href="#a20518e431cb501b172371b850e6c3ec7">&#9670;&nbsp;</a></span>GetSubgraphInputs()</h2>
1026
1027<div class="memitem">
1028<div class="memproto">
1029<table class="mlabels">
1030 <tr>
1031 <td class="mlabels-left">
1032 <table class="memname">
1033 <tr>
1034 <td class="memname"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a86428e0c674542488c7292dfbe2ce381">TfLiteParserImpl::TensorIdRawPtrVector</a> GetSubgraphInputs </td>
1035 <td>(</td>
1036 <td class="paramtype">const <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> &amp;&#160;</td>
1037 <td class="paramname"><em>model</em>, </td>
1038 </tr>
1039 <tr>
1040 <td class="paramkey"></td>
1041 <td></td>
1042 <td class="paramtype">size_t&#160;</td>
1043 <td class="paramname"><em>subgraphIndex</em>&#160;</td>
1044 </tr>
1045 <tr>
1046 <td></td>
1047 <td>)</td>
1048 <td></td><td></td>
1049 </tr>
1050 </table>
1051 </td>
1052 <td class="mlabels-right">
1053<span class="mlabels"><span class="mlabel">static</span></span> </td>
1054 </tr>
1055</table>
1056</div><div class="memdoc">
1057
1058<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l05498">5498</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
1059<div class="fragment"><div class="line"><a name="l05500"></a><span class="lineno"> 5500</span>&#160;{</div>
1060<div class="line"><a name="l05501"></a><span class="lineno"> 5501</span>&#160; <a class="code" href="_tf_lite_parser_8cpp.html#a315ccf3e3cb207b1fbd10a2ad3e6333a">CHECK_SUBGRAPH</a>(model, subgraphIndex);</div>
1061<div class="line"><a name="l05502"></a><span class="lineno"> 5502</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; subgraphPtr = model-&gt;subgraphs[subgraphIndex];</div>
1062<div class="line"><a name="l05503"></a><span class="lineno"> 5503</span>&#160; </div>
1063<div class="line"><a name="l05504"></a><span class="lineno"> 5504</span>&#160; <span class="keywordtype">size_t</span> inputCount = subgraphPtr-&gt;inputs.size();</div>
1064<div class="line"><a name="l05505"></a><span class="lineno"> 5505</span>&#160; <a class="code" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a86428e0c674542488c7292dfbe2ce381">TensorIdRawPtrVector</a> result(inputCount);</div>
1065<div class="line"><a name="l05506"></a><span class="lineno"> 5506</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; inputCount; ++i)</div>
1066<div class="line"><a name="l05507"></a><span class="lineno"> 5507</span>&#160; {</div>
1067<div class="line"><a name="l05508"></a><span class="lineno"> 5508</span>&#160; uint32_t inputId = <a class="code" href="_verification_helpers_8hpp.html#aaef93dc9a69f51b59f3cdd0ff0165927">CHECKED_NON_NEGATIVE</a>(subgraphPtr-&gt;inputs[i]);</div>
1068<div class="line"><a name="l05509"></a><span class="lineno"> 5509</span>&#160; <a class="code" href="_tf_lite_parser_8cpp.html#aa1664dc13adbc85ac12fb584b76bfdae">CHECK_TENSOR</a>(model, subgraphIndex, inputId);</div>
1069<div class="line"><a name="l05510"></a><span class="lineno"> 5510</span>&#160; result[i] = std::make_pair(inputId, subgraphPtr-&gt;tensors[inputId].get());</div>
1070<div class="line"><a name="l05511"></a><span class="lineno"> 5511</span>&#160; }</div>
1071<div class="line"><a name="l05512"></a><span class="lineno"> 5512</span>&#160; <span class="keywordflow">return</span> result;</div>
1072<div class="line"><a name="l05513"></a><span class="lineno"> 5513</span>&#160;}</div>
1073</div><!-- fragment -->
1074<p class="reference">References <a class="el" href="_tf_lite_parser_8cpp_source.html#l00144">CHECK_SUBGRAPH</a>, <a class="el" href="_tf_lite_parser_8cpp_source.html#l00207">CHECK_TENSOR</a>, and <a class="el" href="_verification_helpers_8hpp_source.html#l00035">CHECKED_NON_NEGATIVE</a>.</p>
1075
1076<p class="reference">Referenced by <a class="el" href="_tf_lite_parser_8cpp_source.html#l05941">TfLiteParserImpl::GetNetworkInputBindingInfo()</a>, and <a class="el" href="_tf_lite_parser_8cpp_source.html#l06010">TfLiteParserImpl::GetSubgraphInputTensorNames()</a>.</p>
1077
1078</div>
1079</div>
1080<a id="afe1ea028d8fcb9942c204d4415ff3319"></a>
1081<h2 class="memtitle"><span class="permalink"><a href="#afe1ea028d8fcb9942c204d4415ff3319">&#9670;&nbsp;</a></span>GetSubgraphInputTensorNames()</h2>
1082
1083<div class="memitem">
1084<div class="memproto">
1085 <table class="memname">
1086 <tr>
1087 <td class="memname">std::vector&lt; std::string &gt; GetSubgraphInputTensorNames </td>
1088 <td>(</td>
1089 <td class="paramtype">size_t&#160;</td>
1090 <td class="paramname"><em>subgraphId</em></td><td>)</td>
1091 <td> const</td>
1092 </tr>
1093 </table>
1094</div><div class="memdoc">
1095
1096<p>Return the input tensor names for a given subgraph. </p>
1097
1098<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l06010">6010</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
1099<div class="fragment"><div class="line"><a name="l06011"></a><span class="lineno"> 6011</span>&#160;{</div>
1100<div class="line"><a name="l06012"></a><span class="lineno"> 6012</span>&#160; <a class="code" href="_tf_lite_parser_8cpp.html#a315ccf3e3cb207b1fbd10a2ad3e6333a">CHECK_SUBGRAPH</a>(m_Model, subgraphId);</div>
1101<div class="line"><a name="l06013"></a><span class="lineno"> 6013</span>&#160; <span class="keyword">auto</span> inputs = <a class="code" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a20518e431cb501b172371b850e6c3ec7">GetSubgraphInputs</a>(m_Model, subgraphId);</div>
1102<div class="line"><a name="l06014"></a><span class="lineno"> 6014</span>&#160; std::vector&lt;std::string&gt; result;</div>
1103<div class="line"><a name="l06015"></a><span class="lineno"> 6015</span>&#160; result.reserve(inputs.size());</div>
1104<div class="line"><a name="l06016"></a><span class="lineno"> 6016</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> <span class="keyword">const</span>&amp; input : inputs)</div>
1105<div class="line"><a name="l06017"></a><span class="lineno"> 6017</span>&#160; {</div>
1106<div class="line"><a name="l06018"></a><span class="lineno"> 6018</span>&#160; result.push_back(input.second-&gt;name);</div>
1107<div class="line"><a name="l06019"></a><span class="lineno"> 6019</span>&#160; }</div>
1108<div class="line"><a name="l06020"></a><span class="lineno"> 6020</span>&#160; <span class="keywordflow">return</span> result;</div>
1109<div class="line"><a name="l06021"></a><span class="lineno"> 6021</span>&#160;}</div>
1110</div><!-- fragment -->
1111<p class="reference">References <a class="el" href="_tf_lite_parser_8cpp_source.html#l00144">CHECK_SUBGRAPH</a>, and <a class="el" href="_tf_lite_parser_8cpp_source.html#l05498">TfLiteParserImpl::GetSubgraphInputs()</a>.</p>
1112
1113</div>
1114</div>
1115<a id="a1bd7b663eb19e2355b6aa5c36232d6fc"></a>
1116<h2 class="memtitle"><span class="permalink"><a href="#a1bd7b663eb19e2355b6aa5c36232d6fc">&#9670;&nbsp;</a></span>GetSubgraphOutputs()</h2>
1117
1118<div class="memitem">
1119<div class="memproto">
1120<table class="mlabels">
1121 <tr>
1122 <td class="mlabels-left">
1123 <table class="memname">
1124 <tr>
1125 <td class="memname"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a86428e0c674542488c7292dfbe2ce381">TfLiteParserImpl::TensorIdRawPtrVector</a> GetSubgraphOutputs </td>
1126 <td>(</td>
1127 <td class="paramtype">const <a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">ModelPtr</a> &amp;&#160;</td>
1128 <td class="paramname"><em>model</em>, </td>
1129 </tr>
1130 <tr>
1131 <td class="paramkey"></td>
1132 <td></td>
1133 <td class="paramtype">size_t&#160;</td>
1134 <td class="paramname"><em>subgraphIndex</em>&#160;</td>
1135 </tr>
1136 <tr>
1137 <td></td>
1138 <td>)</td>
1139 <td></td><td></td>
1140 </tr>
1141 </table>
1142 </td>
1143 <td class="mlabels-right">
1144<span class="mlabels"><span class="mlabel">static</span></span> </td>
1145 </tr>
1146</table>
1147</div><div class="memdoc">
1148
1149<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l05515">5515</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
1150<div class="fragment"><div class="line"><a name="l05517"></a><span class="lineno"> 5517</span>&#160;{</div>
1151<div class="line"><a name="l05518"></a><span class="lineno"> 5518</span>&#160; <a class="code" href="_tf_lite_parser_8cpp.html#a315ccf3e3cb207b1fbd10a2ad3e6333a">CHECK_SUBGRAPH</a>(model, subgraphIndex);</div>
1152<div class="line"><a name="l05519"></a><span class="lineno"> 5519</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; subgraphPtr = model-&gt;subgraphs[subgraphIndex];</div>
1153<div class="line"><a name="l05520"></a><span class="lineno"> 5520</span>&#160; </div>
1154<div class="line"><a name="l05521"></a><span class="lineno"> 5521</span>&#160; <span class="keywordtype">size_t</span> outputCount = subgraphPtr-&gt;outputs.size();</div>
1155<div class="line"><a name="l05522"></a><span class="lineno"> 5522</span>&#160; <a class="code" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a86428e0c674542488c7292dfbe2ce381">TensorIdRawPtrVector</a> result(outputCount);</div>
1156<div class="line"><a name="l05523"></a><span class="lineno"> 5523</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; outputCount; ++i)</div>
1157<div class="line"><a name="l05524"></a><span class="lineno"> 5524</span>&#160; {</div>
1158<div class="line"><a name="l05525"></a><span class="lineno"> 5525</span>&#160; uint32_t outputId = <a class="code" href="_verification_helpers_8hpp.html#aaef93dc9a69f51b59f3cdd0ff0165927">CHECKED_NON_NEGATIVE</a>(subgraphPtr-&gt;outputs[i]);</div>
1159<div class="line"><a name="l05526"></a><span class="lineno"> 5526</span>&#160; result[i] = std::make_pair(outputId, subgraphPtr-&gt;tensors[outputId].get());</div>
1160<div class="line"><a name="l05527"></a><span class="lineno"> 5527</span>&#160; }</div>
1161<div class="line"><a name="l05528"></a><span class="lineno"> 5528</span>&#160; <span class="keywordflow">return</span> result;</div>
1162<div class="line"><a name="l05529"></a><span class="lineno"> 5529</span>&#160;}</div>
1163</div><!-- fragment -->
1164<p class="reference">References <a class="el" href="_tf_lite_parser_8cpp_source.html#l00144">CHECK_SUBGRAPH</a>, and <a class="el" href="_verification_helpers_8hpp_source.html#l00035">CHECKED_NON_NEGATIVE</a>.</p>
1165
1166<p class="reference">Referenced by <a class="el" href="_tf_lite_parser_8cpp_source.html#l05973">TfLiteParserImpl::GetNetworkOutputBindingInfo()</a>, and <a class="el" href="_tf_lite_parser_8cpp_source.html#l06023">TfLiteParserImpl::GetSubgraphOutputTensorNames()</a>.</p>
1167
1168</div>
1169</div>
1170<a id="a949070abe70fabe18cc1eb29d5853f47"></a>
1171<h2 class="memtitle"><span class="permalink"><a href="#a949070abe70fabe18cc1eb29d5853f47">&#9670;&nbsp;</a></span>GetSubgraphOutputTensorNames()</h2>
1172
1173<div class="memitem">
1174<div class="memproto">
1175 <table class="memname">
1176 <tr>
1177 <td class="memname">std::vector&lt; std::string &gt; GetSubgraphOutputTensorNames </td>
1178 <td>(</td>
1179 <td class="paramtype">size_t&#160;</td>
1180 <td class="paramname"><em>subgraphId</em></td><td>)</td>
1181 <td> const</td>
1182 </tr>
1183 </table>
1184</div><div class="memdoc">
1185
1186<p>Return the output tensor names for a given subgraph. </p>
1187
1188<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l06023">6023</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
1189<div class="fragment"><div class="line"><a name="l06024"></a><span class="lineno"> 6024</span>&#160;{</div>
1190<div class="line"><a name="l06025"></a><span class="lineno"> 6025</span>&#160; <a class="code" href="_tf_lite_parser_8cpp.html#a315ccf3e3cb207b1fbd10a2ad3e6333a">CHECK_SUBGRAPH</a>(m_Model, subgraphId);</div>
1191<div class="line"><a name="l06026"></a><span class="lineno"> 6026</span>&#160; <span class="keyword">auto</span> outputs = <a class="code" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a1bd7b663eb19e2355b6aa5c36232d6fc">GetSubgraphOutputs</a>(m_Model, subgraphId);</div>
1192<div class="line"><a name="l06027"></a><span class="lineno"> 6027</span>&#160; std::vector&lt;std::string&gt; result;</div>
1193<div class="line"><a name="l06028"></a><span class="lineno"> 6028</span>&#160; result.reserve(outputs.size());</div>
1194<div class="line"><a name="l06029"></a><span class="lineno"> 6029</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> <span class="keyword">const</span>&amp; output : outputs)</div>
1195<div class="line"><a name="l06030"></a><span class="lineno"> 6030</span>&#160; {</div>
1196<div class="line"><a name="l06031"></a><span class="lineno"> 6031</span>&#160; result.push_back(output.second-&gt;name);</div>
1197<div class="line"><a name="l06032"></a><span class="lineno"> 6032</span>&#160; }</div>
1198<div class="line"><a name="l06033"></a><span class="lineno"> 6033</span>&#160; <span class="keywordflow">return</span> result;</div>
1199<div class="line"><a name="l06034"></a><span class="lineno"> 6034</span>&#160;}</div>
1200</div><!-- fragment -->
1201<p class="reference">References <a class="el" href="_tf_lite_parser_8cpp_source.html#l00144">CHECK_SUBGRAPH</a>, and <a class="el" href="_tf_lite_parser_8cpp_source.html#l05515">TfLiteParserImpl::GetSubgraphOutputs()</a>.</p>
1202
1203</div>
1204</div>
1205<a id="aa09a8bb02eed50715082d8b7fccd2f8d"></a>
1206<h2 class="memtitle"><span class="permalink"><a href="#aa09a8bb02eed50715082d8b7fccd2f8d">&#9670;&nbsp;</a></span>GetVersion()</h2>
1207
1208<div class="memitem">
1209<div class="memproto">
1210<table class="mlabels">
1211 <tr>
1212 <td class="mlabels-left">
1213 <table class="memname">
1214 <tr>
1215 <td class="memname">const std::string GetVersion </td>
1216 <td>(</td>
1217 <td class="paramname"></td><td>)</td>
1218 <td></td>
1219 </tr>
1220 </table>
1221 </td>
1222 <td class="mlabels-right">
1223<span class="mlabels"><span class="mlabel">static</span></span> </td>
1224 </tr>
1225</table>
1226</div><div class="memdoc">
1227
1228<p>Retrieve version in X.Y.Z form. </p>
1229
1230<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l06036">6036</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
1231<div class="fragment"><div class="line"><a name="l06037"></a><span class="lineno"> 6037</span>&#160;{</div>
1232<div class="line"><a name="l06038"></a><span class="lineno"> 6038</span>&#160; <span class="keywordflow">return</span> <a class="code" href="include_2armnn_tf_lite_parser_2_version_8hpp.html#a88c7ccef0cfc85702b48557ec804ef9a">TFLITE_PARSER_VERSION</a>;</div>
1233<div class="line"><a name="l06039"></a><span class="lineno"> 6039</span>&#160;}</div>
1234</div><!-- fragment -->
1235<p class="reference">References <a class="el" href="include_2armnn_tf_lite_parser_2_version_8hpp_source.html#l00025">TFLITE_PARSER_VERSION</a>.</p>
1236
1237</div>
1238</div>
1239<a id="a0da1e3b0281fa84f8b6f5ce3cd15b7c0"></a>
1240<h2 class="memtitle"><span class="permalink"><a href="#a0da1e3b0281fa84f8b6f5ce3cd15b7c0">&#9670;&nbsp;</a></span>LoadModel()</h2>
1241
1242<div class="memitem">
1243<div class="memproto">
1244 <table class="memname">
1245 <tr>
1246 <td class="memname"><a class="el" href="namespacearmnn.html#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a> LoadModel </td>
1247 <td>(</td>
1248 <td class="paramtype">std::unique_ptr&lt; tflite::ModelT &gt;&#160;</td>
1249 <td class="paramname"><em>model</em></td><td>)</td>
1250 <td></td>
1251 </tr>
1252 </table>
1253</div><div class="memdoc">
1254
1255<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l00972">972</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
1256<div class="fragment"><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160;{</div>
1257<div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160; ResetParser();</div>
1258<div class="line"><a name="l00975"></a><span class="lineno"> 975</span>&#160; m_Model = std::move(model);</div>
1259<div class="line"><a name="l00976"></a><span class="lineno"> 976</span>&#160; </div>
1260<div class="line"><a name="l00977"></a><span class="lineno"> 977</span>&#160; <span class="keywordflow">return</span> CreateNetworkFromModel();</div>
1261<div class="line"><a name="l00978"></a><span class="lineno"> 978</span>&#160;}</div>
1262</div><!-- fragment -->
1263</div>
1264</div>
1265<a id="a7f3fc56b7306b444f06f45cdc4032bbf"></a>
1266<h2 class="memtitle"><span class="permalink"><a href="#a7f3fc56b7306b444f06f45cdc4032bbf">&#9670;&nbsp;</a></span>LoadModelFromBinary()</h2>
1267
1268<div class="memitem">
1269<div class="memproto">
1270<table class="mlabels">
1271 <tr>
1272 <td class="mlabels-left">
1273 <table class="memname">
1274 <tr>
1275 <td class="memname"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">TfLiteParserImpl::ModelPtr</a> LoadModelFromBinary </td>
1276 <td>(</td>
1277 <td class="paramtype">const uint8_t *&#160;</td>
1278 <td class="paramname"><em>binaryContent</em>, </td>
1279 </tr>
1280 <tr>
1281 <td class="paramkey"></td>
1282 <td></td>
1283 <td class="paramtype">size_t&#160;</td>
1284 <td class="paramname"><em>len</em>&#160;</td>
1285 </tr>
1286 <tr>
1287 <td></td>
1288 <td>)</td>
1289 <td></td><td></td>
1290 </tr>
1291 </table>
1292 </td>
1293 <td class="mlabels-right">
1294<span class="mlabels"><span class="mlabel">static</span></span> </td>
1295 </tr>
1296</table>
1297</div><div class="memdoc">
1298
1299<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l05432">5432</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
1300<div class="fragment"><div class="line"><a name="l05433"></a><span class="lineno"> 5433</span>&#160;{</div>
1301<div class="line"><a name="l05434"></a><span class="lineno"> 5434</span>&#160; <span class="keywordflow">if</span> (binaryContent == <span class="keyword">nullptr</span>)</div>
1302<div class="line"><a name="l05435"></a><span class="lineno"> 5435</span>&#160; {</div>
1303<div class="line"><a name="l05436"></a><span class="lineno"> 5436</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.html">InvalidArgumentException</a>(fmt::format(<span class="stringliteral">&quot;Invalid (null) binary content {}&quot;</span>,</div>
1304<div class="line"><a name="l05437"></a><span class="lineno"> 5437</span>&#160; <a class="code" href="_exceptions_8hpp.html#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div>
1305<div class="line"><a name="l05438"></a><span class="lineno"> 5438</span>&#160; }</div>
1306<div class="line"><a name="l05439"></a><span class="lineno"> 5439</span>&#160; flatbuffers::Verifier verifier(binaryContent, len);</div>
1307<div class="line"><a name="l05440"></a><span class="lineno"> 5440</span>&#160; <span class="keywordflow">if</span> (verifier.VerifyBuffer&lt;<a class="code" href="namespacearmnn__driver.html#a923b39ec5f83672f50289cbaf5de6798">tflite::Model</a>&gt;() == <span class="keyword">false</span>)</div>
1308<div class="line"><a name="l05441"></a><span class="lineno"> 5441</span>&#160; {</div>
1309<div class="line"><a name="l05442"></a><span class="lineno"> 5442</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.html">ParseException</a>(</div>
1310<div class="line"><a name="l05443"></a><span class="lineno"> 5443</span>&#160; fmt::format(<span class="stringliteral">&quot;Buffer doesn&#39;t conform to the expected Tensorflow Lite &quot;</span></div>
1311<div class="line"><a name="l05444"></a><span class="lineno"> 5444</span>&#160; <span class="stringliteral">&quot;flatbuffers format. size:{} {}&quot;</span>,</div>
1312<div class="line"><a name="l05445"></a><span class="lineno"> 5445</span>&#160; len,</div>
1313<div class="line"><a name="l05446"></a><span class="lineno"> 5446</span>&#160; <a class="code" href="_exceptions_8hpp.html#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div>
1314<div class="line"><a name="l05447"></a><span class="lineno"> 5447</span>&#160; }</div>
1315<div class="line"><a name="l05448"></a><span class="lineno"> 5448</span>&#160; <span class="keywordflow">return</span> tflite::UnPackModel(binaryContent);</div>
1316<div class="line"><a name="l05449"></a><span class="lineno"> 5449</span>&#160;}</div>
1317</div><!-- fragment -->
1318<p class="reference">References <a class="el" href="_exceptions_8hpp_source.html#l00203">CHECK_LOCATION</a>.</p>
1319
1320<p class="reference">Referenced by <a class="el" href="_tf_lite_parser_8cpp_source.html#l00964">TfLiteParserImpl::CreateNetworkFromBinary()</a>, and <a class="el" href="_tf_lite_parser_8cpp_source.html#l05402">TfLiteParserImpl::LoadModelFromFile()</a>.</p>
1321
1322</div>
1323</div>
1324<a id="af9590c2ae8d68b5da999d3d6ab21dd3b"></a>
1325<h2 class="memtitle"><span class="permalink"><a href="#af9590c2ae8d68b5da999d3d6ab21dd3b">&#9670;&nbsp;</a></span>LoadModelFromFile()</h2>
1326
1327<div class="memitem">
1328<div class="memproto">
1329<table class="mlabels">
1330 <tr>
1331 <td class="mlabels-left">
1332 <table class="memname">
1333 <tr>
1334 <td class="memname"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abfc86471394295357a23b3addd0b5b1c">TfLiteParserImpl::ModelPtr</a> LoadModelFromFile </td>
1335 <td>(</td>
1336 <td class="paramtype">const char *&#160;</td>
1337 <td class="paramname"><em>fileName</em></td><td>)</td>
1338 <td></td>
1339 </tr>
1340 </table>
1341 </td>
1342 <td class="mlabels-right">
1343<span class="mlabels"><span class="mlabel">static</span></span> </td>
1344 </tr>
1345</table>
1346</div><div class="memdoc">
1347
1348<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l05402">5402</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
1349<div class="fragment"><div class="line"><a name="l05403"></a><span class="lineno"> 5403</span>&#160;{</div>
1350<div class="line"><a name="l05404"></a><span class="lineno"> 5404</span>&#160; <span class="keywordflow">if</span> (fileName == <span class="keyword">nullptr</span>)</div>
1351<div class="line"><a name="l05405"></a><span class="lineno"> 5405</span>&#160; {</div>
1352<div class="line"><a name="l05406"></a><span class="lineno"> 5406</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.html">InvalidArgumentException</a>(fmt::format(<span class="stringliteral">&quot;Invalid (null) file name {}&quot;</span>,</div>
1353<div class="line"><a name="l05407"></a><span class="lineno"> 5407</span>&#160; <a class="code" href="_exceptions_8hpp.html#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div>
1354<div class="line"><a name="l05408"></a><span class="lineno"> 5408</span>&#160; }</div>
1355<div class="line"><a name="l05409"></a><span class="lineno"> 5409</span>&#160; std::error_code errorCode;</div>
1356<div class="line"><a name="l05410"></a><span class="lineno"> 5410</span>&#160; fs::path pathToFile(fileName);</div>
1357<div class="line"><a name="l05411"></a><span class="lineno"> 5411</span>&#160; <span class="keywordflow">if</span> (!fs::exists(pathToFile, errorCode))</div>
1358<div class="line"><a name="l05412"></a><span class="lineno"> 5412</span>&#160; {</div>
1359<div class="line"><a name="l05413"></a><span class="lineno"> 5413</span>&#160; <span class="comment">//fmt::format() could not be used here (format error)</span></div>
1360<div class="line"><a name="l05414"></a><span class="lineno"> 5414</span>&#160; std::stringstream msg;</div>
1361<div class="line"><a name="l05415"></a><span class="lineno"> 5415</span>&#160; msg &lt;&lt; <span class="stringliteral">&quot;Cannot find the file (&quot;</span> &lt;&lt; fileName &lt;&lt; <span class="stringliteral">&quot;) errorCode: &quot;</span> &lt;&lt; errorCode</div>
1362<div class="line"><a name="l05416"></a><span class="lineno"> 5416</span>&#160; &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; <a class="code" href="_exceptions_8hpp.html#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString();</div>
1363<div class="line"><a name="l05417"></a><span class="lineno"> 5417</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_file_not_found_exception.html">FileNotFoundException</a>(msg.str());</div>
1364<div class="line"><a name="l05418"></a><span class="lineno"> 5418</span>&#160; }</div>
1365<div class="line"><a name="l05419"></a><span class="lineno"> 5419</span>&#160; <span class="keywordflow">if</span> (!fs::is_regular_file(pathToFile))</div>
1366<div class="line"><a name="l05420"></a><span class="lineno"> 5420</span>&#160; {</div>
1367<div class="line"><a name="l05421"></a><span class="lineno"> 5421</span>&#160; <span class="comment">// Exclude non regular files.</span></div>
1368<div class="line"><a name="l05422"></a><span class="lineno"> 5422</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_invalid_argument_exception.html">InvalidArgumentException</a>(fmt::format(<span class="stringliteral">&quot;File \&quot;{}\&quot; is not a regular file and cannot be loaded.&quot;</span>,</div>
1369<div class="line"><a name="l05423"></a><span class="lineno"> 5423</span>&#160; pathToFile.c_str()));</div>
1370<div class="line"><a name="l05424"></a><span class="lineno"> 5424</span>&#160; }</div>
1371<div class="line"><a name="l05425"></a><span class="lineno"> 5425</span>&#160; </div>
1372<div class="line"><a name="l05426"></a><span class="lineno"> 5426</span>&#160; std::ifstream file(fileName, std::ios::binary);</div>
1373<div class="line"><a name="l05427"></a><span class="lineno"> 5427</span>&#160; std::string fileContent((std::istreambuf_iterator&lt;char&gt;(file)), std::istreambuf_iterator&lt;char&gt;());</div>
1374<div class="line"><a name="l05428"></a><span class="lineno"> 5428</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a7f3fc56b7306b444f06f45cdc4032bbf">LoadModelFromBinary</a>(<span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>uint8_t *<span class="keyword">&gt;</span>(fileContent.c_str()),</div>
1375<div class="line"><a name="l05429"></a><span class="lineno"> 5429</span>&#160; fileContent.size());</div>
1376<div class="line"><a name="l05430"></a><span class="lineno"> 5430</span>&#160;}</div>
1377</div><!-- fragment -->
1378<p class="reference">References <a class="el" href="_exceptions_8hpp_source.html#l00203">CHECK_LOCATION</a>, and <a class="el" href="_tf_lite_parser_8cpp_source.html#l05432">TfLiteParserImpl::LoadModelFromBinary()</a>.</p>
1379
1380<p class="reference">Referenced by <a class="el" href="_tf_lite_parser_8cpp_source.html#l00957">TfLiteParserImpl::CreateNetworkFromBinaryFile()</a>.</p>
1381
1382</div>
1383</div>
1384<a id="aaebfa9a01a0bb8a0935114ff0140cc45"></a>
1385<h2 class="memtitle"><span class="permalink"><a href="#aaebfa9a01a0bb8a0935114ff0140cc45">&#9670;&nbsp;</a></span>OutputShapeOfReshape()</h2>
1386
1387<div class="memitem">
1388<div class="memproto">
1389<table class="mlabels">
1390 <tr>
1391 <td class="mlabels-left">
1392 <table class="memname">
1393 <tr>
1394 <td class="memname"><a class="el" href="classarmnn_1_1_tensor_info.html">armnn::TensorInfo</a> OutputShapeOfReshape </td>
1395 <td>(</td>
1396 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">armnn::TensorInfo</a> &amp;&#160;</td>
1397 <td class="paramname"><em>inputTensorInfo</em>, </td>
1398 </tr>
1399 <tr>
1400 <td class="paramkey"></td>
1401 <td></td>
1402 <td class="paramtype">const std::vector&lt; int32_t &gt; &amp;&#160;</td>
1403 <td class="paramname"><em>targetDimsIn</em>&#160;</td>
1404 </tr>
1405 <tr>
1406 <td></td>
1407 <td>)</td>
1408 <td></td><td></td>
1409 </tr>
1410 </table>
1411 </td>
1412 <td class="mlabels-right">
1413<span class="mlabels"><span class="mlabel">static</span></span> </td>
1414 </tr>
1415</table>
1416</div><div class="memdoc">
1417
1418<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l03311">3311</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
1419<div class="fragment"><div class="line"><a name="l03313"></a><span class="lineno"> 3313</span>&#160;{</div>
1420<div class="line"><a name="l03314"></a><span class="lineno"> 3314</span>&#160; std::vector&lt;unsigned int&gt; outputDims(targetDimsIn.begin(), targetDimsIn.end());</div>
1421<div class="line"><a name="l03315"></a><span class="lineno"> 3315</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> stretchDim = std::find(targetDimsIn.begin(), targetDimsIn.end(), -1);</div>
1422<div class="line"><a name="l03316"></a><span class="lineno"> 3316</span>&#160; </div>
1423<div class="line"><a name="l03317"></a><span class="lineno"> 3317</span>&#160; <span class="keywordflow">if</span> (stretchDim != targetDimsIn.end())</div>
1424<div class="line"><a name="l03318"></a><span class="lineno"> 3318</span>&#160; {</div>
1425<div class="line"><a name="l03319"></a><span class="lineno"> 3319</span>&#160; <span class="keywordflow">if</span> (std::find(std::next(stretchDim), targetDimsIn.end(), -1) != targetDimsIn.end())</div>
1426<div class="line"><a name="l03320"></a><span class="lineno"> 3320</span>&#160; {</div>
1427<div class="line"><a name="l03321"></a><span class="lineno"> 3321</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.html">ParseException</a>(</div>
1428<div class="line"><a name="l03322"></a><span class="lineno"> 3322</span>&#160; fmt::format(<span class="stringliteral">&quot;At most one component of shape can be -1 {}&quot;</span>, <a class="code" href="_exceptions_8hpp.html#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div>
1429<div class="line"><a name="l03323"></a><span class="lineno"> 3323</span>&#160; }</div>
1430<div class="line"><a name="l03324"></a><span class="lineno"> 3324</span>&#160; </div>
1431<div class="line"><a name="l03325"></a><span class="lineno"> 3325</span>&#160; <span class="keyword">auto</span> targetNumElements =</div>
1432<div class="line"><a name="l03326"></a><span class="lineno"> 3326</span>&#160; armnn::numeric_cast&lt;unsigned int&gt;(</div>
1433<div class="line"><a name="l03327"></a><span class="lineno"> 3327</span>&#160; std::accumulate(targetDimsIn.begin(), targetDimsIn.end(), -1, std::multiplies&lt;int32_t&gt;()));</div>
1434<div class="line"><a name="l03328"></a><span class="lineno"> 3328</span>&#160; </div>
1435<div class="line"><a name="l03329"></a><span class="lineno"> 3329</span>&#160; <span class="keyword">auto</span> stretchIndex = <span class="keyword">static_cast&lt;</span><span class="keywordtype">size_t</span><span class="keyword">&gt;</span>(std::distance(targetDimsIn.begin(), stretchDim));</div>
1436<div class="line"><a name="l03330"></a><span class="lineno"> 3330</span>&#160; </div>
1437<div class="line"><a name="l03331"></a><span class="lineno"> 3331</span>&#160; <span class="keywordflow">if</span> (targetNumElements == 0)</div>
1438<div class="line"><a name="l03332"></a><span class="lineno"> 3332</span>&#160; {</div>
1439<div class="line"><a name="l03333"></a><span class="lineno"> 3333</span>&#160; <span class="keywordflow">if</span> (inputTensorInfo.<a class="code" href="classarmnn_1_1_tensor_info.html#a8846406ac37fbd2204f0be16ee05d5b7">GetNumElements</a>() == 0)</div>
1440<div class="line"><a name="l03334"></a><span class="lineno"> 3334</span>&#160; {</div>
1441<div class="line"><a name="l03335"></a><span class="lineno"> 3335</span>&#160; outputDims[stretchIndex] = 0;</div>
1442<div class="line"><a name="l03336"></a><span class="lineno"> 3336</span>&#160; }</div>
1443<div class="line"><a name="l03337"></a><span class="lineno"> 3337</span>&#160; <span class="keywordflow">else</span></div>
1444<div class="line"><a name="l03338"></a><span class="lineno"> 3338</span>&#160; {</div>
1445<div class="line"><a name="l03339"></a><span class="lineno"> 3339</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.html">ParseException</a>(</div>
1446<div class="line"><a name="l03340"></a><span class="lineno"> 3340</span>&#160; fmt::format(<span class="stringliteral">&quot;Input to reshape is a tensor with elements, but the requested shape has 0. {}&quot;</span>,</div>
1447<div class="line"><a name="l03341"></a><span class="lineno"> 3341</span>&#160; <a class="code" href="_exceptions_8hpp.html#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString()));</div>
1448<div class="line"><a name="l03342"></a><span class="lineno"> 3342</span>&#160; }</div>
1449<div class="line"><a name="l03343"></a><span class="lineno"> 3343</span>&#160; }</div>
1450<div class="line"><a name="l03344"></a><span class="lineno"> 3344</span>&#160; <span class="keywordflow">else</span></div>
1451<div class="line"><a name="l03345"></a><span class="lineno"> 3345</span>&#160; {</div>
1452<div class="line"><a name="l03346"></a><span class="lineno"> 3346</span>&#160; outputDims[stretchIndex] = inputTensorInfo.<a class="code" href="classarmnn_1_1_tensor_info.html#a8846406ac37fbd2204f0be16ee05d5b7">GetNumElements</a>() / targetNumElements;</div>
1453<div class="line"><a name="l03347"></a><span class="lineno"> 3347</span>&#160; }</div>
1454<div class="line"><a name="l03348"></a><span class="lineno"> 3348</span>&#160; }</div>
1455<div class="line"><a name="l03349"></a><span class="lineno"> 3349</span>&#160; </div>
1456<div class="line"><a name="l03350"></a><span class="lineno"> 3350</span>&#160; <a class="code" href="classarmnn_1_1_tensor_shape.html">TensorShape</a> outputShape = <a class="code" href="classarmnn_1_1_tensor_shape.html">TensorShape</a>(<span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">&gt;</span>(outputDims.size()), outputDims.data());</div>
1457<div class="line"><a name="l03351"></a><span class="lineno"> 3351</span>&#160; </div>
1458<div class="line"><a name="l03352"></a><span class="lineno"> 3352</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> reshapeInfo = inputTensorInfo;</div>
1459<div class="line"><a name="l03353"></a><span class="lineno"> 3353</span>&#160; reshapeInfo.<a class="code" href="classarmnn_1_1_tensor_info.html#abe8889e8150beef5fd204b2d87b49298">SetShape</a>(outputShape);</div>
1460<div class="line"><a name="l03354"></a><span class="lineno"> 3354</span>&#160; </div>
1461<div class="line"><a name="l03355"></a><span class="lineno"> 3355</span>&#160; <span class="keywordflow">return</span> reshapeInfo;</div>
1462<div class="line"><a name="l03356"></a><span class="lineno"> 3356</span>&#160;}</div>
1463</div><!-- fragment -->
1464<p class="reference">References <a class="el" href="_exceptions_8hpp_source.html#l00203">CHECK_LOCATION</a>, <a class="el" href="_tensor_8hpp_source.html#l00198">TensorInfo::GetNumElements()</a>, and <a class="el" href="_tensor_8hpp_source.html#l00195">TensorInfo::SetShape()</a>.</p>
1465
1466</div>
1467</div>
1468<a id="a7d28f3a07c7ab30f66e7c70ded86eb49"></a>
1469<h2 class="memtitle"><span class="permalink"><a href="#a7d28f3a07c7ab30f66e7c70ded86eb49">&#9670;&nbsp;</a></span>OutputShapeOfSqueeze()</h2>
1470
1471<div class="memitem">
1472<div class="memproto">
1473<table class="mlabels">
1474 <tr>
1475 <td class="mlabels-left">
1476 <table class="memname">
1477 <tr>
1478 <td class="memname"><a class="el" href="classarmnn_1_1_tensor_info.html">armnn::TensorInfo</a> OutputShapeOfSqueeze </td>
1479 <td>(</td>
1480 <td class="paramtype">std::vector&lt; uint32_t &gt;&#160;</td>
1481 <td class="paramname"><em>squeezeDims</em>, </td>
1482 </tr>
1483 <tr>
1484 <td class="paramkey"></td>
1485 <td></td>
1486 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">armnn::TensorInfo</a> &amp;&#160;</td>
1487 <td class="paramname"><em>inputTensorInfo</em>&#160;</td>
1488 </tr>
1489 <tr>
1490 <td></td>
1491 <td>)</td>
1492 <td></td><td></td>
1493 </tr>
1494 </table>
1495 </td>
1496 <td class="mlabels-right">
1497<span class="mlabels"><span class="mlabel">static</span></span> </td>
1498 </tr>
1499</table>
1500</div><div class="memdoc">
1501
1502<p class="definition">Definition at line <a class="el" href="_tf_lite_parser_8cpp_source.html#l02430">2430</a> of file <a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a>.</p>
1503<div class="fragment"><div class="line"><a name="l02432"></a><span class="lineno"> 2432</span>&#160;{</div>
1504<div class="line"><a name="l02433"></a><span class="lineno"> 2433</span>&#160; <a class="code" href="_verification_helpers_8hpp.html#a479b2821a7a2cbb8fa8eb7f60a47065d">CHECK_VALID_SIZE</a>(squeezeDims.size(), 0, 1, 2, 3, 4);</div>
1505<div class="line"><a name="l02434"></a><span class="lineno"> 2434</span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> uint32_t dimensionSequence[] = { 0, 1, 2, 3 };</div>
1506<div class="line"><a name="l02435"></a><span class="lineno"> 2435</span>&#160; </div>
1507<div class="line"><a name="l02436"></a><span class="lineno"> 2436</span>&#160; <span class="keywordflow">if</span> (inputTensorInfo.<a class="code" href="classarmnn_1_1_tensor_info.html#a157e27d41e9f6b21f0d3c025fa47dc24">GetNumDimensions</a>() &gt; 4)</div>
1508<div class="line"><a name="l02437"></a><span class="lineno"> 2437</span>&#160; {</div>
1509<div class="line"><a name="l02438"></a><span class="lineno"> 2438</span>&#160; std::stringstream ss;</div>
1510<div class="line"><a name="l02439"></a><span class="lineno"> 2439</span>&#160; ss &lt;&lt; <span class="stringliteral">&quot;Input tensor has unexpected number of dimensions:&quot;</span> &lt;&lt; inputTensorInfo.<a class="code" href="classarmnn_1_1_tensor_info.html#a157e27d41e9f6b21f0d3c025fa47dc24">GetNumDimensions</a>()</div>
1511<div class="line"><a name="l02440"></a><span class="lineno"> 2440</span>&#160; &lt;&lt; <span class="stringliteral">&quot; shape:&quot;</span> &lt;&lt; inputTensorInfo.<a class="code" href="classarmnn_1_1_tensor_info.html#a8b5d0f8a24e9d9238f412260a552acf8">GetShape</a>() &lt;&lt; <span class="stringliteral">&quot; &quot;</span></div>
1512<div class="line"><a name="l02441"></a><span class="lineno"> 2441</span>&#160; &lt;&lt; <a class="code" href="_exceptions_8hpp.html#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString();</div>
1513<div class="line"><a name="l02442"></a><span class="lineno"> 2442</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.html">ParseException</a>(ss.str());</div>
1514<div class="line"><a name="l02443"></a><span class="lineno"> 2443</span>&#160; }</div>
1515<div class="line"><a name="l02444"></a><span class="lineno"> 2444</span>&#160; </div>
1516<div class="line"><a name="l02445"></a><span class="lineno"> 2445</span>&#160; <span class="keywordflow">if</span> (squeezeDims.empty())</div>
1517<div class="line"><a name="l02446"></a><span class="lineno"> 2446</span>&#160; {</div>
1518<div class="line"><a name="l02447"></a><span class="lineno"> 2447</span>&#160; squeezeDims.assign(dimensionSequence,</div>
1519<div class="line"><a name="l02448"></a><span class="lineno"> 2448</span>&#160; dimensionSequence+inputTensorInfo.<a class="code" href="classarmnn_1_1_tensor_info.html#a157e27d41e9f6b21f0d3c025fa47dc24">GetNumDimensions</a>());</div>
1520<div class="line"><a name="l02449"></a><span class="lineno"> 2449</span>&#160; }</div>
1521<div class="line"><a name="l02450"></a><span class="lineno"> 2450</span>&#160; </div>
1522<div class="line"><a name="l02451"></a><span class="lineno"> 2451</span>&#160; std::vector&lt;uint32_t&gt; outputDims;</div>
1523<div class="line"><a name="l02452"></a><span class="lineno"> 2452</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; inputTensorInfo.<a class="code" href="classarmnn_1_1_tensor_info.html#a157e27d41e9f6b21f0d3c025fa47dc24">GetNumDimensions</a>(); i++)</div>
1524<div class="line"><a name="l02453"></a><span class="lineno"> 2453</span>&#160; {</div>
1525<div class="line"><a name="l02454"></a><span class="lineno"> 2454</span>&#160; <span class="keywordtype">bool</span> skipSqueeze = (std::find(squeezeDims.begin(), squeezeDims.end(), i) == squeezeDims.end());</div>
1526<div class="line"><a name="l02455"></a><span class="lineno"> 2455</span>&#160; <span class="keyword">auto</span> currentDimension = inputTensorInfo.<a class="code" href="classarmnn_1_1_tensor_info.html#a8b5d0f8a24e9d9238f412260a552acf8">GetShape</a>()[i];</div>
1527<div class="line"><a name="l02456"></a><span class="lineno"> 2456</span>&#160; <span class="keywordflow">if</span> (skipSqueeze || currentDimension != 1)</div>
1528<div class="line"><a name="l02457"></a><span class="lineno"> 2457</span>&#160; {</div>
1529<div class="line"><a name="l02458"></a><span class="lineno"> 2458</span>&#160; outputDims.push_back(currentDimension);</div>
1530<div class="line"><a name="l02459"></a><span class="lineno"> 2459</span>&#160; }</div>
1531<div class="line"><a name="l02460"></a><span class="lineno"> 2460</span>&#160; }</div>
1532<div class="line"><a name="l02461"></a><span class="lineno"> 2461</span>&#160; </div>
1533<div class="line"><a name="l02462"></a><span class="lineno"> 2462</span>&#160; <span class="keywordflow">if</span> (outputDims.size() &gt; 4)</div>
1534<div class="line"><a name="l02463"></a><span class="lineno"> 2463</span>&#160; {</div>
1535<div class="line"><a name="l02464"></a><span class="lineno"> 2464</span>&#160; std::stringstream ss;</div>
1536<div class="line"><a name="l02465"></a><span class="lineno"> 2465</span>&#160; ss &lt;&lt; <span class="stringliteral">&quot;Output tensor has unexpected number of dimensions:&quot;</span> &lt;&lt; inputTensorInfo.<a class="code" href="classarmnn_1_1_tensor_info.html#a157e27d41e9f6b21f0d3c025fa47dc24">GetNumDimensions</a>()</div>
1537<div class="line"><a name="l02466"></a><span class="lineno"> 2466</span>&#160; &lt;&lt; <span class="stringliteral">&quot; shape:&quot;</span> &lt;&lt; inputTensorInfo.<a class="code" href="classarmnn_1_1_tensor_info.html#a8b5d0f8a24e9d9238f412260a552acf8">GetShape</a>() &lt;&lt; <span class="stringliteral">&quot; &quot;</span></div>
1538<div class="line"><a name="l02467"></a><span class="lineno"> 2467</span>&#160; &lt;&lt; <a class="code" href="_exceptions_8hpp.html#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a>().AsString();</div>
1539<div class="line"><a name="l02468"></a><span class="lineno"> 2468</span>&#160; <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.html">ParseException</a>(ss.str());</div>
1540<div class="line"><a name="l02469"></a><span class="lineno"> 2469</span>&#160; }</div>
1541<div class="line"><a name="l02470"></a><span class="lineno"> 2470</span>&#160; </div>
1542<div class="line"><a name="l02471"></a><span class="lineno"> 2471</span>&#160; <a class="code" href="classarmnn_1_1_tensor_shape.html">TensorShape</a> outShape = <a class="code" href="classarmnn_1_1_tensor_shape.html">TensorShape</a>(<span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">&gt;</span>(outputDims.size()),</div>
1543<div class="line"><a name="l02472"></a><span class="lineno"> 2472</span>&#160; outputDims.data());</div>
1544<div class="line"><a name="l02473"></a><span class="lineno"> 2473</span>&#160; </div>
1545<div class="line"><a name="l02474"></a><span class="lineno"> 2474</span>&#160; <span class="comment">// we need to preserve the tensor type and the quantization data as well</span></div>
1546<div class="line"><a name="l02475"></a><span class="lineno"> 2475</span>&#160; <a class="code" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> outTensorInfo = inputTensorInfo;</div>
1547<div class="line"><a name="l02476"></a><span class="lineno"> 2476</span>&#160; outTensorInfo.<a class="code" href="classarmnn_1_1_tensor_info.html#abe8889e8150beef5fd204b2d87b49298">SetShape</a>(outShape);</div>
1548<div class="line"><a name="l02477"></a><span class="lineno"> 2477</span>&#160; </div>
1549<div class="line"><a name="l02478"></a><span class="lineno"> 2478</span>&#160; <span class="keywordflow">return</span> outTensorInfo;</div>
1550<div class="line"><a name="l02479"></a><span class="lineno"> 2479</span>&#160;}</div>
1551</div><!-- fragment -->
1552<p class="reference">References <a class="el" href="_exceptions_8hpp_source.html#l00203">CHECK_LOCATION</a>, <a class="el" href="_verification_helpers_8hpp_source.html#l00032">CHECK_VALID_SIZE</a>, <a class="el" href="_tensor_8hpp_source.html#l00197">TensorInfo::GetNumDimensions()</a>, <a class="el" href="_tensor_8hpp_source.html#l00193">TensorInfo::GetShape()</a>, and <a class="el" href="_tensor_8hpp_source.html#l00195">TensorInfo::SetShape()</a>.</p>
1553
1554</div>
1555</div>
1556<hr/>The documentation for this class was generated from the following files:<ul>
1557<li>src/armnnTfLiteParser/<a class="el" href="_tf_lite_parser_8hpp_source.html">TfLiteParser.hpp</a></li>
1558<li>src/armnnTfLiteParser/<a class="el" href="_tf_lite_parser_8cpp_source.html">TfLiteParser.cpp</a></li>
1559</ul>
1560</div><!-- contents -->
1561</div><!-- doc-content -->
1562<div class="ttc" id="aclassarmnn_1_1_tensor_info_html_a8846406ac37fbd2204f0be16ee05d5b7"><div class="ttname"><a href="classarmnn_1_1_tensor_info.html#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.html#l00198">Tensor.hpp:198</a></div></div>
1563<div class="ttc" id="aclassarmnn_tf_lite_parser_1_1_tf_lite_parser_impl_html_abd8bee7fb9b86485a60bc7ee05114270"><div class="ttname"><a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#abd8bee7fb9b86485a60bc7ee05114270">armnnTfLiteParser::TfLiteParserImpl::TensorRawPtrVector</a></div><div class="ttdeci">std::vector&lt; TensorRawPtr &gt; TensorRawPtrVector</div><div class="ttdef"><b>Definition:</b> <a href="_tf_lite_parser_8hpp_source.html#l00036">TfLiteParser.hpp:36</a></div></div>
1564<div class="ttc" id="aclassarmnn_1_1_tensor_info_html"><div class="ttname"><a href="classarmnn_1_1_tensor_info.html">armnn::TensorInfo</a></div><div class="ttdef"><b>Definition:</b> <a href="_tensor_8hpp_source.html#l00152">Tensor.hpp:152</a></div></div>
1565<div class="ttc" id="aclassarmnn_tf_lite_parser_1_1_tf_lite_parser_impl_html_a1bd7b663eb19e2355b6aa5c36232d6fc"><div class="ttname"><a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a1bd7b663eb19e2355b6aa5c36232d6fc">armnnTfLiteParser::TfLiteParserImpl::GetSubgraphOutputs</a></div><div class="ttdeci">static TensorIdRawPtrVector GetSubgraphOutputs(const ModelPtr &amp;model, size_t subgraphIndex)</div><div class="ttdef"><b>Definition:</b> <a href="_tf_lite_parser_8cpp_source.html#l05515">TfLiteParser.cpp:5515</a></div></div>
1566<div class="ttc" id="aclassarmnn_1_1_tensor_info_html_a157e27d41e9f6b21f0d3c025fa47dc24"><div class="ttname"><a href="classarmnn_1_1_tensor_info.html#a157e27d41e9f6b21f0d3c025fa47dc24">armnn::TensorInfo::GetNumDimensions</a></div><div class="ttdeci">unsigned int GetNumDimensions() const</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_8hpp_source.html#l00197">Tensor.hpp:197</a></div></div>
1567<div class="ttc" id="a_exceptions_8hpp_html_aa3be76aec4ce713822a5ea1ecbb7bc61"><div class="ttname"><a href="_exceptions_8hpp.html#aa3be76aec4ce713822a5ea1ecbb7bc61">CHECK_LOCATION</a></div><div class="ttdeci">#define CHECK_LOCATION()</div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.html#l00203">Exceptions.hpp:203</a></div></div>
1568<div class="ttc" id="aclassarmnn_tf_lite_parser_1_1_tf_lite_parser_impl_html_af9590c2ae8d68b5da999d3d6ab21dd3b"><div class="ttname"><a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#af9590c2ae8d68b5da999d3d6ab21dd3b">armnnTfLiteParser::TfLiteParserImpl::LoadModelFromFile</a></div><div class="ttdeci">static ModelPtr LoadModelFromFile(const char *fileName)</div><div class="ttdef"><b>Definition:</b> <a href="_tf_lite_parser_8cpp_source.html#l05402">TfLiteParser.cpp:5402</a></div></div>
1569<div class="ttc" id="aclassarmnn_tf_lite_parser_1_1_tf_lite_parser_impl_html_a7f3fc56b7306b444f06f45cdc4032bbf"><div class="ttname"><a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a7f3fc56b7306b444f06f45cdc4032bbf">armnnTfLiteParser::TfLiteParserImpl::LoadModelFromBinary</a></div><div class="ttdeci">static ModelPtr LoadModelFromBinary(const uint8_t *binaryContent, size_t len)</div><div class="ttdef"><b>Definition:</b> <a href="_tf_lite_parser_8cpp_source.html#l05432">TfLiteParser.cpp:5432</a></div></div>
1570<div class="ttc" id="a_verification_helpers_8hpp_html_aaef93dc9a69f51b59f3cdd0ff0165927"><div class="ttname"><a href="_verification_helpers_8hpp.html#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.html#l00035">VerificationHelpers.hpp:35</a></div></div>
1571<div class="ttc" id="aclassarmnn_1_1_tensor_shape_html"><div class="ttname"><a href="classarmnn_1_1_tensor_shape.html">armnn::TensorShape</a></div><div class="ttdef"><b>Definition:</b> <a href="_tensor_8hpp_source.html#l00020">Tensor.hpp:20</a></div></div>
1572<div class="ttc" id="a_tf_lite_parser_8cpp_html_aa1664dc13adbc85ac12fb584b76bfdae"><div class="ttname"><a href="_tf_lite_parser_8cpp.html#aa1664dc13adbc85ac12fb584b76bfdae">CHECK_TENSOR</a></div><div class="ttdeci">#define CHECK_TENSOR(MODEL, SUBGRAPH_INDEX, TENSOR_INDEX)</div><div class="ttdef"><b>Definition:</b> <a href="_tf_lite_parser_8cpp_source.html#l00207">TfLiteParser.cpp:207</a></div></div>
1573<div class="ttc" id="anamespacearmnn__driver_html_a923b39ec5f83672f50289cbaf5de6798"><div class="ttname"><a href="namespacearmnn__driver.html#a923b39ec5f83672f50289cbaf5de6798">armnn_driver::Model</a></div><div class="ttdeci">::android::nn::Model Model</div><div class="ttdoc">Helper classes.</div><div class="ttdef"><b>Definition:</b> <a href="_conversion_utils_8hpp_source.html#l00045">ConversionUtils.hpp:45</a></div></div>
1574<div class="ttc" id="aclassarmnn_1_1_invalid_argument_exception_html"><div class="ttname"><a href="classarmnn_1_1_invalid_argument_exception.html">armnn::InvalidArgumentException</a></div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.html#l00080">Exceptions.hpp:80</a></div></div>
1575<div class="ttc" id="a_tf_lite_parser_8cpp_html_afbe702264a4e175da37c4941c0894bdb"><div class="ttname"><a href="_tf_lite_parser_8cpp.html#afbe702264a4e175da37c4941c0894bdb">CHECK_MODEL</a></div><div class="ttdeci">#define CHECK_MODEL(MODEL, SUBGRAPH_INDEX, OPERATOR_INDEX)</div><div class="ttdef"><b>Definition:</b> <a href="_tf_lite_parser_8cpp_source.html#l00186">TfLiteParser.cpp:186</a></div></div>
1576<div class="ttc" id="aclassarmnn_tf_lite_parser_1_1_tf_lite_parser_impl_html_a86428e0c674542488c7292dfbe2ce381"><div class="ttname"><a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a86428e0c674542488c7292dfbe2ce381">armnnTfLiteParser::TfLiteParserImpl::TensorIdRawPtrVector</a></div><div class="ttdeci">std::vector&lt; TensorIdRawPtr &gt; TensorIdRawPtrVector</div><div class="ttdef"><b>Definition:</b> <a href="_tf_lite_parser_8hpp_source.html#l00038">TfLiteParser.hpp:38</a></div></div>
1577<div class="ttc" id="aclassarmnn_tf_lite_parser_1_1_tf_lite_parser_impl_html_a20518e431cb501b172371b850e6c3ec7"><div class="ttname"><a href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html#a20518e431cb501b172371b850e6c3ec7">armnnTfLiteParser::TfLiteParserImpl::GetSubgraphInputs</a></div><div class="ttdeci">static TensorIdRawPtrVector GetSubgraphInputs(const ModelPtr &amp;model, size_t subgraphIndex)</div><div class="ttdef"><b>Definition:</b> <a href="_tf_lite_parser_8cpp_source.html#l05498">TfLiteParser.cpp:5498</a></div></div>
1578<div class="ttc" id="anamespacearmnn_deserializer_html_a948b8c615ff06defa3b80d2352259ff2"><div class="ttname"><a href="namespacearmnn_deserializer.html#a948b8c615ff06defa3b80d2352259ff2">armnnDeserializer::ToTensorInfo</a></div><div class="ttdeci">armnn::TensorInfo ToTensorInfo(TensorRawPtr tensorPtr)</div><div class="ttdef"><b>Definition:</b> <a href="_deserializer_8cpp_source.html#l00676">Deserializer.cpp:676</a></div></div>
1579<div class="ttc" id="aclassarmnn_1_1_tensor_info_html_a8b5d0f8a24e9d9238f412260a552acf8"><div class="ttname"><a href="classarmnn_1_1_tensor_info.html#a8b5d0f8a24e9d9238f412260a552acf8">armnn::TensorInfo::GetShape</a></div><div class="ttdeci">const TensorShape &amp; GetShape() const</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_8hpp_source.html#l00193">Tensor.hpp:193</a></div></div>
1580<div class="ttc" id="aclassarmnn_1_1_parse_exception_html"><div class="ttname"><a href="classarmnn_1_1_parse_exception.html">armnn::ParseException</a></div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.html#l00092">Exceptions.hpp:92</a></div></div>
1581<div class="ttc" id="ainclude_2armnn_tf_lite_parser_2_version_8hpp_html_a88c7ccef0cfc85702b48557ec804ef9a"><div class="ttname"><a href="include_2armnn_tf_lite_parser_2_version_8hpp.html#a88c7ccef0cfc85702b48557ec804ef9a">TFLITE_PARSER_VERSION</a></div><div class="ttdeci">#define TFLITE_PARSER_VERSION</div><div class="ttdoc">TFLITE_PARSER_VERSION: &quot;X.Y.Z&quot; where: X = Major version number Y = Minor version number Z = Patch ver...</div><div class="ttdef"><b>Definition:</b> <a href="include_2armnn_tf_lite_parser_2_version_8hpp_source.html#l00025">Version.hpp:25</a></div></div>
1582<div class="ttc" id="aclassarmnn_1_1_tensor_info_html_abe8889e8150beef5fd204b2d87b49298"><div class="ttname"><a href="classarmnn_1_1_tensor_info.html#abe8889e8150beef5fd204b2d87b49298">armnn::TensorInfo::SetShape</a></div><div class="ttdeci">void SetShape(const TensorShape &amp;newShape)</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_8hpp_source.html#l00195">Tensor.hpp:195</a></div></div>
1583<div class="ttc" id="a_verification_helpers_8hpp_html_a479b2821a7a2cbb8fa8eb7f60a47065d"><div class="ttname"><a href="_verification_helpers_8hpp.html#a479b2821a7a2cbb8fa8eb7f60a47065d">CHECK_VALID_SIZE</a></div><div class="ttdeci">#define CHECK_VALID_SIZE(ACTUAL,...)</div><div class="ttdef"><b>Definition:</b> <a href="_verification_helpers_8hpp_source.html#l00032">VerificationHelpers.hpp:32</a></div></div>
1584<div class="ttc" id="a_tf_lite_parser_8cpp_html_a315ccf3e3cb207b1fbd10a2ad3e6333a"><div class="ttname"><a href="_tf_lite_parser_8cpp.html#a315ccf3e3cb207b1fbd10a2ad3e6333a">CHECK_SUBGRAPH</a></div><div class="ttdeci">#define CHECK_SUBGRAPH(MODEL, SUBGRAPH_INDEX)</div><div class="ttdef"><b>Definition:</b> <a href="_tf_lite_parser_8cpp_source.html#l00144">TfLiteParser.cpp:144</a></div></div>
1585<div class="ttc" id="a_tf_lite_parser_8cpp_html_a7c88d54e3f895030c70330a4c9d76a7a"><div class="ttname"><a href="_tf_lite_parser_8cpp.html#a7c88d54e3f895030c70330a4c9d76a7a">CHECK_BUFFER</a></div><div class="ttdeci">#define CHECK_BUFFER(MODEL, BUFFER_INDEX)</div><div class="ttdef"><b>Definition:</b> <a href="_tf_lite_parser_8cpp_source.html#l00255">TfLiteParser.cpp:255</a></div></div>
1586<div class="ttc" id="aclassarmnn_1_1_file_not_found_exception_html"><div class="ttname"><a href="classarmnn_1_1_file_not_found_exception.html">armnn::FileNotFoundException</a></div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.html#l00086">Exceptions.hpp:86</a></div></div>
1587<!-- start footer part -->
1588<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
1589 <ul>
1590 <li class="navelem"><a class="el" href="namespacearmnn_tf_lite_parser.html">armnnTfLiteParser</a></li><li class="navelem"><a class="el" href="classarmnn_tf_lite_parser_1_1_tf_lite_parser_impl.html">TfLiteParserImpl</a></li>
1591 <li class="footer">Generated on Thu May 16 2024 09:32:00 for Arm NN by
1592 <a href="http://www.doxygen.org/index.html">
1593 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
1594 </ul>
1595</div>
1596</body>
1597</html>