aboutsummaryrefslogtreecommitdiff
path: root/21.02/classarmnn_caffe_parser_1_1_record_by_record_caffe_parser.xhtml
blob: 25ae0738d1a93c1ace259a45e8e48e94ac8bba28 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
<!-- Copyright (c) 2020 ARM Limited. -->
<!--                                 -->
<!-- SPDX-License-Identifier: MIT    -->
<!--                                 -->
<!-- HTML header for doxygen 1.8.13-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="robots" content="NOINDEX, NOFOLLOW" />
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>ArmNN: RecordByRecordCaffeParser Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 10rem; margin-top: .5rem; margin-left 10px"/>
  <td style="padding-left: 0.5em;">
   <div id="projectname">
   &#160;<span id="projectnumber">21.02</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classarmnn_caffe_parser_1_1_record_by_record_caffe_parser.xhtml','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classarmnn_caffe_parser_1_1_record_by_record_caffe_parser-members.xhtml">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">RecordByRecordCaffeParser Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="_record_by_record_caffe_parser_8hpp_source.xhtml">RecordByRecordCaffeParser.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for RecordByRecordCaffeParser:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classarmnn_caffe_parser_1_1_record_by_record_caffe_parser.png" usemap="#RecordByRecordCaffeParser_map" alt=""/>
  <map id="RecordByRecordCaffeParser_map" name="RecordByRecordCaffeParser_map">
<area href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml" alt="ICaffeParser::CaffeParserImpl" shape="rect" coords="0,0,178,24"/>
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a2af73acd4a0513a5942d7c255babce1c"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespacearmnn.xhtml#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_record_by_record_caffe_parser.xhtml#a2af73acd4a0513a5942d7c255babce1c">CreateNetworkFromBinaryFile</a> (const char *graphFile, const std::map&lt; std::string, <a class="el" href="classarmnn_1_1_tensor_shape.xhtml">armnn::TensorShape</a> &gt; &amp;inputShapes, const std::vector&lt; std::string &gt; &amp;requestedOutputs) override</td></tr>
<tr class="memdesc:a2af73acd4a0513a5942d7c255babce1c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create the network from a protobuf binary file on disk.  <a href="#a2af73acd4a0513a5942d7c255babce1c">More...</a><br /></td></tr>
<tr class="separator:a2af73acd4a0513a5942d7c255babce1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f5ad3c6d406bd00bd4ce3b85eb32324"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_record_by_record_caffe_parser.xhtml#a9f5ad3c6d406bd00bd4ce3b85eb32324">RecordByRecordCaffeParser</a> ()</td></tr>
<tr class="separator:a9f5ad3c6d406bd00bd4ce3b85eb32324"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml">ICaffeParser::CaffeParserImpl</a></td></tr>
<tr class="memitem:ac915fb2df2772be3179e97b1e8287a2d inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn.xhtml#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#ac915fb2df2772be3179e97b1e8287a2d">CreateNetworkFromTextFile</a> (const char *graphFile, const std::map&lt; std::string, <a class="el" href="classarmnn_1_1_tensor_shape.xhtml">armnn::TensorShape</a> &gt; &amp;inputShapes, const std::vector&lt; std::string &gt; &amp;requestedOutputs)</td></tr>
<tr class="memdesc:ac915fb2df2772be3179e97b1e8287a2d inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create the network from a protobuf text file on disk.  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#ac915fb2df2772be3179e97b1e8287a2d">More...</a><br /></td></tr>
<tr class="separator:ac915fb2df2772be3179e97b1e8287a2d inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e393f41f2330006fdf00f2840c6dd28 inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn.xhtml#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a7e393f41f2330006fdf00f2840c6dd28">CreateNetworkFromString</a> (const char *protoText, const std::map&lt; std::string, <a class="el" href="classarmnn_1_1_tensor_shape.xhtml">armnn::TensorShape</a> &gt; &amp;inputShapes, const std::vector&lt; std::string &gt; &amp;requestedOutputs)</td></tr>
<tr class="memdesc:a7e393f41f2330006fdf00f2840c6dd28 inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates the network directly from protobuf text in a string. Useful for debugging/testing.  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a7e393f41f2330006fdf00f2840c6dd28">More...</a><br /></td></tr>
<tr class="separator:a7e393f41f2330006fdf00f2840c6dd28 inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b053a6c449d0814cc831c916c126668 inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn.xhtml#a280670a263dc4fd40491f6d0a2737f44">BindingPointInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a8b053a6c449d0814cc831c916c126668">GetNetworkInputBindingInfo</a> (const std::string &amp;name) const</td></tr>
<tr class="memdesc:a8b053a6c449d0814cc831c916c126668 inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves binding info (layer id and tensor info) for the network input identified by the given layer name.  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a8b053a6c449d0814cc831c916c126668">More...</a><br /></td></tr>
<tr class="separator:a8b053a6c449d0814cc831c916c126668 inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b1fdcb1985af12dd1848a9ffa5d3271 inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn.xhtml#a280670a263dc4fd40491f6d0a2737f44">BindingPointInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a4b1fdcb1985af12dd1848a9ffa5d3271">GetNetworkOutputBindingInfo</a> (const std::string &amp;name) const</td></tr>
<tr class="memdesc:a4b1fdcb1985af12dd1848a9ffa5d3271 inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves binding info (layer id and tensor info) for the network output identified by the given layer name.  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a4b1fdcb1985af12dd1848a9ffa5d3271">More...</a><br /></td></tr>
<tr class="separator:a4b1fdcb1985af12dd1848a9ffa5d3271 inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ddfa6cb51f928114a8151b8f455f115 inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a4ddfa6cb51f928114a8151b8f455f115">CaffeParserImpl</a> ()</td></tr>
<tr class="separator:a4ddfa6cb51f928114a8151b8f455f115 inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af29b8e25331cf9235aceab8c59d0b837 inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#af29b8e25331cf9235aceab8c59d0b837">~CaffeParserImpl</a> ()=default</td></tr>
<tr class="separator:af29b8e25331cf9235aceab8c59d0b837 inherit pub_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml">ICaffeParser::CaffeParserImpl</a></td></tr>
<tr class="memitem:aa09a8bb02eed50715082d8b7fccd2f8d inherit pub_static_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">static const std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#aa09a8bb02eed50715082d8b7fccd2f8d">GetVersion</a> ()</td></tr>
<tr class="memdesc:aa09a8bb02eed50715082d8b7fccd2f8d inherit pub_static_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve version in X.Y.Z form.  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#aa09a8bb02eed50715082d8b7fccd2f8d">More...</a><br /></td></tr>
<tr class="separator:aa09a8bb02eed50715082d8b7fccd2f8d inherit pub_static_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_types_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td colspan="2" onclick="javascript:toggleInherit('pro_types_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl')"><img src="closed.png" alt="-"/>&#160;Protected Types inherited from <a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml">ICaffeParser::CaffeParserImpl</a></td></tr>
<tr class="memitem:ad3507f89e37ad28d864101b4374d78eb inherit pro_types_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#ad3507f89e37ad28d864101b4374d78eb">OperationParsingFunction</a> = void(CaffeParserImpl::*)(const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:ad3507f89e37ad28d864101b4374d78eb inherit pro_types_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml">ICaffeParser::CaffeParserImpl</a></td></tr>
<tr class="memitem:a77e6c08b48c99fafa560805270503856 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a77e6c08b48c99fafa560805270503856">BlobShapeToTensorInfo</a> (const caffe::BlobShape &amp;blobShape) const</td></tr>
<tr class="memdesc:a77e6c08b48c99fafa560805270503856 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts Caffe's protobuf tensor shape format to ArmNN's.  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a77e6c08b48c99fafa560805270503856">More...</a><br /></td></tr>
<tr class="separator:a77e6c08b48c99fafa560805270503856 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a1112c66d08e3760ecccf39c7854a90 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a2a1112c66d08e3760ecccf39c7854a90">TrackInputBinding</a> (<a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">armnn::IConnectableLayer</a> *layer, <a class="el" href="namespacearmnn.xhtml#ab8cf8f9fb6792e654c2d8d8382f6f01b">armnn::LayerBindingId</a> id, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> &amp;tensorInfo)</td></tr>
<tr class="separator:a2a1112c66d08e3760ecccf39c7854a90 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c98e07875a82c71c65bbb53eb347561 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a0c98e07875a82c71c65bbb53eb347561">TrackOutputBinding</a> (<a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">armnn::IConnectableLayer</a> *layer, <a class="el" href="namespacearmnn.xhtml#ab8cf8f9fb6792e654c2d8d8382f6f01b">armnn::LayerBindingId</a> id, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> &amp;tensorInfo)</td></tr>
<tr class="separator:a0c98e07875a82c71c65bbb53eb347561 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0767b1c7ee9cbd014fd97c701a954caa inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a0767b1c7ee9cbd014fd97c701a954caa">SetArmnnOutputSlotForCaffeTop</a> (const std::string &amp;caffeTopName, <a class="el" href="classarmnn_1_1_i_output_slot.xhtml">armnn::IOutputSlot</a> &amp;armnnOutputSlot)</td></tr>
<tr class="separator:a0767b1c7ee9cbd014fd97c701a954caa inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9650b8810d4e6734b255ca25d495fe06 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_i_output_slot.xhtml">armnn::IOutputSlot</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a9650b8810d4e6734b255ca25d495fe06">GetArmnnOutputSlotForCaffeTop</a> (const std::string &amp;caffeTopName) const</td></tr>
<tr class="memdesc:a9650b8810d4e6734b255ca25d495fe06 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves the Armnn IOutputSlot representing the given Caffe top.  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a9650b8810d4e6734b255ca25d495fe06">More...</a><br /></td></tr>
<tr class="separator:a9650b8810d4e6734b255ca25d495fe06 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae89a123aad1c66a76c398b7af216aae4 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#ae89a123aad1c66a76c398b7af216aae4">Cleanup</a> ()</td></tr>
<tr class="separator:ae89a123aad1c66a76c398b7af216aae4 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0bb4b8a290f1c8acd3c3a0d9a6e9783 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn.xhtml#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#ab0bb4b8a290f1c8acd3c3a0d9a6e9783">CreateNetworkFromNetParameter</a> (caffe::NetParameter &amp;netParam, const std::map&lt; std::string, <a class="el" href="classarmnn_1_1_tensor_shape.xhtml">armnn::TensorShape</a> &gt; &amp;inputShapes, const std::vector&lt; std::string &gt; &amp;requestedOutputs)</td></tr>
<tr class="memdesc:ab0bb4b8a290f1c8acd3c3a0d9a6e9783 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parses a NetParameter loaded into memory from one of the other CreateNetwork*.  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#ab0bb4b8a290f1c8acd3c3a0d9a6e9783">More...</a><br /></td></tr>
<tr class="separator:ab0bb4b8a290f1c8acd3c3a0d9a6e9783 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c5eed5d48d21a8b7e3bcd2cab519217 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a9c5eed5d48d21a8b7e3bcd2cab519217">LoadNetParam</a> (caffe::NetParameter &amp;netParameter)</td></tr>
<tr class="memdesc:a9c5eed5d48d21a8b7e3bcd2cab519217 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">does the actual conversion from caffe::NetParameter to <a class="el" href="classarmnn_1_1_i_network.xhtml" title="Main network class which provides the interface for building up a neural network. ...">armnn::INetwork</a>  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a9c5eed5d48d21a8b7e3bcd2cab519217">More...</a><br /></td></tr>
<tr class="separator:a9c5eed5d48d21a8b7e3bcd2cab519217 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f8fbd66c1a39a06d61fcb6536387d64 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">std::vector&lt; const caffe::LayerParameter * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a2f8fbd66c1a39a06d61fcb6536387d64">GetInputs</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="memdesc:a2f8fbd66c1a39a06d61fcb6536387d64 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Find the Caffe layers listed as inputs (bottoms) for a given layer.  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a2f8fbd66c1a39a06d61fcb6536387d64">More...</a><br /></td></tr>
<tr class="separator:a2f8fbd66c1a39a06d61fcb6536387d64 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89631aa06b5c628c46674c202b40dbc5 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a89631aa06b5c628c46674c202b40dbc5">ResolveInPlaceLayers</a> (caffe::NetParameter &amp;netParameter)</td></tr>
<tr class="memdesc:a89631aa06b5c628c46674c202b40dbc5 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modifies the Caffe network to replace "in-place" layers (whose top() and bottom() are both the same) with regular layers.  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a89631aa06b5c628c46674c202b40dbc5">More...</a><br /></td></tr>
<tr class="separator:a89631aa06b5c628c46674c202b40dbc5 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a2636dd8414f2bb62c5fa097bdc9791 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a3a2636dd8414f2bb62c5fa097bdc9791">ParseInputLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="memdesc:a3a2636dd8414f2bb62c5fa097bdc9791 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds an armnn layer to m_Network given a Caffe LayerParameter of the correct type and is responsible for recording any newly created IOutputSlots using <a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a0767b1c7ee9cbd014fd97c701a954caa">SetArmnnOutputSlotForCaffeTop()</a>.  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a3a2636dd8414f2bb62c5fa097bdc9791">More...</a><br /></td></tr>
<tr class="separator:a3a2636dd8414f2bb62c5fa097bdc9791 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5cddc80538d5de7d36192e0fd2d09c63 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a5cddc80538d5de7d36192e0fd2d09c63">ParseConvLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:a5cddc80538d5de7d36192e0fd2d09c63 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3f705f208b5ee9f540577524b2ad513 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#ac3f705f208b5ee9f540577524b2ad513">ParseDeconvLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:ac3f705f208b5ee9f540577524b2ad513 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3329e4bcd8e42cd314f84c8260b06ad inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#ab3329e4bcd8e42cd314f84c8260b06ad">ParsePoolingLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:ab3329e4bcd8e42cd314f84c8260b06ad inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8449e66d395c0525561e3c67b100bafe inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a8449e66d395c0525561e3c67b100bafe">ParseReluLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:a8449e66d395c0525561e3c67b100bafe inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7785119cfebd2b02ba3be888965e52ba inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a7785119cfebd2b02ba3be888965e52ba">ParseLRNLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:a7785119cfebd2b02ba3be888965e52ba inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34f6df4b84de1e269bcf02efeecc3892 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a34f6df4b84de1e269bcf02efeecc3892">ParseInnerProductLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:a34f6df4b84de1e269bcf02efeecc3892 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c0594bf03dfbb44029465d3466127b3 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a1c0594bf03dfbb44029465d3466127b3">ParseSoftmaxLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:a1c0594bf03dfbb44029465d3466127b3 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99a846a21b3a6ec97cc1d4344b91df36 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a99a846a21b3a6ec97cc1d4344b91df36">ParseEltwiseLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:a99a846a21b3a6ec97cc1d4344b91df36 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0f0ff1cae05c1a0d7cc11b498714312 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#aa0f0ff1cae05c1a0d7cc11b498714312">ParseConcatLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:aa0f0ff1cae05c1a0d7cc11b498714312 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a940483591995bb812cfcd1595dba83c3 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a940483591995bb812cfcd1595dba83c3">ParseBatchNormLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:a940483591995bb812cfcd1595dba83c3 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95799625a4aae0ed73838cbfa3530c1b inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a95799625a4aae0ed73838cbfa3530c1b">ParseScaleLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:a95799625a4aae0ed73838cbfa3530c1b inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3311e9dc3436fe83ef22c5f530fd3234 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a3311e9dc3436fe83ef22c5f530fd3234">ParseSplitLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:a3311e9dc3436fe83ef22c5f530fd3234 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4c22681675806fa2c5fbf403d49c628 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#aa4c22681675806fa2c5fbf403d49c628">ParseDropoutLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:aa4c22681675806fa2c5fbf403d49c628 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ce905b7412e68d588e08f4afc333aac inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a5ce905b7412e68d588e08f4afc333aac">ParseArgmaxLayer</a> (const caffe::LayerParameter &amp;layerParam)</td></tr>
<tr class="separator:a5ce905b7412e68d588e08f4afc333aac inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fea304829fe514d664de515ca5c3918 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a9fea304829fe514d664de515ca5c3918">AddConvLayerWithSplits</a> (const caffe::LayerParameter &amp;layerParam, const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.xhtml">armnn::Convolution2dDescriptor</a> &amp;desc, unsigned int kernelW, unsigned int kernelH)</td></tr>
<tr class="memdesc:a9fea304829fe514d664de515ca5c3918 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">ParseConv may use these helpers depending on the group parameter.  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a9fea304829fe514d664de515ca5c3918">More...</a><br /></td></tr>
<tr class="separator:a9fea304829fe514d664de515ca5c3918 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adcb87456482d5df17ef09eca1a808091 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#adcb87456482d5df17ef09eca1a808091">AddConvLayerWithDepthwiseConv</a> (const caffe::LayerParameter &amp;layerParam, const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.xhtml">armnn::Convolution2dDescriptor</a> &amp;desc, unsigned int kernelW, unsigned int kernelH)</td></tr>
<tr class="separator:adcb87456482d5df17ef09eca1a808091 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77f532a6a82afeb6e79957726a9517a5 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a77f532a6a82afeb6e79957726a9517a5">AddDeconvLayerWithSplits</a> (const caffe::LayerParameter &amp;layerParam, const <a class="el" href="structarmnn_1_1_transpose_convolution2d_descriptor.xhtml">armnn::TransposeConvolution2dDescriptor</a> &amp;desc, unsigned int kernelW, unsigned int kernelH)</td></tr>
<tr class="separator:a77f532a6a82afeb6e79957726a9517a5 inherit pro_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_static_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td colspan="2" onclick="javascript:toggleInherit('pro_static_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl')"><img src="closed.png" alt="-"/>&#160;Static Protected Member Functions inherited from <a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml">ICaffeParser::CaffeParserImpl</a></td></tr>
<tr class="memitem:a5f5e6255b21fdf458d3733bbdcdc4af5 inherit pro_static_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a5f5e6255b21fdf458d3733bbdcdc4af5">TrackBindingPoint</a> (<a class="el" href="classarmnn_1_1_i_connectable_layer.xhtml">armnn::IConnectableLayer</a> *layer, <a class="el" href="namespacearmnn.xhtml#ab8cf8f9fb6792e654c2d8d8382f6f01b">armnn::LayerBindingId</a> id, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> &amp;tensorInfo, const char *bindingPointDesc, std::unordered_map&lt; std::string, <a class="el" href="namespacearmnn.xhtml#a280670a263dc4fd40491f6d0a2737f44">BindingPointInfo</a> &gt; &amp;nameToBindingInfo)</td></tr>
<tr class="separator:a5f5e6255b21fdf458d3733bbdcdc4af5 inherit pro_static_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb7e4da478bab76261963479baad5788 inherit pro_static_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">static std::pair&lt; <a class="el" href="namespacearmnn.xhtml#ab8cf8f9fb6792e654c2d8d8382f6f01b">armnn::LayerBindingId</a>, <a class="el" href="classarmnn_1_1_tensor_info.xhtml">armnn::TensorInfo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#afb7e4da478bab76261963479baad5788">GetBindingInfo</a> (const std::string &amp;layerName, const char *bindingPointDesc, const std::unordered_map&lt; std::string, <a class="el" href="namespacearmnn.xhtml#a280670a263dc4fd40491f6d0a2737f44">BindingPointInfo</a> &gt; &amp;bindingInfos)</td></tr>
<tr class="separator:afb7e4da478bab76261963479baad5788 inherit pro_static_methods_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml">ICaffeParser::CaffeParserImpl</a></td></tr>
<tr class="memitem:ac62e2558c14e01605f2b4e1e21cdd1e8 inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">std::unordered_map&lt; std::string, <a class="el" href="namespacearmnn.xhtml#a280670a263dc4fd40491f6d0a2737f44">BindingPointInfo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#ac62e2558c14e01605f2b4e1e21cdd1e8">m_NetworkInputsBindingInfo</a></td></tr>
<tr class="memdesc:ac62e2558c14e01605f2b4e1e21cdd1e8 inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">maps input layer names to their corresponding ids and tensor infos  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#ac62e2558c14e01605f2b4e1e21cdd1e8">More...</a><br /></td></tr>
<tr class="separator:ac62e2558c14e01605f2b4e1e21cdd1e8 inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62d6d6cba9ed0d3ad63fffb40aec86b5 inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">std::unordered_map&lt; std::string, <a class="el" href="namespacearmnn.xhtml#a280670a263dc4fd40491f6d0a2737f44">BindingPointInfo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a62d6d6cba9ed0d3ad63fffb40aec86b5">m_NetworkOutputsBindingInfo</a></td></tr>
<tr class="memdesc:a62d6d6cba9ed0d3ad63fffb40aec86b5 inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">maps output layer names to their corresponding ids and tensor infos  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a62d6d6cba9ed0d3ad63fffb40aec86b5">More...</a><br /></td></tr>
<tr class="separator:a62d6d6cba9ed0d3ad63fffb40aec86b5 inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2db3ae8d422f17d455e0ba0cb6291d2a inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearmnn.xhtml#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a2db3ae8d422f17d455e0ba0cb6291d2a">m_Network</a></td></tr>
<tr class="separator:a2db3ae8d422f17d455e0ba0cb6291d2a inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76ea67f3f7d1d5835c5a92b65dc0854c inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, <a class="el" href="classarmnn_1_1_tensor_shape.xhtml">armnn::TensorShape</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a76ea67f3f7d1d5835c5a92b65dc0854c">m_InputShapes</a></td></tr>
<tr class="separator:a76ea67f3f7d1d5835c5a92b65dc0854c inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c99d40a72e6f0c6e4ad92d21e44edca inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">std::unordered_map&lt; std::string, <a class="el" href="classarmnn_1_1_i_output_slot.xhtml">armnn::IOutputSlot</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a9c99d40a72e6f0c6e4ad92d21e44edca">m_ArmnnOutputSlotForCaffeTop</a></td></tr>
<tr class="memdesc:a9c99d40a72e6f0c6e4ad92d21e44edca inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">As we add armnn layers we store the armnn IOutputSlot which corresponds to the Caffe tops.  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a9c99d40a72e6f0c6e4ad92d21e44edca">More...</a><br /></td></tr>
<tr class="separator:a9c99d40a72e6f0c6e4ad92d21e44edca inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86cb41745deebd9b0ccf157d97d4d9ca inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><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_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a86cb41745deebd9b0ccf157d97d4d9ca">m_RequestedOutputs</a></td></tr>
<tr class="separator:a86cb41745deebd9b0ccf157d97d4d9ca inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1424f1bfbfc81d317b51053bbb315ef1 inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, const caffe::LayerParameter * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a1424f1bfbfc81d317b51053bbb315ef1">m_CaffeLayersByTopName</a></td></tr>
<tr class="separator:a1424f1bfbfc81d317b51053bbb315ef1 inherit pro_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_static_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td colspan="2" onclick="javascript:toggleInherit('pro_static_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl')"><img src="closed.png" alt="-"/>&#160;Static Protected Attributes inherited from <a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml">ICaffeParser::CaffeParserImpl</a></td></tr>
<tr class="memitem:a6fb0cd80a09cf767309175fb138d203b inherit pro_static_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memItemLeft" align="right" valign="top">static const std::map&lt; std::string, <a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#ad3507f89e37ad28d864101b4374d78eb">OperationParsingFunction</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a6fb0cd80a09cf767309175fb138d203b">ms_CaffeLayerNameToParsingFunctions</a></td></tr>
<tr class="memdesc:a6fb0cd80a09cf767309175fb138d203b inherit pro_static_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maps Caffe layer names to parsing member functions.  <a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a6fb0cd80a09cf767309175fb138d203b">More...</a><br /></td></tr>
<tr class="separator:a6fb0cd80a09cf767309175fb138d203b inherit pro_static_attribs_classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="_record_by_record_caffe_parser_8hpp_source.xhtml#l00025">25</a> of file <a class="el" href="_record_by_record_caffe_parser_8hpp_source.xhtml">RecordByRecordCaffeParser.hpp</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a9f5ad3c6d406bd00bd4ce3b85eb32324"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9f5ad3c6d406bd00bd4ce3b85eb32324">&#9670;&nbsp;</a></span>RecordByRecordCaffeParser()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classarmnn_caffe_parser_1_1_record_by_record_caffe_parser.xhtml">RecordByRecordCaffeParser</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_record_by_record_caffe_parser_8cpp_source.xhtml#l00459">459</a> of file <a class="el" href="_record_by_record_caffe_parser_8cpp_source.xhtml">RecordByRecordCaffeParser.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;                                                     : <a class="code" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a4ddfa6cb51f928114a8151b8f455f115">CaffeParserImpl</a>()</div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;{}</div><div class="ttc" id="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl_xhtml_a4ddfa6cb51f928114a8151b8f455f115"><div class="ttname"><a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a4ddfa6cb51f928114a8151b8f455f115">armnnCaffeParser::ICaffeParser::CaffeParserImpl::CaffeParserImpl</a></div><div class="ttdeci">CaffeParserImpl()</div><div class="ttdef"><b>Definition:</b> <a href="_caffe_parser_8cpp_source.xhtml#l00310">CaffeParser.cpp:310</a></div></div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a2af73acd4a0513a5942d7c255babce1c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2af73acd4a0513a5942d7c255babce1c">&#9670;&nbsp;</a></span>CreateNetworkFromBinaryFile()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespacearmnn.xhtml#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a> CreateNetworkFromBinaryFile </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>graphFile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::map&lt; std::string, <a class="el" href="classarmnn_1_1_tensor_shape.xhtml">armnn::TensorShape</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>inputShapes</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::vector&lt; std::string &gt; &amp;&#160;</td>
          <td class="paramname"><em>requestedOutputs</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Create the network from a protobuf binary file on disk. </p>

<p>Implements <a class="el" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a55a1948e089db582acefcb0bb8921ad3">ICaffeParser::CaffeParserImpl</a>.</p>

<p class="definition">Definition at line <a class="el" href="_record_by_record_caffe_parser_8cpp_source.xhtml#l00462">462</a> of file <a class="el" href="_record_by_record_caffe_parser_8cpp_source.xhtml">RecordByRecordCaffeParser.cpp</a>.</p>

<p class="reference">References <a class="el" href="_caffe_parser_8cpp_source.xhtml#l02261">ICaffeParser::CaffeParserImpl::Cleanup()</a>, <a class="el" href="classarmnn_1_1_i_output_slot.xhtml#ac1835f8756a9f03c02fcf9664e3a0fce">IOutputSlot::Connect()</a>, <a class="el" href="_network_8cpp_source.xhtml#l00510">INetwork::Create()</a>, <a class="el" href="_caffe_parser_8cpp_source.xhtml#l01952">ICaffeParser::CaffeParserImpl::GetArmnnOutputSlotForCaffeTop()</a>, <a class="el" href="namespacearmnn.xhtml#a4dc0adc6737b5944e7671bee71788407acaf9b6b99962bf5c2264824231d7a40c">armnn::info</a>, <a class="el" href="_caffe_parser_8hpp_source.xhtml#l00144">ICaffeParser::CaffeParserImpl::m_InputShapes</a>, <a class="el" href="_caffe_parser_8hpp_source.xhtml#l00142">ICaffeParser::CaffeParserImpl::m_Network</a>, <a class="el" href="_caffe_parser_8hpp_source.xhtml#l00137">ICaffeParser::CaffeParserImpl::m_NetworkInputsBindingInfo</a>, <a class="el" href="_caffe_parser_8hpp_source.xhtml#l00140">ICaffeParser::CaffeParserImpl::m_NetworkOutputsBindingInfo</a>, <a class="el" href="_caffe_parser_8hpp_source.xhtml#l00134">ICaffeParser::CaffeParserImpl::ms_CaffeLayerNameToParsingFunctions</a>, <a class="el" href="_numeric_cast_8hpp_source.xhtml#l00035">armnn::numeric_cast()</a>, <a class="el" href="_caffe_parser_8cpp_source.xhtml#l01987">ICaffeParser::CaffeParserImpl::ResolveInPlaceLayers()</a>, and <a class="el" href="_caffe_parser_8cpp_source.xhtml#l01923">ICaffeParser::CaffeParserImpl::TrackOutputBinding()</a>.</p>
<div class="fragment"><div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;{</div><div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;</div><div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;    <a class="code" href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a76ea67f3f7d1d5835c5a92b65dc0854c">m_InputShapes</a> = inputShapes;</div><div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;    <span class="keywordflow">if</span> (requestedOutputs.size() == 0)</div><div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;    {</div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;        <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.xhtml">armnn::ParseException</a>(<span class="stringliteral">&quot;requestedOutputs must have at least one entry&quot;</span>);</div><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;    }</div><div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;    m_RequestedOutputs = requestedOutputs;</div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;</div><div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;    std::ifstream ifs(graphFile, std::ifstream::in|std::ifstream::binary);</div><div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;    <span class="keywordflow">if</span> (ifs.fail())</div><div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;    {</div><div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;        <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_file_not_found_exception.xhtml">armnn::FileNotFoundException</a>(<span class="stringliteral">&quot;Failed to open graph file &#39;&quot;</span> + std::string(graphFile) + <span class="stringliteral">&quot;&#39;&quot;</span>);</div><div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;    }</div><div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;</div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;    std::vector&lt;LayerParameterInfo&gt; layerInfo;</div><div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;    NetParameterInfo netParameterInfo;</div><div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;    <span class="keywordflow">while</span>(<span class="keyword">true</span>)</div><div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;    {</div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;        ProtobufFieldInfo fieldInfo = readFieldInfo(ifs);</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;        <span class="keywordflow">if</span> (fieldInfo.eof())</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;        {</div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;            <span class="keywordflow">break</span>;</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;        }</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;        <span class="keywordflow">switch</span>(fieldInfo.field_type())</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;        {</div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;            <span class="keywordflow">case</span> 0:</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;            {</div><div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;                ReadBase128(ifs);</div><div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;                <span class="keywordflow">break</span>;</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;            }</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;            <span class="keywordflow">case</span> 2:</div><div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;            {</div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;                <span class="comment">// The values of interest from the caffe.proto schema are:</span></div><div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;                <span class="comment">// optional string name = 1; // consider giving the network a name</span></div><div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;                <span class="comment">// DEPRECATED. See InputParameter. The input blobs to the network.</span></div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;                <span class="comment">// repeated string input = 3;</span></div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;                <span class="comment">// DEPRECATED. See InputParameter. The shape of the input blobs.</span></div><div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;                <span class="comment">// repeated BlobShape input_shape = 8;</span></div><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;</div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;                <span class="comment">// 4D input dimensions -- deprecated.  Use &quot;input_shape&quot; instead.</span></div><div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;                <span class="comment">// If specified, for each input blob there should be four</span></div><div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;                <span class="comment">// values specifying the num, channels, height and width of the input blob.</span></div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;                <span class="comment">// Thus, there should be a total of (4 * #input) numbers.</span></div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;                <span class="comment">// repeated int32 input_dim = 4;</span></div><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;</div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;                <span class="comment">// The layers that make up the net.  Each of their configurations, including</span></div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;                <span class="comment">// connectivity and behavior, is specified as a LayerParameter.</span></div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;                <span class="comment">// repeated LayerParameter layer = 100;  // ID 100 so layers are printed last.</span></div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;                <span class="comment">// The first four will (if present) be read into the NetParameterInfo</span></div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;                <span class="comment">// the LayerParameters will be read into the LayerParameterInfo vector.</span></div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;</div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;                <span class="keywordtype">int</span> size = ReadBase128(ifs);</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;                std::streamoff posStartOfData = ifs.tellg();</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;                ifs.seekg(size, std::ios_base::cur);</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;                <span class="keywordflow">if</span>(!ifs.good())</div><div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;                {</div><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;                    <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.xhtml">armnn::ParseException</a>(<span class="stringliteral">&quot;failed to seek ahead in binary caffe file&quot;</span>);</div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;                }</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;                std::streamoff endOfLayer = ifs.tellg();</div><div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;                <span class="keywordflow">if</span> (fieldInfo.field_id() == 1)</div><div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;                {</div><div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;                    VarLenDataInfo dataInfo = CreateVarLenDataInfo(posStartOfData, endOfLayer);</div><div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;                    <span class="keyword">auto</span> graphName = AllocateBuffer(ifs, dataInfo);</div><div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;                    netParameterInfo.set_name(graphName, dataInfo.SizeOfData());</div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;                }</div><div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;                <span class="keywordflow">if</span> (fieldInfo.field_id() == 3)</div><div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;                {</div><div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;                    VarLenDataInfo dataInfo = CreateVarLenDataInfo(posStartOfData, endOfLayer);</div><div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;                    <span class="keyword">auto</span> inputName = AllocateBuffer(ifs, dataInfo);</div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;                    netParameterInfo.add_input(inputName, dataInfo.SizeOfData());</div><div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;                }</div><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;                <span class="keywordflow">if</span> (fieldInfo.field_id() == 8)</div><div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;                {</div><div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;                    VarLenDataInfo dataInfo = CreateVarLenDataInfo(posStartOfData, endOfLayer);</div><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;                    <span class="keyword">auto</span> inputShape = AllocateBuffer(ifs, dataInfo);</div><div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;                    caffe::BlobShape blobShape;</div><div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;                    <span class="keywordtype">bool</span> bRet = blobShape.ParseFromArray(inputShape.get(), <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(dataInfo.SizeOfData()));</div><div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;                    <span class="keywordflow">if</span> (!bRet)</div><div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;                    {</div><div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;                        <span class="keywordflow">throw</span> <a class="code" href="classarmnn_1_1_parse_exception.xhtml">armnn::ParseException</a>(<span class="stringliteral">&quot;Failed to parse input shape&quot;</span>);</div><div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;                    }</div><div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;                    netParameterInfo.add_blob_shape(blobShape);</div><div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;                }</div><div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;                <span class="keywordflow">if</span> (fieldInfo.field_id() == 4)</div><div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;                {</div><div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;                    <span class="keywordtype">int</span> input_dim = ReadBase128(ifs);</div><div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;                    netParameterInfo.add_input_dimension(input_dim);</div><div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;                }</div><div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;                <span class="keywordflow">if</span> (fieldInfo.field_id() == 100)</div><div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;                {</div><div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;                    LayerParameterInfo <a class="code" href="namespacearmnn.xhtml#a4dc0adc6737b5944e7671bee71788407acaf9b6b99962bf5c2264824231d7a40c">info</a>(CreateVarLenDataInfo(posStartOfData, endOfLayer));</div><div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;                    ReadTopologicalInfoForLayerParameter(info, ifs);</div><div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;                    layerInfo.push_back(info);</div><div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;                }</div><div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;                <span class="keywordflow">break</span>;</div><div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;            }</div><div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;            <span class="keywordflow">default</span>:</div><div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;            {</div><div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;                <span class="keywordflow">break</span>;</div><div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;            }</div><div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;        }</div><div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;    }</div><div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;    std::vector&lt;const LayerParameterInfo*&gt; sortedNodes;</div><div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;    ProcessLayers(netParameterInfo, layerInfo, m_RequestedOutputs, sortedNodes);</div><div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;    <a class="code" href="namespacearmnn.xhtml#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a> networkPtr = LoadLayers(ifs, sortedNodes, netParameterInfo);</div><div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;    <span class="keywordflow">return</span> networkPtr;</div><div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;</div><div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;}</div><div class="ttc" id="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl_xhtml_a76ea67f3f7d1d5835c5a92b65dc0854c"><div class="ttname"><a href="classarmnn_caffe_parser_1_1_i_caffe_parser_1_1_caffe_parser_impl.xhtml#a76ea67f3f7d1d5835c5a92b65dc0854c">armnnCaffeParser::ICaffeParser::CaffeParserImpl::m_InputShapes</a></div><div class="ttdeci">std::map&lt; std::string, armnn::TensorShape &gt; m_InputShapes</div><div class="ttdef"><b>Definition:</b> <a href="_caffe_parser_8hpp_source.xhtml#l00144">CaffeParser.hpp:144</a></div></div>
<div class="ttc" id="classarmnn_1_1_file_not_found_exception_xhtml"><div class="ttname"><a href="classarmnn_1_1_file_not_found_exception.xhtml">armnn::FileNotFoundException</a></div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.xhtml#l00086">Exceptions.hpp:86</a></div></div>
<div class="ttc" id="classarmnn_1_1_parse_exception_xhtml"><div class="ttname"><a href="classarmnn_1_1_parse_exception.xhtml">armnn::ParseException</a></div><div class="ttdef"><b>Definition:</b> <a href="_exceptions_8hpp_source.xhtml#l00092">Exceptions.hpp:92</a></div></div>
<div class="ttc" id="namespacearmnn_xhtml_a4dc0adc6737b5944e7671bee71788407acaf9b6b99962bf5c2264824231d7a40c"><div class="ttname"><a href="namespacearmnn.xhtml#a4dc0adc6737b5944e7671bee71788407acaf9b6b99962bf5c2264824231d7a40c">armnn::BoostLogSeverityMapping::info</a></div></div>
<div class="ttc" id="namespacearmnn_xhtml_ace74f6f9feb95a964a49d79458232703"><div class="ttname"><a href="namespacearmnn.xhtml#ace74f6f9feb95a964a49d79458232703">armnn::INetworkPtr</a></div><div class="ttdeci">std::unique_ptr&lt; INetwork, void(*)(INetwork *network)&gt; INetworkPtr</div><div class="ttdef"><b>Definition:</b> <a href="_i_network_8hpp_source.xhtml#l00173">INetwork.hpp:173</a></div></div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/armnnCaffeParser/<a class="el" href="_record_by_record_caffe_parser_8hpp_source.xhtml">RecordByRecordCaffeParser.hpp</a></li>
<li>src/armnnCaffeParser/<a class="el" href="_record_by_record_caffe_parser_8cpp_source.xhtml">RecordByRecordCaffeParser.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespacearmnn_caffe_parser.xhtml">armnnCaffeParser</a></li><li class="navelem"><a class="el" href="classarmnn_caffe_parser_1_1_record_by_record_caffe_parser.xhtml">RecordByRecordCaffeParser</a></li>
    <li class="footer">Generated on Fri Mar 19 2021 15:26:14 for ArmNN by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>