blob: b3db17949e50543f0254c53ba626aed5f9b735a7 [file] [log] [blame]
Jenkins514be652019-02-28 12:25:18 +00001<!-- HTML header for doxygen 1.8.15-->
2<!-- Remember to use version doxygen 1.8.15 +-->
Anthony Barbier871448e2017-03-24 14:54:29 +00003<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml">
5<head>
6<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
7<meta http-equiv="X-UA-Compatible" content="IE=9"/>
Jenkins514be652019-02-28 12:25:18 +00008<meta name="generator" content="Doxygen 1.8.15"/>
Anthony Barbier871448e2017-03-24 14:54:29 +00009<meta name="robots" content="NOINDEX, NOFOLLOW" /> <!-- Prevent indexing by search engines -->
Anthony Barbierdbdab852017-06-23 15:42:00 +010010<title>Compute Library: arm_compute Namespace Reference</title>
Anthony Barbier871448e2017-03-24 14:54:29 +000011<link href="tabs.css" rel="stylesheet" type="text/css"/>
12<script type="text/javascript" src="jquery.js"></script>
13<script type="text/javascript" src="dynsections.js"></script>
14<link href="navtree.css" rel="stylesheet" type="text/css"/>
15<script type="text/javascript" src="resize.js"></script>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016<script type="text/javascript" src="navtreedata.js"></script>
Anthony Barbier871448e2017-03-24 14:54:29 +000017<script type="text/javascript" src="navtree.js"></script>
18<script type="text/javascript">
Jenkins514be652019-02-28 12:25:18 +000019/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
Anthony Barbier871448e2017-03-24 14:54:29 +000020 $(document).ready(initResizable);
Jenkins514be652019-02-28 12:25:18 +000021/* @license-end */</script>
Anthony Barbier871448e2017-03-24 14:54:29 +000022<link href="search/search.css" rel="stylesheet" type="text/css"/>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000023<script type="text/javascript" src="search/searchdata.js"></script>
Anthony Barbier871448e2017-03-24 14:54:29 +000024<script type="text/javascript" src="search/search.js"></script>
Anthony Barbier871448e2017-03-24 14:54:29 +000025<script type="text/x-mathjax-config">
26 MathJax.Hub.Config({
27 extensions: ["tex2jax.js"],
28 jax: ["input/TeX","output/HTML-CSS"],
29});
Jenkins514be652019-02-28 12:25:18 +000030</script><script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
Anthony Barbier871448e2017-03-24 14:54:29 +000031<link href="doxygen.css" rel="stylesheet" type="text/css" />
Jenkins514be652019-02-28 12:25:18 +000032<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
Anthony Barbier871448e2017-03-24 14:54:29 +000033</head>
34<body>
35<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
36<div id="titlearea">
37<table cellspacing="0" cellpadding="0">
38 <tbody>
39 <tr style="height: 56px;">
Jenkins514be652019-02-28 12:25:18 +000040 <img alt="Compute Library" src="https://raw.githubusercontent.com/ARM-software/ComputeLibrary/gh-pages/ACL_logo.png" style="max-width: 100%;margin-top: 15px;margin-left: 10px"/>
Anthony Barbier871448e2017-03-24 14:54:29 +000041 <td style="padding-left: 0.5em;">
Jenkins514be652019-02-28 12:25:18 +000042 <div id="projectname">
43 &#160;<span id="projectnumber">19.02</span>
Anthony Barbier871448e2017-03-24 14:54:29 +000044 </div>
45 </td>
46 </tr>
47 </tbody>
48</table>
49</div>
50<!-- end header part -->
Jenkins514be652019-02-28 12:25:18 +000051<!-- Generated by Doxygen 1.8.15 -->
Anthony Barbier871448e2017-03-24 14:54:29 +000052<script type="text/javascript">
Jenkins514be652019-02-28 12:25:18 +000053/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
Anthony Barbier871448e2017-03-24 14:54:29 +000054var searchBox = new SearchBox("searchBox", "search",false,'Search');
Jenkins514be652019-02-28 12:25:18 +000055/* @license-end */
Anthony Barbier871448e2017-03-24 14:54:29 +000056</script>
Jenkinsb9abeae2018-11-22 11:58:08 +000057<script type="text/javascript" src="menudata.js"></script>
58<script type="text/javascript" src="menu.js"></script>
59<script type="text/javascript">
Jenkins514be652019-02-28 12:25:18 +000060/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
Jenkinsb9abeae2018-11-22 11:58:08 +000061$(function() {
62 initMenu('',true,false,'search.php','Search');
63 $(document).ready(function() { init_search(); });
64});
Jenkins514be652019-02-28 12:25:18 +000065/* @license-end */</script>
Jenkinsb9abeae2018-11-22 11:58:08 +000066<div id="main-nav"></div>
Anthony Barbier871448e2017-03-24 14:54:29 +000067</div><!-- top -->
68<div id="side-nav" class="ui-resizable side-nav-resizable">
69 <div id="nav-tree">
70 <div id="nav-tree-contents">
71 <div id="nav-sync" class="sync"></div>
72 </div>
73 </div>
74 <div id="splitbar" style="-moz-user-select:none;"
75 class="ui-resizable-handle">
76 </div>
77</div>
78<script type="text/javascript">
Jenkins514be652019-02-28 12:25:18 +000079/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
Anthony Barbier871448e2017-03-24 14:54:29 +000080$(document).ready(function(){initNavTree('namespacearm__compute.xhtml','');});
Jenkins514be652019-02-28 12:25:18 +000081/* @license-end */
Anthony Barbier871448e2017-03-24 14:54:29 +000082</script>
83<div id="doc-content">
84<!-- window showing the filter options -->
85<div id="MSearchSelectWindow"
86 onmouseover="return searchBox.OnSearchSelectShow()"
87 onmouseout="return searchBox.OnSearchSelectHide()"
88 onkeydown="return searchBox.OnSearchSelectKey(event)">
Anthony Barbier8140e1e2017-12-14 23:48:46 +000089</div>
Anthony Barbier871448e2017-03-24 14:54:29 +000090
91<!-- iframe showing the search results (closed by default) -->
92<div id="MSearchResultsWindow">
93<iframe src="javascript:void(0)" frameborder="0"
94 name="MSearchResults" id="MSearchResults">
95</iframe>
96</div>
97
98<div class="header">
99 <div class="summary">
100<a href="#namespaces">Namespaces</a> &#124;
101<a href="#nested-classes">Data Structures</a> &#124;
102<a href="#typedef-members">Typedefs</a> &#124;
103<a href="#enum-members">Enumerations</a> &#124;
104<a href="#func-members">Functions</a> &#124;
105<a href="#var-members">Variables</a> </div>
106 <div class="headertitle">
107<div class="title">arm_compute Namespace Reference</div> </div>
108</div><!--header-->
109<div class="contents">
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000110
Jenkinsb9abeae2018-11-22 11:58:08 +0000111<p>Copyright (c) 2017-2018 ARM Limited.
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000112<a href="#details">More...</a></p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000113<table class="memberdecls">
114<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
115Namespaces</h2></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000116<tr class="memitem:namespacearm__compute_1_1cl__gemm"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1cl__gemm.xhtml">cl_gemm</a></td></tr>
117<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000118<tr class="memitem:namespacearm__compute_1_1detail"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1detail.xhtml">detail</a></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000119<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000120<tr class="memitem:namespacearm__compute_1_1gles"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1gles.xhtml">gles</a></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +0100121<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000122<tr class="memitem:namespacearm__compute_1_1graph"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1graph.xhtml">graph</a></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +0100123<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000124<tr class="memitem:namespacearm__compute_1_1graph__utils"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1graph__utils.xhtml">graph_utils</a></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +0100125<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000126<tr class="memitem:namespacearm__compute_1_1helpers"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1helpers.xhtml">helpers</a></td></tr>
127<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000128<tr class="memitem:namespacearm__compute_1_1io"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1io.xhtml">io</a></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100129<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000130<tr class="memitem:namespacearm__compute_1_1logging"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1logging.xhtml">logging</a></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100131<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000132<tr class="memitem:namespacearm__compute_1_1misc"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1misc.xhtml">misc</a></td></tr>
133<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
134<tr class="memitem:namespacearm__compute_1_1quantization"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1quantization.xhtml">quantization</a></td></tr>
135<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
136<tr class="memitem:namespacearm__compute_1_1support"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1support.xhtml">support</a></td></tr>
137<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
138<tr class="memitem:namespacearm__compute_1_1test"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml">test</a></td></tr>
139<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
140<tr class="memitem:namespacearm__compute_1_1traits"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1traits.xhtml">traits</a></td></tr>
141<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100142<tr class="memitem:namespacearm__compute_1_1tuners"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1tuners.xhtml">tuners</a></td></tr>
143<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000144<tr class="memitem:namespacearm__compute_1_1utility"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1utility.xhtml">utility</a></td></tr>
145<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
146<tr class="memitem:namespacearm__compute_1_1utils"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1utils.xhtml">utils</a></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +0100147<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +0000148<tr class="memitem:namespacearm__compute_1_1wrapper"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1wrapper.xhtml">wrapper</a></td></tr>
149<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000150</table><table class="memberdecls">
151<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
152Data Structures</h2></td></tr>
153<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_access_window_auto_padding.xhtml">AccessWindowAutoPadding</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000154<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dummy access window. <a href="classarm__compute_1_1_access_window_auto_padding.xhtml#details">More...</a><br /></td></tr>
155<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
156<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_access_window_horizontal.xhtml">AccessWindowHorizontal</a></td></tr>
157<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implementation of a row access pattern. <a href="classarm__compute_1_1_access_window_horizontal.xhtml#details">More...</a><br /></td></tr>
158<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
159<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_access_window_rectangle.xhtml">AccessWindowRectangle</a></td></tr>
160<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implementation of a rectangular access pattern. <a href="classarm__compute_1_1_access_window_rectangle.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000161<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
162<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_access_window_static.xhtml">AccessWindowStatic</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000163<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implementation of a static rectangular access pattern. <a href="classarm__compute_1_1_access_window_static.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000164<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
165<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_access_window_transpose.xhtml">AccessWindowTranspose</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000166<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implementation of a XY-transpose access pattern. <a href="classarm__compute_1_1_access_window_transpose.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000167<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000168<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_access_window_vertical.xhtml">AccessWindowVertical</a></td></tr>
169<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implementation of a column access pattern. <a href="classarm__compute_1_1_access_window_vertical.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000170<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000171<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml">ActivationLayerInfo</a></td></tr>
172<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Activation Layer Information class. <a href="classarm__compute_1_1_activation_layer_info.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000173<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000174<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_allocator.xhtml">Allocator</a></td></tr>
175<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default malloc allocator implementation. <a href="classarm__compute_1_1_allocator.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000176<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000177<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_array.xhtml">Array</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000178<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the <a class="el" href="classarm__compute_1_1_i_array.xhtml" title="Array of type T.">IArray</a> interface which allocates a static number of T values. <a href="classarm__compute_1_1_array.xhtml#details">More...</a><br /></td></tr>
179<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
180<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_blob_info.xhtml">BlobInfo</a></td></tr>
181<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Meta-data information for each blob. <a href="structarm__compute_1_1_blob_info.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000182<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000183<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_blob_lifetime_manager.xhtml">BlobLifetimeManager</a></td></tr>
184<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Concrete class that tracks the lifetime of registered tensors and calculates the systems memory requirements in terms of blobs. <a href="classarm__compute_1_1_blob_lifetime_manager.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000185<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000186<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_blob_memory_pool.xhtml">BlobMemoryPool</a></td></tr>
187<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Blob memory pool. <a href="classarm__compute_1_1_blob_memory_pool.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000188<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000189<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a></td></tr>
190<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Container for 2D border size. <a href="structarm__compute_1_1_border_size.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000191<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000192<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml">BoundingBoxTransformInfo</a></td></tr>
193<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bounding Box Transform information class. <a href="classarm__compute_1_1_bounding_box_transform_info.xhtml#details">More...</a><br /></td></tr>
194<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
195<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_box_n_m_s_limit_info.xhtml">BoxNMSLimitInfo</a></td></tr>
196<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">BoxWithNonMaximaSuppressionLimit Information class. <a href="classarm__compute_1_1_box_n_m_s_limit_info.xhtml#details">More...</a><br /></td></tr>
197<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000198<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_absolute_difference.xhtml">CLAbsoluteDifference</a></td></tr>
199<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_absolute_difference_kernel.xhtml">CLAbsoluteDifferenceKernel</a>. <a href="classarm__compute_1_1_c_l_absolute_difference.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000200<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100201<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_absolute_difference_kernel.xhtml">CLAbsoluteDifferenceKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000202<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the absolute difference kernel. <a href="classarm__compute_1_1_c_l_absolute_difference_kernel.xhtml#details">More...</a><br /></td></tr>
203<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
204<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_accumulate.xhtml">CLAccumulate</a></td></tr>
205<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_accumulate_kernel.xhtml">CLAccumulateKernel</a>. <a href="classarm__compute_1_1_c_l_accumulate.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000206<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100207<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_accumulate_kernel.xhtml">CLAccumulateKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000208<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the accumulate kernel. <a href="classarm__compute_1_1_c_l_accumulate_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000209<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000210<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_accumulate_squared.xhtml">CLAccumulateSquared</a></td></tr>
211<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_accumulate_squared_kernel.xhtml">CLAccumulateSquaredKernel</a>. <a href="classarm__compute_1_1_c_l_accumulate_squared.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000212<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100213<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_accumulate_squared_kernel.xhtml">CLAccumulateSquaredKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000214<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the accumulate squared kernel. <a href="classarm__compute_1_1_c_l_accumulate_squared_kernel.xhtml#details">More...</a><br /></td></tr>
215<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
216<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_accumulate_weighted.xhtml">CLAccumulateWeighted</a></td></tr>
217<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_accumulate_weighted_kernel.xhtml">CLAccumulateWeightedKernel</a>. <a href="classarm__compute_1_1_c_l_accumulate_weighted.xhtml#details">More...</a><br /></td></tr>
218<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
219<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_accumulate_weighted_kernel.xhtml">CLAccumulateWeightedKernel</a></td></tr>
220<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the accumulate weighted kernel. <a href="classarm__compute_1_1_c_l_accumulate_weighted_kernel.xhtml#details">More...</a><br /></td></tr>
221<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
222<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_activation_layer.xhtml">CLActivationLayer</a></td></tr>
223<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_activation_layer_kernel.xhtml">CLActivationLayerKernel</a>. <a href="classarm__compute_1_1_c_l_activation_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000224<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100225<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_activation_layer_kernel.xhtml">CLActivationLayerKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000226<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the activation layer kernel. <a href="classarm__compute_1_1_c_l_activation_layer_kernel.xhtml#details">More...</a><br /></td></tr>
227<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +0000228<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_arg_min_max_layer.xhtml">CLArgMinMaxLayer</a></td></tr>
229<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to calculate the index of the minimum or maximum values in a tensor based on an axis. <a href="classarm__compute_1_1_c_l_arg_min_max_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000230<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +0000231<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_arithmetic_addition.xhtml">CLArithmeticAddition</a></td></tr>
232<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_saturated_arithmetic_operation_kernel.xhtml">CLSaturatedArithmeticOperationKernel</a> for addition. <a href="classarm__compute_1_1_c_l_arithmetic_addition.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000233<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +0000234<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_arithmetic_division.xhtml">CLArithmeticDivision</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000235<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_saturated_arithmetic_operation_kernel.xhtml">CLSaturatedArithmeticOperationKernel</a> for division. <a href="classarm__compute_1_1_c_l_arithmetic_division.xhtml#details">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +0000236<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +0000237<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_arithmetic_operation_kernel.xhtml">CLArithmeticOperationKernel</a></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +0000238<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000239<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_arithmetic_subtraction.xhtml">CLArithmeticSubtraction</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000240<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_saturated_arithmetic_operation_kernel.xhtml">CLSaturatedArithmeticOperationKernel</a> for subtraction. <a href="classarm__compute_1_1_c_l_arithmetic_subtraction.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000241<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
242<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000243<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_c_l_array.xhtml" title="CLArray implementation.">CLArray</a> implementation. <a href="classarm__compute_1_1_c_l_array.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000244<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
245<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_batch_normalization_layer.xhtml">CLBatchNormalizationLayer</a></td></tr>
246<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_normalization_layer_kernel.xhtml">CLNormalizationLayerKernel</a> and simulate a batch normalization layer. <a href="classarm__compute_1_1_c_l_batch_normalization_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000247<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100248<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_batch_normalization_layer_kernel.xhtml">CLBatchNormalizationLayerKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000249<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the BatchNormalization layer kernel. <a href="classarm__compute_1_1_c_l_batch_normalization_layer_kernel.xhtml#details">More...</a><br /></td></tr>
250<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000251<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_batch_to_space_layer.xhtml">CLBatchToSpaceLayer</a></td></tr>
252<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_batch_to_space_layer_kernel.xhtml">CLBatchToSpaceLayerKernel</a>. <a href="classarm__compute_1_1_c_l_batch_to_space_layer.xhtml#details">More...</a><br /></td></tr>
253<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
254<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_batch_to_space_layer_kernel.xhtml">CLBatchToSpaceLayerKernel</a></td></tr>
255<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the batch to space kernel. <a href="classarm__compute_1_1_c_l_batch_to_space_layer_kernel.xhtml#details">More...</a><br /></td></tr>
256<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000257<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_bitwise_and.xhtml">CLBitwiseAnd</a></td></tr>
258<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_bitwise_and_kernel.xhtml">CLBitwiseAndKernel</a>. <a href="classarm__compute_1_1_c_l_bitwise_and.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000259<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100260<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_bitwise_and_kernel.xhtml">CLBitwiseAndKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000261<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the bitwise AND operation kernel. <a href="classarm__compute_1_1_c_l_bitwise_and_kernel.xhtml#details">More...</a><br /></td></tr>
262<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
263<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_bitwise_not.xhtml">CLBitwiseNot</a></td></tr>
264<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_bitwise_not_kernel.xhtml">CLBitwiseNotKernel</a>. <a href="classarm__compute_1_1_c_l_bitwise_not.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000265<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100266<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_bitwise_not_kernel.xhtml">CLBitwiseNotKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000267<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the bitwise NOT operation kernel. <a href="classarm__compute_1_1_c_l_bitwise_not_kernel.xhtml#details">More...</a><br /></td></tr>
268<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
269<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_bitwise_or.xhtml">CLBitwiseOr</a></td></tr>
270<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_bitwise_or_kernel.xhtml">CLBitwiseOrKernel</a>. <a href="classarm__compute_1_1_c_l_bitwise_or.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000271<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100272<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_bitwise_or_kernel.xhtml">CLBitwiseOrKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000273<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the bitwise OR operation kernel. <a href="classarm__compute_1_1_c_l_bitwise_or_kernel.xhtml#details">More...</a><br /></td></tr>
274<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
275<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_bitwise_xor.xhtml">CLBitwiseXor</a></td></tr>
276<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_bitwise_xor_kernel.xhtml">CLBitwiseXorKernel</a>. <a href="classarm__compute_1_1_c_l_bitwise_xor.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000277<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100278<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_bitwise_xor_kernel.xhtml">CLBitwiseXorKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000279<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the bitwise XOR operation kernel. <a href="classarm__compute_1_1_c_l_bitwise_xor_kernel.xhtml#details">More...</a><br /></td></tr>
280<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000281<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_bounding_box_transform.xhtml">CLBoundingBoxTransform</a></td></tr>
282<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_bounding_box_transform_kernel.xhtml">CLBoundingBoxTransformKernel</a>. <a href="classarm__compute_1_1_c_l_bounding_box_transform.xhtml#details">More...</a><br /></td></tr>
283<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
284<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_bounding_box_transform_kernel.xhtml">CLBoundingBoxTransformKernel</a></td></tr>
285<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the bounding box kernel. <a href="classarm__compute_1_1_c_l_bounding_box_transform_kernel.xhtml#details">More...</a><br /></td></tr>
286<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000287<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_box3x3.xhtml">CLBox3x3</a></td></tr>
288<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute box filter 3x3. <a href="classarm__compute_1_1_c_l_box3x3.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000289<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100290<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_box3x3_kernel.xhtml">CLBox3x3Kernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000291<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the box 3x3 filter kernel. <a href="classarm__compute_1_1_c_l_box3x3_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000292<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000293<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_buffer_allocator.xhtml">CLBufferAllocator</a></td></tr>
294<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default OpenCL cl buffer allocator implementation. <a href="classarm__compute_1_1_c_l_buffer_allocator.xhtml#details">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +0100295<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100296<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_buffer_memory_region.xhtml">CLBufferMemoryRegion</a></td></tr>
297<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL buffer memory region implementation. <a href="classarm__compute_1_1_c_l_buffer_memory_region.xhtml#details">More...</a><br /></td></tr>
298<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000299<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_build_options.xhtml">CLBuildOptions</a></td></tr>
300<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Build options. <a href="classarm__compute_1_1_c_l_build_options.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000301<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000302<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_canny_edge.xhtml">CLCannyEdge</a></td></tr>
303<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute canny edge on OpenCL. <a href="classarm__compute_1_1_c_l_canny_edge.xhtml#details">More...</a><br /></td></tr>
304<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +0000305<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_cast.xhtml">CLCast</a></td></tr>
306<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_depth_convert_layer_kernel.xhtml">CLDepthConvertLayerKernel</a>. <a href="classarm__compute_1_1_c_l_cast.xhtml#details">More...</a><br /></td></tr>
307<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000308<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_channel_combine.xhtml">CLChannelCombine</a></td></tr>
309<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_channel_combine_kernel.xhtml">CLChannelCombineKernel</a> to perform channel combination. <a href="classarm__compute_1_1_c_l_channel_combine.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000310<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100311<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_channel_combine_kernel.xhtml">CLChannelCombineKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000312<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the channel combine kernel. <a href="classarm__compute_1_1_c_l_channel_combine_kernel.xhtml#details">More...</a><br /></td></tr>
313<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
314<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_channel_extract.xhtml">CLChannelExtract</a></td></tr>
315<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_channel_extract_kernel.xhtml">CLChannelExtractKernel</a> to perform channel extraction. <a href="classarm__compute_1_1_c_l_channel_extract.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000316<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100317<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_channel_extract_kernel.xhtml">CLChannelExtractKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000318<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the channel extract kernel. <a href="classarm__compute_1_1_c_l_channel_extract_kernel.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100319<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100320<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_channel_shuffle_layer.xhtml">CLChannelShuffleLayer</a></td></tr>
321<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_channel_shuffle_layer_kernel.xhtml">CLChannelShuffleLayerKernel</a>. <a href="classarm__compute_1_1_c_l_channel_shuffle_layer.xhtml#details">More...</a><br /></td></tr>
322<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
323<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_channel_shuffle_layer_kernel.xhtml">CLChannelShuffleLayerKernel</a></td></tr>
324<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the channel shuffle kernel. <a href="classarm__compute_1_1_c_l_channel_shuffle_layer_kernel.xhtml#details">More...</a><br /></td></tr>
325<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
326<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_coarse_s_v_m_memory_region.xhtml">CLCoarseSVMMemoryRegion</a></td></tr>
327<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL coarse-grain SVM memory region implementation. <a href="classarm__compute_1_1_c_l_coarse_s_v_m_memory_region.xhtml#details">More...</a><br /></td></tr>
328<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100329<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_c_l_coefficient_table.xhtml">CLCoefficientTable</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000330<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure for storing Spatial Gradient Matrix and the minimum eigenvalue for each keypoint. <a href="structarm__compute_1_1_c_l_coefficient_table.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100331<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000332<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_col2_im_kernel.xhtml">CLCol2ImKernel</a></td></tr>
333<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the col2im reshaping kernel. <a href="classarm__compute_1_1_c_l_col2_im_kernel.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100334<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000335<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_color_convert.xhtml">CLColorConvert</a></td></tr>
336<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_color_convert_kernel.xhtml">CLColorConvertKernel</a>. <a href="classarm__compute_1_1_c_l_color_convert.xhtml#details">More...</a><br /></td></tr>
337<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
338<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_color_convert_kernel.xhtml">CLColorConvertKernel</a></td></tr>
339<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the color convert kernel. <a href="classarm__compute_1_1_c_l_color_convert_kernel.xhtml#details">More...</a><br /></td></tr>
340<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +0000341<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_comparison.xhtml">CLComparison</a></td></tr>
342<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_comparison_kernel.xhtml">CLComparisonKernel</a>. <a href="classarm__compute_1_1_c_l_comparison.xhtml#details">More...</a><br /></td></tr>
343<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
344<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_comparison_kernel.xhtml">CLComparisonKernel</a></td></tr>
345<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the comparison kernel. <a href="classarm__compute_1_1_c_l_comparison_kernel.xhtml#details">More...</a><br /></td></tr>
346<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
347<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_comparison_static.xhtml">CLComparisonStatic</a></td></tr>
348<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_comparison_kernel.xhtml">CLComparisonKernel</a>. <a href="classarm__compute_1_1_c_l_comparison_static.xhtml#details">More...</a><br /></td></tr>
349<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000350<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_compute_all_anchors.xhtml">CLComputeAllAnchors</a></td></tr>
351<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_compute_all_anchors_kernel.xhtml">CLComputeAllAnchorsKernel</a>. <a href="classarm__compute_1_1_c_l_compute_all_anchors.xhtml#details">More...</a><br /></td></tr>
352<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
353<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_compute_all_anchors_kernel.xhtml">CLComputeAllAnchorsKernel</a></td></tr>
354<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for Compute All Anchors kernel. <a href="classarm__compute_1_1_c_l_compute_all_anchors_kernel.xhtml#details">More...</a><br /></td></tr>
355<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +0000356<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_concatenate_layer.xhtml">CLConcatenateLayer</a></td></tr>
357<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute concatenate tensors along a given axis. <a href="classarm__compute_1_1_c_l_concatenate_layer.xhtml#details">More...</a><br /></td></tr>
358<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100359<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_convert_fully_connected_weights.xhtml">CLConvertFullyConnectedWeights</a></td></tr>
360<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_convert_fully_connected_weights_kernel.xhtml">CLConvertFullyConnectedWeightsKernel</a>. <a href="classarm__compute_1_1_c_l_convert_fully_connected_weights.xhtml#details">More...</a><br /></td></tr>
361<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
362<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_convert_fully_connected_weights_kernel.xhtml">CLConvertFullyConnectedWeightsKernel</a></td></tr>
363<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to convert the 2D Fully Connected weights from NCHW to NHWC or vice versa. <a href="classarm__compute_1_1_c_l_convert_fully_connected_weights_kernel.xhtml#details">More...</a><br /></td></tr>
364<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000365<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_convolution3x3.xhtml">CLConvolution3x3</a></td></tr>
366<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute convolution of size 3x3. <a href="classarm__compute_1_1_c_l_convolution3x3.xhtml#details">More...</a><br /></td></tr>
367<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
368<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml">CLConvolutionKernel</a></td></tr>
369<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run an arbitrary size convolution on a tensor. <a href="classarm__compute_1_1_c_l_convolution_kernel.xhtml#details">More...</a><br /></td></tr>
370<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
371<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_convolution_layer.xhtml">CLConvolutionLayer</a></td></tr>
372<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute the convolution layer. <a href="classarm__compute_1_1_c_l_convolution_layer.xhtml#details">More...</a><br /></td></tr>
373<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
374<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_convolution_layer_reshape_weights.xhtml">CLConvolutionLayerReshapeWeights</a></td></tr>
375<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to reshape and transpose the weights. <a href="classarm__compute_1_1_c_l_convolution_layer_reshape_weights.xhtml#details">More...</a><br /></td></tr>
376<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
377<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_convolution_rectangle.xhtml">CLConvolutionRectangle</a></td></tr>
378<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute non-square convolution. <a href="classarm__compute_1_1_c_l_convolution_rectangle.xhtml#details">More...</a><br /></td></tr>
379<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
380<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_convolution_rectangle_kernel.xhtml">CLConvolutionRectangleKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000381<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> for the running convolution on a rectangle matrix. <a href="classarm__compute_1_1_c_l_convolution_rectangle_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000382<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
383<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_convolution_square.xhtml">CLConvolutionSquare</a></td></tr>
384<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute square convolution.Currently it supports 5x5, 7x7, 9x9. <a href="classarm__compute_1_1_c_l_convolution_square.xhtml#details">More...</a><br /></td></tr>
385<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100386<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_copy.xhtml">CLCopy</a></td></tr>
387<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
388<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_copy_kernel.xhtml">CLCopyKernel</a></td></tr>
389<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform a copy between two tensors. <a href="classarm__compute_1_1_c_l_copy_kernel.xhtml#details">More...</a><br /></td></tr>
390<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000391<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_copy_to_array_kernel.xhtml">CLCopyToArrayKernel</a></td></tr>
392<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CL kernel to copy keypoints information to ICLKeyPointArray and counts the number of key points. <a href="classarm__compute_1_1_c_l_copy_to_array_kernel.xhtml#details">More...</a><br /></td></tr>
393<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +0000394<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_deconvolution_layer.xhtml">CLDeconvolutionLayer</a></td></tr>
395<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to run the deconvolution layer. <a href="classarm__compute_1_1_c_l_deconvolution_layer.xhtml#details">More...</a><br /></td></tr>
396<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
397<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_deconvolution_layer_upsample.xhtml">CLDeconvolutionLayerUpsample</a></td></tr>
398<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_deconvolution_layer_upsample_kernel.xhtml">CLDeconvolutionLayerUpsampleKernel</a>. <a href="classarm__compute_1_1_c_l_deconvolution_layer_upsample.xhtml#details">More...</a><br /></td></tr>
399<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
400<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_deconvolution_layer_upsample_kernel.xhtml">CLDeconvolutionLayerUpsampleKernel</a></td></tr>
401<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the Deconvolution layer kernel on OpenCL. <a href="classarm__compute_1_1_c_l_deconvolution_layer_upsample_kernel.xhtml#details">More...</a><br /></td></tr>
402<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000403<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_depth_concatenate_layer.xhtml">CLDepthConcatenateLayer</a></td></tr>
404<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute concatenate tensors along z axis. <a href="classarm__compute_1_1_c_l_depth_concatenate_layer.xhtml#details">More...</a><br /></td></tr>
405<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
406<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_depth_concatenate_layer_kernel.xhtml">CLDepthConcatenateLayerKernel</a></td></tr>
407<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the depth concatenate kernel. <a href="classarm__compute_1_1_c_l_depth_concatenate_layer_kernel.xhtml#details">More...</a><br /></td></tr>
408<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
409<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_depth_convert_layer.xhtml">CLDepthConvertLayer</a></td></tr>
410<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_depth_convert_layer_kernel.xhtml">CLDepthConvertLayerKernel</a>. <a href="classarm__compute_1_1_c_l_depth_convert_layer.xhtml#details">More...</a><br /></td></tr>
411<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
412<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_depth_convert_layer_kernel.xhtml">CLDepthConvertLayerKernel</a></td></tr>
413<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the depth conversion kernel. <a href="classarm__compute_1_1_c_l_depth_convert_layer_kernel.xhtml#details">More...</a><br /></td></tr>
414<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
415<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_depthwise_convolution_layer.xhtml">CLDepthwiseConvolutionLayer</a></td></tr>
416<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute a generic depthwise convolution. <a href="classarm__compute_1_1_c_l_depthwise_convolution_layer.xhtml#details">More...</a><br /></td></tr>
417<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
418<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_depthwise_convolution_layer3x3.xhtml">CLDepthwiseConvolutionLayer3x3</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100419<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute a depthwise convolution for kernel size 3x3xC (when data layout NCHW) or Cx3x3 (when data layout NHWC). <a href="classarm__compute_1_1_c_l_depthwise_convolution_layer3x3.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000420<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100421<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel.xhtml">CLDepthwiseConvolutionLayer3x3NCHWKernel</a></td></tr>
422<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run a 3x3 depthwise convolution on a tensor when the data layout is NCHW. <a href="classarm__compute_1_1_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel.xhtml#details">More...</a><br /></td></tr>
423<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
424<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel.xhtml">CLDepthwiseConvolutionLayer3x3NHWCKernel</a></td></tr>
425<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run a 3x3 depthwise convolution on a tensor when the data layout is NHWC. <a href="classarm__compute_1_1_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000426<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +0000427<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_depthwise_convolution_layer_reshape_weights_generic_kernel.xhtml">CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel</a></td></tr>
428<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the depthwise weights reshape kernel. <a href="classarm__compute_1_1_c_l_depthwise_convolution_layer_reshape_weights_generic_kernel.xhtml#details">More...</a><br /></td></tr>
429<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
430<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_depthwise_convolution_layer_reshape_weights_kernel.xhtml">CLDepthwiseConvolutionLayerReshapeWeightsKernel</a></td></tr>
431<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to reshape the weights of depthwise convolution. <a href="classarm__compute_1_1_c_l_depthwise_convolution_layer_reshape_weights_kernel.xhtml#details">More...</a><br /></td></tr>
432<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000433<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_depthwise_im2_col_kernel.xhtml">CLDepthwiseIm2ColKernel</a></td></tr>
434<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the depthwise im2col reshape kernel. <a href="classarm__compute_1_1_c_l_depthwise_im2_col_kernel.xhtml#details">More...</a><br /></td></tr>
435<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
436<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_depthwise_separable_convolution_layer.xhtml">CLDepthwiseSeparableConvolutionLayer</a></td></tr>
437<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute depthwise convolution. <a href="classarm__compute_1_1_c_l_depthwise_separable_convolution_layer.xhtml#details">More...</a><br /></td></tr>
438<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
439<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_depthwise_vector_to_tensor_kernel.xhtml">CLDepthwiseVectorToTensorKernel</a></td></tr>
440<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the depthwise vector to tensor kernel. <a href="classarm__compute_1_1_c_l_depthwise_vector_to_tensor_kernel.xhtml#details">More...</a><br /></td></tr>
441<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000442<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_dequantization_layer.xhtml">CLDequantizationLayer</a></td></tr>
443<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to simulate a dequantization layer. <a href="classarm__compute_1_1_c_l_dequantization_layer.xhtml#details">More...</a><br /></td></tr>
444<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
445<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_dequantization_layer_kernel.xhtml">CLDequantizationLayerKernel</a></td></tr>
446<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the dequantization layer kernel. <a href="classarm__compute_1_1_c_l_dequantization_layer_kernel.xhtml#details">More...</a><br /></td></tr>
447<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
448<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_derivative.xhtml">CLDerivative</a></td></tr>
449<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute first order derivative operator. <a href="classarm__compute_1_1_c_l_derivative.xhtml#details">More...</a><br /></td></tr>
450<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
451<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_derivative_kernel.xhtml">CLDerivativeKernel</a></td></tr>
452<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the derivative kernel. <a href="classarm__compute_1_1_c_l_derivative_kernel.xhtml#details">More...</a><br /></td></tr>
453<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100454<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_c_l_device_options.xhtml">CLDeviceOptions</a></td></tr>
455<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL device options. <a href="structarm__compute_1_1_c_l_device_options.xhtml#details">More...</a><br /></td></tr>
456<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000457<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_dilate.xhtml">CLDilate</a></td></tr>
458<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute dilate. <a href="classarm__compute_1_1_c_l_dilate.xhtml#details">More...</a><br /></td></tr>
459<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
460<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_dilate_kernel.xhtml">CLDilateKernel</a></td></tr>
461<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the dilate kernel. <a href="classarm__compute_1_1_c_l_dilate_kernel.xhtml#details">More...</a><br /></td></tr>
462<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
463<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_direct_convolution_layer.xhtml">CLDirectConvolutionLayer</a></td></tr>
464<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute direct convolution function: <a href="classarm__compute_1_1_c_l_direct_convolution_layer.xhtml#details">More...</a><br /></td></tr>
465<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
466<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_direct_convolution_layer_kernel.xhtml">CLDirectConvolutionLayerKernel</a></td></tr>
467<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the direct convolution kernel. <a href="classarm__compute_1_1_c_l_direct_convolution_layer_kernel.xhtml#details">More...</a><br /></td></tr>
468<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +0000469<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_direct_convolution_layer_output_stage_kernel.xhtml">CLDirectConvolutionLayerOutputStageKernel</a></td></tr>
470<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to accumulate the biases, if provided, or downscale in case of quantized input. <a href="classarm__compute_1_1_c_l_direct_convolution_layer_output_stage_kernel.xhtml#details">More...</a><br /></td></tr>
471<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000472<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_distribution1_d.xhtml">CLDistribution1D</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000473<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_c_l_distribution1_d.xhtml" title="CLDistribution1D object class.">CLDistribution1D</a> object class. <a href="classarm__compute_1_1_c_l_distribution1_d.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000474<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
475<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_edge_non_max_suppression_kernel.xhtml">CLEdgeNonMaxSuppressionKernel</a></td></tr>
476<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform Non-Maxima suppression for Canny Edge. <a href="classarm__compute_1_1_c_l_edge_non_max_suppression_kernel.xhtml#details">More...</a><br /></td></tr>
477<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
478<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_edge_trace_kernel.xhtml">CLEdgeTraceKernel</a></td></tr>
479<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform Edge tracing. <a href="classarm__compute_1_1_c_l_edge_trace_kernel.xhtml#details">More...</a><br /></td></tr>
480<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +0000481<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_elementwise_max.xhtml">CLElementwiseMax</a></td></tr>
482<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_arithmetic_operation_kernel.xhtml">CLArithmeticOperationKernel</a> for max. <a href="classarm__compute_1_1_c_l_elementwise_max.xhtml#details">More...</a><br /></td></tr>
483<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
484<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_elementwise_min.xhtml">CLElementwiseMin</a></td></tr>
485<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_arithmetic_operation_kernel.xhtml">CLArithmeticOperationKernel</a> for min. <a href="classarm__compute_1_1_c_l_elementwise_min.xhtml#details">More...</a><br /></td></tr>
486<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
487<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_elementwise_operation_kernel.xhtml">CLElementwiseOperationKernel</a></td></tr>
488<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for an element-wise operation kernel. <a href="classarm__compute_1_1_c_l_elementwise_operation_kernel.xhtml#details">More...</a><br /></td></tr>
489<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
490<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_elementwise_squared_diff.xhtml">CLElementwiseSquaredDiff</a></td></tr>
491<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_arithmetic_operation_kernel.xhtml">CLArithmeticOperationKernel</a> for squared difference. <a href="classarm__compute_1_1_c_l_elementwise_squared_diff.xhtml#details">More...</a><br /></td></tr>
492<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
493<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_element_wise_unary_layer_kernel.xhtml">CLElementWiseUnaryLayerKernel</a></td></tr>
494<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the elementwise unary operator. <a href="classarm__compute_1_1_c_l_element_wise_unary_layer_kernel.xhtml#details">More...</a><br /></td></tr>
495<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000496<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_equalize_histogram.xhtml">CLEqualizeHistogram</a></td></tr>
497<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute histogram equalization. <a href="classarm__compute_1_1_c_l_equalize_histogram.xhtml#details">More...</a><br /></td></tr>
498<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
499<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_erode.xhtml">CLErode</a></td></tr>
500<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute erode. <a href="classarm__compute_1_1_c_l_erode.xhtml#details">More...</a><br /></td></tr>
501<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
502<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_erode_kernel.xhtml">CLErodeKernel</a></td></tr>
503<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the erode kernel. <a href="classarm__compute_1_1_c_l_erode_kernel.xhtml#details">More...</a><br /></td></tr>
504<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +0000505<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_exp_layer.xhtml">CLExpLayer</a></td></tr>
506<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to perform exponential on an input tensor. <a href="classarm__compute_1_1_c_l_exp_layer.xhtml#details">More...</a><br /></td></tr>
507<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000508<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_fast_corners.xhtml">CLFastCorners</a></td></tr>
509<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute fast corners. <a href="classarm__compute_1_1_c_l_fast_corners.xhtml#details">More...</a><br /></td></tr>
510<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
511<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_fast_corners_kernel.xhtml">CLFastCornersKernel</a></td></tr>
512<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CL kernel to perform fast corners. <a href="classarm__compute_1_1_c_l_fast_corners_kernel.xhtml#details">More...</a><br /></td></tr>
513<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
514<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_fill_border.xhtml">CLFillBorder</a></td></tr>
515<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_fill_border_kernel.xhtml">CLFillBorderKernel</a>. <a href="classarm__compute_1_1_c_l_fill_border.xhtml#details">More...</a><br /></td></tr>
516<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
517<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_fill_border_kernel.xhtml">CLFillBorderKernel</a></td></tr>
518<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for filling the border of a kernel. <a href="classarm__compute_1_1_c_l_fill_border_kernel.xhtml#details">More...</a><br /></td></tr>
519<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100520<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_fine_s_v_m_memory_region.xhtml">CLFineSVMMemoryRegion</a></td></tr>
521<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL fine-grain SVM memory region implementation. <a href="classarm__compute_1_1_c_l_fine_s_v_m_memory_region.xhtml#details">More...</a><br /></td></tr>
522<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000523<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_flatten_layer.xhtml">CLFlattenLayer</a></td></tr>
524<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute flatten. <a href="classarm__compute_1_1_c_l_flatten_layer.xhtml#details">More...</a><br /></td></tr>
525<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +0000526<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_flatten_layer_kernel.xhtml">CLFlattenLayerKernel</a></td></tr>
527<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL interface for the flatten kernel. <a href="classarm__compute_1_1_c_l_flatten_layer_kernel.xhtml#details">More...</a><br /></td></tr>
528<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000529<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_floor.xhtml">CLFloor</a></td></tr>
530<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_floor_kernel.xhtml">CLFloorKernel</a>. <a href="classarm__compute_1_1_c_l_floor.xhtml#details">More...</a><br /></td></tr>
531<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
532<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_floor_kernel.xhtml">CLFloorKernel</a></td></tr>
533<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform a floor operation. <a href="classarm__compute_1_1_c_l_floor_kernel.xhtml#details">More...</a><br /></td></tr>
534<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
535<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_fully_connected_layer.xhtml">CLFullyConnectedLayer</a></td></tr>
536<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute a Fully Connected layer on OpenCL. <a href="classarm__compute_1_1_c_l_fully_connected_layer.xhtml#details">More...</a><br /></td></tr>
537<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
538<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_fully_connected_layer_reshape_weights.xhtml">CLFullyConnectedLayerReshapeWeights</a></td></tr>
539<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to reshape the weights of Fully Connected layer with OpenCL. <a href="classarm__compute_1_1_c_l_fully_connected_layer_reshape_weights.xhtml#details">More...</a><br /></td></tr>
540<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000541<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_fuse_batch_normalization.xhtml">CLFuseBatchNormalization</a></td></tr>
542<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to fuse the batch normalization node to a preceding convolution node. <a href="classarm__compute_1_1_c_l_fuse_batch_normalization.xhtml#details">More...</a><br /></td></tr>
543<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
544<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_fuse_batch_normalization_kernel.xhtml">CLFuseBatchNormalizationKernel</a></td></tr>
545<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to fuse the batch normalization node to a preceding convolution node. <a href="classarm__compute_1_1_c_l_fuse_batch_normalization_kernel.xhtml#details">More...</a><br /></td></tr>
546<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +0000547<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_gather.xhtml">CLGather</a></td></tr>
548<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_gather_kernel.xhtml">CLGatherKernel</a>. <a href="classarm__compute_1_1_c_l_gather.xhtml#details">More...</a><br /></td></tr>
549<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
550<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_gather_kernel.xhtml">CLGatherKernel</a></td></tr>
551<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform tensor reshaping. <a href="classarm__compute_1_1_c_l_gather_kernel.xhtml#details">More...</a><br /></td></tr>
552<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000553<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_gaussian3x3.xhtml">CLGaussian3x3</a></td></tr>
554<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute gaussian filter 3x3. <a href="classarm__compute_1_1_c_l_gaussian3x3.xhtml#details">More...</a><br /></td></tr>
555<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
556<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_gaussian3x3_kernel.xhtml">CLGaussian3x3Kernel</a></td></tr>
557<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the Gaussian 3x3 filter kernel. <a href="classarm__compute_1_1_c_l_gaussian3x3_kernel.xhtml#details">More...</a><br /></td></tr>
558<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
559<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_gaussian5x5.xhtml">CLGaussian5x5</a></td></tr>
560<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute gaussian filter 5x5. <a href="classarm__compute_1_1_c_l_gaussian5x5.xhtml#details">More...</a><br /></td></tr>
561<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
562<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_gaussian5x5_hor_kernel.xhtml">CLGaussian5x5HorKernel</a></td></tr>
563<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run the horizontal pass of 5x5 Gaussian filter on a tensor. <a href="classarm__compute_1_1_c_l_gaussian5x5_hor_kernel.xhtml#details">More...</a><br /></td></tr>
564<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
565<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_gaussian5x5_vert_kernel.xhtml">CLGaussian5x5VertKernel</a></td></tr>
566<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run the vertical pass of 5x5 Gaussian filter on a tensor. <a href="classarm__compute_1_1_c_l_gaussian5x5_vert_kernel.xhtml#details">More...</a><br /></td></tr>
567<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
568<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_gaussian_pyramid.xhtml">CLGaussianPyramid</a></td></tr>
569<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface for all Gaussian pyramid functions. <a href="classarm__compute_1_1_c_l_gaussian_pyramid.xhtml#details">More...</a><br /></td></tr>
570<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
571<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_gaussian_pyramid_half.xhtml">CLGaussianPyramidHalf</a></td></tr>
572<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute gaussian pyramid with HALF scale factor. <a href="classarm__compute_1_1_c_l_gaussian_pyramid_half.xhtml#details">More...</a><br /></td></tr>
573<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
574<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_gaussian_pyramid_hor_kernel.xhtml">CLGaussianPyramidHorKernel</a></td></tr>
575<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform a Gaussian filter and half scaling across width (horizontal pass) <a href="classarm__compute_1_1_c_l_gaussian_pyramid_hor_kernel.xhtml#details">More...</a><br /></td></tr>
576<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
577<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_gaussian_pyramid_orb.xhtml">CLGaussianPyramidOrb</a></td></tr>
578<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute gaussian pyramid with ORB scale factor. <a href="classarm__compute_1_1_c_l_gaussian_pyramid_orb.xhtml#details">More...</a><br /></td></tr>
579<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
580<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_gaussian_pyramid_vert_kernel.xhtml">CLGaussianPyramidVertKernel</a></td></tr>
581<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform a Gaussian filter and half scaling across height (vertical pass) <a href="classarm__compute_1_1_c_l_gaussian_pyramid_vert_kernel.xhtml#details">More...</a><br /></td></tr>
582<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
583<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m.xhtml">CLGEMM</a></td></tr>
584<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute GEMM on OpenCL. <a href="classarm__compute_1_1_c_l_g_e_m_m.xhtml#details">More...</a><br /></td></tr>
585<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +0000586<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_convolution_layer.xhtml">CLGEMMConvolutionLayer</a></td></tr>
587<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute the convolution layer. <a href="classarm__compute_1_1_c_l_g_e_m_m_convolution_layer.xhtml#details">More...</a><br /></td></tr>
588<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000589<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_interleave4x4.xhtml">CLGEMMInterleave4x4</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000590<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_interleave4x4_kernel.xhtml" title="OpenCL kernel which interleaves the elements of a matrix A in chunk of 4x4.">CLGEMMInterleave4x4Kernel</a>. <a href="classarm__compute_1_1_c_l_g_e_m_m_interleave4x4.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000591<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
592<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_interleave4x4_kernel.xhtml">CLGEMMInterleave4x4Kernel</a></td></tr>
593<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel which interleaves the elements of a matrix A in chunk of 4x4. <a href="classarm__compute_1_1_c_l_g_e_m_m_interleave4x4_kernel.xhtml#details">More...</a><br /></td></tr>
594<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
595<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_a_reduction_kernel.xhtml">CLGEMMLowpMatrixAReductionKernel</a></td></tr>
596<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel used to compute the row-vectors of sums of all the entries in each row of Matrix A. <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_a_reduction_kernel.xhtml#details">More...</a><br /></td></tr>
597<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
598<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_b_reduction_kernel.xhtml">CLGEMMLowpMatrixBReductionKernel</a></td></tr>
599<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel used to compute the row-vectors of sums of all the entries in each column of Matrix B. <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_b_reduction_kernel.xhtml#details">More...</a><br /></td></tr>
600<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
601<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_multiply_core.xhtml">CLGEMMLowpMatrixMultiplyCore</a></td></tr>
602<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute GEMMLowpMatrixMultiplyCore on OpenCL. <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_multiply_core.xhtml#details">More...</a><br /></td></tr>
603<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
604<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_multiply_kernel.xhtml">CLGEMMLowpMatrixMultiplyKernel</a></td></tr>
605<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to multiply matrices. <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_multiply_kernel.xhtml#details">More...</a><br /></td></tr>
606<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +0000607<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_multiply_reshaped_kernel.xhtml">CLGEMMLowpMatrixMultiplyReshapedKernel</a></td></tr>
608<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to multiply matrices when both the input matrices LHS (input0) and RHS (input1) have been reshaped. <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_multiply_reshaped_kernel.xhtml#details">More...</a><br /></td></tr>
609<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000610<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_offset_contribution_kernel.xhtml">CLGEMMLowpOffsetContributionKernel</a></td></tr>
611<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel used to add the offset contribution after <a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_multiply_kernel.xhtml">CLGEMMLowpMatrixMultiplyKernel</a>. <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_offset_contribution_kernel.xhtml#details">More...</a><br /></td></tr>
612<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000613<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_offset_contribution_output_stage_kernel.xhtml">CLGEMMLowpOffsetContributionOutputStageKernel</a></td></tr>
614<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel used to add the offset contribution after <a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_multiply_kernel.xhtml">CLGEMMLowpMatrixMultiplyKernel</a> and perform the output stage. <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_offset_contribution_output_stage_kernel.xhtml#details">More...</a><br /></td></tr>
615<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000616<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale.xhtml">CLGEMMLowpQuantizeDownInt32ToUint8Scale</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000617<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale.xhtml" title="Basic function to execute CLGEMMLowpQuantizeDownInt32ToUint8Scale on OpenCL.">CLGEMMLowpQuantizeDownInt32ToUint8Scale</a> on OpenCL. <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000618<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
619<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point.xhtml">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPoint</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000620<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point.xhtml" title="Basic function to execute CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPoint on OpenCL.">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPoint</a> on OpenCL. <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000621<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
622<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel.xhtml">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel</a></td></tr>
623<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel used to quantize down the int32 accumulator values of GEMMLowp to QASYMM8. <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel.xhtml#details">More...</a><br /></td></tr>
624<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000625<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float.xhtml">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloat</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000626<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float.xhtml" title="Basic function to execute CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloat on OpenCL.">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloat</a> on OpenCL. <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float.xhtml#details">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000627<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
628<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float_kernel.xhtml">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloatKernel</a></td></tr>
629<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel used to quantize down the int32 accumulator values of GEMMLowp to QASYMM8. <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float_kernel.xhtml#details">More...</a><br /></td></tr>
630<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000631<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_kernel.xhtml">CLGEMMLowpQuantizeDownInt32ToUint8ScaleKernel</a></td></tr>
632<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel used to quantize down the int32 accumulator values of GEMMLowp to QASYMM8. <a href="classarm__compute_1_1_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_kernel.xhtml#details">More...</a><br /></td></tr>
633<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
634<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_matrix_accumulate_biases_kernel.xhtml">CLGEMMMatrixAccumulateBiasesKernel</a></td></tr>
635<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to add a bias to each row of the input tensor. <a href="classarm__compute_1_1_c_l_g_e_m_m_matrix_accumulate_biases_kernel.xhtml#details">More...</a><br /></td></tr>
636<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
637<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_matrix_addition_kernel.xhtml">CLGEMMMatrixAdditionKernel</a></td></tr>
638<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform the in-place matrix addition between 2 matrices, taking into account that the second matrix might be weighted by a scalar value beta. <a href="classarm__compute_1_1_c_l_g_e_m_m_matrix_addition_kernel.xhtml#details">More...</a><br /></td></tr>
639<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
640<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_matrix_multiply_kernel.xhtml">CLGEMMMatrixMultiplyKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000641<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to multiply two input matrices "A" and "B" and add a vector "C" if provided. <a href="classarm__compute_1_1_c_l_g_e_m_m_matrix_multiply_kernel.xhtml#details">More...</a><br /></td></tr>
642<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
643<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_matrix_multiply_reshaped_kernel.xhtml">CLGEMMMatrixMultiplyReshapedKernel</a></td></tr>
644<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to multiply matrices when both the input matrices LHS (input0) and RHS (input1) have been reshaped. <a href="classarm__compute_1_1_c_l_g_e_m_m_matrix_multiply_reshaped_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000645<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
646<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_matrix_vector_multiply_kernel.xhtml">CLGEMMMatrixVectorMultiplyKernel</a></td></tr>
647<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the GEMM matrix vector multiply kernel. <a href="classarm__compute_1_1_c_l_g_e_m_m_matrix_vector_multiply_kernel.xhtml#details">More...</a><br /></td></tr>
648<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +0000649<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_reshape_l_h_s_matrix_kernel.xhtml">CLGEMMReshapeLHSMatrixKernel</a></td></tr>
650<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to reshape the LHS matrix when performing the matrix multiplication. <a href="classarm__compute_1_1_c_l_g_e_m_m_reshape_l_h_s_matrix_kernel.xhtml#details">More...</a><br /></td></tr>
651<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
652<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_reshape_r_h_s_matrix_kernel.xhtml">CLGEMMReshapeRHSMatrixKernel</a></td></tr>
653<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to reshape the RHS matrix when performing the matrix multiplication In particular, this kernel splits the input matrix in blocks of size K0xN0 and stores each one in the output matrix unrolling the values. <a href="classarm__compute_1_1_c_l_g_e_m_m_reshape_r_h_s_matrix_kernel.xhtml#details">More...</a><br /></td></tr>
654<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000655<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_transpose1x_w.xhtml">CLGEMMTranspose1xW</a></td></tr>
656<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_transpose1x_w_kernel.xhtml" title="OpenCL kernel which transposes the elements of a matrix in chunks of 1xW, where W is equal to (16 / e...">CLGEMMTranspose1xWKernel</a>. <a href="classarm__compute_1_1_c_l_g_e_m_m_transpose1x_w.xhtml#details">More...</a><br /></td></tr>
657<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
658<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_transpose1x_w_kernel.xhtml">CLGEMMTranspose1xWKernel</a></td></tr>
659<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel which transposes the elements of a matrix in chunks of 1xW, where W is equal to (16 / element size of the tensor) <a href="classarm__compute_1_1_c_l_g_e_m_m_transpose1x_w_kernel.xhtml#details">More...</a><br /></td></tr>
660<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000661<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_generate_proposals_layer.xhtml">CLGenerateProposalsLayer</a></td></tr>
662<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to generate proposals for a RPN (Region Proposal Network) <a href="classarm__compute_1_1_c_l_generate_proposals_layer.xhtml#details">More...</a><br /></td></tr>
663<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000664<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_gradient_kernel.xhtml">CLGradientKernel</a></td></tr>
665<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform Gradient computation. <a href="classarm__compute_1_1_c_l_gradient_kernel.xhtml#details">More...</a><br /></td></tr>
666<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
667<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_harris_corners.xhtml">CLHarrisCorners</a></td></tr>
668<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute harris corners detection. <a href="classarm__compute_1_1_c_l_harris_corners.xhtml#details">More...</a><br /></td></tr>
669<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
670<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_harris_score_kernel.xhtml">CLHarrisScoreKernel</a></td></tr>
671<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the harris score kernel. <a href="classarm__compute_1_1_c_l_harris_score_kernel.xhtml#details">More...</a><br /></td></tr>
672<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
673<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_histogram.xhtml">CLHistogram</a></td></tr>
674<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute histogram. <a href="classarm__compute_1_1_c_l_histogram.xhtml#details">More...</a><br /></td></tr>
675<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
676<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_histogram_border_kernel.xhtml">CLHistogramBorderKernel</a></td></tr>
677<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to run the histogram kernel to handle the leftover part of image. <a href="classarm__compute_1_1_c_l_histogram_border_kernel.xhtml#details">More...</a><br /></td></tr>
678<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
679<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_histogram_kernel.xhtml">CLHistogramKernel</a></td></tr>
680<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to run the histogram kernel. <a href="classarm__compute_1_1_c_l_histogram_kernel.xhtml#details">More...</a><br /></td></tr>
681<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
682<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_h_o_g.xhtml">CLHOG</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000683<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL implementation of <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> data-object. <a href="classarm__compute_1_1_c_l_h_o_g.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000684<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
685<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_h_o_g_block_normalization_kernel.xhtml">CLHOGBlockNormalizationKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000686<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> block normalization. <a href="classarm__compute_1_1_c_l_h_o_g_block_normalization_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000687<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
688<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_h_o_g_descriptor.xhtml">CLHOGDescriptor</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000689<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to calculate <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> descriptor. <a href="classarm__compute_1_1_c_l_h_o_g_descriptor.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000690<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
691<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_h_o_g_detector.xhtml">CLHOGDetector</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000692<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> detector based on linear SVM. <a href="classarm__compute_1_1_c_l_h_o_g_detector.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000693<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
694<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_h_o_g_detector_kernel.xhtml">CLHOGDetectorKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000695<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> detector kernel using linear SVM. <a href="classarm__compute_1_1_c_l_h_o_g_detector_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000696<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
697<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_h_o_g_gradient.xhtml">CLHOGGradient</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000698<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to calculate the gradient for <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a>. <a href="classarm__compute_1_1_c_l_h_o_g_gradient.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000699<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
700<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_h_o_g_multi_detection.xhtml">CLHOGMultiDetection</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000701<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to detect multiple objects (or the same object at different scales) on the same input image using <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a>. <a href="classarm__compute_1_1_c_l_h_o_g_multi_detection.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000702<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
703<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_h_o_g_orientation_binning_kernel.xhtml">CLHOGOrientationBinningKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000704<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> Orientation Binning. <a href="classarm__compute_1_1_c_l_h_o_g_orientation_binning_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000705<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
706<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_im2_col_kernel.xhtml">CLIm2ColKernel</a></td></tr>
707<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the im2col reshape kernel. <a href="classarm__compute_1_1_c_l_im2_col_kernel.xhtml#details">More...</a><br /></td></tr>
708<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
709<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_integral_image.xhtml">CLIntegralImage</a></td></tr>
710<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute integral image. <a href="classarm__compute_1_1_c_l_integral_image.xhtml#details">More...</a><br /></td></tr>
711<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
712<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_integral_image_hor_kernel.xhtml">CLIntegralImageHorKernel</a></td></tr>
713<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to run the horizontal pass of the integral image kernel. <a href="classarm__compute_1_1_c_l_integral_image_hor_kernel.xhtml#details">More...</a><br /></td></tr>
714<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
715<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_integral_image_vert_kernel.xhtml">CLIntegralImageVertKernel</a></td></tr>
716<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to run the vertical pass of the integral image kernel. <a href="classarm__compute_1_1_c_l_integral_image_vert_kernel.xhtml#details">More...</a><br /></td></tr>
717<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
718<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_kernel_library.xhtml">CLKernelLibrary</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000719<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_c_l_kernel_library.xhtml" title="CLKernelLibrary class.">CLKernelLibrary</a> class. <a href="classarm__compute_1_1_c_l_kernel_library.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000720<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
721<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_l2_normalize_layer.xhtml">CLL2NormalizeLayer</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100722<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to perform a L2 normalization on a given axis. <a href="classarm__compute_1_1_c_l_l2_normalize_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000723<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
724<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_l2_normalize_layer_kernel.xhtml">CLL2NormalizeLayerKernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100725<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for performing a L2 normalize on a given axis given the square sum of it in this axis. <a href="classarm__compute_1_1_c_l_l2_normalize_layer_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000726<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
727<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_laplacian_pyramid.xhtml">CLLaplacianPyramid</a></td></tr>
728<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute laplacian pyramid. <a href="classarm__compute_1_1_c_l_laplacian_pyramid.xhtml#details">More...</a><br /></td></tr>
729<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
730<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_laplacian_reconstruct.xhtml">CLLaplacianReconstruct</a></td></tr>
731<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute laplacian reconstruction. <a href="classarm__compute_1_1_c_l_laplacian_reconstruct.xhtml#details">More...</a><br /></td></tr>
732<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
733<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_c_l_l_k_internal_keypoint.xhtml">CLLKInternalKeypoint</a></td></tr>
734<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal keypoint structure for Lucas-Kanade Optical Flow. <a href="structarm__compute_1_1_c_l_l_k_internal_keypoint.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100735<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
736<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_l_k_tracker_finalize_kernel.xhtml">CLLKTrackerFinalizeKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000737<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to run the finalize step of LKTracker, where it truncates the coordinates stored in new_points array. <a href="classarm__compute_1_1_c_l_l_k_tracker_finalize_kernel.xhtml#details">More...</a><br /></td></tr>
738<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
739<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_l_k_tracker_init_kernel.xhtml">CLLKTrackerInitKernel</a></td></tr>
740<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to run the initialization step of LKTracker. <a href="classarm__compute_1_1_c_l_l_k_tracker_init_kernel.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100741<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
742<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_l_k_tracker_stage0_kernel.xhtml">CLLKTrackerStage0Kernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000743<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to run the first stage of LKTracker, where A11, A12, A22, min_eig, ival, ixval and iyval are computed. <a href="classarm__compute_1_1_c_l_l_k_tracker_stage0_kernel.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100744<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
745<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_l_k_tracker_stage1_kernel.xhtml">CLLKTrackerStage1Kernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000746<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to run the second stage of LKTracker, where the motion vectors of the given points are computed. <a href="classarm__compute_1_1_c_l_l_k_tracker_stage1_kernel.xhtml#details">More...</a><br /></td></tr>
747<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
748<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_locally_connected_layer.xhtml">CLLocallyConnectedLayer</a></td></tr>
749<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute the locally connected layer. <a href="classarm__compute_1_1_c_l_locally_connected_layer.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100750<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
751<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_locally_connected_matrix_multiply_kernel.xhtml">CLLocallyConnectedMatrixMultiplyKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000752<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to multiply each row of first tensor with low 2 dimensions of second tensor. <a href="classarm__compute_1_1_c_l_locally_connected_matrix_multiply_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000753<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100754<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_logits1_d_max_kernel.xhtml">CLLogits1DMaxKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000755<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the identifying the max value of 1D Logits. <a href="classarm__compute_1_1_c_l_logits1_d_max_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000756<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000757<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_logits1_d_max_shift_exp_sum_kernel.xhtml">CLLogits1DMaxShiftExpSumKernel</a></td></tr>
758<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for max, shifting, exponentiating and summing the logits. <a href="classarm__compute_1_1_c_l_logits1_d_max_shift_exp_sum_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +0100759<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100760<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_logits1_d_norm_kernel.xhtml">CLLogits1DNormKernel</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000761<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for calculating the final step of the Softmax Layer where each logit value is multiplied by the inverse of the sum of the logits. <a href="classarm__compute_1_1_c_l_logits1_d_norm_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000762<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000763<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_logits1_d_shift_exp_sum_kernel.xhtml">CLLogits1DShiftExpSumKernel</a></td></tr>
764<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for shifting, exponentiating and summing the logits. <a href="classarm__compute_1_1_c_l_logits1_d_shift_exp_sum_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000765<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100766<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_l_s_t_m_layer.xhtml">CLLSTMLayer</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000767<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function performs a single time step in a Long Short-Term <a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object.">Memory</a> (LSTM) layer. <a href="classarm__compute_1_1_c_l_l_s_t_m_layer.xhtml#details">More...</a><br /></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100768<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000769<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_lut.xhtml">CLLut</a></td></tr>
770<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the OpenCL lut interface. <a href="classarm__compute_1_1_c_l_lut.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000771<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000772<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_lut_allocator.xhtml">CLLutAllocator</a></td></tr>
773<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of a CL memory LUT allocator. <a href="classarm__compute_1_1_c_l_lut_allocator.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000774<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000775<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_magnitude.xhtml">CLMagnitude</a></td></tr>
776<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_magnitude_phase_kernel.xhtml">CLMagnitudePhaseKernel</a>. <a href="classarm__compute_1_1_c_l_magnitude.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000777<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000778<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_magnitude_phase_kernel.xhtml">CLMagnitudePhaseKernel</a></td></tr>
779<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template interface for the kernel to compute magnitude and phase. <a href="classarm__compute_1_1_c_l_magnitude_phase_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000780<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000781<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_mean_std_dev.xhtml">CLMeanStdDev</a></td></tr>
782<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute mean and standard deviation by calling <a class="el" href="classarm__compute_1_1_c_l_mean_std_dev_kernel.xhtml">CLMeanStdDevKernel</a>. <a href="classarm__compute_1_1_c_l_mean_std_dev.xhtml#details">More...</a><br /></td></tr>
783<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
784<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_mean_std_dev_kernel.xhtml">CLMeanStdDevKernel</a></td></tr>
785<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to calculate mean and standard deviation of input image pixels. <a href="classarm__compute_1_1_c_l_mean_std_dev_kernel.xhtml#details">More...</a><br /></td></tr>
786<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
787<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_median3x3.xhtml">CLMedian3x3</a></td></tr>
788<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute median filter. <a href="classarm__compute_1_1_c_l_median3x3.xhtml#details">More...</a><br /></td></tr>
789<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
790<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_median3x3_kernel.xhtml">CLMedian3x3Kernel</a></td></tr>
791<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the median 3x3 filter kernel. <a href="classarm__compute_1_1_c_l_median3x3_kernel.xhtml#details">More...</a><br /></td></tr>
792<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100793<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_memory.xhtml">CLMemory</a></td></tr>
794<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL implementation of memory object. <a href="classarm__compute_1_1_c_l_memory.xhtml#details">More...</a><br /></td></tr>
795<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000796<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_memset_kernel.xhtml">CLMemsetKernel</a></td></tr>
797<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for filling the planes of a tensor. <a href="classarm__compute_1_1_c_l_memset_kernel.xhtml#details">More...</a><br /></td></tr>
798<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000799<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_min_max_kernel.xhtml">CLMinMaxKernel</a></td></tr>
800<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform min max search on an image. <a href="classarm__compute_1_1_c_l_min_max_kernel.xhtml#details">More...</a><br /></td></tr>
801<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
802<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_min_max_layer_kernel.xhtml">CLMinMaxLayerKernel</a></td></tr>
803<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform min max search on a 3D tensor. <a href="classarm__compute_1_1_c_l_min_max_layer_kernel.xhtml#details">More...</a><br /></td></tr>
804<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
805<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_min_max_location.xhtml">CLMinMaxLocation</a></td></tr>
806<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute min and max location. <a href="classarm__compute_1_1_c_l_min_max_location.xhtml#details">More...</a><br /></td></tr>
807<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
808<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_min_max_location_kernel.xhtml">CLMinMaxLocationKernel</a></td></tr>
809<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to find min max locations of an image. <a href="classarm__compute_1_1_c_l_min_max_location_kernel.xhtml#details">More...</a><br /></td></tr>
810<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
811<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_multi_h_o_g.xhtml">CLMultiHOG</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000812<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the CL multi <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> data-objects. <a href="classarm__compute_1_1_c_l_multi_h_o_g.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000813<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
814<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_multi_image.xhtml">CLMultiImage</a></td></tr>
815<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the CL multi-planar image interface. <a href="classarm__compute_1_1_c_l_multi_image.xhtml#details">More...</a><br /></td></tr>
816<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
817<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_non_linear_filter.xhtml">CLNonLinearFilter</a></td></tr>
818<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute non linear filter. <a href="classarm__compute_1_1_c_l_non_linear_filter.xhtml#details">More...</a><br /></td></tr>
819<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
820<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_non_linear_filter_kernel.xhtml">CLNonLinearFilterKernel</a></td></tr>
821<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to apply a non-linear filter. <a href="classarm__compute_1_1_c_l_non_linear_filter_kernel.xhtml#details">More...</a><br /></td></tr>
822<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
823<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_non_maxima_suppression3x3.xhtml">CLNonMaximaSuppression3x3</a></td></tr>
824<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute non-maxima suppression over a 3x3 window. <a href="classarm__compute_1_1_c_l_non_maxima_suppression3x3.xhtml#details">More...</a><br /></td></tr>
825<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
826<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_non_maxima_suppression3x3_kernel.xhtml">CLNonMaximaSuppression3x3Kernel</a></td></tr>
827<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to perform Non-Maxima suppression over a 3x3 window using OpenCL. <a href="classarm__compute_1_1_c_l_non_maxima_suppression3x3_kernel.xhtml#details">More...</a><br /></td></tr>
828<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
829<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_normalization_layer.xhtml">CLNormalizationLayer</a></td></tr>
830<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute a normalization layer. <a href="classarm__compute_1_1_c_l_normalization_layer.xhtml#details">More...</a><br /></td></tr>
831<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
832<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_normalization_layer_kernel.xhtml">CLNormalizationLayerKernel</a></td></tr>
833<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the normalization layer kernel. <a href="classarm__compute_1_1_c_l_normalization_layer_kernel.xhtml#details">More...</a><br /></td></tr>
834<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000835<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_normalize_planar_y_u_v_layer.xhtml">CLNormalizePlanarYUVLayer</a></td></tr>
836<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_normalize_planar_y_u_v_layer_kernel.xhtml">CLNormalizePlanarYUVLayerKernel</a>. <a href="classarm__compute_1_1_c_l_normalize_planar_y_u_v_layer.xhtml#details">More...</a><br /></td></tr>
837<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
838<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_normalize_planar_y_u_v_layer_kernel.xhtml">CLNormalizePlanarYUVLayerKernel</a></td></tr>
839<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the NormalizePlanarYUV layer kernel. <a href="classarm__compute_1_1_c_l_normalize_planar_y_u_v_layer_kernel.xhtml#details">More...</a><br /></td></tr>
840<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000841<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_c_l_old_value.xhtml">CLOldValue</a></td></tr>
842<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure for storing ival, ixval and iyval for each point inside the window. <a href="structarm__compute_1_1_c_l_old_value.xhtml#details">More...</a><br /></td></tr>
843<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
844<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_optical_flow.xhtml">CLOpticalFlow</a></td></tr>
845<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute optical flow. <a href="classarm__compute_1_1_c_l_optical_flow.xhtml#details">More...</a><br /></td></tr>
846<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000847<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_pad_layer.xhtml">CLPadLayer</a></td></tr>
848<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to pad a tensor. <a href="classarm__compute_1_1_c_l_pad_layer.xhtml#details">More...</a><br /></td></tr>
849<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +0000850<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_permute.xhtml">CLPermute</a></td></tr>
851<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute an <a class="el" href="classarm__compute_1_1_c_l_permute_kernel.xhtml">CLPermuteKernel</a>. <a href="classarm__compute_1_1_c_l_permute.xhtml#details">More...</a><br /></td></tr>
852<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
853<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_permute_kernel.xhtml">CLPermuteKernel</a></td></tr>
854<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform tensor permutation. <a href="classarm__compute_1_1_c_l_permute_kernel.xhtml#details">More...</a><br /></td></tr>
855<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000856<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_phase.xhtml">CLPhase</a></td></tr>
857<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute an <a class="el" href="classarm__compute_1_1_c_l_magnitude_phase_kernel.xhtml">CLMagnitudePhaseKernel</a>. <a href="classarm__compute_1_1_c_l_phase.xhtml#details">More...</a><br /></td></tr>
858<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
859<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_pixel_wise_multiplication.xhtml">CLPixelWiseMultiplication</a></td></tr>
860<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_pixel_wise_multiplication_kernel.xhtml">CLPixelWiseMultiplicationKernel</a>. <a href="classarm__compute_1_1_c_l_pixel_wise_multiplication.xhtml#details">More...</a><br /></td></tr>
861<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
862<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_pixel_wise_multiplication_kernel.xhtml">CLPixelWiseMultiplicationKernel</a></td></tr>
863<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the pixelwise multiplication kernel. <a href="classarm__compute_1_1_c_l_pixel_wise_multiplication_kernel.xhtml#details">More...</a><br /></td></tr>
864<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
865<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_pooling_layer.xhtml">CLPoolingLayer</a></td></tr>
866<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to simulate a pooling layer with the specified pooling operation. <a href="classarm__compute_1_1_c_l_pooling_layer.xhtml#details">More...</a><br /></td></tr>
867<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
868<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_pooling_layer_kernel.xhtml">CLPoolingLayerKernel</a></td></tr>
869<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the pooling layer kernel. <a href="classarm__compute_1_1_c_l_pooling_layer_kernel.xhtml#details">More...</a><br /></td></tr>
870<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000871<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_prior_box_layer.xhtml">CLPriorBoxLayer</a></td></tr>
872<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_prior_box_layer_kernel.xhtml">CLPriorBoxLayerKernel</a>. <a href="classarm__compute_1_1_c_l_prior_box_layer.xhtml#details">More...</a><br /></td></tr>
873<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
874<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_prior_box_layer_kernel.xhtml">CLPriorBoxLayerKernel</a></td></tr>
875<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the PriorBox layer kernel. <a href="classarm__compute_1_1_c_l_prior_box_layer_kernel.xhtml#details">More...</a><br /></td></tr>
876<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000877<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_pyramid.xhtml">CLPyramid</a></td></tr>
878<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the OpenCL pyramid interface. <a href="classarm__compute_1_1_c_l_pyramid.xhtml#details">More...</a><br /></td></tr>
879<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
880<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_quantization_layer.xhtml">CLQuantizationLayer</a></td></tr>
881<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to simulate a quantization layer. <a href="classarm__compute_1_1_c_l_quantization_layer.xhtml#details">More...</a><br /></td></tr>
882<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
883<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_quantization_layer_kernel.xhtml">CLQuantizationLayerKernel</a></td></tr>
884<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the quantization layer kernel. <a href="classarm__compute_1_1_c_l_quantization_layer_kernel.xhtml#details">More...</a><br /></td></tr>
885<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +0000886<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_range.xhtml">CLRange</a></td></tr>
887<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_range_kernel.xhtml">CLRangeKernel</a>. <a href="classarm__compute_1_1_c_l_range.xhtml#details">More...</a><br /></td></tr>
888<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
889<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_range_kernel.xhtml">CLRangeKernel</a></td></tr>
890<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> class for Range. <a href="classarm__compute_1_1_c_l_range_kernel.xhtml#details">More...</a><br /></td></tr>
891<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000892<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_reduce_mean.xhtml">CLReduceMean</a></td></tr>
893<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to perform reduce operation. <a href="classarm__compute_1_1_c_l_reduce_mean.xhtml#details">More...</a><br /></td></tr>
894<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000895<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_reduction_operation.xhtml">CLReductionOperation</a></td></tr>
896<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform reduction operation. <a href="classarm__compute_1_1_c_l_reduction_operation.xhtml#details">More...</a><br /></td></tr>
897<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
898<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_reduction_operation_kernel.xhtml">CLReductionOperationKernel</a></td></tr>
899<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the reduction operation kernel. <a href="classarm__compute_1_1_c_l_reduction_operation_kernel.xhtml#details">More...</a><br /></td></tr>
900<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
901<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_remap.xhtml">CLRemap</a></td></tr>
902<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute remap. <a href="classarm__compute_1_1_c_l_remap.xhtml#details">More...</a><br /></td></tr>
903<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
904<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_remap_kernel.xhtml">CLRemapKernel</a></td></tr>
905<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform a remap on a tensor. <a href="classarm__compute_1_1_c_l_remap_kernel.xhtml#details">More...</a><br /></td></tr>
906<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000907<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_reorg_layer.xhtml">CLReorgLayer</a></td></tr>
908<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
909<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_reorg_layer_kernel.xhtml">CLReorgLayerKernel</a></td></tr>
910<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform a reorg layer. <a href="classarm__compute_1_1_c_l_reorg_layer_kernel.xhtml#details">More...</a><br /></td></tr>
911<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000912<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_reshape_layer.xhtml">CLReshapeLayer</a></td></tr>
913<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_reshape_layer_kernel.xhtml">CLReshapeLayerKernel</a>. <a href="classarm__compute_1_1_c_l_reshape_layer.xhtml#details">More...</a><br /></td></tr>
914<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
915<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_reshape_layer_kernel.xhtml">CLReshapeLayerKernel</a></td></tr>
916<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform tensor reshaping. <a href="classarm__compute_1_1_c_l_reshape_layer_kernel.xhtml#details">More...</a><br /></td></tr>
917<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +0000918<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_reverse.xhtml">CLReverse</a></td></tr>
919<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_reverse_kernel.xhtml">CLReverseKernel</a>. <a href="classarm__compute_1_1_c_l_reverse.xhtml#details">More...</a><br /></td></tr>
920<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
921<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_reverse_kernel.xhtml">CLReverseKernel</a></td></tr>
922<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the reverse kernel. <a href="classarm__compute_1_1_c_l_reverse_kernel.xhtml#details">More...</a><br /></td></tr>
923<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100924<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_r_n_n_layer.xhtml">CLRNNLayer</a></td></tr>
925<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_r_n_n_layer.xhtml">CLRNNLayer</a>. <a href="classarm__compute_1_1_c_l_r_n_n_layer.xhtml#details">More...</a><br /></td></tr>
926<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000927<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_r_o_i_align_layer.xhtml">CLROIAlignLayer</a></td></tr>
928<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_r_o_i_align_layer_kernel.xhtml">CLROIAlignLayerKernel</a>. <a href="classarm__compute_1_1_c_l_r_o_i_align_layer.xhtml#details">More...</a><br /></td></tr>
929<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
930<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_r_o_i_align_layer_kernel.xhtml">CLROIAlignLayerKernel</a></td></tr>
931<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the RoIAlign kernel. <a href="classarm__compute_1_1_c_l_r_o_i_align_layer_kernel.xhtml#details">More...</a><br /></td></tr>
932<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000933<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_r_o_i_pooling_layer.xhtml">CLROIPoolingLayer</a></td></tr>
934<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_r_o_i_pooling_layer_kernel.xhtml">CLROIPoolingLayerKernel</a>. <a href="classarm__compute_1_1_c_l_r_o_i_pooling_layer.xhtml#details">More...</a><br /></td></tr>
935<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
936<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_r_o_i_pooling_layer_kernel.xhtml">CLROIPoolingLayerKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000937<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the ROI pooling layer kernel. <a href="classarm__compute_1_1_c_l_r_o_i_pooling_layer_kernel.xhtml#details">More...</a><br /></td></tr>
938<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
939<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_rsqrt_layer.xhtml">CLRsqrtLayer</a></td></tr>
940<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to perform inverse square root on an input tensor. <a href="classarm__compute_1_1_c_l_rsqrt_layer.xhtml#details">More...</a><br /></td></tr>
941<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
942<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_saturated_arithmetic_operation_kernel.xhtml">CLSaturatedArithmeticOperationKernel</a></td></tr>
943<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Addition operation. <a href="classarm__compute_1_1_c_l_saturated_arithmetic_operation_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000944<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
945<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_scale.xhtml">CLScale</a></td></tr>
946<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_scale_kernel.xhtml">CLScaleKernel</a>. <a href="classarm__compute_1_1_c_l_scale.xhtml#details">More...</a><br /></td></tr>
947<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
948<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_scale_kernel.xhtml">CLScaleKernel</a></td></tr>
949<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the scale kernel. <a href="classarm__compute_1_1_c_l_scale_kernel.xhtml#details">More...</a><br /></td></tr>
950<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
951<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_scharr3x3.xhtml">CLScharr3x3</a></td></tr>
952<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute scharr 3x3 filter. <a href="classarm__compute_1_1_c_l_scharr3x3.xhtml#details">More...</a><br /></td></tr>
953<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
954<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_scharr3x3_kernel.xhtml">CLScharr3x3Kernel</a></td></tr>
955<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run a 3x3 Scharr filter on a tensor. <a href="classarm__compute_1_1_c_l_scharr3x3_kernel.xhtml#details">More...</a><br /></td></tr>
956<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
957<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_scheduler.xhtml">CLScheduler</a></td></tr>
958<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides global access to a CL context and command queue. <a href="classarm__compute_1_1_c_l_scheduler.xhtml#details">More...</a><br /></td></tr>
959<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +0000960<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_select.xhtml">CLSelect</a></td></tr>
961<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_select.xhtml">CLSelect</a>. <a href="classarm__compute_1_1_c_l_select.xhtml#details">More...</a><br /></td></tr>
962<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
963<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_select_kernel.xhtml">CLSelectKernel</a></td></tr>
964<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL interface for executing the select kernel. <a href="classarm__compute_1_1_c_l_select_kernel.xhtml#details">More...</a><br /></td></tr>
965<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000966<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_separable_convolution_hor_kernel.xhtml">CLSeparableConvolutionHorKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000967<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> for the Horizontal pass of a Separable Convolution. <a href="classarm__compute_1_1_c_l_separable_convolution_hor_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000968<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
969<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_separable_convolution_vert_kernel.xhtml">CLSeparableConvolutionVertKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +0000970<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> for the Vertical pass of a Separable Convolution. <a href="classarm__compute_1_1_c_l_separable_convolution_vert_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000971<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000972<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_slice.xhtml">CLSlice</a></td></tr>
973<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to perform tensor slicing. <a href="classarm__compute_1_1_c_l_slice.xhtml#details">More...</a><br /></td></tr>
974<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000975<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_sobel3x3.xhtml">CLSobel3x3</a></td></tr>
976<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute sobel 3x3 filter. <a href="classarm__compute_1_1_c_l_sobel3x3.xhtml#details">More...</a><br /></td></tr>
977<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
978<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_sobel3x3_kernel.xhtml">CLSobel3x3Kernel</a></td></tr>
979<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run a 3x3 Sobel filter on a tensor. <a href="classarm__compute_1_1_c_l_sobel3x3_kernel.xhtml#details">More...</a><br /></td></tr>
980<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
981<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_sobel5x5.xhtml">CLSobel5x5</a></td></tr>
982<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute sobel 5x5 filter. <a href="classarm__compute_1_1_c_l_sobel5x5.xhtml#details">More...</a><br /></td></tr>
983<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
984<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_sobel5x5_hor_kernel.xhtml">CLSobel5x5HorKernel</a></td></tr>
985<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run the horizontal pass of 5x5 Sobel filter on a tensor. <a href="classarm__compute_1_1_c_l_sobel5x5_hor_kernel.xhtml#details">More...</a><br /></td></tr>
986<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
987<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_sobel5x5_vert_kernel.xhtml">CLSobel5x5VertKernel</a></td></tr>
988<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run the vertical pass of 5x5 Sobel filter on a tensor. <a href="classarm__compute_1_1_c_l_sobel5x5_vert_kernel.xhtml#details">More...</a><br /></td></tr>
989<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
990<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_sobel7x7.xhtml">CLSobel7x7</a></td></tr>
991<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute sobel 7x7 filter. <a href="classarm__compute_1_1_c_l_sobel7x7.xhtml#details">More...</a><br /></td></tr>
992<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
993<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_sobel7x7_hor_kernel.xhtml">CLSobel7x7HorKernel</a></td></tr>
994<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run the horizontal pass of 7x7 Sobel filter on a tensor. <a href="classarm__compute_1_1_c_l_sobel7x7_hor_kernel.xhtml#details">More...</a><br /></td></tr>
995<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
996<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_sobel7x7_vert_kernel.xhtml">CLSobel7x7VertKernel</a></td></tr>
997<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run the vertical pass of 7x7 Sobel filter on a tensor. <a href="classarm__compute_1_1_c_l_sobel7x7_vert_kernel.xhtml#details">More...</a><br /></td></tr>
998<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
999<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_softmax_layer.xhtml">CLSoftmaxLayer</a></td></tr>
1000<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute a SoftmaxLayer. <a href="classarm__compute_1_1_c_l_softmax_layer.xhtml#details">More...</a><br /></td></tr>
1001<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001002<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_space_to_batch_layer.xhtml">CLSpaceToBatchLayer</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001003<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to spatial divide a tensor. <a href="classarm__compute_1_1_c_l_space_to_batch_layer.xhtml#details">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001004<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1005<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_space_to_batch_layer_kernel.xhtml">CLSpaceToBatchLayerKernel</a></td></tr>
1006<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the space to batch kernel. <a href="classarm__compute_1_1_c_l_space_to_batch_layer_kernel.xhtml#details">More...</a><br /></td></tr>
1007<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1008<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_split.xhtml">CLSplit</a></td></tr>
1009<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to split a tensor along a given axis. <a href="classarm__compute_1_1_c_l_split.xhtml#details">More...</a><br /></td></tr>
1010<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001011<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_stack_layer.xhtml">CLStackLayer</a></td></tr>
1012<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to stack tensors along an axis. <a href="classarm__compute_1_1_c_l_stack_layer.xhtml#details">More...</a><br /></td></tr>
1013<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1014<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_stack_layer_kernel.xhtml">CLStackLayerKernel</a></td></tr>
1015<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to stacks a rank-R tensor into one with rank-(R+1) along the axis dimension. <a href="classarm__compute_1_1_c_l_stack_layer_kernel.xhtml#details">More...</a><br /></td></tr>
1016<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001017<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_strided_slice.xhtml">CLStridedSlice</a></td></tr>
1018<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_strided_slice_kernel.xhtml">CLStridedSliceKernel</a>. <a href="classarm__compute_1_1_c_l_strided_slice.xhtml#details">More...</a><br /></td></tr>
1019<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1020<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_strided_slice_kernel.xhtml">CLStridedSliceKernel</a></td></tr>
1021<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform tensor strided slicing. <a href="classarm__compute_1_1_c_l_strided_slice_kernel.xhtml#details">More...</a><br /></td></tr>
1022<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001023<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_sub_tensor.xhtml">CLSubTensor</a></td></tr>
1024<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the OpenCL sub-tensor interface. <a href="classarm__compute_1_1_c_l_sub_tensor.xhtml#details">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01001025<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001026<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_symbols.xhtml">CLSymbols</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001027<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class for loading OpenCL symbols. <a href="classarm__compute_1_1_c_l_symbols.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001028<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001029<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_table_lookup.xhtml">CLTableLookup</a></td></tr>
1030<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_table_lookup_kernel.xhtml">CLTableLookupKernel</a>. <a href="classarm__compute_1_1_c_l_table_lookup.xhtml#details">More...</a><br /></td></tr>
1031<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1032<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_table_lookup_kernel.xhtml">CLTableLookupKernel</a></td></tr>
1033<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform table lookup calculations. <a href="classarm__compute_1_1_c_l_table_lookup_kernel.xhtml#details">More...</a><br /></td></tr>
1034<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1035<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_tensor.xhtml">CLTensor</a></td></tr>
1036<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the OpenCL tensor interface. <a href="classarm__compute_1_1_c_l_tensor.xhtml#details">More...</a><br /></td></tr>
1037<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1038<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_tensor_allocator.xhtml">CLTensorAllocator</a></td></tr>
1039<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of a CL memory tensor allocator. <a href="classarm__compute_1_1_c_l_tensor_allocator.xhtml#details">More...</a><br /></td></tr>
1040<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1041<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_threshold.xhtml">CLThreshold</a></td></tr>
1042<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_threshold_kernel.xhtml">CLThresholdKernel</a>. <a href="classarm__compute_1_1_c_l_threshold.xhtml#details">More...</a><br /></td></tr>
1043<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1044<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_threshold_kernel.xhtml">CLThresholdKernel</a></td></tr>
1045<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the thresholding kernel. <a href="classarm__compute_1_1_c_l_threshold_kernel.xhtml#details">More...</a><br /></td></tr>
1046<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001047<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_tile.xhtml">CLTile</a></td></tr>
1048<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_tile_kernel.xhtml">CLTileKernel</a>. <a href="classarm__compute_1_1_c_l_tile.xhtml#details">More...</a><br /></td></tr>
1049<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1050<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_tile_kernel.xhtml">CLTileKernel</a></td></tr>
1051<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform a Tile operation. <a href="classarm__compute_1_1_c_l_tile_kernel.xhtml#details">More...</a><br /></td></tr>
1052<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001053<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_transpose.xhtml">CLTranspose</a></td></tr>
1054<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to transpose a matrix on OpenCL. <a href="classarm__compute_1_1_c_l_transpose.xhtml#details">More...</a><br /></td></tr>
1055<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1056<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_transpose_kernel.xhtml">CLTransposeKernel</a></td></tr>
1057<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel which transposes the elements of a matrix. <a href="classarm__compute_1_1_c_l_transpose_kernel.xhtml#details">More...</a><br /></td></tr>
1058<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1059<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_tuner.xhtml">CLTuner</a></td></tr>
1060<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the OpenCL tuner interface. <a href="classarm__compute_1_1_c_l_tuner.xhtml#details">More...</a><br /></td></tr>
1061<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001062<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_unstack.xhtml">CLUnstack</a></td></tr>
1063<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to unpack a rank-R tensor into rank-(R-1) tensors. <a href="classarm__compute_1_1_c_l_unstack.xhtml#details">More...</a><br /></td></tr>
1064<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001065<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_upsample_layer.xhtml">CLUpsampleLayer</a></td></tr>
1066<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_upsample_layer_kernel.xhtml">CLUpsampleLayerKernel</a>. <a href="classarm__compute_1_1_c_l_upsample_layer.xhtml#details">More...</a><br /></td></tr>
1067<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1068<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_upsample_layer_kernel.xhtml">CLUpsampleLayerKernel</a></td></tr>
1069<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the UpsampleLayer kernel on OpenCL. <a href="classarm__compute_1_1_c_l_upsample_layer_kernel.xhtml#details">More...</a><br /></td></tr>
1070<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001071<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_warp_affine.xhtml">CLWarpAffine</a></td></tr>
1072<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_warp_affine_kernel.xhtml">CLWarpAffineKernel</a> for AFFINE transformation. <a href="classarm__compute_1_1_c_l_warp_affine.xhtml#details">More...</a><br /></td></tr>
1073<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1074<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_warp_affine_kernel.xhtml">CLWarpAffineKernel</a></td></tr>
1075<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the warp affine kernel. <a href="classarm__compute_1_1_c_l_warp_affine_kernel.xhtml#details">More...</a><br /></td></tr>
1076<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1077<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_warp_perspective.xhtml">CLWarpPerspective</a></td></tr>
1078<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_warp_perspective_kernel.xhtml">CLWarpPerspectiveKernel</a> for PERSPECTIVE transformation. <a href="classarm__compute_1_1_c_l_warp_perspective.xhtml#details">More...</a><br /></td></tr>
1079<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1080<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_warp_perspective_kernel.xhtml">CLWarpPerspectiveKernel</a></td></tr>
1081<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the warp perspective kernel. <a href="classarm__compute_1_1_c_l_warp_perspective_kernel.xhtml#details">More...</a><br /></td></tr>
1082<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1083<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_weights_reshape_kernel.xhtml">CLWeightsReshapeKernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001084<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform reshaping on the weights used by convolution and locally connected layer. <a href="classarm__compute_1_1_c_l_weights_reshape_kernel.xhtml#details">More...</a><br /></td></tr>
1085<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001086<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_width_concatenate2_tensors_kernel.xhtml">CLWidthConcatenate2TensorsKernel</a></td></tr>
1087<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the width concatenate kernel of 2 tensors. <a href="classarm__compute_1_1_c_l_width_concatenate2_tensors_kernel.xhtml#details">More...</a><br /></td></tr>
1088<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1089<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_width_concatenate4_tensors_kernel.xhtml">CLWidthConcatenate4TensorsKernel</a></td></tr>
1090<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the width concatenate kernel of 4 tensors. <a href="classarm__compute_1_1_c_l_width_concatenate4_tensors_kernel.xhtml#details">More...</a><br /></td></tr>
1091<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001092<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_width_concatenate_layer.xhtml">CLWidthConcatenateLayer</a></td></tr>
1093<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute concatenate tensors along x axis. <a href="classarm__compute_1_1_c_l_width_concatenate_layer.xhtml#details">More...</a><br /></td></tr>
1094<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1095<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_width_concatenate_layer_kernel.xhtml">CLWidthConcatenateLayerKernel</a></td></tr>
1096<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the width concatenate kernel. <a href="classarm__compute_1_1_c_l_width_concatenate_layer_kernel.xhtml#details">More...</a><br /></td></tr>
1097<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1098<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_winograd_convolution_layer.xhtml">CLWinogradConvolutionLayer</a></td></tr>
1099<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute Winograd-based convolution on OpenCL. <a href="classarm__compute_1_1_c_l_winograd_convolution_layer.xhtml#details">More...</a><br /></td></tr>
1100<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1101<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_winograd_filter_transform_kernel.xhtml">CLWinogradFilterTransformKernel</a></td></tr>
1102<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the Winograd filter transform kernel. <a href="classarm__compute_1_1_c_l_winograd_filter_transform_kernel.xhtml#details">More...</a><br /></td></tr>
1103<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1104<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_winograd_input_transform.xhtml">CLWinogradInputTransform</a></td></tr>
1105<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute a <a class="el" href="classarm__compute_1_1_c_l_winograd_input_transform_kernel.xhtml">CLWinogradInputTransformKernel</a>. <a href="classarm__compute_1_1_c_l_winograd_input_transform.xhtml#details">More...</a><br /></td></tr>
1106<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1107<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_winograd_input_transform_kernel.xhtml">CLWinogradInputTransformKernel</a></td></tr>
1108<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL kernel to perform Winograd input transform. <a href="classarm__compute_1_1_c_l_winograd_input_transform_kernel.xhtml#details">More...</a><br /></td></tr>
1109<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1110<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_winograd_output_transform_kernel.xhtml">CLWinogradOutputTransformKernel</a></td></tr>
1111<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the Winograd output transform kernel. <a href="classarm__compute_1_1_c_l_winograd_output_transform_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001112<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001113<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_y_o_l_o_layer.xhtml">CLYOLOLayer</a></td></tr>
1114<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_l_y_o_l_o_layer_kernel.xhtml">CLYOLOLayerKernel</a> that performs a partial activation on the input. <a href="classarm__compute_1_1_c_l_y_o_l_o_layer.xhtml#details">More...</a><br /></td></tr>
1115<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1116<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_l_y_o_l_o_layer_kernel.xhtml">CLYOLOLayerKernel</a></td></tr>
1117<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the YOLO layer kernel that performs partial activation. <a href="classarm__compute_1_1_c_l_y_o_l_o_layer_kernel.xhtml#details">More...</a><br /></td></tr>
1118<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1119<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml">ComputeAnchorsInfo</a></td></tr>
1120<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">ComputeAnchors information class. <a href="classarm__compute_1_1_compute_anchors_info.xhtml#details">More...</a><br /></td></tr>
1121<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001122<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001123<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a> of an item. <a href="classarm__compute_1_1_coordinates.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001124<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1125<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_coordinates2_d.xhtml">Coordinates2D</a></td></tr>
1126<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Coordinate type. <a href="structarm__compute_1_1_coordinates2_d.xhtml#details">More...</a><br /></td></tr>
1127<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1128<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_coordinates3_d.xhtml">Coordinates3D</a></td></tr>
1129<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Coordinate type. <a href="structarm__compute_1_1_coordinates3_d.xhtml#details">More...</a><br /></td></tr>
1130<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001131<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_box_with_non_maxima_suppression_limit.xhtml">CPPBoxWithNonMaximaSuppressionLimit</a></td></tr>
1132<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_p_p_box_with_non_maxima_suppression_limit_kernel.xhtml">CPPBoxWithNonMaximaSuppressionLimitKernel</a>. <a href="classarm__compute_1_1_c_p_p_box_with_non_maxima_suppression_limit.xhtml#details">More...</a><br /></td></tr>
1133<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1134<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_box_with_non_maxima_suppression_limit_kernel.xhtml">CPPBoxWithNonMaximaSuppressionLimitKernel</a></td></tr>
1135<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPP kernel to perform computation of BoxWithNonMaximaSuppressionLimit. <a href="classarm__compute_1_1_c_p_p_box_with_non_maxima_suppression_limit_kernel.xhtml#details">More...</a><br /></td></tr>
1136<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001137<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_corner_candidates_kernel.xhtml">CPPCornerCandidatesKernel</a></td></tr>
1138<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPP kernel to perform corner candidates. <a href="classarm__compute_1_1_c_p_p_corner_candidates_kernel.xhtml#details">More...</a><br /></td></tr>
1139<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001140<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_detection_output_layer.xhtml">CPPDetectionOutputLayer</a></td></tr>
1141<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPP Function to generate the detection output based on location and confidence predictions by doing non maximum suppression. <a href="classarm__compute_1_1_c_p_p_detection_output_layer.xhtml#details">More...</a><br /></td></tr>
1142<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001143<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_detection_window_non_maxima_suppression_kernel.xhtml">CPPDetectionWindowNonMaximaSuppressionKernel</a></td></tr>
1144<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPP kernel to perform in-place computation of euclidean distance on IDetectionWindowArray. <a href="classarm__compute_1_1_c_p_p_detection_window_non_maxima_suppression_kernel.xhtml#details">More...</a><br /></td></tr>
1145<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001146<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_flip_weights_kernel.xhtml">CPPFlipWeightsKernel</a></td></tr>
1147<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPP kernel to perform 180 degrees flipping on deconvolution weights. <a href="classarm__compute_1_1_c_p_p_flip_weights_kernel.xhtml#details">More...</a><br /></td></tr>
1148<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001149<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_non_maximum_suppression.xhtml">CPPNonMaximumSuppression</a></td></tr>
1150<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPP Function to perform non maximum suppression on the bounding boxes and scores. <a href="classarm__compute_1_1_c_p_p_non_maximum_suppression.xhtml#details">More...</a><br /></td></tr>
1151<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001152<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_permute.xhtml">CPPPermute</a></td></tr>
1153<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_p_p_permute_kernel.xhtml">CPPPermuteKernel</a>. <a href="classarm__compute_1_1_c_p_p_permute.xhtml#details">More...</a><br /></td></tr>
1154<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1155<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_permute_kernel.xhtml">CPPPermuteKernel</a></td></tr>
1156<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPP kernel to perform tensor permutation. <a href="classarm__compute_1_1_c_p_p_permute_kernel.xhtml#details">More...</a><br /></td></tr>
1157<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1158<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_scheduler.xhtml">CPPScheduler</a></td></tr>
1159<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">C++11 implementation of a pool of threads to automatically split a kernel's execution among several threads. <a href="classarm__compute_1_1_c_p_p_scheduler.xhtml#details">More...</a><br /></td></tr>
1160<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1161<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_sort_euclidean_distance_kernel.xhtml">CPPSortEuclideanDistanceKernel</a></td></tr>
1162<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPP kernel to perform sorting and euclidean distance. <a href="classarm__compute_1_1_c_p_p_sort_euclidean_distance_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001163<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001164<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_top_k_v.xhtml">CPPTopKV</a></td></tr>
1165<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_p_p_top_k_v_kernel.xhtml">CPPTopKVKernel</a>. <a href="classarm__compute_1_1_c_p_p_top_k_v.xhtml#details">More...</a><br /></td></tr>
1166<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1167<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_top_k_v_kernel.xhtml">CPPTopKVKernel</a></td></tr>
1168<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPP kernel to perform tensor TopKV operation. <a href="classarm__compute_1_1_c_p_p_top_k_v_kernel.xhtml#details">More...</a><br /></td></tr>
1169<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001170<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_upsample.xhtml">CPPUpsample</a></td></tr>
1171<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_c_p_p_upsample.xhtml">CPPUpsample</a>. <a href="classarm__compute_1_1_c_p_p_upsample.xhtml#details">More...</a><br /></td></tr>
1172<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1173<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_p_upsample_kernel.xhtml">CPPUpsampleKernel</a></td></tr>
1174<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPP kernel to perform tensor upsample. <a href="classarm__compute_1_1_c_p_p_upsample_kernel.xhtml#details">More...</a><br /></td></tr>
1175<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1176<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_c_p_u_info.xhtml">CPUInfo</a></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001177<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001178<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_depthwise_convolution_reshape_info.xhtml">DepthwiseConvolutionReshapeInfo</a></td></tr>
1179<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1180<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_detection_output_layer_info.xhtml">DetectionOutputLayerInfo</a></td></tr>
1181<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Detection Output layer info. <a href="classarm__compute_1_1_detection_output_layer_info.xhtml#details">More...</a><br /></td></tr>
1182<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001183<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a></td></tr>
1184<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Detection window used for the object detection. <a href="structarm__compute_1_1_detection_window.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001185<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1186<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001187<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_dimensions.xhtml" title="Dimensions with dimensionality.">Dimensions</a> with dimensionality. <a href="classarm__compute_1_1_dimensions.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001188<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1189<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_distribution1_d.xhtml">Distribution1D</a></td></tr>
1190<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the 1D distribution interface. <a href="classarm__compute_1_1_distribution1_d.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001191<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01001192<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1enable__bitwise__ops.xhtml">enable_bitwise_ops</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001193<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disable bitwise operations by default. <a href="structarm__compute_1_1enable__bitwise__ops.xhtml#details">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01001194<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001195<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1enable__bitwise__ops_3_01arm__compute_1_1_g_p_u_target_01_4.xhtml">enable_bitwise_ops&lt; arm_compute::GPUTarget &gt;</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001196<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable bitwise operations on GPUTarget enumerations. <a href="structarm__compute_1_1enable__bitwise__ops_3_01arm__compute_1_1_g_p_u_target_01_4.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001197<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00001198<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_fully_connected_layer_info.xhtml">FullyConnectedLayerInfo</a></td></tr>
1199<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fully connected layer info. <a href="structarm__compute_1_1_fully_connected_layer_info.xhtml#details">More...</a><br /></td></tr>
1200<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001201<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_absolute_difference.xhtml">GCAbsoluteDifference</a></td></tr>
1202<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_g_c_absolute_difference_kernel.xhtml">GCAbsoluteDifferenceKernel</a>. <a href="classarm__compute_1_1_g_c_absolute_difference.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001203<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001204<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_absolute_difference_kernel.xhtml">GCAbsoluteDifferenceKernel</a></td></tr>
1205<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the absolute difference kernel. <a href="classarm__compute_1_1_g_c_absolute_difference_kernel.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001206<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001207<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_activation_layer.xhtml">GCActivationLayer</a></td></tr>
1208<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_g_c_activation_layer_kernel.xhtml">GCActivationLayerKernel</a>. <a href="classarm__compute_1_1_g_c_activation_layer.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001209<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001210<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_activation_layer_kernel.xhtml">GCActivationLayerKernel</a></td></tr>
1211<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the activation layer kernel. <a href="classarm__compute_1_1_g_c_activation_layer_kernel.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001212<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00001213<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_arithmetic_addition.xhtml">GCArithmeticAddition</a></td></tr>
1214<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_g_c_arithmetic_addition_kernel.xhtml">GCArithmeticAdditionKernel</a>. <a href="classarm__compute_1_1_g_c_arithmetic_addition.xhtml#details">More...</a><br /></td></tr>
1215<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1216<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_arithmetic_addition_kernel.xhtml">GCArithmeticAdditionKernel</a></td></tr>
1217<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the arithmetic addition kernel. <a href="classarm__compute_1_1_g_c_arithmetic_addition_kernel.xhtml#details">More...</a><br /></td></tr>
1218<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001219<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_batch_normalization_layer.xhtml">GCBatchNormalizationLayer</a></td></tr>
1220<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_g_c_batch_normalization_layer_kernel.xhtml">GCBatchNormalizationLayerKernel</a> and simulate a batch normalization layer. <a href="classarm__compute_1_1_g_c_batch_normalization_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001221<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001222<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_batch_normalization_layer_kernel.xhtml">GCBatchNormalizationLayerKernel</a></td></tr>
1223<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the BatchNormalization layer kernel. <a href="classarm__compute_1_1_g_c_batch_normalization_layer_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001224<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001225<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_buffer_allocator.xhtml">GCBufferAllocator</a></td></tr>
1226<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default GLES buffer allocator implementation. <a href="classarm__compute_1_1_g_c_buffer_allocator.xhtml#details">More...</a><br /></td></tr>
1227<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001228<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_buffer_memory_region.xhtml">GCBufferMemoryRegion</a></td></tr>
1229<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GLES buffer memory region implementation. <a href="classarm__compute_1_1_g_c_buffer_memory_region.xhtml#details">More...</a><br /></td></tr>
1230<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001231<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_col2_im_kernel.xhtml">GCCol2ImKernel</a></td></tr>
1232<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the col2im reshaping kernel. <a href="classarm__compute_1_1_g_c_col2_im_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001233<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00001234<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_convolution_layer.xhtml">GCConvolutionLayer</a></td></tr>
1235<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute the convolution layer. <a href="classarm__compute_1_1_g_c_convolution_layer.xhtml#details">More...</a><br /></td></tr>
1236<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1237<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_convolution_layer_reshape_weights.xhtml">GCConvolutionLayerReshapeWeights</a></td></tr>
1238<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to reshape and transpose the weights. <a href="classarm__compute_1_1_g_c_convolution_layer_reshape_weights.xhtml#details">More...</a><br /></td></tr>
1239<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001240<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_depth_concatenate_layer.xhtml">GCDepthConcatenateLayer</a></td></tr>
1241<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute concatenate tensors along z axis. <a href="classarm__compute_1_1_g_c_depth_concatenate_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001242<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001243<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_depth_concatenate_layer_kernel.xhtml">GCDepthConcatenateLayerKernel</a></td></tr>
1244<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the depth concatenate kernel. <a href="classarm__compute_1_1_g_c_depth_concatenate_layer_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001245<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00001246<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_depthwise_convolution_layer3x3.xhtml">GCDepthwiseConvolutionLayer3x3</a></td></tr>
1247<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute a depthwise convolution for kernel size 3x3xC. <a href="classarm__compute_1_1_g_c_depthwise_convolution_layer3x3.xhtml#details">More...</a><br /></td></tr>
1248<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1249<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_depthwise_convolution_layer3x3_kernel.xhtml">GCDepthwiseConvolutionLayer3x3Kernel</a></td></tr>
1250<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run a 3x3 depthwise convolution on a tensor. <a href="classarm__compute_1_1_g_c_depthwise_convolution_layer3x3_kernel.xhtml#details">More...</a><br /></td></tr>
1251<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001252<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_direct_convolution_layer.xhtml">GCDirectConvolutionLayer</a></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00001253<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute direct convolution function. <a href="classarm__compute_1_1_g_c_direct_convolution_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001254<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001255<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_direct_convolution_layer_kernel.xhtml">GCDirectConvolutionLayerKernel</a></td></tr>
1256<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the direct convolution kernel. <a href="classarm__compute_1_1_g_c_direct_convolution_layer_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001257<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001258<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_dropout_layer.xhtml">GCDropoutLayer</a></td></tr>
1259<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to do dropout op. <a href="classarm__compute_1_1_g_c_dropout_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001260<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001261<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_dropout_layer_kernel.xhtml">GCDropoutLayerKernel</a></td></tr>
1262<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the dropout layer kernel. <a href="classarm__compute_1_1_g_c_dropout_layer_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbiera4376382017-04-12 15:12:46 +01001263<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001264<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_fill_border.xhtml">GCFillBorder</a></td></tr>
1265<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_g_c_fill_border_kernel.xhtml">GCFillBorderKernel</a>. <a href="classarm__compute_1_1_g_c_fill_border.xhtml#details">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01001266<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001267<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_fill_border_kernel.xhtml">GCFillBorderKernel</a></td></tr>
1268<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for filling the border of a kernel. <a href="classarm__compute_1_1_g_c_fill_border_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001269<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001270<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_fully_connected_layer.xhtml">GCFullyConnectedLayer</a></td></tr>
1271<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute a Fully Connected layer on OpenGL ES. <a href="classarm__compute_1_1_g_c_fully_connected_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001272<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001273<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_fully_connected_layer_reshape_weights.xhtml">GCFullyConnectedLayerReshapeWeights</a></td></tr>
1274<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to reshape the weights of Fully Connected layer with OpenGL ES. <a href="classarm__compute_1_1_g_c_fully_connected_layer_reshape_weights.xhtml#details">More...</a><br /></td></tr>
Kaizenbf8b01d2017-10-12 14:26:51 +01001275<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001276<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_g_e_m_m.xhtml">GCGEMM</a></td></tr>
1277<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute GEMM on OpenGLES Compute. <a href="classarm__compute_1_1_g_c_g_e_m_m.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001278<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001279<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_g_e_m_m_interleave4x4.xhtml">GCGEMMInterleave4x4</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001280<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_g_c_g_e_m_m_interleave4x4_kernel.xhtml" title="OpenGL ES kernel which interleaves the elements of a matrix A in chunk of 4x4.">GCGEMMInterleave4x4Kernel</a>. <a href="classarm__compute_1_1_g_c_g_e_m_m_interleave4x4.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001281<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001282<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_g_e_m_m_interleave4x4_kernel.xhtml">GCGEMMInterleave4x4Kernel</a></td></tr>
1283<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenGL ES kernel which interleaves the elements of a matrix A in chunk of 4x4. <a href="classarm__compute_1_1_g_c_g_e_m_m_interleave4x4_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001284<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001285<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_g_e_m_m_matrix_accumulate_biases_kernel.xhtml">GCGEMMMatrixAccumulateBiasesKernel</a></td></tr>
1286<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to add a bias to each row of the input tensor. <a href="classarm__compute_1_1_g_c_g_e_m_m_matrix_accumulate_biases_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001287<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001288<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_g_e_m_m_matrix_addition_kernel.xhtml">GCGEMMMatrixAdditionKernel</a></td></tr>
1289<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenGL ES kernel to perform the in-place matrix addition between 2 matrices, taking into account that the second matrix might be weighted by a scalar value beta. <a href="classarm__compute_1_1_g_c_g_e_m_m_matrix_addition_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001290<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001291<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_g_e_m_m_matrix_multiply_kernel.xhtml">GCGEMMMatrixMultiplyKernel</a></td></tr>
1292<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GLES Compute kernel to multiply two input matrices "A" and "B" or to multiply a vector "A" by a matrix "B". <a href="classarm__compute_1_1_g_c_g_e_m_m_matrix_multiply_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001293<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001294<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_g_e_m_m_transpose1x_w.xhtml">GCGEMMTranspose1xW</a></td></tr>
1295<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_g_c_g_e_m_m_transpose1x_w_kernel.xhtml" title="OpenGLES kernel which transposes the elements of a matrix in chunks of 1xW, where W is equal to (16 /...">GCGEMMTranspose1xWKernel</a>. <a href="classarm__compute_1_1_g_c_g_e_m_m_transpose1x_w.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001296<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001297<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_g_e_m_m_transpose1x_w_kernel.xhtml">GCGEMMTranspose1xWKernel</a></td></tr>
1298<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenGLES kernel which transposes the elements of a matrix in chunks of 1xW, where W is equal to (16 / element size of the tensor) <a href="classarm__compute_1_1_g_c_g_e_m_m_transpose1x_w_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001299<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001300<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_im2_col_kernel.xhtml">GCIm2ColKernel</a></td></tr>
1301<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the im2col reshape kernel. <a href="classarm__compute_1_1_g_c_im2_col_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001302<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001303<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml">GCKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001304<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml" title="GCKernel class.">GCKernel</a> class. <a href="classarm__compute_1_1_g_c_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001305<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001306<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel_library.xhtml">GCKernelLibrary</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001307<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_g_c_kernel_library.xhtml" title="GCKernelLibrary class.">GCKernelLibrary</a> class. <a href="classarm__compute_1_1_g_c_kernel_library.xhtml#details">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01001308<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001309<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_logits1_d_max_kernel.xhtml">GCLogits1DMaxKernel</a></td></tr>
1310<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the identifying the max value of 1D Logits. <a href="classarm__compute_1_1_g_c_logits1_d_max_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001311<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001312<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_logits1_d_norm_kernel.xhtml">GCLogits1DNormKernel</a></td></tr>
1313<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for calculating the final step of the Softmax Layer where each logit value is multiplied by the inverse of the sum of the logits. <a href="classarm__compute_1_1_g_c_logits1_d_norm_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001314<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001315<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_logits1_d_shift_exp_sum_kernel.xhtml">GCLogits1DShiftExpSumKernel</a></td></tr>
1316<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for shifting the logits values around the max value and exponentiating the result. <a href="classarm__compute_1_1_g_c_logits1_d_shift_exp_sum_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001317<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001318<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_memory.xhtml">GCMemory</a></td></tr>
1319<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GLES implementation of memory object. <a href="classarm__compute_1_1_g_c_memory.xhtml#details">More...</a><br /></td></tr>
1320<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001321<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_normalization_layer.xhtml">GCNormalizationLayer</a></td></tr>
1322<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute a normalization layer. <a href="classarm__compute_1_1_g_c_normalization_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001323<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001324<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_normalization_layer_kernel.xhtml">GCNormalizationLayerKernel</a></td></tr>
1325<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the normalization layer kernel. <a href="classarm__compute_1_1_g_c_normalization_layer_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001326<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00001327<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_normalize_planar_y_u_v_layer.xhtml">GCNormalizePlanarYUVLayer</a></td></tr>
1328<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_g_c_normalize_planar_y_u_v_layer_kernel.xhtml">GCNormalizePlanarYUVLayerKernel</a>. <a href="classarm__compute_1_1_g_c_normalize_planar_y_u_v_layer.xhtml#details">More...</a><br /></td></tr>
1329<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1330<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_normalize_planar_y_u_v_layer_kernel.xhtml">GCNormalizePlanarYUVLayerKernel</a></td></tr>
1331<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the NormalizePlanarYUV layer kernel. <a href="classarm__compute_1_1_g_c_normalize_planar_y_u_v_layer_kernel.xhtml#details">More...</a><br /></td></tr>
1332<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001333<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_pixel_wise_multiplication.xhtml">GCPixelWiseMultiplication</a></td></tr>
1334<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_g_c_pixel_wise_multiplication_kernel.xhtml">GCPixelWiseMultiplicationKernel</a>. <a href="classarm__compute_1_1_g_c_pixel_wise_multiplication.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001335<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001336<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_pixel_wise_multiplication_kernel.xhtml">GCPixelWiseMultiplicationKernel</a></td></tr>
1337<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the pixelwise multiplication kernel. <a href="classarm__compute_1_1_g_c_pixel_wise_multiplication_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001338<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001339<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_pooling_layer.xhtml">GCPoolingLayer</a></td></tr>
1340<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to simulate a pooling layer with the specified pooling operation. <a href="classarm__compute_1_1_g_c_pooling_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001341<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001342<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_pooling_layer_kernel.xhtml">GCPoolingLayerKernel</a></td></tr>
1343<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the pooling layer kernel. <a href="classarm__compute_1_1_g_c_pooling_layer_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001344<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001345<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_program.xhtml">GCProgram</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001346<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_g_c_program.xhtml" title="GCProgram class.">GCProgram</a> class. <a href="classarm__compute_1_1_g_c_program.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001347<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00001348<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_scale.xhtml">GCScale</a></td></tr>
1349<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_g_c_scale_kernel.xhtml">GCScaleKernel</a>. <a href="classarm__compute_1_1_g_c_scale.xhtml#details">More...</a><br /></td></tr>
1350<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1351<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_scale_kernel.xhtml">GCScaleKernel</a></td></tr>
1352<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the scale kernel. <a href="classarm__compute_1_1_g_c_scale_kernel.xhtml#details">More...</a><br /></td></tr>
1353<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001354<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_scheduler.xhtml">GCScheduler</a></td></tr>
1355<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides global access to a OpenGL ES context and command queue. <a href="classarm__compute_1_1_g_c_scheduler.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001356<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001357<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_softmax_layer.xhtml">GCSoftmaxLayer</a></td></tr>
1358<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute a SoftmaxLayer. <a href="classarm__compute_1_1_g_c_softmax_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001359<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001360<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_tensor.xhtml">GCTensor</a></td></tr>
1361<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenGL ES tensor. <a href="classarm__compute_1_1_g_c_tensor.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001362<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001363<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_tensor_allocator.xhtml">GCTensorAllocator</a></td></tr>
1364<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of a GLES memory tensor allocator. <a href="classarm__compute_1_1_g_c_tensor_allocator.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001365<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00001366<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_tensor_shift.xhtml">GCTensorShift</a></td></tr>
1367<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute shift function for tensor. <a href="classarm__compute_1_1_g_c_tensor_shift.xhtml#details">More...</a><br /></td></tr>
1368<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1369<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_tensor_shift_kernel.xhtml">GCTensorShiftKernel</a></td></tr>
1370<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to shift valid data on a tensor. <a href="classarm__compute_1_1_g_c_tensor_shift_kernel.xhtml#details">More...</a><br /></td></tr>
1371<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001372<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_transpose.xhtml">GCTranspose</a></td></tr>
1373<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to transpose a matrix on OpenGL ES. <a href="classarm__compute_1_1_g_c_transpose.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001374<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001375<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_transpose_kernel.xhtml">GCTransposeKernel</a></td></tr>
1376<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenGL ES kernel which transposes the elements of a matrix. <a href="classarm__compute_1_1_g_c_transpose_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001377<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00001378<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_weights_reshape_kernel.xhtml">GCWeightsReshapeKernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001379<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GLES Compute kernel to perform reshaping on the weights used by convolution and locally connected layer. <a href="classarm__compute_1_1_g_c_weights_reshape_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00001380<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001381<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_e_m_m_info.xhtml">GEMMInfo</a></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00001382<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GEMM information class. <a href="classarm__compute_1_1_g_e_m_m_info.xhtml#details">More...</a><br /></td></tr>
1383<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001384<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_g_e_m_m_l_h_s_matrix_info.xhtml">GEMMLHSMatrixInfo</a></td></tr>
1385<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GEMM LHS (Left Hand Side) matrix information. <a href="structarm__compute_1_1_g_e_m_m_l_h_s_matrix_info.xhtml#details">More...</a><br /></td></tr>
1386<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001387<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_g_e_m_m_lowp_output_stage_info.xhtml">GEMMLowpOutputStageInfo</a></td></tr>
1388<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GEMMLowp output stage info. <a href="structarm__compute_1_1_g_e_m_m_lowp_output_stage_info.xhtml#details">More...</a><br /></td></tr>
1389<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00001390<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_e_m_m_reshape_info.xhtml">GEMMReshapeInfo</a></td></tr>
1391<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GEMM reshape information class. <a href="classarm__compute_1_1_g_e_m_m_reshape_info.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001392<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001393<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_g_e_m_m_r_h_s_matrix_info.xhtml">GEMMRHSMatrixInfo</a></td></tr>
1394<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GEMM RHS (Right Hand Side) matrix information. <a href="structarm__compute_1_1_g_e_m_m_r_h_s_matrix_info.xhtml#details">More...</a><br /></td></tr>
1395<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001396<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml">GenerateProposalsInfo</a></td></tr>
1397<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate Proposals Information class. <a href="classarm__compute_1_1_generate_proposals_info.xhtml#details">More...</a><br /></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001398<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001399<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_h_o_g.xhtml">HOG</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001400<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPU implementation of <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> data-object. <a href="classarm__compute_1_1_h_o_g.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001401<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1402<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml">HOGInfo</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001403<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Store the <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a>'s metadata. <a href="classarm__compute_1_1_h_o_g_info.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001404<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1405<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_access_window.xhtml">IAccessWindow</a></td></tr>
1406<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface describing methods to update access window and padding based on kernel parameters. <a href="classarm__compute_1_1_i_access_window.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001407<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1408<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_allocator.xhtml">IAllocator</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001409<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_allocator.xhtml" title="Default malloc allocator implementation.">Allocator</a> interface. <a href="classarm__compute_1_1_i_allocator.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001410<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1411<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001412<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of type T. <a href="classarm__compute_1_1_i_array.xhtml#details">More...</a><br /></td></tr>
1413<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1414<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_buffer_manager.xhtml">IBufferManager</a></td></tr>
1415<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Buffer manager used when reshaping B on the fly. <a href="classarm__compute_1_1_i_buffer_manager.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001416<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1417<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001418<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a>. <a href="classarm__compute_1_1_i_c_l_array.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001419<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001420<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_depthwise_convolution_layer3x3_kernel.xhtml">ICLDepthwiseConvolutionLayer3x3Kernel</a></td></tr>
1421<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run a 3x3 depthwise convolution on a tensor. <a href="classarm__compute_1_1_i_c_l_depthwise_convolution_layer3x3_kernel.xhtml#details">More...</a><br /></td></tr>
1422<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001423<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml">ICLDistribution1D</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001424<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml" title="ICLDistribution1D interface class.">ICLDistribution1D</a> interface class. <a href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001425<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1426<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_g_e_m_m_lowp_reduction_kernel.xhtml">ICLGEMMLowpReductionKernel</a></td></tr>
1427<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface for all OpenCL reduction kernels. <a href="classarm__compute_1_1_i_c_l_g_e_m_m_lowp_reduction_kernel.xhtml#details">More...</a><br /></td></tr>
1428<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001429<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_g_e_m_m_reshaped_configuration.xhtml">ICLGEMMReshapedConfiguration</a></td></tr>
1430<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic interface for the GEMM selection. <a href="classarm__compute_1_1_i_c_l_g_e_m_m_reshaped_configuration.xhtml#details">More...</a><br /></td></tr>
1431<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001432<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_h_o_g.xhtml">ICLHOG</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001433<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> data-object. <a href="classarm__compute_1_1_i_c_l_h_o_g.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001434<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1435<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml">ICLKernel</a></td></tr>
1436<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface for all the OpenCL kernels. <a href="classarm__compute_1_1_i_c_l_kernel.xhtml#details">More...</a><br /></td></tr>
1437<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1438<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_lut.xhtml">ICLLut</a></td></tr>
1439<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL LUT. <a href="classarm__compute_1_1_i_c_l_lut.xhtml#details">More...</a><br /></td></tr>
1440<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001441<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a></td></tr>
1442<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL memory region interface. <a href="classarm__compute_1_1_i_c_l_memory_region.xhtml#details">More...</a><br /></td></tr>
1443<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001444<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_multi_h_o_g.xhtml">ICLMultiHOG</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001445<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for storing multiple <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> data-objects. <a href="classarm__compute_1_1_i_c_l_multi_h_o_g.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001446<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1447<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_multi_image.xhtml">ICLMultiImage</a></td></tr>
1448<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL multi-planar images. <a href="classarm__compute_1_1_i_c_l_multi_image.xhtml#details">More...</a><br /></td></tr>
1449<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1450<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_simple2_d_kernel.xhtml">ICLSimple2DKernel</a></td></tr>
1451<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for simple OpenCL kernels having 1 tensor input and 1 tensor output. <a href="classarm__compute_1_1_i_c_l_simple2_d_kernel.xhtml#details">More...</a><br /></td></tr>
1452<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1453<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_simple3_d_kernel.xhtml">ICLSimple3DKernel</a></td></tr>
1454<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for simple OpenCL kernels having 1 tensor input and 1 tensor output. <a href="classarm__compute_1_1_i_c_l_simple3_d_kernel.xhtml#details">More...</a><br /></td></tr>
1455<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1456<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_simple_function.xhtml">ICLSimpleFunction</a></td></tr>
1457<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic interface for functions which have a single OpenCL kernel. <a href="classarm__compute_1_1_i_c_l_simple_function.xhtml#details">More...</a><br /></td></tr>
1458<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1459<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml">ICLSimpleKernel</a></td></tr>
1460<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for simple OpenCL kernels having 1 tensor input and 1 tensor output. <a href="classarm__compute_1_1_i_c_l_simple_kernel.xhtml#details">More...</a><br /></td></tr>
1461<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001462<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_s_v_m_memory_region.xhtml">ICLSVMMemoryRegion</a></td></tr>
1463<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL SVM memory region interface. <a href="classarm__compute_1_1_i_c_l_s_v_m_memory_region.xhtml#details">More...</a><br /></td></tr>
1464<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001465<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a></td></tr>
1466<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL tensor. <a href="classarm__compute_1_1_i_c_l_tensor.xhtml#details">More...</a><br /></td></tr>
1467<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1468<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_tuner.xhtml">ICLTuner</a></td></tr>
1469<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic interface for tuning the OpenCL kernels. <a href="classarm__compute_1_1_i_c_l_tuner.xhtml#details">More...</a><br /></td></tr>
1470<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1471<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_p_p_kernel.xhtml">ICPPKernel</a></td></tr>
1472<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface for all kernels implemented in C++. <a href="classarm__compute_1_1_i_c_p_p_kernel.xhtml#details">More...</a><br /></td></tr>
1473<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1474<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_p_p_simple_function.xhtml">ICPPSimpleFunction</a></td></tr>
1475<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic interface for functions which have a single CPP kernel. <a href="classarm__compute_1_1_i_c_p_p_simple_function.xhtml#details">More...</a><br /></td></tr>
1476<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1477<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_p_p_simple_kernel.xhtml">ICPPSimpleKernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001478<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for simple C++ kernels having 1 tensor input and 1 tensor output. <a href="classarm__compute_1_1_i_c_p_p_simple_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001479<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1480<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_distribution.xhtml">IDistribution</a></td></tr>
1481<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for distribution objects. <a href="classarm__compute_1_1_i_distribution.xhtml#details">More...</a><br /></td></tr>
1482<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1483<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml">IDistribution1D</a></td></tr>
1484<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">1D Distribution interface <a href="classarm__compute_1_1_i_distribution1_d.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001485<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1486<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_function.xhtml">IFunction</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001487<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Base class for all functions. <a href="classarm__compute_1_1_i_function.xhtml#details">More...</a><br /></td></tr>
1488<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1489<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_g_c_kernel.xhtml">IGCKernel</a></td></tr>
1490<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface for all the GLES kernels. <a href="classarm__compute_1_1_i_g_c_kernel.xhtml#details">More...</a><br /></td></tr>
1491<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001492<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_g_c_memory_region.xhtml">IGCMemoryRegion</a></td></tr>
1493<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GLES memory region interface. <a href="classarm__compute_1_1_i_g_c_memory_region.xhtml#details">More...</a><br /></td></tr>
1494<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001495<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_g_c_simple2_d_kernel.xhtml">IGCSimple2DKernel</a></td></tr>
1496<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for simple OpenGL ES kernels having 1 tensor input and 1 tensor output. <a href="classarm__compute_1_1_i_g_c_simple2_d_kernel.xhtml#details">More...</a><br /></td></tr>
1497<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1498<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_g_c_simple3_d_kernel.xhtml">IGCSimple3DKernel</a></td></tr>
1499<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for simple GLES kernels having 1 tensor input and 1 tensor output. <a href="classarm__compute_1_1_i_g_c_simple3_d_kernel.xhtml#details">More...</a><br /></td></tr>
1500<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1501<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_g_c_simple_function.xhtml">IGCSimpleFunction</a></td></tr>
1502<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic interface for functions which have a single OpenGL ES kernel. <a href="classarm__compute_1_1_i_g_c_simple_function.xhtml#details">More...</a><br /></td></tr>
1503<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1504<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_g_c_simple_kernel.xhtml">IGCSimpleKernel</a></td></tr>
1505<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for simple OpenGL ES kernels having 1 tensor input and 1 tensor output. <a href="classarm__compute_1_1_i_g_c_simple_kernel.xhtml#details">More...</a><br /></td></tr>
1506<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1507<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_g_c_tensor.xhtml">IGCTensor</a></td></tr>
1508<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for GLES Compute tensor. <a href="classarm__compute_1_1_i_g_c_tensor.xhtml#details">More...</a><br /></td></tr>
1509<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1510<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_h_o_g.xhtml">IHOG</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001511<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> data-object. <a href="classarm__compute_1_1_i_h_o_g.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001512<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1513<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_kernel.xhtml">IKernel</a></td></tr>
1514<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common information for all the kernels. <a href="classarm__compute_1_1_i_kernel.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001515<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1516<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_lifetime_manager.xhtml">ILifetimeManager</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001517<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for managing the lifetime of objects. <a href="classarm__compute_1_1_i_lifetime_manager.xhtml#details">More...</a><br /></td></tr>
1518<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1519<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_lut.xhtml">ILut</a></td></tr>
1520<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Lookup Table object interface. <a href="classarm__compute_1_1_i_lut.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001521<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1522<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_lut_allocator.xhtml">ILutAllocator</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001523<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic interface to allocate LUTs'. <a href="classarm__compute_1_1_i_lut_allocator.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001524<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001525<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_memory.xhtml">IMemory</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001526<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object.">Memory</a> interface. <a href="classarm__compute_1_1_i_memory.xhtml#details">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001527<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001528<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_memory_group.xhtml">IMemoryGroup</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001529<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object.">Memory</a> group interface. <a href="classarm__compute_1_1_i_memory_group.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001530<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1531<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_memory_manager.xhtml">IMemoryManager</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001532<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object.">Memory</a> manager interface to handle allocations of backing memory. <a href="classarm__compute_1_1_i_memory_manager.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001533<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1534<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_memory_pool.xhtml">IMemoryPool</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001535<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object.">Memory</a> Pool Inteface. <a href="classarm__compute_1_1_i_memory_pool.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001536<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001537<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_memory_region.xhtml">IMemoryRegion</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001538<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object.">Memory</a> region interface. <a href="classarm__compute_1_1_i_memory_region.xhtml#details">More...</a><br /></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001539<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001540<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml">IMultiHOG</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001541<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for storing multiple <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> data-objects. <a href="classarm__compute_1_1_i_multi_h_o_g.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001542<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001543<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_multi_image.xhtml">IMultiImage</a></td></tr>
1544<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for multi-planar images. <a href="classarm__compute_1_1_i_multi_image.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001545<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001546<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_n_e_g_e_m_m_lowp_reduction_kernel.xhtml">INEGEMMLowpReductionKernel</a></td></tr>
1547<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface for all NEON reduction kernels. <a href="classarm__compute_1_1_i_n_e_g_e_m_m_lowp_reduction_kernel.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001548<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001549<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_n_e_harris_score_kernel.xhtml">INEHarrisScoreKernel</a></td></tr>
1550<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface for all Harris Score kernels. <a href="classarm__compute_1_1_i_n_e_harris_score_kernel.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001551<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1552<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_n_e_simple_function.xhtml">INESimpleFunction</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001553<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic interface for functions which have a single NEON kernel. <a href="classarm__compute_1_1_i_n_e_simple_function.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001554<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001555<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_n_e_simple_function_no_border.xhtml">INESimpleFunctionNoBorder</a></td></tr>
1556<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic interface for functions which have a single NEON kernel and no border. <a href="classarm__compute_1_1_i_n_e_simple_function_no_border.xhtml#details">More...</a><br /></td></tr>
1557<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001558<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_n_e_warp_kernel.xhtml">INEWarpKernel</a></td></tr>
1559<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface for warp affine and warp perspective. <a href="classarm__compute_1_1_i_n_e_warp_kernel.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001560<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00001561<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_n_e_winograd_layer_transform_input_kernel.xhtml">INEWinogradLayerTransformInputKernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001562<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the NEON kernel to perform Winograd input transform. <a href="classarm__compute_1_1_i_n_e_winograd_layer_transform_input_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00001563<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1564<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_n_e_winograd_layer_transform_output_kernel.xhtml">INEWinogradLayerTransformOutputKernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001565<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the NEON kernel to perform Winograd output transform. <a href="classarm__compute_1_1_i_n_e_winograd_layer_transform_output_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00001566<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1567<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_n_e_winograd_layer_transform_weights_kernel.xhtml">INEWinogradLayerTransformWeightsKernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001568<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the NEON kernel to perform Winograd weights transform. <a href="classarm__compute_1_1_i_n_e_winograd_layer_transform_weights_kernel.xhtml#details">More...</a><br /></td></tr>
1569<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1570<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_internal_key_point.xhtml">InternalKeyPoint</a></td></tr>
1571<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal keypoint class for Lucas-Kanade Optical Flow. <a href="structarm__compute_1_1_internal_key_point.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00001572<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001573<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_i_o_format_info.xhtml">IOFormatInfo</a></td></tr>
1574<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">IO formatting information class. <a href="structarm__compute_1_1_i_o_format_info.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001575<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001576<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_pool_manager.xhtml">IPoolManager</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001577<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object.">Memory</a> pool manager interface. <a href="classarm__compute_1_1_i_pool_manager.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001578<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001579<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_pyramid.xhtml">IPyramid</a></td></tr>
1580<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for pyramid data-object. <a href="classarm__compute_1_1_i_pyramid.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001581<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001582<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_scheduler.xhtml">IScheduler</a></td></tr>
1583<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_scheduler.xhtml" title="Configurable scheduler which supports multiple multithreading APIs and choosing between different sch...">Scheduler</a> interface to run kernels. <a href="classarm__compute_1_1_i_scheduler.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001584<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001585<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_simple_lifetime_manager.xhtml">ISimpleLifetimeManager</a></td></tr>
1586<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract class of the simple lifetime manager interface. <a href="classarm__compute_1_1_i_simple_lifetime_manager.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001587<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001588<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a></td></tr>
1589<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for NEON tensor. <a href="classarm__compute_1_1_i_tensor.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001590<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001591<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_tensor_allocator.xhtml">ITensorAllocator</a></td></tr>
1592<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to allocate tensors. <a href="classarm__compute_1_1_i_tensor_allocator.xhtml#details">More...</a><br /></td></tr>
1593<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1594<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a></td></tr>
1595<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Store the tensor's metadata. <a href="classarm__compute_1_1_i_tensor_info.xhtml#details">More...</a><br /></td></tr>
1596<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1597<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_iterator.xhtml">Iterator</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001598<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_iterator.xhtml" title="Iterator updated by execute_window_loop for each window element.">Iterator</a> updated by <a class="el" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a> for each window element. <a href="classarm__compute_1_1_iterator.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001599<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1600<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_kernel.xhtml">Kernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001601<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> class. <a href="classarm__compute_1_1_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001602<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1603<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_key_point.xhtml">KeyPoint</a></td></tr>
1604<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="struct_keypoint.xhtml">Keypoint</a> type. <a href="structarm__compute_1_1_key_point.xhtml#details">More...</a><br /></td></tr>
1605<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001606<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_l_s_t_m_params.xhtml">LSTMParams</a></td></tr>
1607<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001608<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_lut.xhtml">Lut</a></td></tr>
1609<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the LUT interface. <a href="classarm__compute_1_1_lut.xhtml#details">More...</a><br /></td></tr>
1610<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1611<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_lut_allocator.xhtml">LutAllocator</a></td></tr>
1612<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of a CPU memory LUT allocator. <a href="classarm__compute_1_1_lut_allocator.xhtml#details">More...</a><br /></td></tr>
1613<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001614<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_m_e_m_info.xhtml">MEMInfo</a></td></tr>
1615<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001616<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_memory.xhtml">Memory</a></td></tr>
1617<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPU implementation of memory object. <a href="classarm__compute_1_1_memory.xhtml#details">More...</a><br /></td></tr>
1618<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1619<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_memory_group_base.xhtml">MemoryGroupBase</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001620<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object.">Memory</a> group. <a href="classarm__compute_1_1_memory_group_base.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001621<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1622<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_memory_manager_on_demand.xhtml">MemoryManagerOnDemand</a></td></tr>
1623<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">On-demand memory manager. <a href="classarm__compute_1_1_memory_manager_on_demand.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001624<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001625<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_memory_region.xhtml">MemoryRegion</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001626<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object.">Memory</a> region CPU implementation. <a href="classarm__compute_1_1_memory_region.xhtml#details">More...</a><br /></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001627<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001628<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_min_max_location_values.xhtml">MinMaxLocationValues</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001629<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Min and max values and locations. <a href="structarm__compute_1_1_min_max_location_values.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01001630<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001631<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_multi_h_o_g.xhtml">MultiHOG</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001632<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPU implementation of multi <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> data-object. <a href="classarm__compute_1_1_multi_h_o_g.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001633<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1634<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_multi_image.xhtml">MultiImage</a></td></tr>
1635<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the multi-planar image interface. <a href="classarm__compute_1_1_multi_image.xhtml#details">More...</a><br /></td></tr>
1636<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1637<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_multi_image_info.xhtml">MultiImageInfo</a></td></tr>
1638<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Store the multi-planar image's metadata. <a href="classarm__compute_1_1_multi_image_info.xhtml#details">More...</a><br /></td></tr>
1639<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1640<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_absolute_difference.xhtml">NEAbsoluteDifference</a></td></tr>
1641<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_absolute_difference_kernel.xhtml">NEAbsoluteDifferenceKernel</a>. <a href="classarm__compute_1_1_n_e_absolute_difference.xhtml#details">More...</a><br /></td></tr>
1642<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1643<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_absolute_difference_kernel.xhtml">NEAbsoluteDifferenceKernel</a></td></tr>
1644<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the absolute difference kernel. <a href="classarm__compute_1_1_n_e_absolute_difference_kernel.xhtml#details">More...</a><br /></td></tr>
1645<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1646<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_accumulate.xhtml">NEAccumulate</a></td></tr>
1647<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_accumulate_kernel.xhtml">NEAccumulateKernel</a>. <a href="classarm__compute_1_1_n_e_accumulate.xhtml#details">More...</a><br /></td></tr>
1648<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1649<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_accumulate_kernel.xhtml">NEAccumulateKernel</a></td></tr>
1650<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the accumulate kernel. <a href="classarm__compute_1_1_n_e_accumulate_kernel.xhtml#details">More...</a><br /></td></tr>
1651<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1652<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_accumulate_squared.xhtml">NEAccumulateSquared</a></td></tr>
1653<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_accumulate_squared_kernel.xhtml">NEAccumulateSquaredKernel</a>. <a href="classarm__compute_1_1_n_e_accumulate_squared.xhtml#details">More...</a><br /></td></tr>
1654<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1655<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_accumulate_squared_kernel.xhtml">NEAccumulateSquaredKernel</a></td></tr>
1656<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the accumulate squared kernel. <a href="classarm__compute_1_1_n_e_accumulate_squared_kernel.xhtml#details">More...</a><br /></td></tr>
1657<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1658<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_accumulate_weighted.xhtml">NEAccumulateWeighted</a></td></tr>
1659<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_accumulate_weighted_kernel.xhtml">NEAccumulateWeightedKernel</a>. <a href="classarm__compute_1_1_n_e_accumulate_weighted.xhtml#details">More...</a><br /></td></tr>
1660<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1661<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_accumulate_weighted_kernel.xhtml">NEAccumulateWeightedKernel</a></td></tr>
1662<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the accumulate weighted kernel. <a href="classarm__compute_1_1_n_e_accumulate_weighted_kernel.xhtml#details">More...</a><br /></td></tr>
1663<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1664<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_activation_layer.xhtml">NEActivationLayer</a></td></tr>
1665<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_activation_layer_kernel.xhtml">NEActivationLayerKernel</a>. <a href="classarm__compute_1_1_n_e_activation_layer.xhtml#details">More...</a><br /></td></tr>
1666<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1667<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_activation_layer_kernel.xhtml">NEActivationLayerKernel</a></td></tr>
1668<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the activation layer kernel. <a href="classarm__compute_1_1_n_e_activation_layer_kernel.xhtml#details">More...</a><br /></td></tr>
1669<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001670<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_arg_min_max_layer.xhtml">NEArgMinMaxLayer</a></td></tr>
1671<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to calculate the index of the minimum or maximum values in a tensor based on an axis. <a href="classarm__compute_1_1_n_e_arg_min_max_layer.xhtml#details">More...</a><br /></td></tr>
1672<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001673<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_arithmetic_addition.xhtml">NEArithmeticAddition</a></td></tr>
1674<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_arithmetic_addition_kernel.xhtml">NEArithmeticAdditionKernel</a>. <a href="classarm__compute_1_1_n_e_arithmetic_addition.xhtml#details">More...</a><br /></td></tr>
1675<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1676<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_arithmetic_addition_kernel.xhtml">NEArithmeticAdditionKernel</a></td></tr>
1677<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform addition between two tensors. <a href="classarm__compute_1_1_n_e_arithmetic_addition_kernel.xhtml#details">More...</a><br /></td></tr>
1678<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001679<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_arithmetic_operation_kernel.xhtml">NEArithmeticOperationKernel</a></td></tr>
1680<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001681<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_arithmetic_subtraction.xhtml">NEArithmeticSubtraction</a></td></tr>
1682<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_arithmetic_subtraction_kernel.xhtml">NEArithmeticSubtractionKernel</a>. <a href="classarm__compute_1_1_n_e_arithmetic_subtraction.xhtml#details">More...</a><br /></td></tr>
1683<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1684<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_arithmetic_subtraction_kernel.xhtml">NEArithmeticSubtractionKernel</a></td></tr>
1685<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform subtraction between two tensors. <a href="classarm__compute_1_1_n_e_arithmetic_subtraction_kernel.xhtml#details">More...</a><br /></td></tr>
1686<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1687<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_batch_normalization_layer.xhtml">NEBatchNormalizationLayer</a></td></tr>
1688<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_normalization_layer_kernel.xhtml">NENormalizationLayerKernel</a> and simulate a batch normalization layer. <a href="classarm__compute_1_1_n_e_batch_normalization_layer.xhtml#details">More...</a><br /></td></tr>
1689<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1690<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_batch_normalization_layer_kernel.xhtml">NEBatchNormalizationLayerKernel</a></td></tr>
1691<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the batch normalization layer kernel. <a href="classarm__compute_1_1_n_e_batch_normalization_layer_kernel.xhtml#details">More...</a><br /></td></tr>
1692<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1693<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_bitwise_and.xhtml">NEBitwiseAnd</a></td></tr>
1694<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_bitwise_and_kernel.xhtml">NEBitwiseAndKernel</a>. <a href="classarm__compute_1_1_n_e_bitwise_and.xhtml#details">More...</a><br /></td></tr>
1695<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1696<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_bitwise_and_kernel.xhtml">NEBitwiseAndKernel</a></td></tr>
1697<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform bitwise AND between XY-planes of two tensors. <a href="classarm__compute_1_1_n_e_bitwise_and_kernel.xhtml#details">More...</a><br /></td></tr>
1698<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1699<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_bitwise_not.xhtml">NEBitwiseNot</a></td></tr>
1700<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_bitwise_not_kernel.xhtml">NEBitwiseNotKernel</a>. <a href="classarm__compute_1_1_n_e_bitwise_not.xhtml#details">More...</a><br /></td></tr>
1701<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1702<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_bitwise_not_kernel.xhtml">NEBitwiseNotKernel</a></td></tr>
1703<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform bitwise NOT operation. <a href="classarm__compute_1_1_n_e_bitwise_not_kernel.xhtml#details">More...</a><br /></td></tr>
1704<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1705<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_bitwise_or.xhtml">NEBitwiseOr</a></td></tr>
1706<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_bitwise_or_kernel.xhtml">NEBitwiseOrKernel</a>. <a href="classarm__compute_1_1_n_e_bitwise_or.xhtml#details">More...</a><br /></td></tr>
1707<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1708<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_bitwise_or_kernel.xhtml">NEBitwiseOrKernel</a></td></tr>
1709<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform bitwise inclusive OR between two tensors. <a href="classarm__compute_1_1_n_e_bitwise_or_kernel.xhtml#details">More...</a><br /></td></tr>
1710<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1711<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_bitwise_xor.xhtml">NEBitwiseXor</a></td></tr>
1712<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_bitwise_xor_kernel.xhtml">NEBitwiseXorKernel</a>. <a href="classarm__compute_1_1_n_e_bitwise_xor.xhtml#details">More...</a><br /></td></tr>
1713<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1714<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_bitwise_xor_kernel.xhtml">NEBitwiseXorKernel</a></td></tr>
1715<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform bitwise exclusive OR (XOR) between two tensors. <a href="classarm__compute_1_1_n_e_bitwise_xor_kernel.xhtml#details">More...</a><br /></td></tr>
1716<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1717<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_box3x3.xhtml">NEBox3x3</a></td></tr>
1718<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute box filter 3x3. <a href="classarm__compute_1_1_n_e_box3x3.xhtml#details">More...</a><br /></td></tr>
1719<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1720<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_box3x3_kernel.xhtml">NEBox3x3Kernel</a></td></tr>
1721<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform a Box 3x3 filter. <a href="classarm__compute_1_1_n_e_box3x3_kernel.xhtml#details">More...</a><br /></td></tr>
1722<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1723<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_canny_edge.xhtml">NECannyEdge</a></td></tr>
1724<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute canny edge on NEON. <a href="classarm__compute_1_1_n_e_canny_edge.xhtml#details">More...</a><br /></td></tr>
1725<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1726<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_channel_combine.xhtml">NEChannelCombine</a></td></tr>
1727<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_channel_combine_kernel.xhtml">NEChannelCombineKernel</a> to perform channel combination. <a href="classarm__compute_1_1_n_e_channel_combine.xhtml#details">More...</a><br /></td></tr>
1728<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1729<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_channel_combine_kernel.xhtml">NEChannelCombineKernel</a></td></tr>
1730<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the channel combine kernel. <a href="classarm__compute_1_1_n_e_channel_combine_kernel.xhtml#details">More...</a><br /></td></tr>
1731<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1732<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_channel_extract.xhtml">NEChannelExtract</a></td></tr>
1733<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_channel_extract_kernel.xhtml">NEChannelExtractKernel</a> to perform channel extraction. <a href="classarm__compute_1_1_n_e_channel_extract.xhtml#details">More...</a><br /></td></tr>
1734<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1735<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_channel_extract_kernel.xhtml">NEChannelExtractKernel</a></td></tr>
1736<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the channel extract kernel. <a href="classarm__compute_1_1_n_e_channel_extract_kernel.xhtml#details">More...</a><br /></td></tr>
1737<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001738<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_channel_shuffle_layer.xhtml">NEChannelShuffleLayer</a></td></tr>
1739<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_channel_shuffle_layer_kernel.xhtml">NEChannelShuffleLayerKernel</a>. <a href="classarm__compute_1_1_n_e_channel_shuffle_layer.xhtml#details">More...</a><br /></td></tr>
1740<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1741<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_channel_shuffle_layer_kernel.xhtml">NEChannelShuffleLayerKernel</a></td></tr>
1742<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the channel shuffle kernel. <a href="classarm__compute_1_1_n_e_channel_shuffle_layer_kernel.xhtml#details">More...</a><br /></td></tr>
1743<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001744<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_col2_im.xhtml">NECol2Im</a></td></tr>
1745<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_col2_im.xhtml">NECol2Im</a>. <a href="classarm__compute_1_1_n_e_col2_im.xhtml#details">More...</a><br /></td></tr>
1746<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1747<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_col2_im_kernel.xhtml">NECol2ImKernel</a></td></tr>
1748<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform col2im reshaping. <a href="classarm__compute_1_1_n_e_col2_im_kernel.xhtml#details">More...</a><br /></td></tr>
1749<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1750<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_color_convert.xhtml">NEColorConvert</a></td></tr>
1751<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_color_convert_kernel.xhtml">NEColorConvertKernel</a> to perform color conversion. <a href="classarm__compute_1_1_n_e_color_convert.xhtml#details">More...</a><br /></td></tr>
1752<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1753<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_color_convert_kernel.xhtml">NEColorConvertKernel</a></td></tr>
1754<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the color convert kernel. <a href="classarm__compute_1_1_n_e_color_convert_kernel.xhtml#details">More...</a><br /></td></tr>
1755<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001756<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_comparison_operation_kernel.xhtml">NEComparisonOperationKernel</a></td></tr>
1757<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00001758<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_concatenate_layer.xhtml">NEConcatenateLayer</a></td></tr>
1759<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute concatenate tensors along a given axis. <a href="classarm__compute_1_1_n_e_concatenate_layer.xhtml#details">More...</a><br /></td></tr>
1760<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01001761<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_convert_fully_connected_weights.xhtml">NEConvertFullyConnectedWeights</a></td></tr>
1762<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_convert_fully_connected_weights_kernel.xhtml">NEConvertFullyConnectedWeightsKernel</a>. <a href="classarm__compute_1_1_n_e_convert_fully_connected_weights.xhtml#details">More...</a><br /></td></tr>
1763<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1764<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_convert_fully_connected_weights_kernel.xhtml">NEConvertFullyConnectedWeightsKernel</a></td></tr>
1765<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to convert the 2D Fully Connected weights from NCHW to NHWC or vice versa. <a href="classarm__compute_1_1_n_e_convert_fully_connected_weights_kernel.xhtml#details">More...</a><br /></td></tr>
1766<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001767<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_convolution3x3.xhtml">NEConvolution3x3</a></td></tr>
1768<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute convolution of size 3x3. <a href="classarm__compute_1_1_n_e_convolution3x3.xhtml#details">More...</a><br /></td></tr>
1769<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1770<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_convolution_kernel.xhtml">NEConvolutionKernel</a></td></tr>
1771<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run an arbitrary size convolution on a tensor. <a href="classarm__compute_1_1_n_e_convolution_kernel.xhtml#details">More...</a><br /></td></tr>
1772<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1773<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_convolution_layer.xhtml">NEConvolutionLayer</a></td></tr>
1774<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to simulate a convolution layer. <a href="classarm__compute_1_1_n_e_convolution_layer.xhtml#details">More...</a><br /></td></tr>
1775<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1776<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_convolution_layer_reshape_weights.xhtml">NEConvolutionLayerReshapeWeights</a></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00001777<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to reshape the weights. <a href="classarm__compute_1_1_n_e_convolution_layer_reshape_weights.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001778<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1779<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_convolution_rectangle.xhtml">NEConvolutionRectangle</a></td></tr>
1780<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute non-square convolution. <a href="classarm__compute_1_1_n_e_convolution_rectangle.xhtml#details">More...</a><br /></td></tr>
1781<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1782<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_convolution_rectangle_kernel.xhtml">NEConvolutionRectangleKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001783<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> for the running convolution on a rectangle matrix. <a href="classarm__compute_1_1_n_e_convolution_rectangle_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001784<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1785<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_convolution_square.xhtml">NEConvolutionSquare</a></td></tr>
1786<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute convolution of size 5x5, 7x7, 9x9. <a href="classarm__compute_1_1_n_e_convolution_square.xhtml#details">More...</a><br /></td></tr>
1787<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00001788<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_copy.xhtml">NECopy</a></td></tr>
1789<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_copy_kernel.xhtml">NECopyKernel</a>. <a href="classarm__compute_1_1_n_e_copy.xhtml#details">More...</a><br /></td></tr>
1790<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1791<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_copy_kernel.xhtml">NECopyKernel</a></td></tr>
1792<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform a copy between two tensors. <a href="classarm__compute_1_1_n_e_copy_kernel.xhtml#details">More...</a><br /></td></tr>
1793<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001794<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_cumulative_distribution_kernel.xhtml">NECumulativeDistributionKernel</a></td></tr>
1795<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the cumulative distribution (cummulative summmation) calculation kernel. <a href="classarm__compute_1_1_n_e_cumulative_distribution_kernel.xhtml#details">More...</a><br /></td></tr>
1796<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1797<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_deconvolution_layer.xhtml">NEDeconvolutionLayer</a></td></tr>
1798<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to run the deconvolution layer. <a href="classarm__compute_1_1_n_e_deconvolution_layer.xhtml#details">More...</a><br /></td></tr>
1799<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001800<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_depth_concatenate_layer.xhtml">NEDepthConcatenateLayer</a></td></tr>
1801<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute concatenate tensors along z axis. <a href="classarm__compute_1_1_n_e_depth_concatenate_layer.xhtml#details">More...</a><br /></td></tr>
1802<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1803<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_depth_concatenate_layer_kernel.xhtml">NEDepthConcatenateLayerKernel</a></td></tr>
1804<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the depth concatenate kernel. <a href="classarm__compute_1_1_n_e_depth_concatenate_layer_kernel.xhtml#details">More...</a><br /></td></tr>
1805<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1806<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_depth_convert_layer.xhtml">NEDepthConvertLayer</a></td></tr>
1807<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_depth_convert_layer_kernel.xhtml">NEDepthConvertLayerKernel</a>. <a href="classarm__compute_1_1_n_e_depth_convert_layer.xhtml#details">More...</a><br /></td></tr>
1808<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1809<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_depth_convert_layer_kernel.xhtml">NEDepthConvertLayerKernel</a></td></tr>
1810<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Depth conversion kernel. <a href="classarm__compute_1_1_n_e_depth_convert_layer_kernel.xhtml#details">More...</a><br /></td></tr>
1811<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1812<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_depthwise_convolution_layer.xhtml">NEDepthwiseConvolutionLayer</a></td></tr>
1813<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute a generic depthwise convolution. <a href="classarm__compute_1_1_n_e_depthwise_convolution_layer.xhtml#details">More...</a><br /></td></tr>
1814<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1815<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_depthwise_convolution_layer3x3.xhtml">NEDepthwiseConvolutionLayer3x3</a></td></tr>
1816<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute a depthwise convolution for kernel size 3x3xC. <a href="classarm__compute_1_1_n_e_depthwise_convolution_layer3x3.xhtml#details">More...</a><br /></td></tr>
1817<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1818<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_depthwise_convolution_layer3x3_kernel.xhtml">NEDepthwiseConvolutionLayer3x3Kernel</a></td></tr>
1819<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run a 3x3 depthwise convolution on a tensor. <a href="classarm__compute_1_1_n_e_depthwise_convolution_layer3x3_kernel.xhtml#details">More...</a><br /></td></tr>
1820<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1821<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_depthwise_im2_col_kernel.xhtml">NEDepthwiseIm2ColKernel</a></td></tr>
1822<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the depthwise im2col reshape kernel. <a href="classarm__compute_1_1_n_e_depthwise_im2_col_kernel.xhtml#details">More...</a><br /></td></tr>
1823<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1824<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_depthwise_separable_convolution_layer.xhtml">NEDepthwiseSeparableConvolutionLayer</a></td></tr>
1825<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute depthwise convolution. <a href="classarm__compute_1_1_n_e_depthwise_separable_convolution_layer.xhtml#details">More...</a><br /></td></tr>
1826<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1827<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_depthwise_vector_to_tensor_kernel.xhtml">NEDepthwiseVectorToTensorKernel</a></td></tr>
1828<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the depthwise vector to tensor kernel. <a href="classarm__compute_1_1_n_e_depthwise_vector_to_tensor_kernel.xhtml#details">More...</a><br /></td></tr>
1829<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1830<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_depthwise_weights_reshape_kernel.xhtml">NEDepthwiseWeightsReshapeKernel</a></td></tr>
1831<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the depthwise weights reshape kernel. <a href="classarm__compute_1_1_n_e_depthwise_weights_reshape_kernel.xhtml#details">More...</a><br /></td></tr>
1832<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1833<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_dequantization_layer.xhtml">NEDequantizationLayer</a></td></tr>
1834<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to simulate a dequantization layer. <a href="classarm__compute_1_1_n_e_dequantization_layer.xhtml#details">More...</a><br /></td></tr>
1835<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1836<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_dequantization_layer_kernel.xhtml">NEDequantizationLayerKernel</a></td></tr>
1837<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the dequantization layer kernel. <a href="classarm__compute_1_1_n_e_dequantization_layer_kernel.xhtml#details">More...</a><br /></td></tr>
1838<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1839<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_derivative.xhtml">NEDerivative</a></td></tr>
1840<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute first order derivative operator. <a href="classarm__compute_1_1_n_e_derivative.xhtml#details">More...</a><br /></td></tr>
1841<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1842<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_derivative_kernel.xhtml">NEDerivativeKernel</a></td></tr>
1843<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run the derivative along the X/Y directions on a tensor. <a href="classarm__compute_1_1_n_e_derivative_kernel.xhtml#details">More...</a><br /></td></tr>
1844<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1845<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_dilate.xhtml">NEDilate</a></td></tr>
1846<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute dilate. <a href="classarm__compute_1_1_n_e_dilate.xhtml#details">More...</a><br /></td></tr>
1847<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1848<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_dilate_kernel.xhtml">NEDilateKernel</a></td></tr>
1849<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform boolean image dilatation. <a href="classarm__compute_1_1_n_e_dilate_kernel.xhtml#details">More...</a><br /></td></tr>
1850<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1851<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_direct_convolution_layer.xhtml">NEDirectConvolutionLayer</a></td></tr>
1852<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to run the direct convolution. <a href="classarm__compute_1_1_n_e_direct_convolution_layer.xhtml#details">More...</a><br /></td></tr>
1853<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001854<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_direct_convolution_layer_kernel.xhtml">NEDirectConvolutionLayerKernel</a></td></tr>
1855<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON interface for Direct Convolution Layer kernel. <a href="classarm__compute_1_1_n_e_direct_convolution_layer_kernel.xhtml#details">More...</a><br /></td></tr>
1856<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00001857<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_direct_convolution_layer_output_stage_kernel.xhtml">NEDirectConvolutionLayerOutputStageKernel</a></td></tr>
1858<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to accumulate the biases, if provided, or downscale in case of quantized input. <a href="classarm__compute_1_1_n_e_direct_convolution_layer_output_stage_kernel.xhtml#details">More...</a><br /></td></tr>
1859<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001860<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_division_operation_kernel.xhtml">NEDivisionOperationKernel</a></td></tr>
1861<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001862<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_edge_non_max_suppression_kernel.xhtml">NEEdgeNonMaxSuppressionKernel</a></td></tr>
1863<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform Non-Maxima suppression for Canny Edge. <a href="classarm__compute_1_1_n_e_edge_non_max_suppression_kernel.xhtml#details">More...</a><br /></td></tr>
1864<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1865<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_edge_trace_kernel.xhtml">NEEdgeTraceKernel</a></td></tr>
1866<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform Edge tracing. <a href="classarm__compute_1_1_n_e_edge_trace_kernel.xhtml#details">More...</a><br /></td></tr>
1867<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001868<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_elementwise_comparison.xhtml">NEElementwiseComparison</a></td></tr>
1869<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_comparison_operation_kernel.xhtml">NEComparisonOperationKernel</a>. <a href="classarm__compute_1_1_n_e_elementwise_comparison.xhtml#details">More...</a><br /></td></tr>
1870<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1871<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_elementwise_comparison_static.xhtml">NEElementwiseComparisonStatic</a></td></tr>
1872<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_comparison_operation_kernel.xhtml">NEComparisonOperationKernel</a>. <a href="classarm__compute_1_1_n_e_elementwise_comparison_static.xhtml#details">More...</a><br /></td></tr>
1873<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1874<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_elementwise_division.xhtml">NEElementwiseDivision</a></td></tr>
1875<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_arithmetic_operation_kernel.xhtml">NEArithmeticOperationKernel</a> for division. <a href="classarm__compute_1_1_n_e_elementwise_division.xhtml#details">More...</a><br /></td></tr>
1876<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1877<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_elementwise_max.xhtml">NEElementwiseMax</a></td></tr>
1878<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_arithmetic_operation_kernel.xhtml">NEArithmeticOperationKernel</a> for max. <a href="classarm__compute_1_1_n_e_elementwise_max.xhtml#details">More...</a><br /></td></tr>
1879<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1880<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_elementwise_min.xhtml">NEElementwiseMin</a></td></tr>
1881<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_arithmetic_operation_kernel.xhtml">NEArithmeticOperationKernel</a> for min. <a href="classarm__compute_1_1_n_e_elementwise_min.xhtml#details">More...</a><br /></td></tr>
1882<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1883<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_elementwise_operation_kernel.xhtml">NEElementwiseOperationKernel</a></td></tr>
1884<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for an element-wise operation kernel. <a href="classarm__compute_1_1_n_e_elementwise_operation_kernel.xhtml#details">More...</a><br /></td></tr>
1885<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1886<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_elementwise_squared_diff.xhtml">NEElementwiseSquaredDiff</a></td></tr>
1887<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_arithmetic_operation_kernel.xhtml">NEArithmeticOperationKernel</a> for squared difference. <a href="classarm__compute_1_1_n_e_elementwise_squared_diff.xhtml#details">More...</a><br /></td></tr>
1888<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1889<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_elementwise_unary_kernel.xhtml">NEElementwiseUnaryKernel</a></td></tr>
1890<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for an element-wise unary operation kernel. <a href="classarm__compute_1_1_n_e_elementwise_unary_kernel.xhtml#details">More...</a><br /></td></tr>
1891<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001892<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_equalize_histogram.xhtml">NEEqualizeHistogram</a></td></tr>
1893<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute histogram equalization. <a href="classarm__compute_1_1_n_e_equalize_histogram.xhtml#details">More...</a><br /></td></tr>
1894<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1895<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_erode.xhtml">NEErode</a></td></tr>
1896<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute erode. <a href="classarm__compute_1_1_n_e_erode.xhtml#details">More...</a><br /></td></tr>
1897<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1898<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_erode_kernel.xhtml">NEErodeKernel</a></td></tr>
1899<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform boolean image erosion. <a href="classarm__compute_1_1_n_e_erode_kernel.xhtml#details">More...</a><br /></td></tr>
1900<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001901<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_exp_layer.xhtml">NEExpLayer</a></td></tr>
1902<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to perform exponential on an input tensor. <a href="classarm__compute_1_1_n_e_exp_layer.xhtml#details">More...</a><br /></td></tr>
1903<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001904<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_fast_corners.xhtml">NEFastCorners</a></td></tr>
1905<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute fast corners. <a href="classarm__compute_1_1_n_e_fast_corners.xhtml#details">More...</a><br /></td></tr>
1906<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1907<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_fast_corners_kernel.xhtml">NEFastCornersKernel</a></td></tr>
1908<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform fast corners. <a href="classarm__compute_1_1_n_e_fast_corners_kernel.xhtml#details">More...</a><br /></td></tr>
1909<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1910<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_fill_array_kernel.xhtml">NEFillArrayKernel</a></td></tr>
1911<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This kernel adds all texels greater than or equal to the threshold value to the keypoint array. <a href="classarm__compute_1_1_n_e_fill_array_kernel.xhtml#details">More...</a><br /></td></tr>
1912<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1913<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_fill_border.xhtml">NEFillBorder</a></td></tr>
1914<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_fill_border_kernel.xhtml">NEFillBorderKernel</a>. <a href="classarm__compute_1_1_n_e_fill_border.xhtml#details">More...</a><br /></td></tr>
1915<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1916<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_fill_border_kernel.xhtml">NEFillBorderKernel</a></td></tr>
1917<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to fill borders. <a href="classarm__compute_1_1_n_e_fill_border_kernel.xhtml#details">More...</a><br /></td></tr>
1918<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1919<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_fill_inner_border_kernel.xhtml">NEFillInnerBorderKernel</a></td></tr>
1920<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to fill the interior borders. <a href="classarm__compute_1_1_n_e_fill_inner_border_kernel.xhtml#details">More...</a><br /></td></tr>
1921<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1922<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_flatten_layer.xhtml">NEFlattenLayer</a></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00001923<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute flatten layer kernel. <a href="classarm__compute_1_1_n_e_flatten_layer.xhtml#details">More...</a><br /></td></tr>
1924<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1925<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_flatten_layer_kernel.xhtml">NEFlattenLayerKernel</a></td></tr>
1926<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the flatten layer kernel. <a href="classarm__compute_1_1_n_e_flatten_layer_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001927<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1928<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_floor.xhtml">NEFloor</a></td></tr>
1929<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_floor_kernel.xhtml">NEFloorKernel</a>. <a href="classarm__compute_1_1_n_e_floor.xhtml#details">More...</a><br /></td></tr>
1930<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1931<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_floor_kernel.xhtml">NEFloorKernel</a></td></tr>
1932<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform a floor operation. <a href="classarm__compute_1_1_n_e_floor_kernel.xhtml#details">More...</a><br /></td></tr>
1933<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1934<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_fully_connected_layer.xhtml">NEFullyConnectedLayer</a></td></tr>
1935<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute a Fully Connected layer on NEON. <a href="classarm__compute_1_1_n_e_fully_connected_layer.xhtml#details">More...</a><br /></td></tr>
1936<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1937<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_fully_connected_layer_reshape_weights.xhtml">NEFullyConnectedLayerReshapeWeights</a></td></tr>
1938<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to reshape the weights of Fully Connected layer with NEON. <a href="classarm__compute_1_1_n_e_fully_connected_layer_reshape_weights.xhtml#details">More...</a><br /></td></tr>
1939<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00001940<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_fuse_batch_normalization.xhtml">NEFuseBatchNormalization</a></td></tr>
1941<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to fuse the batch normalization node to a preceding convolution node. <a href="classarm__compute_1_1_n_e_fuse_batch_normalization.xhtml#details">More...</a><br /></td></tr>
1942<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1943<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_fuse_batch_normalization_kernel.xhtml">NEFuseBatchNormalizationKernel</a></td></tr>
1944<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenNE kernel to fuse the batch normalization node to a preceding convolution node. <a href="classarm__compute_1_1_n_e_fuse_batch_normalization_kernel.xhtml#details">More...</a><br /></td></tr>
1945<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1946<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_gather.xhtml">NEGather</a></td></tr>
1947<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_gather_kernel.xhtml">NEGatherKernel</a>. <a href="classarm__compute_1_1_n_e_gather.xhtml#details">More...</a><br /></td></tr>
1948<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1949<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_gather_kernel.xhtml">NEGatherKernel</a></td></tr>
1950<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> to perform other operation on NEON. <a href="classarm__compute_1_1_n_e_gather_kernel.xhtml#details">More...</a><br /></td></tr>
1951<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001952<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_gaussian3x3.xhtml">NEGaussian3x3</a></td></tr>
1953<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute gaussian filter 3x3. <a href="classarm__compute_1_1_n_e_gaussian3x3.xhtml#details">More...</a><br /></td></tr>
1954<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1955<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_gaussian3x3_kernel.xhtml">NEGaussian3x3Kernel</a></td></tr>
1956<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform a Gaussian 3x3 filter. <a href="classarm__compute_1_1_n_e_gaussian3x3_kernel.xhtml#details">More...</a><br /></td></tr>
1957<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1958<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_gaussian5x5.xhtml">NEGaussian5x5</a></td></tr>
1959<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute gaussian filter 5x5. <a href="classarm__compute_1_1_n_e_gaussian5x5.xhtml#details">More...</a><br /></td></tr>
1960<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1961<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_gaussian5x5_hor_kernel.xhtml">NEGaussian5x5HorKernel</a></td></tr>
1962<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform a Gaussian 5x5 filter (horizontal pass) <a href="classarm__compute_1_1_n_e_gaussian5x5_hor_kernel.xhtml#details">More...</a><br /></td></tr>
1963<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1964<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_gaussian5x5_vert_kernel.xhtml">NEGaussian5x5VertKernel</a></td></tr>
1965<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform a Gaussian 5x5 filter (vertical pass) <a href="classarm__compute_1_1_n_e_gaussian5x5_vert_kernel.xhtml#details">More...</a><br /></td></tr>
1966<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1967<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_gaussian_pyramid.xhtml">NEGaussianPyramid</a></td></tr>
1968<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface for all Gaussian pyramid functions. <a href="classarm__compute_1_1_n_e_gaussian_pyramid.xhtml#details">More...</a><br /></td></tr>
1969<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1970<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_gaussian_pyramid_half.xhtml">NEGaussianPyramidHalf</a></td></tr>
1971<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute gaussian pyramid with HALF scale factor. <a href="classarm__compute_1_1_n_e_gaussian_pyramid_half.xhtml#details">More...</a><br /></td></tr>
1972<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1973<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_gaussian_pyramid_hor_kernel.xhtml">NEGaussianPyramidHorKernel</a></td></tr>
1974<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform a GaussianPyramid (horizontal pass) <a href="classarm__compute_1_1_n_e_gaussian_pyramid_hor_kernel.xhtml#details">More...</a><br /></td></tr>
1975<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1976<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_gaussian_pyramid_orb.xhtml">NEGaussianPyramidOrb</a></td></tr>
1977<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute gaussian pyramid with ORB scale factor. <a href="classarm__compute_1_1_n_e_gaussian_pyramid_orb.xhtml#details">More...</a><br /></td></tr>
1978<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1979<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_gaussian_pyramid_vert_kernel.xhtml">NEGaussianPyramidVertKernel</a></td></tr>
1980<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform a GaussianPyramid (vertical pass) <a href="classarm__compute_1_1_n_e_gaussian_pyramid_vert_kernel.xhtml#details">More...</a><br /></td></tr>
1981<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1982<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m.xhtml">NEGEMM</a></td></tr>
1983<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute GEMM on NEON. <a href="classarm__compute_1_1_n_e_g_e_m_m.xhtml#details">More...</a><br /></td></tr>
1984<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001985<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_assembly_base_kernel.xhtml">NEGEMMAssemblyBaseKernel</a></td></tr>
1986<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Base class for GEMM NEON kernels implemented in Assembly. <a href="classarm__compute_1_1_n_e_g_e_m_m_assembly_base_kernel.xhtml#details">More...</a><br /></td></tr>
1987<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00001988<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_assembly_dispatch.xhtml">NEGEMMAssemblyDispatch</a></td></tr>
1989<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assembly kernel glue. <a href="classarm__compute_1_1_n_e_g_e_m_m_assembly_dispatch.xhtml#details">More...</a><br /></td></tr>
1990<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00001991<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_convolution_layer.xhtml">NEGEMMConvolutionLayer</a></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00001992<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute the convolution layer. <a href="classarm__compute_1_1_n_e_g_e_m_m_convolution_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00001993<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001994<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_interleave4x4.xhtml">NEGEMMInterleave4x4</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00001995<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_interleave4x4_kernel.xhtml" title="NEON kernel to interleave the elements of a matrix.">NEGEMMInterleave4x4Kernel</a>. <a href="classarm__compute_1_1_n_e_g_e_m_m_interleave4x4.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001996<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
1997<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_interleave4x4_kernel.xhtml">NEGEMMInterleave4x4Kernel</a></td></tr>
1998<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to interleave the elements of a matrix. <a href="classarm__compute_1_1_n_e_g_e_m_m_interleave4x4_kernel.xhtml#details">More...</a><br /></td></tr>
1999<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00002000<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_interleaved_wrapper.xhtml">NEGEMMInterleavedWrapper</a></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00002001<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Equivalent to <a class="el" href="classarm__gemm_1_1_gemm_interleaved.xhtml">arm_gemm::GemmInterleaved</a> but using Compute Library types. <a href="classarm__compute_1_1_n_e_g_e_m_m_interleaved_wrapper.xhtml#details">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00002002<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002003<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_assembly_matrix_multiply_core.xhtml">NEGEMMLowpAssemblyMatrixMultiplyCore</a></td></tr>
2004<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute matrix multiply assembly kernels. <a href="classarm__compute_1_1_n_e_g_e_m_m_lowp_assembly_matrix_multiply_core.xhtml#details">More...</a><br /></td></tr>
2005<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2006<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_matrix_a_reduction_kernel.xhtml">NEGEMMLowpMatrixAReductionKernel</a></td></tr>
2007<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel used to compute the row-vectors of sums of all the entries in each row of Matrix A. <a href="classarm__compute_1_1_n_e_g_e_m_m_lowp_matrix_a_reduction_kernel.xhtml#details">More...</a><br /></td></tr>
2008<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2009<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_matrix_b_reduction_kernel.xhtml">NEGEMMLowpMatrixBReductionKernel</a></td></tr>
2010<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel used to compute the row-vectors of sums of all the entries in each column of Matrix B. <a href="classarm__compute_1_1_n_e_g_e_m_m_lowp_matrix_b_reduction_kernel.xhtml#details">More...</a><br /></td></tr>
2011<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2012<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_matrix_multiply_core.xhtml">NEGEMMLowpMatrixMultiplyCore</a></td></tr>
2013<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute GEMMLowpMatrixMultiplyCore on NEON. <a href="classarm__compute_1_1_n_e_g_e_m_m_lowp_matrix_multiply_core.xhtml#details">More...</a><br /></td></tr>
2014<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2015<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_matrix_multiply_kernel.xhtml">NEGEMMLowpMatrixMultiplyKernel</a></td></tr>
2016<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to multiply matrices. <a href="classarm__compute_1_1_n_e_g_e_m_m_lowp_matrix_multiply_kernel.xhtml#details">More...</a><br /></td></tr>
2017<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2018<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_offset_contribution_kernel.xhtml">NEGEMMLowpOffsetContributionKernel</a></td></tr>
2019<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel used to add the offset contribution after <a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_matrix_multiply_kernel.xhtml">NEGEMMLowpMatrixMultiplyKernel</a>. <a href="classarm__compute_1_1_n_e_g_e_m_m_lowp_offset_contribution_kernel.xhtml#details">More...</a><br /></td></tr>
2020<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2021<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale.xhtml">NEGEMMLowpQuantizeDownInt32ToUint8Scale</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002022<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale.xhtml" title="Basic function to execute NEGEMMLowpQuantizeDownInt32ToUint8Scale on NEON.">NEGEMMLowpQuantizeDownInt32ToUint8Scale</a> on NEON. <a href="classarm__compute_1_1_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002023<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2024<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point.xhtml">NEGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPoint</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002025<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point.xhtml" title="Basic function to execute NEGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPoint on NEON.">NEGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPoint</a> on NEON. <a href="classarm__compute_1_1_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002026<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2027<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel.xhtml">NEGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel</a></td></tr>
2028<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel used to quantize down the int32 accumulator values of GEMMLowp to QASYMM8. <a href="classarm__compute_1_1_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel.xhtml#details">More...</a><br /></td></tr>
2029<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2030<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_kernel.xhtml">NEGEMMLowpQuantizeDownInt32ToUint8ScaleKernel</a></td></tr>
2031<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel used to quantize down the int32 accumulator values of GEMMLowp to QASYMM8. <a href="classarm__compute_1_1_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_kernel.xhtml#details">More...</a><br /></td></tr>
2032<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2033<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_matrix_accumulate_biases_kernel.xhtml">NEGEMMMatrixAccumulateBiasesKernel</a></td></tr>
2034<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to add a bias to each row of the input tensor. <a href="classarm__compute_1_1_n_e_g_e_m_m_matrix_accumulate_biases_kernel.xhtml#details">More...</a><br /></td></tr>
2035<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2036<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_matrix_addition_kernel.xhtml">NEGEMMMatrixAdditionKernel</a></td></tr>
2037<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform the in-place matrix addition between 2 matrices taking into account that the second matrix might be weighted by a scalar value beta: <a href="classarm__compute_1_1_n_e_g_e_m_m_matrix_addition_kernel.xhtml#details">More...</a><br /></td></tr>
2038<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2039<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_matrix_multiply_kernel.xhtml">NEGEMMMatrixMultiplyKernel</a></td></tr>
2040<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to multiply two input matrices "A" and "B". <a href="classarm__compute_1_1_n_e_g_e_m_m_matrix_multiply_kernel.xhtml#details">More...</a><br /></td></tr>
2041<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2042<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_matrix_vector_multiply_kernel.xhtml">NEGEMMMatrixVectorMultiplyKernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002043<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the GEMM matrix vector multiply kernel. <a href="classarm__compute_1_1_n_e_g_e_m_m_matrix_vector_multiply_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002044<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2045<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_transpose1x_w.xhtml">NEGEMMTranspose1xW</a></td></tr>
2046<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_transpose1x_w_kernel.xhtml" title="NEON kernel which transposes the elements of a matrix in chunks of 1xW, where W is equal to (16 / ele...">NEGEMMTranspose1xWKernel</a>. <a href="classarm__compute_1_1_n_e_g_e_m_m_transpose1x_w.xhtml#details">More...</a><br /></td></tr>
2047<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2048<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_transpose1x_w_kernel.xhtml">NEGEMMTranspose1xWKernel</a></td></tr>
2049<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel which transposes the elements of a matrix in chunks of 1xW, where W is equal to (16 / element size of the tensor) <a href="classarm__compute_1_1_n_e_g_e_m_m_transpose1x_w_kernel.xhtml#details">More...</a><br /></td></tr>
2050<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2051<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_gradient_kernel.xhtml">NEGradientKernel</a></td></tr>
2052<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes magnitude and quantised phase from inputs gradients. <a href="classarm__compute_1_1_n_e_gradient_kernel.xhtml#details">More...</a><br /></td></tr>
2053<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2054<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_harris_corners.xhtml">NEHarrisCorners</a></td></tr>
2055<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute harris corners detection. <a href="classarm__compute_1_1_n_e_harris_corners.xhtml#details">More...</a><br /></td></tr>
2056<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2057<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_harris_score_kernel.xhtml">NEHarrisScoreKernel</a></td></tr>
2058<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template NEON kernel to perform Harris Score. <a href="classarm__compute_1_1_n_e_harris_score_kernel.xhtml#details">More...</a><br /></td></tr>
2059<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002060<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_histogram.xhtml">NEHistogram</a></td></tr>
2061<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_histogram_kernel.xhtml">NEHistogramKernel</a>. <a href="classarm__compute_1_1_n_e_histogram.xhtml#details">More...</a><br /></td></tr>
2062<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2063<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_histogram_kernel.xhtml">NEHistogramKernel</a></td></tr>
2064<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the histogram kernel. <a href="classarm__compute_1_1_n_e_histogram_kernel.xhtml#details">More...</a><br /></td></tr>
2065<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2066<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_h_o_g_block_normalization_kernel.xhtml">NEHOGBlockNormalizationKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002067<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> block normalization. <a href="classarm__compute_1_1_n_e_h_o_g_block_normalization_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002068<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2069<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_h_o_g_descriptor.xhtml">NEHOGDescriptor</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002070<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to calculate <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> descriptor. <a href="classarm__compute_1_1_n_e_h_o_g_descriptor.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002071<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2072<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_h_o_g_detector.xhtml">NEHOGDetector</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002073<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> detector based on linear SVM. <a href="classarm__compute_1_1_n_e_h_o_g_detector.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002074<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2075<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_h_o_g_detector_kernel.xhtml">NEHOGDetectorKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002076<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> detector kernel using linear SVM. <a href="classarm__compute_1_1_n_e_h_o_g_detector_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002077<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2078<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_h_o_g_gradient.xhtml">NEHOGGradient</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002079<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to calculate the gradient for <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a>. <a href="classarm__compute_1_1_n_e_h_o_g_gradient.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002080<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2081<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_h_o_g_multi_detection.xhtml">NEHOGMultiDetection</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002082<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to detect multiple objects (or the same object at different scales) on the same input image using <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a>. <a href="classarm__compute_1_1_n_e_h_o_g_multi_detection.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002083<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2084<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_h_o_g_orientation_binning_kernel.xhtml">NEHOGOrientationBinningKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002085<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> Orientation Binning. <a href="classarm__compute_1_1_n_e_h_o_g_orientation_binning_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002086<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2087<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_im2_col.xhtml">NEIm2Col</a></td></tr>
2088<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_im2_col_kernel.xhtml">NEIm2ColKernel</a>. <a href="classarm__compute_1_1_n_e_im2_col.xhtml#details">More...</a><br /></td></tr>
2089<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2090<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_im2_col_kernel.xhtml">NEIm2ColKernel</a></td></tr>
2091<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the im2col reshape kernel. <a href="classarm__compute_1_1_n_e_im2_col_kernel.xhtml#details">More...</a><br /></td></tr>
2092<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2093<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_integral_image.xhtml">NEIntegralImage</a></td></tr>
2094<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run a <a class="el" href="classarm__compute_1_1_n_e_integral_image_kernel.xhtml">NEIntegralImageKernel</a>. <a href="classarm__compute_1_1_n_e_integral_image.xhtml#details">More...</a><br /></td></tr>
2095<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2096<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_integral_image_kernel.xhtml">NEIntegralImageKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002097<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> to perform an image integral on an image. <a href="classarm__compute_1_1_n_e_integral_image_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002098<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2099<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_l2_normalize_layer.xhtml">NEL2NormalizeLayer</a></td></tr>
2100<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to perform a L2 normalization on a given axis. <a href="classarm__compute_1_1_n_e_l2_normalize_layer.xhtml#details">More...</a><br /></td></tr>
2101<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2102<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_l2_normalize_layer_kernel.xhtml">NEL2NormalizeLayerKernel</a></td></tr>
2103<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for performing a L2 normalize on a given axis given the square sum of it in this axis. <a href="classarm__compute_1_1_n_e_l2_normalize_layer_kernel.xhtml#details">More...</a><br /></td></tr>
2104<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2105<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_laplacian_pyramid.xhtml">NELaplacianPyramid</a></td></tr>
2106<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute laplacian pyramid. <a href="classarm__compute_1_1_n_e_laplacian_pyramid.xhtml#details">More...</a><br /></td></tr>
2107<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2108<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_laplacian_reconstruct.xhtml">NELaplacianReconstruct</a></td></tr>
2109<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute laplacian reconstruction. <a href="classarm__compute_1_1_n_e_laplacian_reconstruct.xhtml#details">More...</a><br /></td></tr>
2110<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2111<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_n_e_l_k_internal_keypoint.xhtml">NELKInternalKeypoint</a></td></tr>
2112<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal keypoint class for Lucas-Kanade Optical Flow. <a href="structarm__compute_1_1_n_e_l_k_internal_keypoint.xhtml#details">More...</a><br /></td></tr>
2113<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2114<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_l_k_tracker_kernel.xhtml">NELKTrackerKernel</a></td></tr>
2115<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the Lucas-Kanade tracker kernel. <a href="classarm__compute_1_1_n_e_l_k_tracker_kernel.xhtml#details">More...</a><br /></td></tr>
2116<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2117<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_locally_connected_layer.xhtml">NELocallyConnectedLayer</a></td></tr>
2118<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute the locally connected layer. <a href="classarm__compute_1_1_n_e_locally_connected_layer.xhtml#details">More...</a><br /></td></tr>
2119<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2120<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_locally_connected_matrix_multiply_kernel.xhtml">NELocallyConnectedMatrixMultiplyKernel</a></td></tr>
2121<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to multiply each row of first tensor with low 2 dimensions of second tensor. <a href="classarm__compute_1_1_n_e_locally_connected_matrix_multiply_kernel.xhtml#details">More...</a><br /></td></tr>
2122<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2123<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_logits1_d_max_kernel.xhtml">NELogits1DMaxKernel</a></td></tr>
2124<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the identifying the max value of 1D Logits. <a href="classarm__compute_1_1_n_e_logits1_d_max_kernel.xhtml#details">More...</a><br /></td></tr>
2125<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00002126<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_logits1_d_softmax_kernel.xhtml">NELogits1DSoftmaxKernel</a></td></tr>
2127<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for softmax computation for QASYMM8 with pre-computed max. <a href="classarm__compute_1_1_n_e_logits1_d_softmax_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002128<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00002129<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_l_s_t_m_layer.xhtml">NELSTMLayer</a></td></tr>
2130<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_l_s_t_m_layer.xhtml">NELSTMLayer</a>. <a href="classarm__compute_1_1_n_e_l_s_t_m_layer.xhtml#details">More...</a><br /></td></tr>
2131<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002132<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_magnitude.xhtml">NEMagnitude</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002133<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_magnitude_phase_kernel.xhtml">NEMagnitudePhaseKernel</a>. <a href="classarm__compute_1_1_n_e_magnitude.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002134<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2135<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_magnitude_phase_kernel.xhtml">NEMagnitudePhaseKernel</a></td></tr>
2136<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template interface for the kernel to compute magnitude and phase. <a href="classarm__compute_1_1_n_e_magnitude_phase_kernel.xhtml#details">More...</a><br /></td></tr>
2137<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2138<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_mean_std_dev.xhtml">NEMeanStdDev</a></td></tr>
2139<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute mean and std deviation. <a href="classarm__compute_1_1_n_e_mean_std_dev.xhtml#details">More...</a><br /></td></tr>
2140<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2141<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_mean_std_dev_kernel.xhtml">NEMeanStdDevKernel</a></td></tr>
2142<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to calculate mean and standard deviation of input image pixels. <a href="classarm__compute_1_1_n_e_mean_std_dev_kernel.xhtml#details">More...</a><br /></td></tr>
2143<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2144<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_median3x3.xhtml">NEMedian3x3</a></td></tr>
2145<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute median filter. <a href="classarm__compute_1_1_n_e_median3x3.xhtml#details">More...</a><br /></td></tr>
2146<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2147<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_median3x3_kernel.xhtml">NEMedian3x3Kernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002148<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> to perform a median filter on a tensor. <a href="classarm__compute_1_1_n_e_median3x3_kernel.xhtml#details">More...</a><br /></td></tr>
2149<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2150<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_memset_kernel.xhtml">NEMemsetKernel</a></td></tr>
2151<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for filling the planes of a tensor. <a href="classarm__compute_1_1_n_e_memset_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002152<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2153<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_min_max_kernel.xhtml">NEMinMaxKernel</a></td></tr>
2154<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform min max search on an image. <a href="classarm__compute_1_1_n_e_min_max_kernel.xhtml#details">More...</a><br /></td></tr>
2155<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2156<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_min_max_layer_kernel.xhtml">NEMinMaxLayerKernel</a></td></tr>
2157<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform min max search on a 3D tensor. <a href="classarm__compute_1_1_n_e_min_max_layer_kernel.xhtml#details">More...</a><br /></td></tr>
2158<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2159<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_min_max_location.xhtml">NEMinMaxLocation</a></td></tr>
2160<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute min and max location. <a href="classarm__compute_1_1_n_e_min_max_location.xhtml#details">More...</a><br /></td></tr>
2161<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2162<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_min_max_location_kernel.xhtml">NEMinMaxLocationKernel</a></td></tr>
2163<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to find min max locations of an image. <a href="classarm__compute_1_1_n_e_min_max_location_kernel.xhtml#details">More...</a><br /></td></tr>
2164<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2165<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_non_linear_filter.xhtml">NENonLinearFilter</a></td></tr>
2166<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute non linear filter. <a href="classarm__compute_1_1_n_e_non_linear_filter.xhtml#details">More...</a><br /></td></tr>
2167<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2168<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_non_linear_filter_kernel.xhtml">NENonLinearFilterKernel</a></td></tr>
2169<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to apply a non-linear filter. <a href="classarm__compute_1_1_n_e_non_linear_filter_kernel.xhtml#details">More...</a><br /></td></tr>
2170<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2171<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_non_maxima_suppression3x3.xhtml">NENonMaximaSuppression3x3</a></td></tr>
2172<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute non-maxima suppression over a 3x3 window. <a href="classarm__compute_1_1_n_e_non_maxima_suppression3x3.xhtml#details">More...</a><br /></td></tr>
2173<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2174<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_non_maxima_suppression3x3_kernel.xhtml">NENonMaximaSuppression3x3Kernel</a></td></tr>
2175<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to perform Non-Maxima suppression over a 3x3 window using NEON. <a href="classarm__compute_1_1_n_e_non_maxima_suppression3x3_kernel.xhtml#details">More...</a><br /></td></tr>
2176<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2177<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_normalization_layer.xhtml">NENormalizationLayer</a></td></tr>
2178<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute a normalization layer. <a href="classarm__compute_1_1_n_e_normalization_layer.xhtml#details">More...</a><br /></td></tr>
2179<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2180<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_normalization_layer_kernel.xhtml">NENormalizationLayerKernel</a></td></tr>
2181<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the normalization layer kernel. <a href="classarm__compute_1_1_n_e_normalization_layer_kernel.xhtml#details">More...</a><br /></td></tr>
2182<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2183<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_optical_flow.xhtml">NEOpticalFlow</a></td></tr>
2184<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute optical flow. <a href="classarm__compute_1_1_n_e_optical_flow.xhtml#details">More...</a><br /></td></tr>
2185<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002186<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_pad_layer.xhtml">NEPadLayer</a></td></tr>
2187<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to pad a tensor. <a href="classarm__compute_1_1_n_e_pad_layer.xhtml#details">More...</a><br /></td></tr>
2188<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00002189<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_permute.xhtml">NEPermute</a></td></tr>
2190<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_permute_kernel.xhtml">NEPermuteKernel</a>. <a href="classarm__compute_1_1_n_e_permute.xhtml#details">More...</a><br /></td></tr>
2191<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2192<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_permute_kernel.xhtml">NEPermuteKernel</a></td></tr>
2193<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform tensor permutation. <a href="classarm__compute_1_1_n_e_permute_kernel.xhtml#details">More...</a><br /></td></tr>
2194<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002195<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_phase.xhtml">NEPhase</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002196<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_magnitude_phase_kernel.xhtml">NEMagnitudePhaseKernel</a>. <a href="classarm__compute_1_1_n_e_phase.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002197<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2198<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_pixel_wise_multiplication.xhtml">NEPixelWiseMultiplication</a></td></tr>
2199<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_pixel_wise_multiplication_kernel.xhtml">NEPixelWiseMultiplicationKernel</a>. <a href="classarm__compute_1_1_n_e_pixel_wise_multiplication.xhtml#details">More...</a><br /></td></tr>
2200<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2201<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_pixel_wise_multiplication_kernel.xhtml">NEPixelWiseMultiplicationKernel</a></td></tr>
2202<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform addition between two tensors. <a href="classarm__compute_1_1_n_e_pixel_wise_multiplication_kernel.xhtml#details">More...</a><br /></td></tr>
2203<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2204<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_pooling_layer.xhtml">NEPoolingLayer</a></td></tr>
2205<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to simulate a pooling layer with the specified pooling operation. <a href="classarm__compute_1_1_n_e_pooling_layer.xhtml#details">More...</a><br /></td></tr>
2206<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2207<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_pooling_layer_kernel.xhtml">NEPoolingLayerKernel</a></td></tr>
2208<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the pooling layer kernel. <a href="classarm__compute_1_1_n_e_pooling_layer_kernel.xhtml#details">More...</a><br /></td></tr>
2209<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00002210<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_prior_box_layer.xhtml">NEPriorBoxLayer</a></td></tr>
2211<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_prior_box_layer_kernel.xhtml">NEPriorBoxLayerKernel</a>. <a href="classarm__compute_1_1_n_e_prior_box_layer.xhtml#details">More...</a><br /></td></tr>
2212<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2213<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_prior_box_layer_kernel.xhtml">NEPriorBoxLayerKernel</a></td></tr>
2214<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to calculate prior boxes. <a href="classarm__compute_1_1_n_e_prior_box_layer_kernel.xhtml#details">More...</a><br /></td></tr>
2215<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002216<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_quantization_layer.xhtml">NEQuantizationLayer</a></td></tr>
2217<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to simulate a quantization layer. <a href="classarm__compute_1_1_n_e_quantization_layer.xhtml#details">More...</a><br /></td></tr>
2218<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2219<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_quantization_layer_kernel.xhtml">NEQuantizationLayerKernel</a></td></tr>
2220<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the quantization layer kernel. <a href="classarm__compute_1_1_n_e_quantization_layer_kernel.xhtml#details">More...</a><br /></td></tr>
2221<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002222<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_range.xhtml">NERange</a></td></tr>
2223<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_range_kernel.xhtml">NERangeKernel</a>. <a href="classarm__compute_1_1_n_e_range.xhtml#details">More...</a><br /></td></tr>
2224<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2225<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_range_kernel.xhtml">NERangeKernel</a></td></tr>
2226<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> class for Range. <a href="classarm__compute_1_1_n_e_range_kernel.xhtml#details">More...</a><br /></td></tr>
2227<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00002228<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_reduce_mean.xhtml">NEReduceMean</a></td></tr>
2229<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to perform reduce operation. <a href="classarm__compute_1_1_n_e_reduce_mean.xhtml#details">More...</a><br /></td></tr>
2230<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002231<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_reduction_operation.xhtml">NEReductionOperation</a></td></tr>
2232<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to simulate a reduction operation. <a href="classarm__compute_1_1_n_e_reduction_operation.xhtml#details">More...</a><br /></td></tr>
2233<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2234<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_reduction_operation_kernel.xhtml">NEReductionOperationKernel</a></td></tr>
2235<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform a reduction operation. <a href="classarm__compute_1_1_n_e_reduction_operation_kernel.xhtml#details">More...</a><br /></td></tr>
2236<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2237<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_remap.xhtml">NERemap</a></td></tr>
2238<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute remap. <a href="classarm__compute_1_1_n_e_remap.xhtml#details">More...</a><br /></td></tr>
2239<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2240<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_remap_kernel.xhtml">NERemapKernel</a></td></tr>
2241<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform a remap on a tensor. <a href="classarm__compute_1_1_n_e_remap_kernel.xhtml#details">More...</a><br /></td></tr>
2242<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00002243<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_reorg_layer.xhtml">NEReorgLayer</a></td></tr>
2244<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_reorg_layer_kernel.xhtml">NEReorgLayerKernel</a>. <a href="classarm__compute_1_1_n_e_reorg_layer.xhtml#details">More...</a><br /></td></tr>
2245<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2246<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_reorg_layer_kernel.xhtml">NEReorgLayerKernel</a></td></tr>
2247<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform tensor re-organization. <a href="classarm__compute_1_1_n_e_reorg_layer_kernel.xhtml#details">More...</a><br /></td></tr>
2248<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002249<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_reshape_layer.xhtml">NEReshapeLayer</a></td></tr>
2250<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_reshape_layer_kernel.xhtml">NEReshapeLayerKernel</a>. <a href="classarm__compute_1_1_n_e_reshape_layer.xhtml#details">More...</a><br /></td></tr>
2251<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2252<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_reshape_layer_kernel.xhtml">NEReshapeLayerKernel</a></td></tr>
2253<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform tensor reshaping. <a href="classarm__compute_1_1_n_e_reshape_layer_kernel.xhtml#details">More...</a><br /></td></tr>
2254<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002255<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_reverse.xhtml">NEReverse</a></td></tr>
2256<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_reverse_kernel.xhtml">NEReverseKernel</a>. <a href="classarm__compute_1_1_n_e_reverse.xhtml#details">More...</a><br /></td></tr>
2257<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2258<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_reverse_kernel.xhtml">NEReverseKernel</a></td></tr>
2259<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the reverse layer kernel. <a href="classarm__compute_1_1_n_e_reverse_kernel.xhtml#details">More...</a><br /></td></tr>
2260<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00002261<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_r_n_n_layer.xhtml">NERNNLayer</a></td></tr>
2262<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_r_n_n_layer.xhtml">NERNNLayer</a>. <a href="classarm__compute_1_1_n_e_r_n_n_layer.xhtml#details">More...</a><br /></td></tr>
2263<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002264<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_r_o_i_pooling_layer.xhtml">NEROIPoolingLayer</a></td></tr>
2265<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_r_o_i_pooling_layer_kernel.xhtml">NEROIPoolingLayerKernel</a>. <a href="classarm__compute_1_1_n_e_r_o_i_pooling_layer.xhtml#details">More...</a><br /></td></tr>
2266<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2267<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_r_o_i_pooling_layer_kernel.xhtml">NEROIPoolingLayerKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002268<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the ROI pooling layer kernel. <a href="classarm__compute_1_1_n_e_r_o_i_pooling_layer_kernel.xhtml#details">More...</a><br /></td></tr>
2269<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2270<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_rsqrt_layer.xhtml">NERsqrtLayer</a></td></tr>
2271<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to perform inverse square root on an input tensor. <a href="classarm__compute_1_1_n_e_rsqrt_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002272<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2273<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_scale.xhtml">NEScale</a></td></tr>
2274<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_scale_kernel.xhtml">NEScaleKernel</a>. <a href="classarm__compute_1_1_n_e_scale.xhtml#details">More...</a><br /></td></tr>
2275<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2276<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_scale_kernel.xhtml">NEScaleKernel</a></td></tr>
2277<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform scaling on a tensor. <a href="classarm__compute_1_1_n_e_scale_kernel.xhtml#details">More...</a><br /></td></tr>
2278<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2279<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_scharr3x3.xhtml">NEScharr3x3</a></td></tr>
2280<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute scharr 3x3 filter. <a href="classarm__compute_1_1_n_e_scharr3x3.xhtml#details">More...</a><br /></td></tr>
2281<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2282<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_scharr3x3_kernel.xhtml">NEScharr3x3Kernel</a></td></tr>
2283<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run a 3x3 Scharr filter on a tensor. <a href="classarm__compute_1_1_n_e_scharr3x3_kernel.xhtml#details">More...</a><br /></td></tr>
2284<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002285<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_select.xhtml">NESelect</a></td></tr>
2286<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_select.xhtml">NESelect</a>. <a href="classarm__compute_1_1_n_e_select.xhtml#details">More...</a><br /></td></tr>
2287<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2288<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_select_kernel.xhtml">NESelectKernel</a></td></tr>
2289<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the select kernel. <a href="classarm__compute_1_1_n_e_select_kernel.xhtml#details">More...</a><br /></td></tr>
2290<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002291<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_separable_convolution_hor_kernel.xhtml">NESeparableConvolutionHorKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002292<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> for the Horizontal pass of a Separable Convolution. <a href="classarm__compute_1_1_n_e_separable_convolution_hor_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002293<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2294<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_separable_convolution_vert_kernel.xhtml">NESeparableConvolutionVertKernel</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002295<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> for the Vertical pass of a Separable Convolution. <a href="classarm__compute_1_1_n_e_separable_convolution_vert_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002296<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00002297<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_simple_assembly_function.xhtml">NESimpleAssemblyFunction</a></td></tr>
2298<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic interface for functions which have a single NEON GEMM wrapper kernel to run. <a href="classarm__compute_1_1_n_e_simple_assembly_function.xhtml#details">More...</a><br /></td></tr>
2299<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002300<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_slice.xhtml">NESlice</a></td></tr>
2301<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to perform tensor slicing. <a href="classarm__compute_1_1_n_e_slice.xhtml#details">More...</a><br /></td></tr>
2302<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002303<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_sobel3x3.xhtml">NESobel3x3</a></td></tr>
2304<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute sobel 3x3 filter. <a href="classarm__compute_1_1_n_e_sobel3x3.xhtml#details">More...</a><br /></td></tr>
2305<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2306<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_sobel3x3_kernel.xhtml">NESobel3x3Kernel</a></td></tr>
2307<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run a 3x3 Sobel X filter on a tensor. <a href="classarm__compute_1_1_n_e_sobel3x3_kernel.xhtml#details">More...</a><br /></td></tr>
2308<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2309<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_sobel5x5.xhtml">NESobel5x5</a></td></tr>
2310<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute sobel 5x5 filter. <a href="classarm__compute_1_1_n_e_sobel5x5.xhtml#details">More...</a><br /></td></tr>
2311<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2312<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_sobel5x5_hor_kernel.xhtml">NESobel5x5HorKernel</a></td></tr>
2313<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run the horizontal pass of 5x5 Sobel filter on a tensor. <a href="classarm__compute_1_1_n_e_sobel5x5_hor_kernel.xhtml#details">More...</a><br /></td></tr>
2314<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2315<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_sobel5x5_vert_kernel.xhtml">NESobel5x5VertKernel</a></td></tr>
2316<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run the vertical pass of 5x5 Sobel Y filter on a tensor. <a href="classarm__compute_1_1_n_e_sobel5x5_vert_kernel.xhtml#details">More...</a><br /></td></tr>
2317<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2318<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_sobel7x7.xhtml">NESobel7x7</a></td></tr>
2319<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute sobel 7x7 filter. <a href="classarm__compute_1_1_n_e_sobel7x7.xhtml#details">More...</a><br /></td></tr>
2320<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2321<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_sobel7x7_hor_kernel.xhtml">NESobel7x7HorKernel</a></td></tr>
2322<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run the horizontal pass of 7x7 Sobel filter on a tensor. <a href="classarm__compute_1_1_n_e_sobel7x7_hor_kernel.xhtml#details">More...</a><br /></td></tr>
2323<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2324<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_sobel7x7_vert_kernel.xhtml">NESobel7x7VertKernel</a></td></tr>
2325<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to run the vertical pass of 7x7 Sobel Y filter on a tensor. <a href="classarm__compute_1_1_n_e_sobel7x7_vert_kernel.xhtml#details">More...</a><br /></td></tr>
2326<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2327<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_softmax_layer.xhtml">NESoftmaxLayer</a></td></tr>
2328<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to compute a SoftmaxLayer. <a href="classarm__compute_1_1_n_e_softmax_layer.xhtml#details">More...</a><br /></td></tr>
2329<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002330<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_split.xhtml">NESplit</a></td></tr>
2331<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to split a tensor along a given axis. <a href="classarm__compute_1_1_n_e_split.xhtml#details">More...</a><br /></td></tr>
2332<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2333<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_stack_layer.xhtml">NEStackLayer</a></td></tr>
2334<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to stack tensors along an axis. <a href="classarm__compute_1_1_n_e_stack_layer.xhtml#details">More...</a><br /></td></tr>
2335<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2336<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_stack_layer_kernel.xhtml">NEStackLayerKernel</a></td></tr>
2337<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to stacks a rank-R tensor into one with rank-(R+1) along the axis dimension. <a href="classarm__compute_1_1_n_e_stack_layer_kernel.xhtml#details">More...</a><br /></td></tr>
2338<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2339<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_strided_slice.xhtml">NEStridedSlice</a></td></tr>
2340<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_strided_slice_kernel.xhtml">NEStridedSliceKernel</a>. <a href="classarm__compute_1_1_n_e_strided_slice.xhtml#details">More...</a><br /></td></tr>
2341<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2342<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_strided_slice_kernel.xhtml">NEStridedSliceKernel</a></td></tr>
2343<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform tensor strided slicing. <a href="classarm__compute_1_1_n_e_strided_slice_kernel.xhtml#details">More...</a><br /></td></tr>
2344<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002345<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_table_lookup.xhtml">NETableLookup</a></td></tr>
2346<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_table_lookup_kernel.xhtml">NETableLookupKernel</a>. <a href="classarm__compute_1_1_n_e_table_lookup.xhtml#details">More...</a><br /></td></tr>
2347<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2348<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_table_lookup_kernel.xhtml">NETableLookupKernel</a></td></tr>
2349<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel to perform table lookup calculations. <a href="classarm__compute_1_1_n_e_table_lookup_kernel.xhtml#details">More...</a><br /></td></tr>
2350<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2351<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_threshold.xhtml">NEThreshold</a></td></tr>
2352<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_threshold_kernel.xhtml">NEThresholdKernel</a>. <a href="classarm__compute_1_1_n_e_threshold.xhtml#details">More...</a><br /></td></tr>
2353<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2354<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_threshold_kernel.xhtml">NEThresholdKernel</a></td></tr>
2355<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the thresholding kernel. <a href="classarm__compute_1_1_n_e_threshold_kernel.xhtml#details">More...</a><br /></td></tr>
2356<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002357<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_tile.xhtml">NETile</a></td></tr>
2358<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_tile_kernel.xhtml">NETileKernel</a>. <a href="classarm__compute_1_1_n_e_tile.xhtml#details">More...</a><br /></td></tr>
2359<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2360<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_tile_kernel.xhtml">NETileKernel</a></td></tr>
2361<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform a tile operation. <a href="classarm__compute_1_1_n_e_tile_kernel.xhtml#details">More...</a><br /></td></tr>
2362<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002363<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_transpose.xhtml">NETranspose</a></td></tr>
2364<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to transpose a matrix on NEON. <a href="classarm__compute_1_1_n_e_transpose.xhtml#details">More...</a><br /></td></tr>
2365<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2366<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_transpose_kernel.xhtml">NETransposeKernel</a></td></tr>
2367<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel which transposes the elements of a matrix. <a href="classarm__compute_1_1_n_e_transpose_kernel.xhtml#details">More...</a><br /></td></tr>
2368<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002369<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_unstack.xhtml">NEUnstack</a></td></tr>
2370<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to unpack a rank-R tensor into rank-(R-1) tensors. <a href="classarm__compute_1_1_n_e_unstack.xhtml#details">More...</a><br /></td></tr>
2371<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00002372<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_upsample_layer.xhtml">NEUpsampleLayer</a></td></tr>
2373<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to run upsample layer. <a href="classarm__compute_1_1_n_e_upsample_layer.xhtml#details">More...</a><br /></td></tr>
2374<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2375<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_upsample_layer_kernel.xhtml">NEUpsampleLayerKernel</a></td></tr>
2376<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the Upsample layer kernel. <a href="classarm__compute_1_1_n_e_upsample_layer_kernel.xhtml#details">More...</a><br /></td></tr>
2377<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002378<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_warp_affine.xhtml">NEWarpAffine</a></td></tr>
2379<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_warp_affine_kernel.xhtml">NEWarpAffineKernel</a>. <a href="classarm__compute_1_1_n_e_warp_affine.xhtml#details">More...</a><br /></td></tr>
2380<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2381<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_warp_affine_kernel.xhtml">NEWarpAffineKernel</a></td></tr>
2382<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template interface for the kernel to compute warp affine. <a href="classarm__compute_1_1_n_e_warp_affine_kernel.xhtml#details">More...</a><br /></td></tr>
2383<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2384<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_warp_perspective.xhtml">NEWarpPerspective</a></td></tr>
2385<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_warp_perspective_kernel.xhtml">NEWarpPerspectiveKernel</a>. <a href="classarm__compute_1_1_n_e_warp_perspective.xhtml#details">More...</a><br /></td></tr>
2386<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2387<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_warp_perspective_kernel.xhtml">NEWarpPerspectiveKernel</a></td></tr>
2388<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template interface for the kernel to compute warp perspective. <a href="classarm__compute_1_1_n_e_warp_perspective_kernel.xhtml#details">More...</a><br /></td></tr>
2389<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2390<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_weights_reshape_kernel.xhtml">NEWeightsReshapeKernel</a></td></tr>
2391<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform reshaping on the weights used by convolution and locally connected layer. <a href="classarm__compute_1_1_n_e_weights_reshape_kernel.xhtml#details">More...</a><br /></td></tr>
2392<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00002393<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_width_concatenate_layer.xhtml">NEWidthConcatenateLayer</a></td></tr>
2394<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to execute concatenate tensors along x axis. <a href="classarm__compute_1_1_n_e_width_concatenate_layer.xhtml#details">More...</a><br /></td></tr>
2395<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2396<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_width_concatenate_layer_kernel.xhtml">NEWidthConcatenateLayerKernel</a></td></tr>
2397<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the width concatenate kernel. <a href="classarm__compute_1_1_n_e_width_concatenate_layer_kernel.xhtml#details">More...</a><br /></td></tr>
2398<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002399<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_winograd_convolution_layer.xhtml">NEWinogradConvolutionLayer</a></td></tr>
2400<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to simulate a convolution layer. <a href="classarm__compute_1_1_n_e_winograd_convolution_layer.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002401<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00002402<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_winograd_layer_configuration.xhtml">NEWinogradLayerConfiguration</a></td></tr>
2403<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform Winograd. <a href="classarm__compute_1_1_n_e_winograd_layer_configuration.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00002404<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2405<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_winograd_layer_transform_input_kernel.xhtml">NEWinogradLayerTransformInputKernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002406<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform Winograd input transform. <a href="classarm__compute_1_1_n_e_winograd_layer_transform_input_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00002407<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2408<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_winograd_layer_transform_output_kernel.xhtml">NEWinogradLayerTransformOutputKernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002409<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform Winograd output transform. <a href="classarm__compute_1_1_n_e_winograd_layer_transform_output_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00002410<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2411<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_winograd_layer_transform_weights_kernel.xhtml">NEWinogradLayerTransformWeightsKernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002412<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform Winograd weights transform. <a href="classarm__compute_1_1_n_e_winograd_layer_transform_weights_kernel.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002413<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00002414<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_y_o_l_o_layer.xhtml">NEYOLOLayer</a></td></tr>
2415<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run <a class="el" href="classarm__compute_1_1_n_e_y_o_l_o_layer_kernel.xhtml">NEYOLOLayerKernel</a>. <a href="classarm__compute_1_1_n_e_y_o_l_o_layer.xhtml#details">More...</a><br /></td></tr>
2416<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2417<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_n_e_y_o_l_o_layer_kernel.xhtml">NEYOLOLayerKernel</a></td></tr>
2418<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the YOLO layer kernel. <a href="classarm__compute_1_1_n_e_y_o_l_o_layer_kernel.xhtml#details">More...</a><br /></td></tr>
2419<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002420<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">NormalizationLayerInfo</a></td></tr>
2421<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalization Layer Information class. <a href="classarm__compute_1_1_normalization_layer_info.xhtml#details">More...</a><br /></td></tr>
2422<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2423<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_offset_lifetime_manager.xhtml">OffsetLifetimeManager</a></td></tr>
2424<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Concrete class that tracks the lifetime of registered tensors and calculates the systems memory requirements in terms of a single blob and a list of offsets. <a href="classarm__compute_1_1_offset_lifetime_manager.xhtml#details">More...</a><br /></td></tr>
2425<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2426<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_offset_memory_pool.xhtml">OffsetMemoryPool</a></td></tr>
2427<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Offset based memory pool. <a href="classarm__compute_1_1_offset_memory_pool.xhtml#details">More...</a><br /></td></tr>
2428<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2429<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_o_m_p_scheduler.xhtml">OMPScheduler</a></td></tr>
2430<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pool of threads to automatically split a kernel's execution among several threads. <a href="classarm__compute_1_1_o_m_p_scheduler.xhtml#details">More...</a><br /></td></tr>
2431<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002432<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_optical_flow_parameters.xhtml">OpticalFlowParameters</a></td></tr>
2433<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parameters of Optical Flow algorithm. <a href="structarm__compute_1_1_optical_flow_parameters.xhtml#details">More...</a><br /></td></tr>
2434<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002435<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a></td></tr>
2436<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Padding and stride information class. <a href="classarm__compute_1_1_pad_stride_info.xhtml#details">More...</a><br /></td></tr>
2437<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2438<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_pixel_value.xhtml">PixelValue</a></td></tr>
2439<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class describing the value of a pixel for any image format. <a href="classarm__compute_1_1_pixel_value.xhtml#details">More...</a><br /></td></tr>
2440<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2441<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_pooling_layer_info.xhtml">PoolingLayerInfo</a></td></tr>
2442<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pooling Layer Information class. <a href="classarm__compute_1_1_pooling_layer_info.xhtml#details">More...</a><br /></td></tr>
2443<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2444<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_pool_manager.xhtml">PoolManager</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002445<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object.">Memory</a> pool manager. <a href="classarm__compute_1_1_pool_manager.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002446<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00002447<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml">PriorBoxLayerInfo</a></td></tr>
2448<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">PriorBox layer info. <a href="classarm__compute_1_1_prior_box_layer_info.xhtml#details">More...</a><br /></td></tr>
2449<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002450<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_program.xhtml">Program</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002451<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_program.xhtml" title="Program class.">Program</a> class. <a href="classarm__compute_1_1_program.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002452<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2453<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_pyramid.xhtml">Pyramid</a></td></tr>
2454<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the pyramid interface. <a href="classarm__compute_1_1_pyramid.xhtml#details">More...</a><br /></td></tr>
2455<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2456<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_pyramid_info.xhtml">PyramidInfo</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002457<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Store the <a class="el" href="classarm__compute_1_1_pyramid.xhtml" title="Basic implementation of the pyramid interface.">Pyramid</a>'s metadata. <a href="classarm__compute_1_1_pyramid_info.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002458<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2459<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a></td></tr>
2460<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Quantization settings (used for QASYMM8 data type) <a href="structarm__compute_1_1_quantization_info.xhtml#details">More...</a><br /></td></tr>
2461<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2462<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_rectangle.xhtml">Rectangle</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002463<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="structarm__compute_1_1_rectangle.xhtml" title="Rectangle type.">Rectangle</a> type. <a href="structarm__compute_1_1_rectangle.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002464<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2465<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_r_o_i_pooling_layer_info.xhtml">ROIPoolingLayerInfo</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002466<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">ROI Pooling Layer Information class. <a href="classarm__compute_1_1_r_o_i_pooling_layer_info.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002467<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2468<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_scheduler.xhtml">Scheduler</a></td></tr>
2469<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configurable scheduler which supports multiple multithreading APIs and choosing between different schedulers at runtime. <a href="classarm__compute_1_1_scheduler.xhtml#details">More...</a><br /></td></tr>
2470<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01002471<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_semaphore.xhtml">Semaphore</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002472<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Semamphore class. <a href="classarm__compute_1_1_semaphore.xhtml#details">More...</a><br /></td></tr>
2473<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2474<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_single_thread_scheduler.xhtml">SingleThreadScheduler</a></td></tr>
2475<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pool of threads to automatically split a kernel's execution among several threads. <a href="classarm__compute_1_1_single_thread_scheduler.xhtml#details">More...</a><br /></td></tr>
2476<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2477<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a></td></tr>
2478<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class for specifying the size of an image or rectangle. <a href="classarm__compute_1_1_size2_d.xhtml#details">More...</a><br /></td></tr>
2479<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2480<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_status.xhtml">Status</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002481<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> class. <a href="classarm__compute_1_1_status.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002482<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2483<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a></td></tr>
2484<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class to describe a number of elements in each dimension. <a href="classarm__compute_1_1_steps.xhtml#details">More...</a><br /></td></tr>
2485<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2486<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002487<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_strides.xhtml" title="Strides of an item in bytes.">Strides</a> of an item in bytes. <a href="classarm__compute_1_1_strides.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002488<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2489<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_sub_tensor.xhtml">SubTensor</a></td></tr>
2490<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the sub-tensor interface. <a href="classarm__compute_1_1_sub_tensor.xhtml#details">More...</a><br /></td></tr>
2491<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2492<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_sub_tensor_info.xhtml">SubTensorInfo</a></td></tr>
2493<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Store the sub tensor's metadata. <a href="classarm__compute_1_1_sub_tensor_info.xhtml#details">More...</a><br /></td></tr>
2494<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2495<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_tensor.xhtml">Tensor</a></td></tr>
2496<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of the tensor interface. <a href="classarm__compute_1_1_tensor.xhtml#details">More...</a><br /></td></tr>
2497<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00002498<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_tensor_accessor.xhtml">TensorAccessor</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002499<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> accessors to make it easier to interface with <a class="el" href="namespacearm__gemm.xhtml">arm_gemm</a>. <a href="classarm__compute_1_1_tensor_accessor.xhtml#details">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00002500<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002501<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_tensor_allocator.xhtml">TensorAllocator</a></td></tr>
2502<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic implementation of a CPU memory tensor allocator. <a href="classarm__compute_1_1_tensor_allocator.xhtml#details">More...</a><br /></td></tr>
2503<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2504<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_tensor_info.xhtml">TensorInfo</a></td></tr>
2505<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Store the tensor's metadata. <a href="classarm__compute_1_1_tensor_info.xhtml#details">More...</a><br /></td></tr>
2506<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2507<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a></td></tr>
2508<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shape of a tensor. <a href="classarm__compute_1_1_tensor_shape.xhtml#details">More...</a><br /></td></tr>
2509<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2510<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_thread_info.xhtml">ThreadInfo</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002511<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Information about executing thread and CPU. <a href="structarm__compute_1_1_thread_info.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002512<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2513<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002514<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Container for valid region of a window. <a href="structarm__compute_1_1_valid_region.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002515<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2516<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_weights_info.xhtml">WeightsInfo</a></td></tr>
2517<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convolution Layer Weights Information class. <a href="classarm__compute_1_1_weights_info.xhtml#details">More...</a><br /></td></tr>
2518<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
2519<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a></td></tr>
2520<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Describe a multidimensional execution window. <a href="classarm__compute_1_1_window.xhtml#details">More...</a><br /></td></tr>
2521<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00002522<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_window_iterator.xhtml">WindowIterator</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002523<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Iterate over a portion of a <a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a>. <a href="classarm__compute_1_1_window_iterator.xhtml#details">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00002524<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002525<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1_winograd_info.xhtml">WinogradInfo</a></td></tr>
2526<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Winograd information. <a href="structarm__compute_1_1_winograd_info.xhtml#details">More...</a><br /></td></tr>
2527<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002528</table><table class="memberdecls">
2529<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
2530Typedefs</h2></td></tr>
2531<tr class="memitem:adb969f0e554bf563f2fa671399d59280"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adb969f0e554bf563f2fa671399d59280">ICLKeyPointArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt; <a class="el" href="structarm__compute_1_1_key_point.xhtml">KeyPoint</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002532<tr class="memdesc:adb969f0e554bf563f2fa671399d59280"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Key Points. <a href="#adb969f0e554bf563f2fa671399d59280">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002533<tr class="separator:adb969f0e554bf563f2fa671399d59280"><td class="memSeparator" colspan="2">&#160;</td></tr>
2534<tr class="memitem:adf4063963bf3a4b07a5d0cc840da9ee2"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adf4063963bf3a4b07a5d0cc840da9ee2">ICLCoordinates2DArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt; <a class="el" href="structarm__compute_1_1_coordinates2_d.xhtml">Coordinates2D</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002535<tr class="memdesc:adf4063963bf3a4b07a5d0cc840da9ee2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a>. <a href="#adf4063963bf3a4b07a5d0cc840da9ee2">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002536<tr class="separator:adf4063963bf3a4b07a5d0cc840da9ee2"><td class="memSeparator" colspan="2">&#160;</td></tr>
2537<tr class="memitem:a4cc908807b0a45ccc6ce7ba340ae2259"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4cc908807b0a45ccc6ce7ba340ae2259">ICLDetectionWindowArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt; <a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002538<tr class="memdesc:a4cc908807b0a45ccc6ce7ba340ae2259"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Detection Windows. <a href="#a4cc908807b0a45ccc6ce7ba340ae2259">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002539<tr class="separator:a4cc908807b0a45ccc6ce7ba340ae2259"><td class="memSeparator" colspan="2">&#160;</td></tr>
2540<tr class="memitem:a68396eee600b3d23bf7f95a802e65dff"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a68396eee600b3d23bf7f95a802e65dff">ICLSize2DArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt; <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002541<tr class="memdesc:a68396eee600b3d23bf7f95a802e65dff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D Sizes. <a href="#a68396eee600b3d23bf7f95a802e65dff">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002542<tr class="separator:a68396eee600b3d23bf7f95a802e65dff"><td class="memSeparator" colspan="2">&#160;</td></tr>
2543<tr class="memitem:a72251c7a73b3c057ffca9f32ee3e19ea"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a72251c7a73b3c057ffca9f32ee3e19ea">ICLUInt8Array</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt; cl_uchar &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002544<tr class="memdesc:a72251c7a73b3c057ffca9f32ee3e19ea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint8s. <a href="#a72251c7a73b3c057ffca9f32ee3e19ea">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002545<tr class="separator:a72251c7a73b3c057ffca9f32ee3e19ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
2546<tr class="memitem:aed5c7222c31a34327f00de37d8c4f4fc"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aed5c7222c31a34327f00de37d8c4f4fc">ICLUInt16Array</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt; cl_ushort &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002547<tr class="memdesc:aed5c7222c31a34327f00de37d8c4f4fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint16s. <a href="#aed5c7222c31a34327f00de37d8c4f4fc">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002548<tr class="separator:aed5c7222c31a34327f00de37d8c4f4fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
2549<tr class="memitem:a6b5f839e8d27c6351e8d58812dd46c97"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6b5f839e8d27c6351e8d58812dd46c97">ICLUInt32Array</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt; cl_uint &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002550<tr class="memdesc:a6b5f839e8d27c6351e8d58812dd46c97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint32s. <a href="#a6b5f839e8d27c6351e8d58812dd46c97">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002551<tr class="separator:a6b5f839e8d27c6351e8d58812dd46c97"><td class="memSeparator" colspan="2">&#160;</td></tr>
2552<tr class="memitem:a67328fa21e30aecd0c27d6d2e63a2b9c"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a67328fa21e30aecd0c27d6d2e63a2b9c">ICLInt16Array</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt; cl_short &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002553<tr class="memdesc:a67328fa21e30aecd0c27d6d2e63a2b9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int16s. <a href="#a67328fa21e30aecd0c27d6d2e63a2b9c">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002554<tr class="separator:a67328fa21e30aecd0c27d6d2e63a2b9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
2555<tr class="memitem:ab95380ecf1c0253f6c785c0f59194066"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab95380ecf1c0253f6c785c0f59194066">ICLInt32Array</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt; cl_int &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002556<tr class="memdesc:ab95380ecf1c0253f6c785c0f59194066"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int32s. <a href="#ab95380ecf1c0253f6c785c0f59194066">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002557<tr class="separator:ab95380ecf1c0253f6c785c0f59194066"><td class="memSeparator" colspan="2">&#160;</td></tr>
2558<tr class="memitem:a631bac7c033a0d341c631870f9755217"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a631bac7c033a0d341c631870f9755217">ICLFloatArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt; cl_float &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002559<tr class="memdesc:a631bac7c033a0d341c631870f9755217"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of floats. <a href="#a631bac7c033a0d341c631870f9755217">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002560<tr class="separator:a631bac7c033a0d341c631870f9755217"><td class="memSeparator" colspan="2">&#160;</td></tr>
2561<tr class="memitem:aa80145f30ddae0c2ccbcaa910e3e71dd"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa80145f30ddae0c2ccbcaa910e3e71dd">ICLImage</a> = <a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002562<tr class="memdesc:aa80145f30ddae0c2ccbcaa910e3e71dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL images. <a href="#aa80145f30ddae0c2ccbcaa910e3e71dd">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002563<tr class="separator:aa80145f30ddae0c2ccbcaa910e3e71dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
2564<tr class="memitem:a4751499f1c526c7285e7e946c2e84541"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4751499f1c526c7285e7e946c2e84541">CLConvolution3x3Kernel</a> = <a class="el" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml">CLConvolutionKernel</a>&lt; 3 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002565<tr class="memdesc:a4751499f1c526c7285e7e946c2e84541"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applies a 3x3 convolution to a tensor. <a href="#a4751499f1c526c7285e7e946c2e84541">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002566<tr class="separator:a4751499f1c526c7285e7e946c2e84541"><td class="memSeparator" colspan="2">&#160;</td></tr>
2567<tr class="memitem:ac4cfbdf439d7bf5d420546298bd5ca0d"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac4cfbdf439d7bf5d420546298bd5ca0d">CLConvolution5x5Kernel</a> = <a class="el" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml">CLConvolutionKernel</a>&lt; 5 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002568<tr class="memdesc:ac4cfbdf439d7bf5d420546298bd5ca0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applies a 5x5 convolution to a tensor. <a href="#ac4cfbdf439d7bf5d420546298bd5ca0d">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002569<tr class="separator:ac4cfbdf439d7bf5d420546298bd5ca0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
2570<tr class="memitem:a99a54c937a254c96cd1a29a96ffa7dcf"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a99a54c937a254c96cd1a29a96ffa7dcf">CLConvolution7x7Kernel</a> = <a class="el" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml">CLConvolutionKernel</a>&lt; 7 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002571<tr class="memdesc:a99a54c937a254c96cd1a29a96ffa7dcf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applies a 7x7 convolution to a tensor. <a href="#a99a54c937a254c96cd1a29a96ffa7dcf">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002572<tr class="separator:a99a54c937a254c96cd1a29a96ffa7dcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
2573<tr class="memitem:a908439cd5cf8253865d5c70a413fd607"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a908439cd5cf8253865d5c70a413fd607">CLConvolution9x9Kernel</a> = <a class="el" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml">CLConvolutionKernel</a>&lt; 9 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002574<tr class="memdesc:a908439cd5cf8253865d5c70a413fd607"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applies a 9x9 convolution to a tensor. <a href="#a908439cd5cf8253865d5c70a413fd607">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002575<tr class="separator:a908439cd5cf8253865d5c70a413fd607"><td class="memSeparator" colspan="2">&#160;</td></tr>
2576<tr class="memitem:ac72d613f7270604dbcad2553c278b16c"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac72d613f7270604dbcad2553c278b16c">CLSeparableConvolution5x5HorKernel</a> = <a class="el" href="classarm__compute_1_1_c_l_separable_convolution_hor_kernel.xhtml">CLSeparableConvolutionHorKernel</a>&lt; 5 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002577<tr class="memdesc:ac72d613f7270604dbcad2553c278b16c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applies a horizontal pass of 5x5 convolution to a tensor. <a href="#ac72d613f7270604dbcad2553c278b16c">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002578<tr class="separator:ac72d613f7270604dbcad2553c278b16c"><td class="memSeparator" colspan="2">&#160;</td></tr>
2579<tr class="memitem:aab26624bf4b326f8145b2909a5042004"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aab26624bf4b326f8145b2909a5042004">CLSeparableConvolution7x7HorKernel</a> = <a class="el" href="classarm__compute_1_1_c_l_separable_convolution_hor_kernel.xhtml">CLSeparableConvolutionHorKernel</a>&lt; 7 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002580<tr class="memdesc:aab26624bf4b326f8145b2909a5042004"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applies a horizontal pass of 7x7 convolution to a tensor. <a href="#aab26624bf4b326f8145b2909a5042004">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002581<tr class="separator:aab26624bf4b326f8145b2909a5042004"><td class="memSeparator" colspan="2">&#160;</td></tr>
2582<tr class="memitem:a9f34ccad344bc43d25e8be2b828853aa"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9f34ccad344bc43d25e8be2b828853aa">CLSeparableConvolution9x9HorKernel</a> = <a class="el" href="classarm__compute_1_1_c_l_separable_convolution_hor_kernel.xhtml">CLSeparableConvolutionHorKernel</a>&lt; 9 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002583<tr class="memdesc:a9f34ccad344bc43d25e8be2b828853aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applies a horizontal pass of 9x9 convolution to a tensor. <a href="#a9f34ccad344bc43d25e8be2b828853aa">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002584<tr class="separator:a9f34ccad344bc43d25e8be2b828853aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
2585<tr class="memitem:ac7295b0d8d71be75033238ad7fbba38c"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac7295b0d8d71be75033238ad7fbba38c">CLSeparableConvolution5x5VertKernel</a> = <a class="el" href="classarm__compute_1_1_c_l_separable_convolution_vert_kernel.xhtml">CLSeparableConvolutionVertKernel</a>&lt; 5 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002586<tr class="memdesc:ac7295b0d8d71be75033238ad7fbba38c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applies a vertical pass of 5x5 convolution to a tensor. <a href="#ac7295b0d8d71be75033238ad7fbba38c">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002587<tr class="separator:ac7295b0d8d71be75033238ad7fbba38c"><td class="memSeparator" colspan="2">&#160;</td></tr>
2588<tr class="memitem:a0ffdf01e236016ce8d366a69875d1375"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0ffdf01e236016ce8d366a69875d1375">CLSeparableConvolution7x7VertKernel</a> = <a class="el" href="classarm__compute_1_1_c_l_separable_convolution_vert_kernel.xhtml">CLSeparableConvolutionVertKernel</a>&lt; 7 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002589<tr class="memdesc:a0ffdf01e236016ce8d366a69875d1375"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applies a vertical pass of 7x7 convolution to a tensor. <a href="#a0ffdf01e236016ce8d366a69875d1375">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002590<tr class="separator:a0ffdf01e236016ce8d366a69875d1375"><td class="memSeparator" colspan="2">&#160;</td></tr>
2591<tr class="memitem:a6d08e1e881bf611c1e1b9e2bb8810d19"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6d08e1e881bf611c1e1b9e2bb8810d19">CLSeparableConvolution9x9VertKernel</a> = <a class="el" href="classarm__compute_1_1_c_l_separable_convolution_vert_kernel.xhtml">CLSeparableConvolutionVertKernel</a>&lt; 9 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002592<tr class="memdesc:a6d08e1e881bf611c1e1b9e2bb8810d19"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applies a vertical pass of 9x9 convolution to a tensor. <a href="#a6d08e1e881bf611c1e1b9e2bb8810d19">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002593<tr class="separator:a6d08e1e881bf611c1e1b9e2bb8810d19"><td class="memSeparator" colspan="2">&#160;</td></tr>
2594<tr class="memitem:a569a32a7a853d4708fd4f4840c88a157"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a569a32a7a853d4708fd4f4840c88a157">ICLLKInternalKeypointArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt; <a class="el" href="structarm__compute_1_1_c_l_l_k_internal_keypoint.xhtml">CLLKInternalKeypoint</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002595<tr class="memdesc:a569a32a7a853d4708fd4f4840c88a157"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Internal Key Points. <a href="#a569a32a7a853d4708fd4f4840c88a157">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002596<tr class="separator:a569a32a7a853d4708fd4f4840c88a157"><td class="memSeparator" colspan="2">&#160;</td></tr>
2597<tr class="memitem:a05d88c40a53babe38cb2cb5841c4a0ad"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a05d88c40a53babe38cb2cb5841c4a0ad">ICLCoefficientTableArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt; <a class="el" href="structarm__compute_1_1_c_l_coefficient_table.xhtml">CLCoefficientTable</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002598<tr class="memdesc:a05d88c40a53babe38cb2cb5841c4a0ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Coefficient Tables. <a href="#a05d88c40a53babe38cb2cb5841c4a0ad">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002599<tr class="separator:a05d88c40a53babe38cb2cb5841c4a0ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
2600<tr class="memitem:a0339a19c93dde6754834a7d4ec7dab73"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0339a19c93dde6754834a7d4ec7dab73">ICLOldValArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt; <a class="el" href="structarm__compute_1_1_c_l_old_value.xhtml">CLOldValue</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002601<tr class="memdesc:a0339a19c93dde6754834a7d4ec7dab73"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Old Values. <a href="#a0339a19c93dde6754834a7d4ec7dab73">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002602<tr class="separator:a0339a19c93dde6754834a7d4ec7dab73"><td class="memSeparator" colspan="2">&#160;</td></tr>
2603<tr class="memitem:ac20902ac1ef01783c8a8d71a9bdf1100"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a> = <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002604<tr class="memdesc:ac20902ac1ef01783c8a8d71a9bdf1100"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for CPP Images. <a href="#ac20902ac1ef01783c8a8d71a9bdf1100">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002605<tr class="separator:ac20902ac1ef01783c8a8d71a9bdf1100"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002606<tr class="memitem:a39070701484fa98eaa18cfcdb6aeb175"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a39070701484fa98eaa18cfcdb6aeb175">IGCImage</a> = <a class="el" href="classarm__compute_1_1_i_g_c_tensor.xhtml">IGCTensor</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002607<tr class="memdesc:a39070701484fa98eaa18cfcdb6aeb175"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for GLES Compute image. <a href="#a39070701484fa98eaa18cfcdb6aeb175">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002608<tr class="separator:a39070701484fa98eaa18cfcdb6aeb175"><td class="memSeparator" colspan="2">&#160;</td></tr>
2609<tr class="memitem:a10f3af894ca8b0479a5e6bc296083314"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a10f3af894ca8b0479a5e6bc296083314">GCDirectConvolutionLayer1x1Kernel</a> = <a class="el" href="classarm__compute_1_1_g_c_direct_convolution_layer_kernel.xhtml">GCDirectConvolutionLayerKernel</a>&lt; 1 &gt;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002610<tr class="memdesc:a10f3af894ca8b0479a5e6bc296083314"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the 1x1 direct convolution kernel. <a href="#a10f3af894ca8b0479a5e6bc296083314">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002611<tr class="separator:a10f3af894ca8b0479a5e6bc296083314"><td class="memSeparator" colspan="2">&#160;</td></tr>
2612<tr class="memitem:a35ccf8834da8b67bfb9c61fbc5e5f1e6"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a35ccf8834da8b67bfb9c61fbc5e5f1e6">GCDirectConvolutionLayer3x3Kernel</a> = <a class="el" href="classarm__compute_1_1_g_c_direct_convolution_layer_kernel.xhtml">GCDirectConvolutionLayerKernel</a>&lt; 3 &gt;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002613<tr class="memdesc:a35ccf8834da8b67bfb9c61fbc5e5f1e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the 3x3 direct convolution kernel. <a href="#a35ccf8834da8b67bfb9c61fbc5e5f1e6">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002614<tr class="separator:a35ccf8834da8b67bfb9c61fbc5e5f1e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
2615<tr class="memitem:a227e525a4d0a4da25040cfdf8a3cf06b"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a227e525a4d0a4da25040cfdf8a3cf06b">GCDirectConvolutionLayer5x5Kernel</a> = <a class="el" href="classarm__compute_1_1_g_c_direct_convolution_layer_kernel.xhtml">GCDirectConvolutionLayerKernel</a>&lt; 5 &gt;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002616<tr class="memdesc:a227e525a4d0a4da25040cfdf8a3cf06b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the 5x5 direct convolution kernel. <a href="#a227e525a4d0a4da25040cfdf8a3cf06b">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002617<tr class="separator:a227e525a4d0a4da25040cfdf8a3cf06b"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002618<tr class="memitem:ab56a557a5fdf97819f23c35c24f0b0d2"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab56a557a5fdf97819f23c35c24f0b0d2">IKeyPointArray</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt; <a class="el" href="structarm__compute_1_1_key_point.xhtml">KeyPoint</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002619<tr class="memdesc:ab56a557a5fdf97819f23c35c24f0b0d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Key Points. <a href="#ab56a557a5fdf97819f23c35c24f0b0d2">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002620<tr class="separator:ab56a557a5fdf97819f23c35c24f0b0d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
2621<tr class="memitem:aac9efd49d3bbbd53779713e5fb37de62"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aac9efd49d3bbbd53779713e5fb37de62">ICoordinates2DArray</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt; <a class="el" href="structarm__compute_1_1_coordinates2_d.xhtml">Coordinates2D</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002622<tr class="memdesc:aac9efd49d3bbbd53779713e5fb37de62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a>. <a href="#aac9efd49d3bbbd53779713e5fb37de62">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002623<tr class="separator:aac9efd49d3bbbd53779713e5fb37de62"><td class="memSeparator" colspan="2">&#160;</td></tr>
2624<tr class="memitem:a52b3b9de6092ae37321159c4c2f1bf40"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a52b3b9de6092ae37321159c4c2f1bf40">IDetectionWindowArray</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt; <a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002625<tr class="memdesc:a52b3b9de6092ae37321159c4c2f1bf40"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Detection Windows. <a href="#a52b3b9de6092ae37321159c4c2f1bf40">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002626<tr class="separator:a52b3b9de6092ae37321159c4c2f1bf40"><td class="memSeparator" colspan="2">&#160;</td></tr>
2627<tr class="memitem:a32e4b9083329486a06960006af89a84c"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a32e4b9083329486a06960006af89a84c">ISize2DArray</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt; <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002628<tr class="memdesc:a32e4b9083329486a06960006af89a84c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D Sizes. <a href="#a32e4b9083329486a06960006af89a84c">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002629<tr class="separator:a32e4b9083329486a06960006af89a84c"><td class="memSeparator" colspan="2">&#160;</td></tr>
2630<tr class="memitem:a276401fd5651e75431d3e1cc90601caa"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a276401fd5651e75431d3e1cc90601caa">IUInt8Array</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt; uint8_t &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002631<tr class="memdesc:a276401fd5651e75431d3e1cc90601caa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint8s. <a href="#a276401fd5651e75431d3e1cc90601caa">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002632<tr class="separator:a276401fd5651e75431d3e1cc90601caa"><td class="memSeparator" colspan="2">&#160;</td></tr>
2633<tr class="memitem:a1ffe8af91a934c926d102938db8d3ce1"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1ffe8af91a934c926d102938db8d3ce1">IUInt16Array</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt; uint16_t &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002634<tr class="memdesc:a1ffe8af91a934c926d102938db8d3ce1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint16s. <a href="#a1ffe8af91a934c926d102938db8d3ce1">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002635<tr class="separator:a1ffe8af91a934c926d102938db8d3ce1"><td class="memSeparator" colspan="2">&#160;</td></tr>
2636<tr class="memitem:ac9b2a6fa6e146437bfc8c0bee96e4760"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac9b2a6fa6e146437bfc8c0bee96e4760">IUInt32Array</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt; uint32_t &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002637<tr class="memdesc:ac9b2a6fa6e146437bfc8c0bee96e4760"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint32s. <a href="#ac9b2a6fa6e146437bfc8c0bee96e4760">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002638<tr class="separator:ac9b2a6fa6e146437bfc8c0bee96e4760"><td class="memSeparator" colspan="2">&#160;</td></tr>
2639<tr class="memitem:a1dd5e04cea002eae658fa2a899848ad7"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1dd5e04cea002eae658fa2a899848ad7">IInt16Array</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt; int16_t &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002640<tr class="memdesc:a1dd5e04cea002eae658fa2a899848ad7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int16s. <a href="#a1dd5e04cea002eae658fa2a899848ad7">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002641<tr class="separator:a1dd5e04cea002eae658fa2a899848ad7"><td class="memSeparator" colspan="2">&#160;</td></tr>
2642<tr class="memitem:a51fdf34dfc5c60b6f4f455f0a9cac457"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a51fdf34dfc5c60b6f4f455f0a9cac457">IInt32Array</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt; int32_t &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002643<tr class="memdesc:a51fdf34dfc5c60b6f4f455f0a9cac457"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int32s. <a href="#a51fdf34dfc5c60b6f4f455f0a9cac457">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002644<tr class="separator:a51fdf34dfc5c60b6f4f455f0a9cac457"><td class="memSeparator" colspan="2">&#160;</td></tr>
2645<tr class="memitem:a8a82a1928159e86b0778c3c14e8842be"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8a82a1928159e86b0778c3c14e8842be">IFloatArray</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt; float &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002646<tr class="memdesc:a8a82a1928159e86b0778c3c14e8842be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of floats. <a href="#a8a82a1928159e86b0778c3c14e8842be">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002647<tr class="separator:a8a82a1928159e86b0778c3c14e8842be"><td class="memSeparator" colspan="2">&#160;</td></tr>
2648<tr class="memitem:a9f3ed96e009111cfbe53d3f77c712390"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9f3ed96e009111cfbe53d3f77c712390">INEKernel</a> = <a class="el" href="classarm__compute_1_1_i_c_p_p_kernel.xhtml">ICPPKernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002649<tr class="memdesc:a9f3ed96e009111cfbe53d3f77c712390"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface for all kernels implemented in NEON. <a href="#a9f3ed96e009111cfbe53d3f77c712390">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002650<tr class="separator:a9f3ed96e009111cfbe53d3f77c712390"><td class="memSeparator" colspan="2">&#160;</td></tr>
2651<tr class="memitem:a4aad0c49ce3d7cf4693830398f190250"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4aad0c49ce3d7cf4693830398f190250">INESimpleKernel</a> = <a class="el" href="classarm__compute_1_1_i_c_p_p_simple_kernel.xhtml">ICPPSimpleKernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002652<tr class="memdesc:a4aad0c49ce3d7cf4693830398f190250"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for simple NEON kernels having 1 tensor input and 1 tensor output. <a href="#a4aad0c49ce3d7cf4693830398f190250">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002653<tr class="separator:a4aad0c49ce3d7cf4693830398f190250"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002654<tr class="memitem:aff99c045b07329b332b1cb97a2dd1518"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aff99c045b07329b332b1cb97a2dd1518">NEAccumulateWeightedFP16Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_accumulate_weighted_kernel.xhtml">NEAccumulateWeightedKernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002655<tr class="memdesc:aff99c045b07329b332b1cb97a2dd1518"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the accumulate weighted kernel using F16. <a href="#aff99c045b07329b332b1cb97a2dd1518">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002656<tr class="separator:aff99c045b07329b332b1cb97a2dd1518"><td class="memSeparator" colspan="2">&#160;</td></tr>
2657<tr class="memitem:a96f7f6f98dc47e0dc3b928bf87397ebf"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a96f7f6f98dc47e0dc3b928bf87397ebf">NEBox3x3FP16Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_box3x3_kernel.xhtml">NEBox3x3Kernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002658<tr class="memdesc:a96f7f6f98dc47e0dc3b928bf87397ebf"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform a Box 3x3 filter for FP16 datatype. <a href="#a96f7f6f98dc47e0dc3b928bf87397ebf">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002659<tr class="separator:a96f7f6f98dc47e0dc3b928bf87397ebf"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002660<tr class="memitem:acf81639b3d33b5da654ef088e4d10520"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acf81639b3d33b5da654ef088e4d10520">NEConvolution3x3Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_kernel.xhtml">NEConvolutionKernel</a>&lt; 3 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002661<tr class="memdesc:acf81639b3d33b5da654ef088e4d10520"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applied a 3x3 convolution to a tensor. <a href="#acf81639b3d33b5da654ef088e4d10520">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002662<tr class="separator:acf81639b3d33b5da654ef088e4d10520"><td class="memSeparator" colspan="2">&#160;</td></tr>
2663<tr class="memitem:a21898b2d2e31ab9af8933c66ff82c8c6"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a21898b2d2e31ab9af8933c66ff82c8c6">NEConvolution5x5Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_kernel.xhtml">NEConvolutionKernel</a>&lt; 5 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002664<tr class="memdesc:a21898b2d2e31ab9af8933c66ff82c8c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applied a 5x5 convolution to a tensor. <a href="#a21898b2d2e31ab9af8933c66ff82c8c6">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002665<tr class="separator:a21898b2d2e31ab9af8933c66ff82c8c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
2666<tr class="memitem:ae46cbbe03d31c6c8e7eba7b58999842d"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae46cbbe03d31c6c8e7eba7b58999842d">NEConvolution7x7Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_kernel.xhtml">NEConvolutionKernel</a>&lt; 7 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002667<tr class="memdesc:ae46cbbe03d31c6c8e7eba7b58999842d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applied a 7x7 convolution to a tensor. <a href="#ae46cbbe03d31c6c8e7eba7b58999842d">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002668<tr class="separator:ae46cbbe03d31c6c8e7eba7b58999842d"><td class="memSeparator" colspan="2">&#160;</td></tr>
2669<tr class="memitem:a1025306f820a9e76df7e5891caacff7b"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1025306f820a9e76df7e5891caacff7b">NEConvolution9x9Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_kernel.xhtml">NEConvolutionKernel</a>&lt; 9 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002670<tr class="memdesc:a1025306f820a9e76df7e5891caacff7b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applied a 9x9 convolution to a tensor. <a href="#a1025306f820a9e76df7e5891caacff7b">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002671<tr class="separator:a1025306f820a9e76df7e5891caacff7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
2672<tr class="memitem:ac78a7593874c21cff86478c1ba6df27b"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac78a7593874c21cff86478c1ba6df27b">NESeparableConvolution5x5HorKernel</a> = <a class="el" href="classarm__compute_1_1_n_e_separable_convolution_hor_kernel.xhtml">NESeparableConvolutionHorKernel</a>&lt; 5 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002673<tr class="memdesc:ac78a7593874c21cff86478c1ba6df27b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applied a 5x1 horizontal convolution to a tensor. <a href="#ac78a7593874c21cff86478c1ba6df27b">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002674<tr class="separator:ac78a7593874c21cff86478c1ba6df27b"><td class="memSeparator" colspan="2">&#160;</td></tr>
2675<tr class="memitem:aca4adbcd292c26b0e392c59875c1e926"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aca4adbcd292c26b0e392c59875c1e926">NESeparableConvolution7x7HorKernel</a> = <a class="el" href="classarm__compute_1_1_n_e_separable_convolution_hor_kernel.xhtml">NESeparableConvolutionHorKernel</a>&lt; 7 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002676<tr class="memdesc:aca4adbcd292c26b0e392c59875c1e926"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applied a 7x1 horizontal convolution to a tensor. <a href="#aca4adbcd292c26b0e392c59875c1e926">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002677<tr class="separator:aca4adbcd292c26b0e392c59875c1e926"><td class="memSeparator" colspan="2">&#160;</td></tr>
2678<tr class="memitem:a4ba5f6b7cd6b70b75e42149f3bc08f38"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4ba5f6b7cd6b70b75e42149f3bc08f38">NESeparableConvolution9x9HorKernel</a> = <a class="el" href="classarm__compute_1_1_n_e_separable_convolution_hor_kernel.xhtml">NESeparableConvolutionHorKernel</a>&lt; 9 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002679<tr class="memdesc:a4ba5f6b7cd6b70b75e42149f3bc08f38"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applied a 9x1 horizontal convolution to a tensor. <a href="#a4ba5f6b7cd6b70b75e42149f3bc08f38">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002680<tr class="separator:a4ba5f6b7cd6b70b75e42149f3bc08f38"><td class="memSeparator" colspan="2">&#160;</td></tr>
2681<tr class="memitem:ae4152320657df499674ed64b16c28a7b"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae4152320657df499674ed64b16c28a7b">NESeparableConvolution5x5VertKernel</a> = <a class="el" href="classarm__compute_1_1_n_e_separable_convolution_vert_kernel.xhtml">NESeparableConvolutionVertKernel</a>&lt; 5 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002682<tr class="memdesc:ae4152320657df499674ed64b16c28a7b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applied a 1x5 vertical convolution to a tensor. <a href="#ae4152320657df499674ed64b16c28a7b">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002683<tr class="separator:ae4152320657df499674ed64b16c28a7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
2684<tr class="memitem:a0f952bd0821b506e18514a3f4dbc6c39"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0f952bd0821b506e18514a3f4dbc6c39">NESeparableConvolution7x7VertKernel</a> = <a class="el" href="classarm__compute_1_1_n_e_separable_convolution_vert_kernel.xhtml">NESeparableConvolutionVertKernel</a>&lt; 7 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002685<tr class="memdesc:a0f952bd0821b506e18514a3f4dbc6c39"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applied a 1x7 vertical convolution to a tensor. <a href="#a0f952bd0821b506e18514a3f4dbc6c39">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002686<tr class="separator:a0f952bd0821b506e18514a3f4dbc6c39"><td class="memSeparator" colspan="2">&#160;</td></tr>
2687<tr class="memitem:a6310d21f215fface41df4cde725a62b9"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6310d21f215fface41df4cde725a62b9">NESeparableConvolution9x9VertKernel</a> = <a class="el" href="classarm__compute_1_1_n_e_separable_convolution_vert_kernel.xhtml">NESeparableConvolutionVertKernel</a>&lt; 9 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002688<tr class="memdesc:a6310d21f215fface41df4cde725a62b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for the kernel which applied a 1x9 vertical convolution to a tensor. <a href="#a6310d21f215fface41df4cde725a62b9">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002689<tr class="separator:a6310d21f215fface41df4cde725a62b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
2690<tr class="memitem:a19699533eb1b662e46a10715f6086487"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a19699533eb1b662e46a10715f6086487">INELKInternalKeypointArray</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt; <a class="el" href="structarm__compute_1_1_n_e_l_k_internal_keypoint.xhtml">NELKInternalKeypoint</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002691<tr class="memdesc:a19699533eb1b662e46a10715f6086487"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for NEON <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Internal Key Points. <a href="#a19699533eb1b662e46a10715f6086487">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002692<tr class="separator:a19699533eb1b662e46a10715f6086487"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002693<tr class="memitem:a38cad49e6beaef76bc1ec5064c9e9dba"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a38cad49e6beaef76bc1ec5064c9e9dba">NENonMaximaSuppression3x3FP16Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_non_maxima_suppression3x3_kernel.xhtml">NENonMaximaSuppression3x3Kernel</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002694<tr class="memdesc:a38cad49e6beaef76bc1ec5064c9e9dba"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON kernel to perform Non-Maxima suppression 3x3 with intermediate results in FP16 if the input data type is FP32. <a href="#a38cad49e6beaef76bc1ec5064c9e9dba">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002695<tr class="separator:a38cad49e6beaef76bc1ec5064c9e9dba"><td class="memSeparator" colspan="2">&#160;</td></tr>
2696<tr class="memitem:a70ecc99f2f6b646579b58463dc026671"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a70ecc99f2f6b646579b58463dc026671">qasymm8x8_t</a> = uint8x8_t</td></tr>
2697<tr class="memdesc:a70ecc99f2f6b646579b58463dc026671"><td class="mdescLeft">&#160;</td><td class="mdescRight">8 bit quantized asymmetric vector with 8 elements <a href="#a70ecc99f2f6b646579b58463dc026671">More...</a><br /></td></tr>
2698<tr class="separator:a70ecc99f2f6b646579b58463dc026671"><td class="memSeparator" colspan="2">&#160;</td></tr>
2699<tr class="memitem:a805d740633d70a5f0b019d72c517e67d"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a805d740633d70a5f0b019d72c517e67d">qasymm8x8x2_t</a> = uint8x8x2_t</td></tr>
2700<tr class="memdesc:a805d740633d70a5f0b019d72c517e67d"><td class="mdescLeft">&#160;</td><td class="mdescRight">8 bit quantized asymmetric vector with 16 elements <a href="#a805d740633d70a5f0b019d72c517e67d">More...</a><br /></td></tr>
2701<tr class="separator:a805d740633d70a5f0b019d72c517e67d"><td class="memSeparator" colspan="2">&#160;</td></tr>
2702<tr class="memitem:a0c6e16826765130b480af53eda3635be"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0c6e16826765130b480af53eda3635be">qasymm8x8x3_t</a> = uint8x8x3_t</td></tr>
2703<tr class="memdesc:a0c6e16826765130b480af53eda3635be"><td class="mdescLeft">&#160;</td><td class="mdescRight">8 bit quantized asymmetric vector with 24 elements <a href="#a0c6e16826765130b480af53eda3635be">More...</a><br /></td></tr>
2704<tr class="separator:a0c6e16826765130b480af53eda3635be"><td class="memSeparator" colspan="2">&#160;</td></tr>
2705<tr class="memitem:a41d3460ff424e2e21c629b3f27386a8b"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a41d3460ff424e2e21c629b3f27386a8b">qasymm8x8x4_t</a> = uint8x8x4_t</td></tr>
2706<tr class="memdesc:a41d3460ff424e2e21c629b3f27386a8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">8 bit quantized asymmetric vector with 32 elements <a href="#a41d3460ff424e2e21c629b3f27386a8b">More...</a><br /></td></tr>
2707<tr class="separator:a41d3460ff424e2e21c629b3f27386a8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
2708<tr class="memitem:ac7e1832b8c58f07a98fc8d390b16ac27"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac7e1832b8c58f07a98fc8d390b16ac27">qasymm8x16_t</a> = uint8x16_t</td></tr>
2709<tr class="memdesc:ac7e1832b8c58f07a98fc8d390b16ac27"><td class="mdescLeft">&#160;</td><td class="mdescRight">8 bit quantized asymmetric vector with 16 elements <a href="#ac7e1832b8c58f07a98fc8d390b16ac27">More...</a><br /></td></tr>
2710<tr class="separator:ac7e1832b8c58f07a98fc8d390b16ac27"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002711<tr class="memitem:ab8938bcb3ec0f5f8d93285eb3a28b701"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab8938bcb3ec0f5f8d93285eb3a28b701">qasymm8_t</a> = uint8_t</td></tr>
2712<tr class="memdesc:ab8938bcb3ec0f5f8d93285eb3a28b701"><td class="mdescLeft">&#160;</td><td class="mdescRight">8 bit quantized asymmetric scalar value <a href="#ab8938bcb3ec0f5f8d93285eb3a28b701">More...</a><br /></td></tr>
2713<tr class="separator:ab8938bcb3ec0f5f8d93285eb3a28b701"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01002714<tr class="memitem:a73e2825fd61d349c5ca2f5313e3c8ea1"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">half</a> = half_float::half</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002715<tr class="memdesc:a73e2825fd61d349c5ca2f5313e3c8ea1"><td class="mdescLeft">&#160;</td><td class="mdescRight">16-bit floating point type <a href="#a73e2825fd61d349c5ca2f5313e3c8ea1">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01002716<tr class="separator:a73e2825fd61d349c5ca2f5313e3c8ea1"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002717<tr class="memitem:a33e65be485104e2e9e69fca551d6f492"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a33e65be485104e2e9e69fca551d6f492">PermutationVector</a> = <a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a></td></tr>
2718<tr class="memdesc:a33e65be485104e2e9e69fca551d6f492"><td class="mdescLeft">&#160;</td><td class="mdescRight">Permutation vector. <a href="#a33e65be485104e2e9e69fca551d6f492">More...</a><br /></td></tr>
2719<tr class="separator:a33e65be485104e2e9e69fca551d6f492"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00002720<tr class="memitem:a11916d4148a39a67794050373f54825a"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a11916d4148a39a67794050373f54825a">BiStrides</a> = <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a></td></tr>
2721<tr class="memdesc:a11916d4148a39a67794050373f54825a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bidirectional strides. <a href="#a11916d4148a39a67794050373f54825a">More...</a><br /></td></tr>
2722<tr class="separator:a11916d4148a39a67794050373f54825a"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002723<tr class="memitem:a4467b302fc9ec312c40580336ab783da"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4467b302fc9ec312c40580336ab783da">PaddingSize</a> = <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002724<tr class="memdesc:a4467b302fc9ec312c40580336ab783da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Container for 2D padding size. <a href="#a4467b302fc9ec312c40580336ab783da">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002725<tr class="separator:a4467b302fc9ec312c40580336ab783da"><td class="memSeparator" colspan="2">&#160;</td></tr>
2726<tr class="memitem:a2ab89a5d0959531aac270879cdd3ed78"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2ab89a5d0959531aac270879cdd3ed78">InternalKeypoint</a> = std::tuple&lt; float, float, float &gt;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002727<tr class="memdesc:a2ab89a5d0959531aac270879cdd3ed78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal key point. <a href="#a2ab89a5d0959531aac270879cdd3ed78">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002728<tr class="separator:a2ab89a5d0959531aac270879cdd3ed78"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00002729<tr class="memitem:a669b5d3c5994f9ae3be31df9a1014297"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a669b5d3c5994f9ae3be31df9a1014297">PaddingInfo</a> = std::pair&lt; uint32_t, uint32_t &gt;</td></tr>
2730<tr class="memdesc:a669b5d3c5994f9ae3be31df9a1014297"><td class="mdescLeft">&#160;</td><td class="mdescRight">Padding information as a pair of unsigned int start/end. <a href="#a669b5d3c5994f9ae3be31df9a1014297">More...</a><br /></td></tr>
2731<tr class="separator:a669b5d3c5994f9ae3be31df9a1014297"><td class="memSeparator" colspan="2">&#160;</td></tr>
2732<tr class="memitem:ac1a1b012674e0f1de071a611391828ad"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac1a1b012674e0f1de071a611391828ad">PaddingList</a> = std::vector&lt; <a class="el" href="namespacearm__compute.xhtml#a669b5d3c5994f9ae3be31df9a1014297">PaddingInfo</a> &gt;</td></tr>
2733<tr class="memdesc:ac1a1b012674e0f1de071a611391828ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of padding information. <a href="#ac1a1b012674e0f1de071a611391828ad">More...</a><br /></td></tr>
2734<tr class="separator:ac1a1b012674e0f1de071a611391828ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002735<tr class="memitem:afe9e10e5fdfd1e2665ac17c75c0cacd8"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afe9e10e5fdfd1e2665ac17c75c0cacd8">Multiples</a> = std::vector&lt; uint32_t &gt;</td></tr>
2736<tr class="memdesc:afe9e10e5fdfd1e2665ac17c75c0cacd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Information to produce a tiled version of a <a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a>. <a href="#afe9e10e5fdfd1e2665ac17c75c0cacd8">More...</a><br /></td></tr>
2737<tr class="separator:afe9e10e5fdfd1e2665ac17c75c0cacd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002738<tr class="memitem:a8856eca9a83e16bb0cb5880e9c6c9fe7"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8856eca9a83e16bb0cb5880e9c6c9fe7">KeyPointArray</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt; <a class="el" href="structarm__compute_1_1_key_point.xhtml">KeyPoint</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002739<tr class="memdesc:a8856eca9a83e16bb0cb5880e9c6c9fe7"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Key Points. <a href="#a8856eca9a83e16bb0cb5880e9c6c9fe7">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002740<tr class="separator:a8856eca9a83e16bb0cb5880e9c6c9fe7"><td class="memSeparator" colspan="2">&#160;</td></tr>
2741<tr class="memitem:a327abccf7b43aa32d6a24319b986f3ab"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a327abccf7b43aa32d6a24319b986f3ab">Coordinates2DArray</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt; <a class="el" href="structarm__compute_1_1_coordinates2_d.xhtml">Coordinates2D</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002742<tr class="memdesc:a327abccf7b43aa32d6a24319b986f3ab"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a>. <a href="#a327abccf7b43aa32d6a24319b986f3ab">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002743<tr class="separator:a327abccf7b43aa32d6a24319b986f3ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
2744<tr class="memitem:a5fe01ab895629edd84a511b56657d79e"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5fe01ab895629edd84a511b56657d79e">DetectionWindowArray</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt; <a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002745<tr class="memdesc:a5fe01ab895629edd84a511b56657d79e"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Detection Windows. <a href="#a5fe01ab895629edd84a511b56657d79e">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002746<tr class="separator:a5fe01ab895629edd84a511b56657d79e"><td class="memSeparator" colspan="2">&#160;</td></tr>
2747<tr class="memitem:abd445adaaca7913c9344c90dc8c76358"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abd445adaaca7913c9344c90dc8c76358">Size2DArray</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt; <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002748<tr class="memdesc:abd445adaaca7913c9344c90dc8c76358"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D Sizes. <a href="#abd445adaaca7913c9344c90dc8c76358">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002749<tr class="separator:abd445adaaca7913c9344c90dc8c76358"><td class="memSeparator" colspan="2">&#160;</td></tr>
2750<tr class="memitem:a9dbb5e00a3f397691eb782f03f65375c"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9dbb5e00a3f397691eb782f03f65375c">UInt8Array</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt; uint8_t &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002751<tr class="memdesc:a9dbb5e00a3f397691eb782f03f65375c"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint8s. <a href="#a9dbb5e00a3f397691eb782f03f65375c">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002752<tr class="separator:a9dbb5e00a3f397691eb782f03f65375c"><td class="memSeparator" colspan="2">&#160;</td></tr>
2753<tr class="memitem:ab91cb2269b2e58ed2cb6bd2ca831d434"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab91cb2269b2e58ed2cb6bd2ca831d434">UInt16Array</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt; uint16_t &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002754<tr class="memdesc:ab91cb2269b2e58ed2cb6bd2ca831d434"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint16s. <a href="#ab91cb2269b2e58ed2cb6bd2ca831d434">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002755<tr class="separator:ab91cb2269b2e58ed2cb6bd2ca831d434"><td class="memSeparator" colspan="2">&#160;</td></tr>
2756<tr class="memitem:acd6eb2619ccd5eee4963de3195785359"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acd6eb2619ccd5eee4963de3195785359">UInt32Array</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt; uint32_t &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002757<tr class="memdesc:acd6eb2619ccd5eee4963de3195785359"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint32s. <a href="#acd6eb2619ccd5eee4963de3195785359">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002758<tr class="separator:acd6eb2619ccd5eee4963de3195785359"><td class="memSeparator" colspan="2">&#160;</td></tr>
2759<tr class="memitem:a69c19b38cbee8fa6680513f6ff76bbb3"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a69c19b38cbee8fa6680513f6ff76bbb3">Int16Array</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt; int16_t &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002760<tr class="memdesc:a69c19b38cbee8fa6680513f6ff76bbb3"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int16s. <a href="#a69c19b38cbee8fa6680513f6ff76bbb3">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002761<tr class="separator:a69c19b38cbee8fa6680513f6ff76bbb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
2762<tr class="memitem:a6af9862834629c287a81b16837b51e44"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6af9862834629c287a81b16837b51e44">Int32Array</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt; int32_t &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002763<tr class="memdesc:a6af9862834629c287a81b16837b51e44"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int32s. <a href="#a6af9862834629c287a81b16837b51e44">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002764<tr class="separator:a6af9862834629c287a81b16837b51e44"><td class="memSeparator" colspan="2">&#160;</td></tr>
2765<tr class="memitem:a6e06029aa1b68c0cdeb80656cc9353fe"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6e06029aa1b68c0cdeb80656cc9353fe">FloatArray</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt; float &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002766<tr class="memdesc:a6e06029aa1b68c0cdeb80656cc9353fe"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of floats. <a href="#a6e06029aa1b68c0cdeb80656cc9353fe">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002767<tr class="separator:a6e06029aa1b68c0cdeb80656cc9353fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
2768<tr class="memitem:a55e1c5ed17b7ee3762198a38eb50650a"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a55e1c5ed17b7ee3762198a38eb50650a">CLKeyPointArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt; <a class="el" href="structarm__compute_1_1_key_point.xhtml">KeyPoint</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002769<tr class="memdesc:a55e1c5ed17b7ee3762198a38eb50650a"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Key Points. <a href="#a55e1c5ed17b7ee3762198a38eb50650a">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002770<tr class="separator:a55e1c5ed17b7ee3762198a38eb50650a"><td class="memSeparator" colspan="2">&#160;</td></tr>
2771<tr class="memitem:a0fd5f0310a26faad00b905bac3792726"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0fd5f0310a26faad00b905bac3792726">CLCoordinates2DArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt; <a class="el" href="structarm__compute_1_1_coordinates2_d.xhtml">Coordinates2D</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002772<tr class="memdesc:a0fd5f0310a26faad00b905bac3792726"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a>. <a href="#a0fd5f0310a26faad00b905bac3792726">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002773<tr class="separator:a0fd5f0310a26faad00b905bac3792726"><td class="memSeparator" colspan="2">&#160;</td></tr>
2774<tr class="memitem:ab8d2c7efb7643ce8f9e5446dbe1da0b4"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab8d2c7efb7643ce8f9e5446dbe1da0b4">CLDetectionWindowArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt; <a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002775<tr class="memdesc:ab8d2c7efb7643ce8f9e5446dbe1da0b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Detection Windows. <a href="#ab8d2c7efb7643ce8f9e5446dbe1da0b4">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002776<tr class="separator:ab8d2c7efb7643ce8f9e5446dbe1da0b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
2777<tr class="memitem:a3f9ab729931f4e4fa36ff1683186d988"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3f9ab729931f4e4fa36ff1683186d988">CLSize2DArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt; <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002778<tr class="memdesc:a3f9ab729931f4e4fa36ff1683186d988"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D Sizes. <a href="#a3f9ab729931f4e4fa36ff1683186d988">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002779<tr class="separator:a3f9ab729931f4e4fa36ff1683186d988"><td class="memSeparator" colspan="2">&#160;</td></tr>
2780<tr class="memitem:aa031694bb03711e09e25546ad2b643cc"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa031694bb03711e09e25546ad2b643cc">CLUInt8Array</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt; cl_uchar &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002781<tr class="memdesc:aa031694bb03711e09e25546ad2b643cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint8s. <a href="#aa031694bb03711e09e25546ad2b643cc">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002782<tr class="separator:aa031694bb03711e09e25546ad2b643cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
2783<tr class="memitem:a7b4c4a79c73a3f85ba89aff03fddefa7"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7b4c4a79c73a3f85ba89aff03fddefa7">CLUInt16Array</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt; cl_ushort &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002784<tr class="memdesc:a7b4c4a79c73a3f85ba89aff03fddefa7"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint16s. <a href="#a7b4c4a79c73a3f85ba89aff03fddefa7">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002785<tr class="separator:a7b4c4a79c73a3f85ba89aff03fddefa7"><td class="memSeparator" colspan="2">&#160;</td></tr>
2786<tr class="memitem:a1d7d89b7e990055dc95ed37dfb24da48"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1d7d89b7e990055dc95ed37dfb24da48">CLUInt32Array</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt; cl_uint &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002787<tr class="memdesc:a1d7d89b7e990055dc95ed37dfb24da48"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint32s. <a href="#a1d7d89b7e990055dc95ed37dfb24da48">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002788<tr class="separator:a1d7d89b7e990055dc95ed37dfb24da48"><td class="memSeparator" colspan="2">&#160;</td></tr>
2789<tr class="memitem:a5fb8cb339705102066c915d18f0701ac"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5fb8cb339705102066c915d18f0701ac">CLInt16Array</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt; cl_short &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002790<tr class="memdesc:a5fb8cb339705102066c915d18f0701ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int16s. <a href="#a5fb8cb339705102066c915d18f0701ac">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002791<tr class="separator:a5fb8cb339705102066c915d18f0701ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
2792<tr class="memitem:a8a401a071524761c661a75969c951cf5"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8a401a071524761c661a75969c951cf5">CLInt32Array</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt; cl_int &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002793<tr class="memdesc:a8a401a071524761c661a75969c951cf5"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int32s. <a href="#a8a401a071524761c661a75969c951cf5">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002794<tr class="separator:a8a401a071524761c661a75969c951cf5"><td class="memSeparator" colspan="2">&#160;</td></tr>
2795<tr class="memitem:a193a4859b365f3ef4e0d73a1e6b12c85"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a193a4859b365f3ef4e0d73a1e6b12c85">CLFloatArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt; cl_float &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002796<tr class="memdesc:a193a4859b365f3ef4e0d73a1e6b12c85"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of floats. <a href="#a193a4859b365f3ef4e0d73a1e6b12c85">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002797<tr class="separator:a193a4859b365f3ef4e0d73a1e6b12c85"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01002798<tr class="memitem:ac87d48489667d7ff7fc4cc7d0d12c52e"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac87d48489667d7ff7fc4cc7d0d12c52e">CLMemoryGroup</a> = <a class="el" href="classarm__compute_1_1_memory_group_base.xhtml">MemoryGroupBase</a>&lt; <a class="el" href="classarm__compute_1_1_c_l_tensor.xhtml">CLTensor</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002799<tr class="memdesc:ac87d48489667d7ff7fc4cc7d0d12c52e"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object.">Memory</a> Group in OpenCL. <a href="#ac87d48489667d7ff7fc4cc7d0d12c52e">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01002800<tr class="separator:ac87d48489667d7ff7fc4cc7d0d12c52e"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002801<tr class="memitem:aae712f442eae2d56d17529ca6cb9cb77"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aae712f442eae2d56d17529ca6cb9cb77">CLImage</a> = <a class="el" href="classarm__compute_1_1_c_l_tensor.xhtml">CLTensor</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002802<tr class="memdesc:aae712f442eae2d56d17529ca6cb9cb77"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL <a class="el" href="struct_image.xhtml" title="Structure to hold Image information.">Image</a>. <a href="#aae712f442eae2d56d17529ca6cb9cb77">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002803<tr class="separator:aae712f442eae2d56d17529ca6cb9cb77"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002804<tr class="memitem:a18e76ae589217a65f77b971de3f3f65a"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a18e76ae589217a65f77b971de3f3f65a">CLEqual</a> = <a class="el" href="classarm__compute_1_1_c_l_comparison_static.xhtml">CLComparisonStatic</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5">ComparisonOperation::Equal</a> &gt;</td></tr>
2805<tr class="memdesc:a18e76ae589217a65f77b971de3f3f65a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run equal comparison. <a href="#a18e76ae589217a65f77b971de3f3f65a">More...</a><br /></td></tr>
2806<tr class="separator:a18e76ae589217a65f77b971de3f3f65a"><td class="memSeparator" colspan="2">&#160;</td></tr>
2807<tr class="memitem:aea3e261c61344f44892f8be73cfc0301"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aea3e261c61344f44892f8be73cfc0301">CLNotEqual</a> = <a class="el" href="classarm__compute_1_1_c_l_comparison_static.xhtml">CLComparisonStatic</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca19bb0af2c3c530538cb41aff7f235b96">ComparisonOperation::NotEqual</a> &gt;</td></tr>
2808<tr class="memdesc:aea3e261c61344f44892f8be73cfc0301"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run not equal comparison. <a href="#aea3e261c61344f44892f8be73cfc0301">More...</a><br /></td></tr>
2809<tr class="separator:aea3e261c61344f44892f8be73cfc0301"><td class="memSeparator" colspan="2">&#160;</td></tr>
2810<tr class="memitem:ab9b18840e11edcbeafcd80d4c44b80cb"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab9b18840e11edcbeafcd80d4c44b80cb">CLGreater</a> = <a class="el" href="classarm__compute_1_1_c_l_comparison_static.xhtml">CLComparisonStatic</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">ComparisonOperation::Greater</a> &gt;</td></tr>
2811<tr class="memdesc:ab9b18840e11edcbeafcd80d4c44b80cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run greater comparison. <a href="#ab9b18840e11edcbeafcd80d4c44b80cb">More...</a><br /></td></tr>
2812<tr class="separator:ab9b18840e11edcbeafcd80d4c44b80cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
2813<tr class="memitem:ade630074f2c9d58d64c399bd6b49bc56"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ade630074f2c9d58d64c399bd6b49bc56">CLGreaterEqual</a> = <a class="el" href="classarm__compute_1_1_c_l_comparison_static.xhtml">CLComparisonStatic</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca758b05d899def79c9eb864ad4f96be1f">ComparisonOperation::GreaterEqual</a> &gt;</td></tr>
2814<tr class="memdesc:ade630074f2c9d58d64c399bd6b49bc56"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run greater-equal comparison. <a href="#ade630074f2c9d58d64c399bd6b49bc56">More...</a><br /></td></tr>
2815<tr class="separator:ade630074f2c9d58d64c399bd6b49bc56"><td class="memSeparator" colspan="2">&#160;</td></tr>
2816<tr class="memitem:a8c2c9a77f235807441eacdddd896d50c"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8c2c9a77f235807441eacdddd896d50c">CLLess</a> = <a class="el" href="classarm__compute_1_1_c_l_comparison_static.xhtml">CLComparisonStatic</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca1cfdf0e8d0c87a228c1f40d9bee7888b">ComparisonOperation::Less</a> &gt;</td></tr>
2817<tr class="memdesc:a8c2c9a77f235807441eacdddd896d50c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run less comparison. <a href="#a8c2c9a77f235807441eacdddd896d50c">More...</a><br /></td></tr>
2818<tr class="separator:a8c2c9a77f235807441eacdddd896d50c"><td class="memSeparator" colspan="2">&#160;</td></tr>
2819<tr class="memitem:a258b8c95199c121d8f2a9a540cd48e5e"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a258b8c95199c121d8f2a9a540cd48e5e">CLLessEqual</a> = <a class="el" href="classarm__compute_1_1_c_l_comparison_static.xhtml">CLComparisonStatic</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58cad3e6fdac55bb7b0edd7834c968ba1f38">ComparisonOperation::LessEqual</a> &gt;</td></tr>
2820<tr class="memdesc:a258b8c95199c121d8f2a9a540cd48e5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run less-equal comparison. <a href="#a258b8c95199c121d8f2a9a540cd48e5e">More...</a><br /></td></tr>
2821<tr class="separator:a258b8c95199c121d8f2a9a540cd48e5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002822<tr class="memitem:a843447b81f09d837e90d44e6e6bd236d"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a843447b81f09d837e90d44e6e6bd236d">CLConvolution5x5</a> = <a class="el" href="classarm__compute_1_1_c_l_convolution_square.xhtml">CLConvolutionSquare</a>&lt; 5 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002823<tr class="memdesc:a843447b81f09d837e90d44e6e6bd236d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run 5x5 convolution. <a href="#a843447b81f09d837e90d44e6e6bd236d">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002824<tr class="separator:a843447b81f09d837e90d44e6e6bd236d"><td class="memSeparator" colspan="2">&#160;</td></tr>
2825<tr class="memitem:a1992a8362b7074e709394a5219d16e62"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1992a8362b7074e709394a5219d16e62">CLConvolution7x7</a> = <a class="el" href="classarm__compute_1_1_c_l_convolution_square.xhtml">CLConvolutionSquare</a>&lt; 7 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002826<tr class="memdesc:a1992a8362b7074e709394a5219d16e62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run 7x7 convolution. <a href="#a1992a8362b7074e709394a5219d16e62">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002827<tr class="separator:a1992a8362b7074e709394a5219d16e62"><td class="memSeparator" colspan="2">&#160;</td></tr>
2828<tr class="memitem:a587dee5d7f05d5e9c3b8704ae8927101"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a587dee5d7f05d5e9c3b8704ae8927101">CLConvolution9x9</a> = <a class="el" href="classarm__compute_1_1_c_l_convolution_square.xhtml">CLConvolutionSquare</a>&lt; 9 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002829<tr class="memdesc:a587dee5d7f05d5e9c3b8704ae8927101"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run 9x9 convolution. <a href="#a587dee5d7f05d5e9c3b8704ae8927101">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002830<tr class="separator:a587dee5d7f05d5e9c3b8704ae8927101"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002831<tr class="memitem:a70997613219641045213b0c12948fb74"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a70997613219641045213b0c12948fb74">CLLKInternalKeypointArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt; <a class="el" href="structarm__compute_1_1_c_l_l_k_internal_keypoint.xhtml">CLLKInternalKeypoint</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002832<tr class="memdesc:a70997613219641045213b0c12948fb74"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Internal Keypoints. <a href="#a70997613219641045213b0c12948fb74">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002833<tr class="separator:a70997613219641045213b0c12948fb74"><td class="memSeparator" colspan="2">&#160;</td></tr>
2834<tr class="memitem:afcef84cf3b7d147b2b6ab0bd884afc16"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afcef84cf3b7d147b2b6ab0bd884afc16">CLCoefficientTableArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt; <a class="el" href="structarm__compute_1_1_c_l_coefficient_table.xhtml">CLCoefficientTable</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002835<tr class="memdesc:afcef84cf3b7d147b2b6ab0bd884afc16"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Coefficient Tables. <a href="#afcef84cf3b7d147b2b6ab0bd884afc16">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002836<tr class="separator:afcef84cf3b7d147b2b6ab0bd884afc16"><td class="memSeparator" colspan="2">&#160;</td></tr>
2837<tr class="memitem:a4ec6965f606c588137f7a48d84c1d6f0"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4ec6965f606c588137f7a48d84c1d6f0">CLOldValueArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt; <a class="el" href="structarm__compute_1_1_c_l_old_value.xhtml">CLOldValue</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002838<tr class="memdesc:a4ec6965f606c588137f7a48d84c1d6f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Old Values. <a href="#a4ec6965f606c588137f7a48d84c1d6f0">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002839<tr class="separator:a4ec6965f606c588137f7a48d84c1d6f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002840<tr class="memitem:a4ec997c1b05a1fd406828bc7e1f41dad"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4ec997c1b05a1fd406828bc7e1f41dad">NormalizedBBox</a> = std::array&lt; float, 4 &gt;</td></tr>
2841<tr class="separator:a4ec997c1b05a1fd406828bc7e1f41dad"><td class="memSeparator" colspan="2">&#160;</td></tr>
2842<tr class="memitem:a668a7893195a4a08c4d26afd2b15a6b4"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a668a7893195a4a08c4d26afd2b15a6b4">LabelBBox</a> = std::map&lt; int, std::vector&lt; <a class="el" href="namespacearm__compute.xhtml#a4ec997c1b05a1fd406828bc7e1f41dad">NormalizedBBox</a> &gt; &gt;</td></tr>
2843<tr class="separator:a668a7893195a4a08c4d26afd2b15a6b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002844<tr class="memitem:abb079bea3cd2a65a7018eab99392747e"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abb079bea3cd2a65a7018eab99392747e">GCMemoryGroup</a> = <a class="el" href="classarm__compute_1_1_memory_group_base.xhtml">MemoryGroupBase</a>&lt; <a class="el" href="classarm__compute_1_1_g_c_tensor.xhtml">GCTensor</a> &gt;</td></tr>
2845<tr class="separator:abb079bea3cd2a65a7018eab99392747e"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002846<tr class="memitem:a0b1d72d612fb6f33393ea6cd6cbcf523"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0b1d72d612fb6f33393ea6cd6cbcf523">GCImage</a> = <a class="el" href="classarm__compute_1_1_g_c_tensor.xhtml">GCTensor</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002847<tr class="memdesc:a0b1d72d612fb6f33393ea6cd6cbcf523"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenGL ES <a class="el" href="struct_image.xhtml" title="Structure to hold Image information.">Image</a>. <a href="#a0b1d72d612fb6f33393ea6cd6cbcf523">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002848<tr class="separator:a0b1d72d612fb6f33393ea6cd6cbcf523"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01002849<tr class="memitem:a0e7a03e2e133cb1fbb12517a3f646a09"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0e7a03e2e133cb1fbb12517a3f646a09">MemoryGroup</a> = <a class="el" href="classarm__compute_1_1_memory_group_base.xhtml">MemoryGroupBase</a>&lt; <a class="el" href="classarm__compute_1_1_tensor.xhtml">Tensor</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002850<tr class="memdesc:a0e7a03e2e133cb1fbb12517a3f646a09"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object.">Memory</a> Group. <a href="#a0e7a03e2e133cb1fbb12517a3f646a09">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01002851<tr class="separator:a0e7a03e2e133cb1fbb12517a3f646a09"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier46d59272017-05-04 09:15:15 +01002852<tr class="memitem:adbc7771d367ba8f51da1450d3602e5c0"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adbc7771d367ba8f51da1450d3602e5c0">NEConvolution5x5</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_square.xhtml">NEConvolutionSquare</a>&lt; 5 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002853<tr class="memdesc:adbc7771d367ba8f51da1450d3602e5c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run 5x5 convolution. <a href="#adbc7771d367ba8f51da1450d3602e5c0">More...</a><br /></td></tr>
Anthony Barbier46d59272017-05-04 09:15:15 +01002854<tr class="separator:adbc7771d367ba8f51da1450d3602e5c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
2855<tr class="memitem:aeb2682fbeb2766df26b4be1971c9757d"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aeb2682fbeb2766df26b4be1971c9757d">NEConvolution7x7</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_square.xhtml">NEConvolutionSquare</a>&lt; 7 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002856<tr class="memdesc:aeb2682fbeb2766df26b4be1971c9757d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run 7x7 convolution. <a href="#aeb2682fbeb2766df26b4be1971c9757d">More...</a><br /></td></tr>
Anthony Barbier46d59272017-05-04 09:15:15 +01002857<tr class="separator:aeb2682fbeb2766df26b4be1971c9757d"><td class="memSeparator" colspan="2">&#160;</td></tr>
2858<tr class="memitem:ae5a088552f26a1afafd0cbf821d256fb"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae5a088552f26a1afafd0cbf821d256fb">NEConvolution9x9</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_square.xhtml">NEConvolutionSquare</a>&lt; 9 &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002859<tr class="memdesc:ae5a088552f26a1afafd0cbf821d256fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run 9x9 convolution. <a href="#ae5a088552f26a1afafd0cbf821d256fb">More...</a><br /></td></tr>
Anthony Barbier46d59272017-05-04 09:15:15 +01002860<tr class="separator:ae5a088552f26a1afafd0cbf821d256fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002861<tr class="memitem:a8fdefd8ed8639758d0aa6c68087d55e6"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8fdefd8ed8639758d0aa6c68087d55e6">NEEqual</a> = <a class="el" href="classarm__compute_1_1_n_e_elementwise_comparison_static.xhtml">NEElementwiseComparisonStatic</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5">ComparisonOperation::Equal</a> &gt;</td></tr>
2862<tr class="memdesc:a8fdefd8ed8639758d0aa6c68087d55e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run equal comparison. <a href="#a8fdefd8ed8639758d0aa6c68087d55e6">More...</a><br /></td></tr>
2863<tr class="separator:a8fdefd8ed8639758d0aa6c68087d55e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
2864<tr class="memitem:a732ac47723cd850cc5ffa208bc3e3b00"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a732ac47723cd850cc5ffa208bc3e3b00">NENotEqual</a> = <a class="el" href="classarm__compute_1_1_n_e_elementwise_comparison_static.xhtml">NEElementwiseComparisonStatic</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca19bb0af2c3c530538cb41aff7f235b96">ComparisonOperation::NotEqual</a> &gt;</td></tr>
2865<tr class="memdesc:a732ac47723cd850cc5ffa208bc3e3b00"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run not equal comparison. <a href="#a732ac47723cd850cc5ffa208bc3e3b00">More...</a><br /></td></tr>
2866<tr class="separator:a732ac47723cd850cc5ffa208bc3e3b00"><td class="memSeparator" colspan="2">&#160;</td></tr>
2867<tr class="memitem:a44f1c40220d4ac837899ef5ebf7aaee9"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a44f1c40220d4ac837899ef5ebf7aaee9">NEGreater</a> = <a class="el" href="classarm__compute_1_1_n_e_elementwise_comparison_static.xhtml">NEElementwiseComparisonStatic</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">ComparisonOperation::Greater</a> &gt;</td></tr>
2868<tr class="memdesc:a44f1c40220d4ac837899ef5ebf7aaee9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run greater comparison. <a href="#a44f1c40220d4ac837899ef5ebf7aaee9">More...</a><br /></td></tr>
2869<tr class="separator:a44f1c40220d4ac837899ef5ebf7aaee9"><td class="memSeparator" colspan="2">&#160;</td></tr>
2870<tr class="memitem:aa09ba119a3b8b2950581f7c80e9445b6"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa09ba119a3b8b2950581f7c80e9445b6">NEGreaterEqual</a> = <a class="el" href="classarm__compute_1_1_n_e_elementwise_comparison_static.xhtml">NEElementwiseComparisonStatic</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca758b05d899def79c9eb864ad4f96be1f">ComparisonOperation::GreaterEqual</a> &gt;</td></tr>
2871<tr class="memdesc:aa09ba119a3b8b2950581f7c80e9445b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run greater-equal comparison. <a href="#aa09ba119a3b8b2950581f7c80e9445b6">More...</a><br /></td></tr>
2872<tr class="separator:aa09ba119a3b8b2950581f7c80e9445b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
2873<tr class="memitem:a36ae4d66ca830f6aeef54964b0c31fd3"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a36ae4d66ca830f6aeef54964b0c31fd3">NELess</a> = <a class="el" href="classarm__compute_1_1_n_e_elementwise_comparison_static.xhtml">NEElementwiseComparisonStatic</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca1cfdf0e8d0c87a228c1f40d9bee7888b">ComparisonOperation::Less</a> &gt;</td></tr>
2874<tr class="memdesc:a36ae4d66ca830f6aeef54964b0c31fd3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run less comparison. <a href="#a36ae4d66ca830f6aeef54964b0c31fd3">More...</a><br /></td></tr>
2875<tr class="separator:a36ae4d66ca830f6aeef54964b0c31fd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
2876<tr class="memitem:ab10ab37a597594e7aabec4a067988d37"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab10ab37a597594e7aabec4a067988d37">NELessEqual</a> = <a class="el" href="classarm__compute_1_1_n_e_elementwise_comparison_static.xhtml">NEElementwiseComparisonStatic</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58cad3e6fdac55bb7b0edd7834c968ba1f38">ComparisonOperation::LessEqual</a> &gt;</td></tr>
2877<tr class="memdesc:ab10ab37a597594e7aabec4a067988d37"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic function to run less-equal comparison. <a href="#ab10ab37a597594e7aabec4a067988d37">More...</a><br /></td></tr>
2878<tr class="separator:ab10ab37a597594e7aabec4a067988d37"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002879<tr class="memitem:a681c120e2188371794ec3a59768c64ab"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a681c120e2188371794ec3a59768c64ab">LKInternalKeypointArray</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt; <a class="el" href="structarm__compute_1_1_n_e_l_k_internal_keypoint.xhtml">NELKInternalKeypoint</a> &gt;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00002880<tr class="memdesc:a681c120e2188371794ec3a59768c64ab"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of LK Internel Keypoints. <a href="#a681c120e2188371794ec3a59768c64ab">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002881<tr class="separator:a681c120e2188371794ec3a59768c64ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01002882<tr class="memitem:a0604c803e41880a4a16408efc4e6a69b"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0604c803e41880a4a16408efc4e6a69b">NEScheduler</a> = <a class="el" href="classarm__compute_1_1_scheduler.xhtml">Scheduler</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002883<tr class="memdesc:a0604c803e41880a4a16408efc4e6a69b"><td class="mdescLeft">&#160;</td><td class="mdescRight">NEON <a class="el" href="classarm__compute_1_1_scheduler.xhtml" title="Configurable scheduler which supports multiple multithreading APIs and choosing between different sch...">Scheduler</a>. <a href="#a0604c803e41880a4a16408efc4e6a69b">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01002884<tr class="separator:a0604c803e41880a4a16408efc4e6a69b"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002885<tr class="memitem:a7fb6a368d181ef193475f725c713430a"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7fb6a368d181ef193475f725c713430a">Image</a> = <a class="el" href="classarm__compute_1_1_tensor.xhtml">Tensor</a></td></tr>
Jenkins514be652019-02-28 12:25:18 +00002886<tr class="memdesc:a7fb6a368d181ef193475f725c713430a"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="struct_image.xhtml" title="Structure to hold Image information.">Image</a>. <a href="#a7fb6a368d181ef193475f725c713430a">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002887<tr class="separator:a7fb6a368d181ef193475f725c713430a"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00002888<tr class="memitem:a43b7da220a8ead83acff98f218f7eb6b"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a43b7da220a8ead83acff98f218f7eb6b">MemoryMappings</a> = std::map&lt; <a class="el" href="classarm__compute_1_1_i_memory.xhtml">IMemory</a> *, size_t &gt;</td></tr>
2889<tr class="memdesc:a43b7da220a8ead83acff98f218f7eb6b"><td class="mdescLeft">&#160;</td><td class="mdescRight">A map of (handle, index/offset), where handle is the memory handle of the object to provide the memory for and index/offset is the buffer/offset from the pool that should be used. <a href="#a43b7da220a8ead83acff98f218f7eb6b">More...</a><br /></td></tr>
2890<tr class="separator:a43b7da220a8ead83acff98f218f7eb6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
2891<tr class="memitem:ad2398d0f2ce77c10bbebf1f85317dde5"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad2398d0f2ce77c10bbebf1f85317dde5">GroupMappings</a> = std::map&lt; size_t, <a class="el" href="namespacearm__compute.xhtml#a43b7da220a8ead83acff98f218f7eb6b">MemoryMappings</a> &gt;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002892<tr class="memdesc:ad2398d0f2ce77c10bbebf1f85317dde5"><td class="mdescLeft">&#160;</td><td class="mdescRight">A map of the groups and memory mappings. <a href="#ad2398d0f2ce77c10bbebf1f85317dde5">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01002893<tr class="separator:ad2398d0f2ce77c10bbebf1f85317dde5"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00002894<tr class="memitem:a3fd0d641ff68bfe8475361a13de7b1cc"><td class="memTemplParams" colspan="2">template&lt;typename T , int N&gt; </td></tr>
2895<tr class="memitem:a3fd0d641ff68bfe8475361a13de7b1cc"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3fd0d641ff68bfe8475361a13de7b1cc">vec_n_t</a> = typename vec_n_type&lt; T, N &gt;::type</td></tr>
2896<tr class="separator:a3fd0d641ff68bfe8475361a13de7b1cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
2897<tr class="memitem:a5cd8407762d2446f8eceefcc4b63e537"><td class="memTemplParams" colspan="2">template&lt;typename T , int N&gt; </td></tr>
2898<tr class="memitem:a5cd8407762d2446f8eceefcc4b63e537"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5cd8407762d2446f8eceefcc4b63e537">vec_n_byte_t</a> = <a class="el" href="namespacearm__compute.xhtml#a3fd0d641ff68bfe8475361a13de7b1cc">vec_n_t</a>&lt; T, N/sizeof(T) &gt;</td></tr>
2899<tr class="separator:a5cd8407762d2446f8eceefcc4b63e537"><td class="memSeparator" colspan="2">&#160;</td></tr>
2900<tr class="memitem:aef7a69b9cf4a1732d2be114b9b9bf3e3"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
2901<tr class="memitem:aef7a69b9cf4a1732d2be114b9b9bf3e3"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a> = <a class="el" href="namespacearm__compute.xhtml#a5cd8407762d2446f8eceefcc4b63e537">vec_n_byte_t</a>&lt; T, 16 &gt;</td></tr>
2902<tr class="separator:aef7a69b9cf4a1732d2be114b9b9bf3e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
2903<tr class="memitem:ab448de27f94cd38059b63980c3c08f40"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
2904<tr class="memitem:ab448de27f94cd38059b63980c3c08f40"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a> = <a class="el" href="namespacearm__compute.xhtml#a5cd8407762d2446f8eceefcc4b63e537">vec_n_byte_t</a>&lt; T, 8 &gt;</td></tr>
2905<tr class="separator:ab448de27f94cd38059b63980c3c08f40"><td class="memSeparator" colspan="2">&#160;</td></tr>
2906<tr class="memitem:a926fa1a0e7fd320cff5ba6c6f62f463b"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
2907<tr class="memitem:a926fa1a0e7fd320cff5ba6c6f62f463b"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a> = const T *</td></tr>
2908<tr class="separator:a926fa1a0e7fd320cff5ba6c6f62f463b"><td class="memSeparator" colspan="2">&#160;</td></tr>
2909<tr class="memitem:a1e36f8a2df3d6bd1756b90e2efb151e9"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
2910<tr class="memitem:a1e36f8a2df3d6bd1756b90e2efb151e9"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a> = T *</td></tr>
2911<tr class="separator:a1e36f8a2df3d6bd1756b90e2efb151e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
2912<tr class="memitem:a534a101b6176c3e065eba4b4cde7a40e"><td class="memTemplParams" colspan="2">template&lt;typename V &gt; </td></tr>
2913<tr class="memitem:a534a101b6176c3e065eba4b4cde7a40e"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a534a101b6176c3e065eba4b4cde7a40e">elem_type_t</a> = decltype(<a class="el" href="namespacearm__compute.xhtml#a40552ea65ee3fc6d7fa7f1fb17baebe7">vget_lane</a>&lt; 0 &gt;(std::declval&lt; V &gt;()))</td></tr>
2914<tr class="separator:a534a101b6176c3e065eba4b4cde7a40e"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01002915<tr class="memitem:acded863dbfdd730829d4188d67eefcf0"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acded863dbfdd730829d4188d67eefcf0">Mutex</a> = std::mutex</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002916<tr class="memdesc:acded863dbfdd730829d4188d67eefcf0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wrapper of Mutex data-object. <a href="#acded863dbfdd730829d4188d67eefcf0">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01002917<tr class="separator:acded863dbfdd730829d4188d67eefcf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00002918</table><table class="memberdecls">
2919<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
2920Enumerations</h2></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002921<tr class="memitem:a3a440b3893fa10608d4428958be1c52e"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52e">CLVersion</a> { <br />
Kaizen8938bd32017-09-28 14:38:23 +01002922&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea06e5b2cbe2f75bb5eec32613499cf22a">CL10</a>,
2923<a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea80e95ed62d0c47e4d8c0696d467d4db3">CL11</a>,
2924<a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ead7beedb1bf6bfae8111da26424266675">CL12</a>,
2925<a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52eaba90edbc644c32afa8a7e36e87735aab">CL20</a>,
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002926<br />
Kaizen8938bd32017-09-28 14:38:23 +01002927&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002928<br />
Jenkins514be652019-02-28 12:25:18 +00002929 }</td></tr>
2930<tr class="memdesc:a3a440b3893fa10608d4428958be1c52e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available OpenCL Version. <a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52e">More...</a><br /></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002931<tr class="separator:a3a440b3893fa10608d4428958be1c52e"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00002932<tr class="memitem:aa41d7415a5386798147cccae2333d5d4"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">CPUModel</a> { <br />
2933&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b">GENERIC</a>,
2934<a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8">GENERIC_FP16</a>,
2935<a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7">GENERIC_FP16_DOT</a>,
Jenkinsb3a371b2018-05-23 11:36:53 +01002936<a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d">A53</a>,
Jenkins52ba29e2018-08-29 15:32:11 +00002937<br />
2938&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92">A55r0</a>,
Jenkinsb3a371b2018-05-23 11:36:53 +01002939<a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a2f2d74257db975404ff4ca97ce1e0bca">A55r1</a>
Jenkins52ba29e2018-08-29 15:32:11 +00002940<br />
Jenkins514be652019-02-28 12:25:18 +00002941 }</td></tr>
2942<tr class="memdesc:aa41d7415a5386798147cccae2333d5d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">CPU models - we only need to detect CPUs we have microarchitecture-specific code for. <a href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">More...</a><br /></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002943<tr class="separator:aa41d7415a5386798147cccae2333d5d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00002944<tr class="memitem:a4c9101ca1a1f72f48efff28b4b9a6495"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495">MemoryPolicy</a> { <a class="el" href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495a704bfa6c1ed5e479c8cfb5bdfc8cccda">MINIMIZE</a>,
2945<a class="el" href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495a1e23852820b9154316c7c06e2b7ba051">NORMAL</a>
Jenkins514be652019-02-28 12:25:18 +00002946 }</td></tr>
2947<tr class="memdesc:a4c9101ca1a1f72f48efff28b4b9a6495"><td class="mdescLeft">&#160;</td><td class="mdescRight">Global memory policy. <a href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00002948<tr class="separator:a4c9101ca1a1f72f48efff28b4b9a6495"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002949<tr class="memitem:a59e56af19e754a6aa26a612ebf91d05f"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05f">ErrorCode</a> { <a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fae0aa021e21dddbd6d8cecec71e9cf564">OK</a>,
Jenkins52ba29e2018-08-29 15:32:11 +00002950<a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa62be47fdd89da032cf78dfce82239579">RUNTIME_ERROR</a>,
2951<a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7">UNSUPPORTED_EXTENSION_USE</a>
Jenkins514be652019-02-28 12:25:18 +00002952 }</td></tr>
2953<tr class="memdesc:a59e56af19e754a6aa26a612ebf91d05f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available error codes. <a href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05f">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002954<tr class="separator:a59e56af19e754a6aa26a612ebf91d05f"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002955<tr class="memitem:a735ac6c2a02e320969625308810444f3"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> { <br />
2956&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a> = 0x101,
2957<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a57a3b40730a5af7ea3e13eb4bba56d82">GPU_ARCH_MASK</a> = 0xF00,
2958<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38">MIDGARD</a> = 0x100,
2959<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e">BIFROST</a> = 0x200,
2960<br />
2961&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a6855a4342969d2b58c96d95385d6e673">T600</a> = 0x110,
2962<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd">T700</a> = 0x120,
2963<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aae926a8537ded0221329aa9a89b84048">T800</a> = 0x130,
2964<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6">G71</a> = 0x210,
2965<br />
2966&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab2ac2aea42c95ccc70260ceeb02ec4fc">G72</a> = 0x220,
2967<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0">G51</a> = 0x230,
2968<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988">G51BIG</a> = 0x231,
2969<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f">G51LIT</a> = 0x232,
2970<br />
Jenkinsb9abeae2018-11-22 11:58:08 +00002971&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a3731064380218cfc2b9613d2b6293cfb">G52</a> = 0x240,
2972<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a4b3e9b93a7e833f9d7ab01d4cf9f7837">G52LIT</a> = 0x241,
2973<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">G76</a> = 0x250,
2974<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4">TTRX</a> = 0x260,
2975<br />
2976&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc">TBOX</a> = 0x270
Jenkinsb3a371b2018-05-23 11:36:53 +01002977<br />
Jenkins514be652019-02-28 12:25:18 +00002978 }</td></tr>
2979<tr class="memdesc:a735ac6c2a02e320969625308810444f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available GPU Targets. <a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">More...</a><br /></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01002980<tr class="separator:a735ac6c2a02e320969625308810444f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002981<tr class="memitem:add6426cbf2e057a195846d4ba09a50be"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a> { <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06">TO_ZERO</a>,
2982<a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95">TO_NEAREST_UP</a>,
2983<a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150">TO_NEAREST_EVEN</a>
Jenkins514be652019-02-28 12:25:18 +00002984 }</td></tr>
2985<tr class="memdesc:add6426cbf2e057a195846d4ba09a50be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Rounding method. <a href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002986<tr class="separator:add6426cbf2e057a195846d4ba09a50be"><td class="memSeparator" colspan="2">&#160;</td></tr>
2987<tr class="memitem:ab4e88c89b3b7ea1735996cc4def22d58"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> { <br />
Anthony Barbier871448e2017-03-24 14:54:29 +00002988&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>,
2989<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>,
2990<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>,
2991<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>,
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002992<br />
Anthony Barbier871448e2017-03-24 14:54:29 +00002993&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>,
2994<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>,
2995<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>,
2996<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>,
Anthony Barbier8140e1e2017-12-14 23:48:46 +00002997<br />
Anthony Barbier871448e2017-03-24 14:54:29 +00002998&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>,
2999<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>,
3000<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>,
3001<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>,
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003002<br />
Anthony Barbier871448e2017-03-24 14:54:29 +00003003&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>,
3004<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>,
3005<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>,
3006<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>,
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003007<br />
Anthony Barbier871448e2017-03-24 14:54:29 +00003008&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003009<br />
Jenkins514be652019-02-28 12:25:18 +00003010 }</td></tr>
3011<tr class="memdesc:ab4e88c89b3b7ea1735996cc4def22d58"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="struct_image.xhtml" title="Structure to hold Image information.">Image</a> colour formats. <a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003012<tr class="separator:ab4e88c89b3b7ea1735996cc4def22d58"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003013<tr class="memitem:ad8ed01ff3ff33333d8e19db4d2818bb6"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> { <br />
Anthony Barbier871448e2017-03-24 14:54:29 +00003014&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>,
3015<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a6669348b484e3008dca2bfa8e85e40b5">U8</a>,
3016<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>,
Jenkins52ba29e2018-08-29 15:32:11 +00003017<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>,
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003018<br />
Jenkins52ba29e2018-08-29 15:32:11 +00003019&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>,
Anthony Barbierdbdab852017-06-23 15:42:00 +01003020<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a6e0b0886efb94aec797f6b830329b72c">S16</a>,
Jenkins52ba29e2018-08-29 15:32:11 +00003021<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>,
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003022<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aa1e28eee0339658d39a8b4d325b56e9c">S32</a>,
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003023<br />
Jenkins52ba29e2018-08-29 15:32:11 +00003024&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>,
3025<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>,
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003026<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a56d8353718e6fdc78b8d69078a2cdb94">F16</a>,
Kaizen8938bd32017-09-28 14:38:23 +01003027<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>,
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003028<br />
Jenkins52ba29e2018-08-29 15:32:11 +00003029&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">F64</a>,
3030<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">SIZET</a>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003031<br />
Jenkins514be652019-02-28 12:25:18 +00003032 }</td></tr>
3033<tr class="memdesc:ad8ed01ff3ff33333d8e19db4d2818bb6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available data types. <a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003034<tr class="separator:ad8ed01ff3ff33333d8e19db4d2818bb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003035<tr class="memitem:a16a59381d4d74d17d86d69eb4d286d7b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7b">SamplingPolicy</a> { <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e">CENTER</a>,
3036<a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7ba747385047b85ae751f83adb36435a3c1">TOP_LEFT</a>
Jenkins514be652019-02-28 12:25:18 +00003037 }</td></tr>
3038<tr class="memdesc:a16a59381d4d74d17d86d69eb4d286d7b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available Sampling Policies. <a href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7b">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003039<tr class="separator:a16a59381d4d74d17d86d69eb4d286d7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003040<tr class="memitem:ad1d5cce2d9e9a5d61c243e5c989112e0"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> { <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>,
3041<a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>,
Anthony Barbier06ea0482018-02-22 15:45:35 +00003042<a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">NHWC</a>
Jenkins514be652019-02-28 12:25:18 +00003043 }</td></tr>
3044<tr class="memdesc:ad1d5cce2d9e9a5d61c243e5c989112e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">[DataLayout enum definition] <a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">More...</a><br /></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00003045<tr class="separator:ad1d5cce2d9e9a5d61c243e5c989112e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003046<tr class="memitem:a74ce3f7420453d3446218ff3b7453e02"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02">DataLayoutDimension</a> { <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">CHANNEL</a>,
3047<a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">HEIGHT</a>,
3048<a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>,
3049<a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a">BATCHES</a>
Jenkins514be652019-02-28 12:25:18 +00003050 }</td></tr>
3051<tr class="memdesc:a74ce3f7420453d3446218ff3b7453e02"><td class="mdescLeft">&#160;</td><td class="mdescRight">[DataLayout enum definition] <a href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02">More...</a><br /></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003052<tr class="separator:a74ce3f7420453d3446218ff3b7453e02"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003053<tr class="memitem:a683661ae75dcb7aef16b9c9bde31517d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517d">ConvolutionMethod</a> { <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3">GEMM</a>,
3054<a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76">DIRECT</a>,
3055<a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8">WINOGRAD</a>
3056 }</td></tr>
3057<tr class="memdesc:a683661ae75dcb7aef16b9c9bde31517d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available ConvolutionMethod. <a href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517d">More...</a><br /></td></tr>
3058<tr class="separator:a683661ae75dcb7aef16b9c9bde31517d"><td class="memSeparator" colspan="2">&#160;</td></tr>
3059<tr class="memitem:a2d299363c9fc33334c571fa29ca4f58c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58c">ComparisonOperation</a> { <br />
3060&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5">Equal</a>,
3061<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca19bb0af2c3c530538cb41aff7f235b96">NotEqual</a>,
3062<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">Greater</a>,
3063<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca758b05d899def79c9eb864ad4f96be1f">GreaterEqual</a>,
3064<br />
3065&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca1cfdf0e8d0c87a228c1f40d9bee7888b">Less</a>,
3066<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58cad3e6fdac55bb7b0edd7834c968ba1f38">LessEqual</a>
3067<br />
3068 }</td></tr>
3069<tr class="memdesc:a2d299363c9fc33334c571fa29ca4f58c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Supported comparison operations. <a href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58c">More...</a><br /></td></tr>
3070<tr class="separator:a2d299363c9fc33334c571fa29ca4f58c"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003071<tr class="memitem:a15a05537a472ee742404821851529327"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> { <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3">UNDEFINED</a>,
3072<a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92">CONSTANT</a>,
3073<a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa">REPLICATE</a>
Jenkins514be652019-02-28 12:25:18 +00003074 }</td></tr>
3075<tr class="memdesc:a15a05537a472ee742404821851529327"><td class="mdescLeft">&#160;</td><td class="mdescRight">Methods available to handle borders. <a href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003076<tr class="separator:a15a05537a472ee742404821851529327"><td class="memSeparator" colspan="2">&#160;</td></tr>
3077<tr class="memitem:a82b8ac759c804bc1fb4e2d21e178fb6f"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6f">ConvertPolicy</a> { <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0">WRAP</a>,
3078<a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fa4729d95f983955f0d93a30179deb2b86">SATURATE</a>
Jenkins514be652019-02-28 12:25:18 +00003079 }</td></tr>
3080<tr class="memdesc:a82b8ac759c804bc1fb4e2d21e178fb6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Policy to handle overflow. <a href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6f">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003081<tr class="separator:a82b8ac759c804bc1fb4e2d21e178fb6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
3082<tr class="memitem:a966a9c417ce5e94dca08d9b5e745c0c9"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> { <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2">NEAREST_NEIGHBOR</a>,
3083<a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65">BILINEAR</a>,
3084<a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4">AREA</a>
Jenkins514be652019-02-28 12:25:18 +00003085 }</td></tr>
3086<tr class="memdesc:a966a9c417ce5e94dca08d9b5e745c0c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interpolation method. <a href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003087<tr class="separator:a966a9c417ce5e94dca08d9b5e745c0c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
3088<tr class="memitem:a2d8a00f1d80a53ce8f75fa929c873202"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202">BilinearInterpolation</a> { <a class="el" href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202a856d68c521c4c85363f54d95a33b7532">BILINEAR_OLD_NEW</a>,
3089<a class="el" href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202a731cb35d2d520920db9ab20dfc5edc64">BILINEAR_SCHARR</a>
Jenkins514be652019-02-28 12:25:18 +00003090 }</td></tr>
3091<tr class="memdesc:a2d8a00f1d80a53ce8f75fa929c873202"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bilinear Interpolation method used by LKTracker. <a href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003092<tr class="separator:a2d8a00f1d80a53ce8f75fa929c873202"><td class="memSeparator" colspan="2">&#160;</td></tr>
3093<tr class="memitem:a3e6b23e675649b83240691abbc42a649"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649">ThresholdType</a> { <a class="el" href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649a98ad0e8750ae10ad556ed7a62affb452">BINARY</a>,
3094<a class="el" href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649a01036ddcc971d02f6c32c3da31a119f2">RANGE</a>
Jenkins514be652019-02-28 12:25:18 +00003095 }</td></tr>
3096<tr class="memdesc:a3e6b23e675649b83240691abbc42a649"><td class="mdescLeft">&#160;</td><td class="mdescRight">Threshold mode. <a href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003097<tr class="separator:a3e6b23e675649b83240691abbc42a649"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003098<tr class="memitem:a08c1503414e23f5dd10ff83492685453"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453">Termination</a> { <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b">TERM_CRITERIA_EPSILON</a>,
3099<a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a43f2a8b688fb96e5ad8ba08308bbcdfd">TERM_CRITERIA_ITERATIONS</a>,
3100<a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a788740b1ba2d6463dae318a332513b29">TERM_CRITERIA_BOTH</a>
Jenkins514be652019-02-28 12:25:18 +00003101 }</td></tr>
3102<tr class="memdesc:a08c1503414e23f5dd10ff83492685453"><td class="mdescLeft">&#160;</td><td class="mdescRight">Termination criteria. <a href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003103<tr class="separator:a08c1503414e23f5dd10ff83492685453"><td class="memSeparator" colspan="2">&#160;</td></tr>
3104<tr class="memitem:a7b3ec6413f000b02fdb4e39a951d9f8a"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8a">MagnitudeType</a> { <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8">L1NORM</a>,
3105<a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aad927ac799e8b24f80fc80d89b2eb7131">L2NORM</a>
Jenkins514be652019-02-28 12:25:18 +00003106 }</td></tr>
3107<tr class="memdesc:a7b3ec6413f000b02fdb4e39a951d9f8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Magnitude calculation type. <a href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8a">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003108<tr class="separator:a7b3ec6413f000b02fdb4e39a951d9f8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
3109<tr class="memitem:af00a42ecad444bbda75cde1b64bd7e72"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72">PhaseType</a> { <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72a6898b46a1cde8a1572e2722c44c5ab07">SIGNED</a>,
3110<a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054">UNSIGNED</a>
Jenkins514be652019-02-28 12:25:18 +00003111 }</td></tr>
3112<tr class="memdesc:af00a42ecad444bbda75cde1b64bd7e72"><td class="mdescLeft">&#160;</td><td class="mdescRight">Phase calculation type. <a href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003113<tr class="separator:af00a42ecad444bbda75cde1b64bd7e72"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003114<tr class="memitem:a1ce9b523fd4f3b5bbcadcd796183455a"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> { <br />
Anthony Barbier871448e2017-03-24 14:54:29 +00003115&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>,
3116<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9c5959e6f08f10d0edbadf5be1f33c53">C0</a>,
3117<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1">C1</a>,
3118<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aaf1a543f5a2c5d49bc5dde298fcf716e4">C2</a>,
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003119<br />
Anthony Barbier871448e2017-03-24 14:54:29 +00003120&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa3abe124ecc82bf2c2e22e6058f38c50c">C3</a>,
3121<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">R</a>,
3122<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">G</a>,
3123<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a>,
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003124<br />
Anthony Barbier871448e2017-03-24 14:54:29 +00003125&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a>,
3126<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>,
3127<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>,
3128<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003129<br />
Jenkins514be652019-02-28 12:25:18 +00003130 }</td></tr>
3131<tr class="memdesc:a1ce9b523fd4f3b5bbcadcd796183455a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available channels. <a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003132<tr class="separator:a1ce9b523fd4f3b5bbcadcd796183455a"><td class="memSeparator" colspan="2">&#160;</td></tr>
3133<tr class="memitem:afdda916edc7502967bbec17ea3c06c02"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a> { <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5">BOX</a>,
3134<a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2">CROSS</a>,
3135<a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7">DISK</a>,
3136<a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb">OTHER</a>
Jenkins514be652019-02-28 12:25:18 +00003137 }</td></tr>
3138<tr class="memdesc:afdda916edc7502967bbec17ea3c06c02"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available matrix patterns. <a href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003139<tr class="separator:afdda916edc7502967bbec17ea3c06c02"><td class="memSeparator" colspan="2">&#160;</td></tr>
3140<tr class="memitem:adf2ced65e536375a1c96425d9fced858"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a> : unsigned { <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074">MEDIAN</a> = 0,
3141<a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858ace31e2a082d17e038fcc6e3006166653">MIN</a> = 1,
3142<a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a> = 2
Jenkins514be652019-02-28 12:25:18 +00003143 }</td></tr>
3144<tr class="memdesc:adf2ced65e536375a1c96425d9fced858"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available non linear functions. <a href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003145<tr class="separator:adf2ced65e536375a1c96425d9fced858"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003146<tr class="memitem:a5827eb9cb394e74af87f74bd354fb45b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45b">ReductionOperation</a> { <br />
3147&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba654fed6e9b6c154d04bcaa439e32d0d5">ARG_IDX_MAX</a>,
3148<a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba39102811589b9a0d7a6aa8721663b4d1">ARG_IDX_MIN</a>,
3149<a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45bafc54513dae613e117ffc4169e48bfce5">MEAN_SUM</a>,
3150<a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45bac8074bb318fb85693233e64acc64c1ed">PROD</a>,
3151<br />
3152&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64">SUM_SQUARE</a>,
3153<a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a">SUM</a>
3154<br />
3155 }</td></tr>
3156<tr class="memdesc:a5827eb9cb394e74af87f74bd354fb45b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available reduction operations. <a href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45b">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01003157<tr class="separator:a5827eb9cb394e74af87f74bd354fb45b"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003158<tr class="memitem:a23d9f0c01c9e120dfb828ee922b7a8ae"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8ae">ArithmeticOperation</a> { <br />
3159&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8aea9eeb52badb613229884838847294b90d">ADD</a>,
3160<a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8aea241dd841abade20fcb27b8a9f494e1eb">SUB</a>,
3161<a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8aea29bbf66f7f8529ec47e394fb5a36c646">DIV</a>,
3162<a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8aeace31e2a082d17e038fcc6e3006166653">MIN</a>,
3163<br />
3164&#160;&#160;<a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8aea26a4b44a837bf97b972628509912b4a5">MAX</a>,
3165<a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8aea46ea186b87dc545033d86ba8d6e63916">SQUARED_DIFF</a>
3166<br />
3167 }</td></tr>
3168<tr class="memdesc:a23d9f0c01c9e120dfb828ee922b7a8ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available element-wise operations. <a href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8ae">More...</a><br /></td></tr>
3169<tr class="separator:a23d9f0c01c9e120dfb828ee922b7a8ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
3170<tr class="memitem:a5dad01b7eab116403241313417e0936d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936d">ElementWiseUnary</a> { <a class="el" href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936da66bac724670f51e77f3688d33ca0d781">RSQRT</a>,
3171<a class="el" href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936da8c670f8c37b95e1ed14a0ce414b049c7">EXP</a>
3172 }</td></tr>
3173<tr class="memdesc:a5dad01b7eab116403241313417e0936d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available element wise unary operations. <a href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936d">More...</a><br /></td></tr>
3174<tr class="separator:a5dad01b7eab116403241313417e0936d"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003175<tr class="memitem:ad4bb8dabdbf8ad75e34220cc666b59ca"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">NormType</a> { <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190">IN_MAP_1D</a>,
3176<a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e">IN_MAP_2D</a>,
Anthony Barbier871448e2017-03-24 14:54:29 +00003177<a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5">CROSS_MAP</a>
Jenkins514be652019-02-28 12:25:18 +00003178 }</td></tr>
3179<tr class="memdesc:ad4bb8dabdbf8ad75e34220cc666b59ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">The normalization type used for the normalization layer. <a href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003180<tr class="separator:ad4bb8dabdbf8ad75e34220cc666b59ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003181<tr class="memitem:a673665b4587a2956fcbad5f0e9ba89d3"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3">HOGNormType</a> { <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a80485e54c7a3c93a0f74637c6b918ce5">L2_NORM</a> = 1,
3182<a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">L2HYS_NORM</a> = 2,
3183<a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a68616ae21712c00705b962f4eff06eaa">L1_NORM</a> = 3
Jenkins514be652019-02-28 12:25:18 +00003184 }</td></tr>
3185<tr class="memdesc:a673665b4587a2956fcbad5f0e9ba89d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalization type for Histogram of Oriented Gradients (HOG) <a href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003186<tr class="separator:a673665b4587a2956fcbad5f0e9ba89d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
3187<tr class="memitem:a1fece1bd804e64f39f602d1c3969849a"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849a">DimensionRoundingType</a> { <a class="el" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa56c1e354d36beb85b0d881c5b2e24cbe">FLOOR</a>,
3188<a class="el" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff">CEIL</a>
Jenkins514be652019-02-28 12:25:18 +00003189 }</td></tr>
3190<tr class="memdesc:a1fece1bd804e64f39f602d1c3969849a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dimension rounding type when down-scaling on CNNs. <a href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849a">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003191<tr class="separator:a1fece1bd804e64f39f602d1c3969849a"><td class="memSeparator" colspan="2">&#160;</td></tr>
3192<tr class="memitem:a9172da722f0a434e5cc07c0a3c115d93"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">PoolingType</a> { <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93a26a4b44a837bf97b972628509912b4a5">MAX</a>,
Kaizen8938bd32017-09-28 14:38:23 +01003193<a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a">AVG</a>,
3194<a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76">L2</a>
Jenkins514be652019-02-28 12:25:18 +00003195 }</td></tr>
3196<tr class="memdesc:a9172da722f0a434e5cc07c0a3c115d93"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available pooling types. <a href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003197<tr class="separator:a9172da722f0a434e5cc07c0a3c115d93"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003198<tr class="memitem:a201391f6e13e2a1ac203256a77792718"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718">NMSType</a> { <a class="el" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718aaac544aacc3615aada24897a215f5046">LINEAR</a>,
3199<a class="el" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718a0fceff26ae86a047835cafbb6cadb1b9">GAUSSIAN</a>,
3200<a class="el" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718aa87d5006e1de1bfc07d5c56086ad20f1">ORIGINAL</a>
Jenkins514be652019-02-28 12:25:18 +00003201 }</td></tr>
3202<tr class="memdesc:a201391f6e13e2a1ac203256a77792718"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available non maxima suppression types. <a href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003203<tr class="separator:a201391f6e13e2a1ac203256a77792718"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003204<tr class="memitem:ad818ba0ecd4a87d8f1bb0d5b17f07830"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830">DetectionOutputLayerCodeType</a> { <a class="el" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830ac411afd31d32cec664d372acc12f404a">CORNER</a>,
3205<a class="el" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830a1150a8d7752b01d30d91fe18fe9d8a54">CENTER_SIZE</a>,
3206<a class="el" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830afbc6c35854fe02eb9e792f897399c42a">CORNER_SIZE</a>,
3207<a class="el" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830ae65a115db9b4bcc4ae0aa0b989089d16">TF_CENTER</a>
3208 }</td></tr>
3209<tr class="memdesc:ad818ba0ecd4a87d8f1bb0d5b17f07830"><td class="mdescLeft">&#160;</td><td class="mdescRight">Available Detection Output code types. <a href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830">More...</a><br /></td></tr>
3210<tr class="separator:ad818ba0ecd4a87d8f1bb0d5b17f07830"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003211<tr class="memitem:a5558e2cc22f7f4771653d992c8ad8864"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864">GEMMLowpOutputStageType</a> { <a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab50339a10e1de285ac99d4c3990b8693">NONE</a>,
3212<a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864a079e2ddc95b344b5cb0188bed9a80d8b">QUANTIZE_DOWN</a>,
3213<a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab300cae200f67712c1eb9234e28158ca">QUANTIZE_DOWN_FIXEDPOINT</a>,
3214<a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864aad664ac5008f135e38afeb391e524f9c">QUANTIZE_DOWN_FLOAT</a>
Jenkins514be652019-02-28 12:25:18 +00003215 }</td></tr>
3216<tr class="memdesc:a5558e2cc22f7f4771653d992c8ad8864"><td class="mdescLeft">&#160;</td><td class="mdescRight">GEMMLowp output stage type. <a href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003217<tr class="separator:a5558e2cc22f7f4771653d992c8ad8864"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01003218<tr class="memitem:af0a4d6be70322c742c12da1edccbb74d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74d">MappingType</a> { <a class="el" href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74daac354f9e7a5097598cdd933b42fd190e">BLOBS</a>,
3219<a class="el" href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74da465202c26fd7181c6bc9a80648499073">OFFSETS</a>
Jenkins514be652019-02-28 12:25:18 +00003220 }</td></tr>
3221<tr class="memdesc:af0a4d6be70322c742c12da1edccbb74d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mapping type. <a href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74d">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01003222<tr class="separator:af0a4d6be70322c742c12da1edccbb74d"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003223<tr class="memitem:ae46abc5ecac309cbece5c06cb80daaf7"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7">GradientDimension</a> { <a class="el" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7a5515a637eda61b978e97adaa5d7629cc">GRAD_XY</a>
Jenkins514be652019-02-28 12:25:18 +00003224 }</td></tr>
3225<tr class="memdesc:ae46abc5ecac309cbece5c06cb80daaf7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gradient dimension type. <a href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003226<tr class="separator:ae46abc5ecac309cbece5c06cb80daaf7"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003227</table><table class="memberdecls">
3228<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
3229Functions</h2></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003230<tr class="memitem:a545eeda2eaa3f5a54345ce8169e21184"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a545eeda2eaa3f5a54345ce8169e21184">get_cl_type_from_data_type</a> (const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;dt)</td></tr>
3231<tr class="memdesc:a545eeda2eaa3f5a54345ce8169e21184"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a tensor data type to the appropriate OpenCL type. <a href="#a545eeda2eaa3f5a54345ce8169e21184">More...</a><br /></td></tr>
3232<tr class="separator:a545eeda2eaa3f5a54345ce8169e21184"><td class="memSeparator" colspan="2">&#160;</td></tr>
3233<tr class="memitem:a70d221fbff7bff840ef4d3fdc701cf53"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a70d221fbff7bff840ef4d3fdc701cf53">get_cl_select_type_from_data_type</a> (const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;dt)</td></tr>
3234<tr class="memdesc:a70d221fbff7bff840ef4d3fdc701cf53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a tensor data type to the appropriate OpenCL select type. <a href="#a70d221fbff7bff840ef4d3fdc701cf53">More...</a><br /></td></tr>
3235<tr class="separator:a70d221fbff7bff840ef4d3fdc701cf53"><td class="memSeparator" colspan="2">&#160;</td></tr>
3236<tr class="memitem:ab631f49c436b1f18beff3248c4b1a19e"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab631f49c436b1f18beff3248c4b1a19e">get_data_size_from_data_type</a> (const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;dt)</td></tr>
3237<tr class="memdesc:ab631f49c436b1f18beff3248c4b1a19e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the size of a data type in number of bits. <a href="#ab631f49c436b1f18beff3248c4b1a19e">More...</a><br /></td></tr>
3238<tr class="separator:ab631f49c436b1f18beff3248c4b1a19e"><td class="memSeparator" colspan="2">&#160;</td></tr>
3239<tr class="memitem:aa9ed41c417478e5b1e346de1899137b1"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa9ed41c417478e5b1e346de1899137b1">get_underlying_cl_type_from_data_type</a> (const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;dt)</td></tr>
3240<tr class="memdesc:aa9ed41c417478e5b1e346de1899137b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates fixed point tensor data type to the underlying OpenCL type. <a href="#aa9ed41c417478e5b1e346de1899137b1">More...</a><br /></td></tr>
3241<tr class="separator:aa9ed41c417478e5b1e346de1899137b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
3242<tr class="memitem:a281384aa081efe5819eedd6a7c2a429b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a281384aa081efe5819eedd6a7c2a429b">get_target_from_device</a> (const cl::Device &amp;device)</td></tr>
3243<tr class="memdesc:a281384aa081efe5819eedd6a7c2a429b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the GPU target from CL device. <a href="#a281384aa081efe5819eedd6a7c2a429b">More...</a><br /></td></tr>
3244<tr class="separator:a281384aa081efe5819eedd6a7c2a429b"><td class="memSeparator" colspan="2">&#160;</td></tr>
3245<tr class="memitem:a0e62ce01a7a7af6c3d059bb8534cad45"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52e">CLVersion</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0e62ce01a7a7af6c3d059bb8534cad45">get_cl_version</a> (const cl::Device &amp;device)</td></tr>
3246<tr class="memdesc:a0e62ce01a7a7af6c3d059bb8534cad45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the highest OpenCL version supported. <a href="#a0e62ce01a7a7af6c3d059bb8534cad45">More...</a><br /></td></tr>
3247<tr class="separator:a0e62ce01a7a7af6c3d059bb8534cad45"><td class="memSeparator" colspan="2">&#160;</td></tr>
3248<tr class="memitem:a6c4a5ca34ebb51d4e2e119a110e4c8f0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">device_supports_extension</a> (const cl::Device &amp;device, const char *extension_name)</td></tr>
3249<tr class="memdesc:a6c4a5ca34ebb51d4e2e119a110e4c8f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether a given extension is supported. <a href="#a6c4a5ca34ebb51d4e2e119a110e4c8f0">More...</a><br /></td></tr>
3250<tr class="separator:a6c4a5ca34ebb51d4e2e119a110e4c8f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
3251<tr class="memitem:a2ad3c9492d4158b574a89ab798d74e16"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2ad3c9492d4158b574a89ab798d74e16">fp16_supported</a> (const cl::Device &amp;device)</td></tr>
3252<tr class="memdesc:a2ad3c9492d4158b574a89ab798d74e16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether the cl_khr_fp16 extension is supported. <a href="#a2ad3c9492d4158b574a89ab798d74e16">More...</a><br /></td></tr>
3253<tr class="separator:a2ad3c9492d4158b574a89ab798d74e16"><td class="memSeparator" colspan="2">&#160;</td></tr>
3254<tr class="memitem:a0019d1de2500c73f16b673d8a883a767"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0019d1de2500c73f16b673d8a883a767">arm_non_uniform_workgroup_supported</a> (const cl::Device &amp;device)</td></tr>
3255<tr class="memdesc:a0019d1de2500c73f16b673d8a883a767"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether the arm_non_uniform_work_group_size extension is supported. <a href="#a0019d1de2500c73f16b673d8a883a767">More...</a><br /></td></tr>
3256<tr class="separator:a0019d1de2500c73f16b673d8a883a767"><td class="memSeparator" colspan="2">&#160;</td></tr>
3257<tr class="memitem:ac07e02c0066cf540a5a2665fa7d54934"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac07e02c0066cf540a5a2665fa7d54934">dot8_supported</a> (const cl::Device &amp;device)</td></tr>
3258<tr class="memdesc:ac07e02c0066cf540a5a2665fa7d54934"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether the cl_arm_integer_dot_product_int8 extension is supported. <a href="#ac07e02c0066cf540a5a2665fa7d54934">More...</a><br /></td></tr>
3259<tr class="separator:ac07e02c0066cf540a5a2665fa7d54934"><td class="memSeparator" colspan="2">&#160;</td></tr>
3260<tr class="memitem:a4878daab91c6d7173de20283766e0c2c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4878daab91c6d7173de20283766e0c2c">dot8_acc_supported</a> (const cl::Device &amp;device)</td></tr>
3261<tr class="memdesc:a4878daab91c6d7173de20283766e0c2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether the cl_arm_integer_dot_product_accumulate_int8 extension is supported. <a href="#a4878daab91c6d7173de20283766e0c2c">More...</a><br /></td></tr>
3262<tr class="separator:a4878daab91c6d7173de20283766e0c2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
3263<tr class="memitem:a7f5aff064f09dd7f355aaaf7641bf7d3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7f5aff064f09dd7f355aaaf7641bf7d3">cl_winograd_convolution_layer_supported</a> (const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;output_tile, const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;kernel_size, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> data_layout)</td></tr>
3264<tr class="memdesc:a7f5aff064f09dd7f355aaaf7641bf7d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function checks if the Winograd configuration (defined through the output tile, kernel size and the data layout) is supported on OpenCL. <a href="#a7f5aff064f09dd7f355aaaf7641bf7d3">More...</a><br /></td></tr>
3265<tr class="separator:a7f5aff064f09dd7f355aaaf7641bf7d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003266<tr class="memitem:a1bd532ddb5d86290e40c0b482eb476f2"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1bd532ddb5d86290e40c0b482eb476f2">preferred_vector_width</a> (const cl::Device &amp;device, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt)</td></tr>
3267<tr class="memdesc:a1bd532ddb5d86290e40c0b482eb476f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the preferred native vector width size for built-in scalar types that can be put into vectors. <a href="#a1bd532ddb5d86290e40c0b482eb476f2">More...</a><br /></td></tr>
3268<tr class="separator:a1bd532ddb5d86290e40c0b482eb476f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00003269<tr class="memitem:a5c8dc3902d1a2de5b20aa249fb483eea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5c8dc3902d1a2de5b20aa249fb483eea">error_on_unsupported_int64_base_atomics</a> (const char *function, const char *file, const int line)</td></tr>
3270<tr class="memdesc:a5c8dc3902d1a2de5b20aa249fb483eea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if int64_base_atomics extension is not supported by the device. <a href="#a5c8dc3902d1a2de5b20aa249fb483eea">More...</a><br /></td></tr>
3271<tr class="separator:a5c8dc3902d1a2de5b20aa249fb483eea"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003272<tr class="memitem:a1e48b7cf7de6a52575088cb7082d2b3e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1e48b7cf7de6a52575088cb7082d2b3e">enqueue</a> (cl::CommandQueue &amp;queue, <a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml">ICLKernel</a> &amp;kernel, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;window, const cl::NDRange &amp;lws_hint=<a class="el" href="classarm__compute_1_1_c_l_kernel_library.xhtml#acba005f5ce2c62cbf3f94d074d9007aa">CLKernelLibrary::get</a>().default_ndrange())</td></tr>
3273<tr class="memdesc:a1e48b7cf7de6a52575088cb7082d2b3e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add the kernel to the command queue with the given window. <a href="#a1e48b7cf7de6a52575088cb7082d2b3e">More...</a><br /></td></tr>
3274<tr class="separator:a1e48b7cf7de6a52575088cb7082d2b3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
3275<tr class="memitem:a5f49decb4b0a74d5361686ab45db8961"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5f49decb4b0a74d5361686ab45db8961">opencl_is_available</a> ()</td></tr>
3276<tr class="memdesc:a5f49decb4b0a74d5361686ab45db8961"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if OpenCL is available. <a href="#a5f49decb4b0a74d5361686ab45db8961">More...</a><br /></td></tr>
3277<tr class="separator:a5f49decb4b0a74d5361686ab45db8961"><td class="memSeparator" colspan="2">&#160;</td></tr>
3278<tr class="memitem:a5516ba576a612c73954609522347b576"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5516ba576a612c73954609522347b576">cpu_model_to_string</a> (<a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">CPUModel</a> val)</td></tr>
3279<tr class="memdesc:a5516ba576a612c73954609522347b576"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a cpumodel value to a string. <a href="#a5516ba576a612c73954609522347b576">More...</a><br /></td></tr>
3280<tr class="separator:a5516ba576a612c73954609522347b576"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00003281<tr class="memitem:a8e79316e933e15539e39cace39ba0e35"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8e79316e933e15539e39cace39ba0e35">error_on_unsupported_cpu_fp16</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info)</td></tr>
3282<tr class="memdesc:a8e79316e933e15539e39cace39ba0e35"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type of the passed tensor info is FP16 and FP16 support is not compiled in. <a href="#a8e79316e933e15539e39cace39ba0e35">More...</a><br /></td></tr>
3283<tr class="separator:a8e79316e933e15539e39cace39ba0e35"><td class="memSeparator" colspan="2">&#160;</td></tr>
3284<tr class="memitem:af2619085e2d6192b99df91fd805d8d30"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af2619085e2d6192b99df91fd805d8d30">error_on_unsupported_cpu_fp16</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor)</td></tr>
3285<tr class="memdesc:af2619085e2d6192b99df91fd805d8d30"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type of the passed tensor is FP16 and FP16 support is not compiled in. <a href="#af2619085e2d6192b99df91fd805d8d30">More...</a><br /></td></tr>
3286<tr class="separator:af2619085e2d6192b99df91fd805d8d30"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003287<tr class="memitem:a096590f2456b9e9bcb8db98175720b60"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3288<tr class="memitem:a096590f2456b9e9bcb8db98175720b60"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a096590f2456b9e9bcb8db98175720b60">operator==</a> (const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;lhs, const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;rhs)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003289<tr class="memdesc:a096590f2456b9e9bcb8db98175720b60"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check that given dimensions are equal. <a href="#a096590f2456b9e9bcb8db98175720b60">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003290<tr class="separator:a096590f2456b9e9bcb8db98175720b60"><td class="memSeparator" colspan="2">&#160;</td></tr>
3291<tr class="memitem:a4e3ff85e1f6c648dfbe264f54c147451"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3292<tr class="memitem:a4e3ff85e1f6c648dfbe264f54c147451"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4e3ff85e1f6c648dfbe264f54c147451">operator!=</a> (const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;lhs, const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;rhs)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003293<tr class="memdesc:a4e3ff85e1f6c648dfbe264f54c147451"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check that given dimensions are not equal. <a href="#a4e3ff85e1f6c648dfbe264f54c147451">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003294<tr class="separator:a4e3ff85e1f6c648dfbe264f54c147451"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003295<tr class="memitem:a053a24bb37402fa4b4d8d5963976ba17"><td class="memTemplParams" colspan="2">template&lt;typename... T&gt; </td></tr>
3296<tr class="memitem:a053a24bb37402fa4b4d8d5963976ba17"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a053a24bb37402fa4b4d8d5963976ba17">ignore_unused</a> (T &amp;&amp;...)</td></tr>
3297<tr class="memdesc:a053a24bb37402fa4b4d8d5963976ba17"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ignores unused arguments. <a href="#a053a24bb37402fa4b4d8d5963976ba17">More...</a><br /></td></tr>
3298<tr class="separator:a053a24bb37402fa4b4d8d5963976ba17"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003299<tr class="memitem:aee087c8a7edb0fb5b7e75b9037e34cf7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aee087c8a7edb0fb5b7e75b9037e34cf7">create_error_va_list</a> (<a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05f">ErrorCode</a> error_code, const char *function, const char *file, const int line, const char *msg, va_list args)</td></tr>
3300<tr class="memdesc:aee087c8a7edb0fb5b7e75b9037e34cf7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an error containing the error message from variable argument list. <a href="#aee087c8a7edb0fb5b7e75b9037e34cf7">More...</a><br /></td></tr>
3301<tr class="separator:aee087c8a7edb0fb5b7e75b9037e34cf7"><td class="memSeparator" colspan="2">&#160;</td></tr>
3302<tr class="memitem:a439338e8e5a7c76a079aca52e16cff79"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a439338e8e5a7c76a079aca52e16cff79">create_error</a> (<a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05f">ErrorCode</a> error_code, const char *function, const char *file, const int line, const char *msg,...)</td></tr>
3303<tr class="memdesc:a439338e8e5a7c76a079aca52e16cff79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an error containing the error message. <a href="#a439338e8e5a7c76a079aca52e16cff79">More...</a><br /></td></tr>
3304<tr class="separator:a439338e8e5a7c76a079aca52e16cff79"><td class="memSeparator" colspan="2">&#160;</td></tr>
3305<tr class="memitem:a0768178b90a30994784fd28c5a89323f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0768178b90a30994784fd28c5a89323f">error</a> (const char *function, const char *file, const int line, const char *msg,...)</td></tr>
3306<tr class="memdesc:a0768178b90a30994784fd28c5a89323f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print an error message then throw an std::runtime_error. <a href="#a0768178b90a30994784fd28c5a89323f">More...</a><br /></td></tr>
3307<tr class="separator:a0768178b90a30994784fd28c5a89323f"><td class="memSeparator" colspan="2">&#160;</td></tr>
3308<tr class="memitem:a786b9d823a527bb1e30d38f4dbe52d4b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a786b9d823a527bb1e30d38f4dbe52d4b">get_target_from_device</a> ()</td></tr>
3309<tr class="memdesc:a786b9d823a527bb1e30d38f4dbe52d4b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the GPU target from GLES using GL_RENDERER enum. <a href="#a786b9d823a527bb1e30d38f4dbe52d4b">More...</a><br /></td></tr>
3310<tr class="separator:a786b9d823a527bb1e30d38f4dbe52d4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
3311<tr class="memitem:a5c7c5fe99682f92e5e09cf62fb02ac91"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5c7c5fe99682f92e5e09cf62fb02ac91">enqueue</a> (<a class="el" href="classarm__compute_1_1_i_g_c_kernel.xhtml">IGCKernel</a> &amp;kernel, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;window, const <a class="el" href="classarm__compute_1_1gles_1_1_n_d_range.xhtml">gles::NDRange</a> &amp;lws=<a class="el" href="classarm__compute_1_1gles_1_1_n_d_range.xhtml">gles::NDRange</a>(1U, 1U, 1U))</td></tr>
3312<tr class="memdesc:a5c7c5fe99682f92e5e09cf62fb02ac91"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add the kernel to the command queue with the given window. <a href="#a5c7c5fe99682f92e5e09cf62fb02ac91">More...</a><br /></td></tr>
3313<tr class="separator:a5c7c5fe99682f92e5e09cf62fb02ac91"><td class="memSeparator" colspan="2">&#160;</td></tr>
3314<tr class="memitem:ad8ec10f67d9849be264c23c5329d9324"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad8ec10f67d9849be264c23c5329d9324">opengles31_is_available</a> ()</td></tr>
3315<tr class="memdesc:ad8ec10f67d9849be264c23c5329d9324"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the OpenGL ES 3.1 API is available at runtime. <a href="#ad8ec10f67d9849be264c23c5329d9324">More...</a><br /></td></tr>
3316<tr class="separator:ad8ec10f67d9849be264c23c5329d9324"><td class="memSeparator" colspan="2">&#160;</td></tr>
3317<tr class="memitem:af7795707992825c309fe846740dc8cf8"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af7795707992825c309fe846740dc8cf8">string_from_target</a> (<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target)</td></tr>
3318<tr class="memdesc:af7795707992825c309fe846740dc8cf8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given gpu device target to string. <a href="#af7795707992825c309fe846740dc8cf8">More...</a><br /></td></tr>
3319<tr class="separator:af7795707992825c309fe846740dc8cf8"><td class="memSeparator" colspan="2">&#160;</td></tr>
3320<tr class="memitem:a0dc6fb54ac0bbc7bf512fe0ca7414076"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0dc6fb54ac0bbc7bf512fe0ca7414076">get_target_from_name</a> (const std::string &amp;device_name)</td></tr>
3321<tr class="memdesc:a0dc6fb54ac0bbc7bf512fe0ca7414076"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the GPU target from a device name. <a href="#a0dc6fb54ac0bbc7bf512fe0ca7414076">More...</a><br /></td></tr>
3322<tr class="separator:a0dc6fb54ac0bbc7bf512fe0ca7414076"><td class="memSeparator" colspan="2">&#160;</td></tr>
3323<tr class="memitem:a2355c2bf5d1950088937416baea24fe6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2355c2bf5d1950088937416baea24fe6">get_arch_from_target</a> (<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target)</td></tr>
3324<tr class="memdesc:a2355c2bf5d1950088937416baea24fe6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to get the GPU arch. <a href="#a2355c2bf5d1950088937416baea24fe6">More...</a><br /></td></tr>
3325<tr class="separator:a2355c2bf5d1950088937416baea24fe6"><td class="memSeparator" colspan="2">&#160;</td></tr>
3326<tr class="memitem:a1da498e9b2c2d24883087f62c6bbe75d"><td class="memTemplParams" colspan="2">template&lt;typename... Args&gt; </td></tr>
3327<tr class="memitem:a1da498e9b2c2d24883087f62c6bbe75d"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1da498e9b2c2d24883087f62c6bbe75d">gpu_target_is_in</a> (<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target_to_check, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target, Args... targets)</td></tr>
3328<tr class="memdesc:a1da498e9b2c2d24883087f62c6bbe75d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to check whether a gpu target is equal to the provided targets. <a href="#a1da498e9b2c2d24883087f62c6bbe75d">More...</a><br /></td></tr>
3329<tr class="separator:a1da498e9b2c2d24883087f62c6bbe75d"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003330<tr class="memitem:aab39ce9a593f7e12a4bf4cb47272b917"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aab39ce9a593f7e12a4bf4cb47272b917">gpu_target_is_in</a> (<a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target_to_check, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> target)</td></tr>
3331<tr class="memdesc:aab39ce9a593f7e12a4bf4cb47272b917"><td class="mdescLeft">&#160;</td><td class="mdescRight">Variant of gpu_target_is_in for comparing two targets. <a href="#aab39ce9a593f7e12a4bf4cb47272b917">More...</a><br /></td></tr>
3332<tr class="separator:aab39ce9a593f7e12a4bf4cb47272b917"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003333<tr class="memitem:a6f698fa1629f7f800b3c8cd77a3d4b4a"><td class="memTemplParams" colspan="2">template&lt;typename Kernel , typename... T&gt; </td></tr>
3334<tr class="memitem:a6f698fa1629f7f800b3c8cd77a3d4b4a"><td class="memTemplItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classarm__compute_1_1_kernel.xhtml">Kernel</a> &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6f698fa1629f7f800b3c8cd77a3d4b4a">create_configure_kernel</a> (T &amp;&amp;... args)</td></tr>
3335<tr class="memdesc:a6f698fa1629f7f800b3c8cd77a3d4b4a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to create and return a unique_ptr pointed to a CL/GLES kernel object It also calls the kernel's configuration. <a href="#a6f698fa1629f7f800b3c8cd77a3d4b4a">More...</a><br /></td></tr>
3336<tr class="separator:a6f698fa1629f7f800b3c8cd77a3d4b4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003337<tr class="memitem:abc72c95941485d8a068fa38372308574"><td class="memTemplParams" colspan="2">template&lt;typename Kernel &gt; </td></tr>
3338<tr class="memitem:abc72c95941485d8a068fa38372308574"><td class="memTemplItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classarm__compute_1_1_kernel.xhtml">Kernel</a> &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abc72c95941485d8a068fa38372308574">create_kernel</a> ()</td></tr>
3339<tr class="memdesc:abc72c95941485d8a068fa38372308574"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to create and return a unique_ptr pointed to a CL/GLES kernel object. <a href="#abc72c95941485d8a068fa38372308574">More...</a><br /></td></tr>
3340<tr class="separator:abc72c95941485d8a068fa38372308574"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01003341<tr class="memitem:ad656a27ce8a507e31096ca45683ba9a5"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3342<tr class="memitem:ad656a27ce8a507e31096ca45683ba9a5"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad656a27ce8a507e31096ca45683ba9a5">delta_bilinear_c1</a> (const T *pixel_ptr, size_t stride, float dx, float dy)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003343<tr class="memdesc:ad656a27ce8a507e31096ca45683ba9a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes bilinear interpolation using the pointer to the top-left pixel and the pixel's distance between the real coordinates and the smallest following integer coordinates. <a href="#ad656a27ce8a507e31096ca45683ba9a5">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01003344<tr class="separator:ad656a27ce8a507e31096ca45683ba9a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003345<tr class="memitem:ad863f23e0037a10bacad6c483ab4e663"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad863f23e0037a10bacad6c483ab4e663">delta_bilinear_c1_quantized</a> (const uint8_t *pixel_ptr, size_t stride, float dx, float dy, <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> iq_info, <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> oq_info)</td></tr>
3346<tr class="memdesc:ad863f23e0037a10bacad6c483ab4e663"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes bilinear interpolation for quantized input and output, using the pointer to the top-left pixel and the pixel's distance between the real coordinates and the smallest following integer coordinates. <a href="#ad863f23e0037a10bacad6c483ab4e663">More...</a><br /></td></tr>
3347<tr class="separator:ad863f23e0037a10bacad6c483ab4e663"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003348<tr class="memitem:ad5fa8bacf824e9538014bfb0dcdaab52"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3349<tr class="memitem:ad5fa8bacf824e9538014bfb0dcdaab52"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad5fa8bacf824e9538014bfb0dcdaab52">delta_linear_c1_y</a> (const T *pixel_ptr, size_t stride, float dy)</td></tr>
3350<tr class="memdesc:ad5fa8bacf824e9538014bfb0dcdaab52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes linear interpolation using the pointer to the top pixel and the pixel's distance between the real coordinates and the smallest following integer coordinates. <a href="#ad5fa8bacf824e9538014bfb0dcdaab52">More...</a><br /></td></tr>
3351<tr class="separator:ad5fa8bacf824e9538014bfb0dcdaab52"><td class="memSeparator" colspan="2">&#160;</td></tr>
3352<tr class="memitem:a6174495b626531de015ae2b810859287"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3353<tr class="memitem:a6174495b626531de015ae2b810859287"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6174495b626531de015ae2b810859287">delta_linear_c1_x</a> (const T *pixel_ptr, float dx)</td></tr>
3354<tr class="memdesc:a6174495b626531de015ae2b810859287"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes linear interpolation using the pointer to the left pixel and the pixel's distance between the real coordinates and the smallest following integer coordinates. <a href="#a6174495b626531de015ae2b810859287">More...</a><br /></td></tr>
3355<tr class="separator:a6174495b626531de015ae2b810859287"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01003356<tr class="memitem:a1c8d639ec2b3086a9506e72605a32333"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3357<tr class="memitem:a1c8d639ec2b3086a9506e72605a32333"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1c8d639ec2b3086a9506e72605a32333">pixel_bilinear_c1</a> (const T *first_pixel_ptr, size_t stride, float x, float y)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003358<tr class="memdesc:a1c8d639ec2b3086a9506e72605a32333"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the pixel at (x,y) using bilinear interpolation. <a href="#a1c8d639ec2b3086a9506e72605a32333">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01003359<tr class="separator:a1c8d639ec2b3086a9506e72605a32333"><td class="memSeparator" colspan="2">&#160;</td></tr>
3360<tr class="memitem:afa55519774605e5b840fb031fdd7b196"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3361<tr class="memitem:afa55519774605e5b840fb031fdd7b196"><td class="memTemplItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afa55519774605e5b840fb031fdd7b196">pixel_bilinear_c1_clamp</a> (const T *first_pixel_ptr, size_t stride, size_t width, size_t height, float x, float y)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003362<tr class="memdesc:afa55519774605e5b840fb031fdd7b196"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the pixel at (x,y) using bilinear interpolation by clamping when out of borders. <a href="#afa55519774605e5b840fb031fdd7b196">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01003363<tr class="separator:afa55519774605e5b840fb031fdd7b196"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003364<tr class="memitem:ab7b3af731907e85fcaf72555c446176b"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab7b3af731907e85fcaf72555c446176b">pixel_area_c1u8_clamp</a> (const uint8_t *first_pixel_ptr, size_t stride, size_t width, size_t height, float wr, float hr, int x, int y)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003365<tr class="memdesc:ab7b3af731907e85fcaf72555c446176b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the pixel at (x,y) using area interpolation by clamping when out of borders. <a href="#ab7b3af731907e85fcaf72555c446176b">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003366<tr class="separator:ab7b3af731907e85fcaf72555c446176b"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003367<tr class="memitem:a5002bf7ec46d52971f9526e94172cfee"><td class="memTemplParams" colspan="2">template&lt;typename L , typename... Ts&gt; </td></tr>
3368<tr class="memitem:a5002bf7ec46d52971f9526e94172cfee"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a> (const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</td></tr>
3369<tr class="memdesc:a5002bf7ec46d52971f9526e94172cfee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_functino for each element. <a href="#a5002bf7ec46d52971f9526e94172cfee">More...</a><br /></td></tr>
3370<tr class="separator:a5002bf7ec46d52971f9526e94172cfee"><td class="memSeparator" colspan="2">&#160;</td></tr>
3371<tr class="memitem:afc4bd8e872567d9c4c57d89eb0bb3da1"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3372<tr class="memitem:afc4bd8e872567d9c4c57d89eb0bb3da1"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afc4bd8e872567d9c4c57d89eb0bb3da1">update_window_and_padding</a> (<a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win, Ts &amp;&amp;... patterns)</td></tr>
3373<tr class="memdesc:afc4bd8e872567d9c4c57d89eb0bb3da1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update window and padding size for each of the access patterns. <a href="#afc4bd8e872567d9c4c57d89eb0bb3da1">More...</a><br /></td></tr>
3374<tr class="separator:afc4bd8e872567d9c4c57d89eb0bb3da1"><td class="memSeparator" colspan="2">&#160;</td></tr>
3375<tr class="memitem:ab7980fa5ee693e3282a76da047a1c3b5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab7980fa5ee693e3282a76da047a1c3b5">calculate_max_window</a> (const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;valid_region, const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), bool skip_border=false, <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
3376<tr class="memdesc:ab7980fa5ee693e3282a76da047a1c3b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window for a given tensor shape and border setting. <a href="#ab7980fa5ee693e3282a76da047a1c3b5">More...</a><br /></td></tr>
3377<tr class="separator:ab7980fa5ee693e3282a76da047a1c3b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003378<tr class="memitem:aa2117aef4381edbdf81e17ec088df7f1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa2117aef4381edbdf81e17ec088df7f1">calculate_max_window</a> (const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), bool skip_border=false, <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003379<tr class="memdesc:aa2117aef4381edbdf81e17ec088df7f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window for a given tensor shape and border setting. <a href="#aa2117aef4381edbdf81e17ec088df7f1">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003380<tr class="separator:aa2117aef4381edbdf81e17ec088df7f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003381<tr class="memitem:a9047a414d692d8814181a667a7ee68c4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9047a414d692d8814181a667a7ee68c4">calculate_max_window_horizontal</a> (const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;valid_region, const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), bool skip_border=false, <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
3382<tr class="memdesc:a9047a414d692d8814181a667a7ee68c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window used by a horizontal kernel for a given tensor shape and border setting. <a href="#a9047a414d692d8814181a667a7ee68c4">More...</a><br /></td></tr>
3383<tr class="separator:a9047a414d692d8814181a667a7ee68c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003384<tr class="memitem:a47456b4d520aee1cba80bf6e20f6685a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a47456b4d520aee1cba80bf6e20f6685a">calculate_max_window_horizontal</a> (const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), bool skip_border=false, <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003385<tr class="memdesc:a47456b4d520aee1cba80bf6e20f6685a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window used by a horizontal kernel for a given tensor shape and border setting. <a href="#a47456b4d520aee1cba80bf6e20f6685a">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003386<tr class="separator:a47456b4d520aee1cba80bf6e20f6685a"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003387<tr class="memitem:affc1f59e0b2c29bf81e8c95bf0fa8e76"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#affc1f59e0b2c29bf81e8c95bf0fa8e76">calculate_max_enlarged_window</a> (const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;valid_region, const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
3388<tr class="memdesc:affc1f59e0b2c29bf81e8c95bf0fa8e76"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window for a given tensor shape and border setting. <a href="#affc1f59e0b2c29bf81e8c95bf0fa8e76">More...</a><br /></td></tr>
3389<tr class="separator:affc1f59e0b2c29bf81e8c95bf0fa8e76"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003390<tr class="memitem:afcdda83b6a85d5798f08d92c0e235e2e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afcdda83b6a85d5798f08d92c0e235e2e">calculate_max_enlarged_window</a> (const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;steps=<a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>(), <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size=<a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>())</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003391<tr class="memdesc:afcdda83b6a85d5798f08d92c0e235e2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the maximum window for a given tensor shape and border setting. <a href="#afcdda83b6a85d5798f08d92c0e235e2e">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003392<tr class="separator:afcdda83b6a85d5798f08d92c0e235e2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003393<tr class="memitem:aa7510e92de273e0457ce12218f712ad4"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3394<tr class="memitem:aa7510e92de273e0457ce12218f712ad4"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa7510e92de273e0457ce12218f712ad4">intersect_valid_regions</a> (const Ts &amp;... regions)</td></tr>
3395<tr class="memdesc:aa7510e92de273e0457ce12218f712ad4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Intersect multiple valid regions. <a href="#aa7510e92de273e0457ce12218f712ad4">More...</a><br /></td></tr>
3396<tr class="separator:aa7510e92de273e0457ce12218f712ad4"><td class="memSeparator" colspan="2">&#160;</td></tr>
3397<tr class="memitem:ac56739a30823647f7d86a0380a2ff62e"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
3398<tr class="memitem:ac56739a30823647f7d86a0380a2ff62e"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac56739a30823647f7d86a0380a2ff62e">compute_strides</a> (const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, T stride_x, Ts &amp;&amp;... fixed_strides)</td></tr>
3399<tr class="memdesc:ac56739a30823647f7d86a0380a2ff62e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a strides object based on the provided strides and the tensor dimensions. <a href="#ac56739a30823647f7d86a0380a2ff62e">More...</a><br /></td></tr>
3400<tr class="separator:ac56739a30823647f7d86a0380a2ff62e"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003401<tr class="memitem:a8c35748731709927597cb5a2c227e682"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3402<tr class="memitem:a8c35748731709927597cb5a2c227e682"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8c35748731709927597cb5a2c227e682">compute_strides</a> (const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003403<tr class="memdesc:a8c35748731709927597cb5a2c227e682"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a strides object based on the tensor dimensions. <a href="#a8c35748731709927597cb5a2c227e682">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003404<tr class="separator:a8c35748731709927597cb5a2c227e682"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003405<tr class="memitem:a21c3e11887f3acf9284ca763372c7da0"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3406<tr class="memitem:a21c3e11887f3acf9284ca763372c7da0"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a21c3e11887f3acf9284ca763372c7da0">permute</a> (<a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;dimensions, const <a class="el" href="namespacearm__compute.xhtml#a33e65be485104e2e9e69fca551d6f492">PermutationVector</a> &amp;perm)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003407<tr class="memdesc:a21c3e11887f3acf9284ca763372c7da0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Permutes given <a class="el" href="classarm__compute_1_1_dimensions.xhtml" title="Dimensions with dimensionality.">Dimensions</a> according to a permutation vector. <a href="#a21c3e11887f3acf9284ca763372c7da0">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003408<tr class="separator:a21c3e11887f3acf9284ca763372c7da0"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00003409<tr class="memitem:a5045aaec85553032a782c44ab8d26341"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5045aaec85553032a782c44ab8d26341">permute</a> (<a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape, const <a class="el" href="namespacearm__compute.xhtml#a33e65be485104e2e9e69fca551d6f492">PermutationVector</a> &amp;perm)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003410<tr class="memdesc:a5045aaec85553032a782c44ab8d26341"><td class="mdescLeft">&#160;</td><td class="mdescRight">Permutes given <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml" title="Shape of a tensor.">TensorShape</a> according to a permutation vector. <a href="#a5045aaec85553032a782c44ab8d26341">More...</a><br /></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00003411<tr class="separator:a5045aaec85553032a782c44ab8d26341"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00003412<tr class="memitem:a47be6fa38308d0003c25b60b7dbc45ce"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a47be6fa38308d0003c25b60b7dbc45ce">auto_init_if_empty</a> (<a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape, int num_channels, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> data_type, <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> quantization_info=<a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a>())</td></tr>
3413<tr class="memdesc:a47be6fa38308d0003c25b60b7dbc45ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Auto initialize the tensor info (shape, number of channels and data type) if the current assignment is empty. <a href="#a47be6fa38308d0003c25b60b7dbc45ce">More...</a><br /></td></tr>
3414<tr class="separator:a47be6fa38308d0003c25b60b7dbc45ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003415<tr class="memitem:a5844c8e025388ddd8c3afc5c3f7a3256"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5844c8e025388ddd8c3afc5c3f7a3256">auto_init_if_empty</a> (<a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info_sink, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info_source)</td></tr>
3416<tr class="memdesc:a5844c8e025388ddd8c3afc5c3f7a3256"><td class="mdescLeft">&#160;</td><td class="mdescRight">Auto initialize the tensor info using another tensor info. <a href="#a5844c8e025388ddd8c3afc5c3f7a3256">More...</a><br /></td></tr>
3417<tr class="separator:a5844c8e025388ddd8c3afc5c3f7a3256"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003418<tr class="memitem:a9d1a839c51134b2ae171a2264c541b6f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9d1a839c51134b2ae171a2264c541b6f">set_shape_if_empty</a> (<a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003419<tr class="memdesc:a9d1a839c51134b2ae171a2264c541b6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the shape to the specified value if the current assignment is empty. <a href="#a9d1a839c51134b2ae171a2264c541b6f">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003420<tr class="separator:a9d1a839c51134b2ae171a2264c541b6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
3421<tr class="memitem:a8076ba239b6681067b6cfea7f773a39f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8076ba239b6681067b6cfea7f773a39f">set_format_if_unknown</a> (<a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> format)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003422<tr class="memdesc:a8076ba239b6681067b6cfea7f773a39f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the format, data type and number of channels to the specified value if the current data type is unknown. <a href="#a8076ba239b6681067b6cfea7f773a39f">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003423<tr class="separator:a8076ba239b6681067b6cfea7f773a39f"><td class="memSeparator" colspan="2">&#160;</td></tr>
3424<tr class="memitem:ad19446be52c2c162fa678b9ae236f445"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad19446be52c2c162fa678b9ae236f445">set_data_type_if_unknown</a> (<a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> data_type)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003425<tr class="memdesc:ad19446be52c2c162fa678b9ae236f445"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the data type and number of channels to the specified value if the current data type is unknown. <a href="#ad19446be52c2c162fa678b9ae236f445">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01003426<tr class="separator:ad19446be52c2c162fa678b9ae236f445"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003427<tr class="memitem:aafd98bfd4651f36d691ddd2631a6e5a0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aafd98bfd4651f36d691ddd2631a6e5a0">set_data_layout_if_unknown</a> (<a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> data_layout)</td></tr>
3428<tr class="memdesc:aafd98bfd4651f36d691ddd2631a6e5a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the data layout to the specified value if the current data layout is unknown. <a href="#aafd98bfd4651f36d691ddd2631a6e5a0">More...</a><br /></td></tr>
3429<tr class="separator:aafd98bfd4651f36d691ddd2631a6e5a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003430<tr class="memitem:a75509469ec2689ec143f4a37bbcb4437"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a75509469ec2689ec143f4a37bbcb4437">set_quantization_info_if_empty</a> (<a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;info, <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> quantization_info)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003431<tr class="memdesc:a75509469ec2689ec143f4a37bbcb4437"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the quantization info to the specified value if the current quantization info is empty and the data type of asymmetric quantized type. <a href="#a75509469ec2689ec143f4a37bbcb4437">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003432<tr class="separator:a75509469ec2689ec143f4a37bbcb4437"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003433<tr class="memitem:a45509a321422cd1542958b5c33021bda"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a45509a321422cd1542958b5c33021bda">calculate_valid_region_scale</a> (const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;src_info, const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;dst_shape, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> interpolate_policy, <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7b">SamplingPolicy</a> sampling_policy, bool border_undefined)</td></tr>
3434<tr class="memdesc:a45509a321422cd1542958b5c33021bda"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to calculate the Valid Region for Scale. <a href="#a45509a321422cd1542958b5c33021bda">More...</a><br /></td></tr>
3435<tr class="separator:a45509a321422cd1542958b5c33021bda"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01003436<tr class="memitem:ad34f2150f1c9f8a3ecb7298162124e5d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad34f2150f1c9f8a3ecb7298162124e5d">index2coords</a> (const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape, int index)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003437<tr class="memdesc:ad34f2150f1c9f8a3ecb7298162124e5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a linear index into n-dimensional coordinates. <a href="#ad34f2150f1c9f8a3ecb7298162124e5d">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01003438<tr class="separator:ad34f2150f1c9f8a3ecb7298162124e5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
3439<tr class="memitem:ad95e1c14c3007ca18950bf8f4c5a5c93"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad95e1c14c3007ca18950bf8f4c5a5c93">coords2index</a> (const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;coord)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003440<tr class="memdesc:ad95e1c14c3007ca18950bf8f4c5a5c93"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert n-dimensional coordinates into a linear index. <a href="#ad95e1c14c3007ca18950bf8f4c5a5c93">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01003441<tr class="separator:ad95e1c14c3007ca18950bf8f4c5a5c93"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003442<tr class="memitem:a46e938020a3ac8c926d0590b7fe957db"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">get_data_layout_dimension_index</a> (const <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> data_layout, const <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02">DataLayoutDimension</a> data_layout_dimension)</td></tr>
3443<tr class="memdesc:a46e938020a3ac8c926d0590b7fe957db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the index of the given dimension. <a href="#a46e938020a3ac8c926d0590b7fe957db">More...</a><br /></td></tr>
3444<tr class="separator:a46e938020a3ac8c926d0590b7fe957db"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00003445<tr class="memitem:ae76431f34048289454a9cb6dc66d7c6b"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae76431f34048289454a9cb6dc66d7c6b">get_normalization_dimension_index</a> (<a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> layout, const <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">NormalizationLayerInfo</a> &amp;info)</td></tr>
3446<tr class="memdesc:ae76431f34048289454a9cb6dc66d7c6b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the normalization dimension index for a given normalization type. <a href="#ae76431f34048289454a9cb6dc66d7c6b">More...</a><br /></td></tr>
3447<tr class="separator:ae76431f34048289454a9cb6dc66d7c6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
3448<tr class="memitem:a3b0c016b53e97663b39c2f3875f46c24"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3b0c016b53e97663b39c2f3875f46c24">compute_winograd_convolution_tiles</a> (const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;in_dims, const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;kernel_size, const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;output_tile_size, const <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> &amp;conv_info)</td></tr>
3449<tr class="memdesc:a3b0c016b53e97663b39c2f3875f46c24"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the number of output tiles required by Winograd Convolution layer. <a href="#a3b0c016b53e97663b39c2f3875f46c24">More...</a><br /></td></tr>
3450<tr class="separator:a3b0c016b53e97663b39c2f3875f46c24"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003451<tr class="memitem:aeb6881009f40f57d430752441ec5c4f4"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3452<tr class="memitem:aeb6881009f40f57d430752441ec5c4f4"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aeb6881009f40f57d430752441ec5c4f4">wrap_around</a> (T x, T m)</td></tr>
3453<tr class="memdesc:aeb6881009f40f57d430752441ec5c4f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wrap-around a number within the range 0 &lt;= x &lt; m. <a href="#aeb6881009f40f57d430752441ec5c4f4">More...</a><br /></td></tr>
3454<tr class="separator:aeb6881009f40f57d430752441ec5c4f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003455<tr class="memitem:a41c1523098580451b378f76b8c37a0f0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a41c1523098580451b378f76b8c37a0f0">adjust_down</a> (int required, int available, int step)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003456<tr class="memdesc:a41c1523098580451b378f76b8c37a0f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrease <code>required</code> in steps of <code>step</code> until it's less than <code>available</code>. <a href="#a41c1523098580451b378f76b8c37a0f0">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003457<tr class="separator:a41c1523098580451b378f76b8c37a0f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
3458<tr class="memitem:ab16fcfbfc3ee6dbc0c112f0bc9b3d9c2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab16fcfbfc3ee6dbc0c112f0bc9b3d9c2">adjust_up</a> (int required, int available, int step)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003459<tr class="memdesc:ab16fcfbfc3ee6dbc0c112f0bc9b3d9c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increase <code>required</code> in steps of <code>step</code> until it's greater than <code>available</code>. <a href="#ab16fcfbfc3ee6dbc0c112f0bc9b3d9c2">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003460<tr class="separator:ab16fcfbfc3ee6dbc0c112f0bc9b3d9c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003461<tr class="memitem:a5e28a3911204ac952601f512c82b48f1"><td class="memItemLeft" align="right" valign="top">int32x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">rounding_divide_by_pow2</a> (int32x4_t x, int exponent)</td></tr>
3462<tr class="memdesc:a5e28a3911204ac952601f512c82b48f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Round to the nearest division by a power-of-two using exponent. <a href="#a5e28a3911204ac952601f512c82b48f1">More...</a><br /></td></tr>
3463<tr class="separator:a5e28a3911204ac952601f512c82b48f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
3464<tr class="memitem:aba8de9eaa10a7cb45c5aa603585d0e4c"><td class="memItemLeft" align="right" valign="top">uint8x16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aba8de9eaa10a7cb45c5aa603585d0e4c">vmlaq_qasymm8</a> (<a class="el" href="namespacearm__compute.xhtml#ac7e1832b8c58f07a98fc8d390b16ac27">qasymm8x16_t</a> vd, float32x4_t vs, float32x4_t vo)</td></tr>
3465<tr class="memdesc:aba8de9eaa10a7cb45c5aa603585d0e4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform a multiply-accumulate on all 16 components of a QASYMM8 vector. <a href="#aba8de9eaa10a7cb45c5aa603585d0e4c">More...</a><br /></td></tr>
3466<tr class="separator:aba8de9eaa10a7cb45c5aa603585d0e4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00003467<tr class="memitem:a695a8105065167f7e4596d31f23a3573"><td class="memTemplParams" colspan="2">template&lt;bool is_bounded_relu&gt; </td></tr>
3468<tr class="memitem:a695a8105065167f7e4596d31f23a3573"><td class="memTemplItemLeft" align="right" valign="top">uint8x16_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a695a8105065167f7e4596d31f23a3573">finalize_quantization</a> (int32x4x4_t &amp;in_s32, int result_fixedpoint_multiplier, int32_t result_shift, int32x4_t result_offset_after_shift_s32, uint8x16_t min_u8, uint8x16_t max_u8)</td></tr>
3469<tr class="memdesc:a695a8105065167f7e4596d31f23a3573"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs final quantization step on 16 elements. <a href="#a695a8105065167f7e4596d31f23a3573">More...</a><br /></td></tr>
3470<tr class="separator:a695a8105065167f7e4596d31f23a3573"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003471<tr class="memitem:a04ae4ae815c47d443852428a0528a7d2"><td class="memItemLeft" align="right" valign="top">float32x4x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a04ae4ae815c47d443852428a0528a7d2">vdequantize</a> (const uint8x16_t &amp;qv, const <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> &amp;qi)</td></tr>
3472<tr class="memdesc:a04ae4ae815c47d443852428a0528a7d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dequantize a neon vector holding 16 quantized values. <a href="#a04ae4ae815c47d443852428a0528a7d2">More...</a><br /></td></tr>
3473<tr class="separator:a04ae4ae815c47d443852428a0528a7d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
3474<tr class="memitem:a6554986624335b7c05f968342630f530"><td class="memItemLeft" align="right" valign="top">uint8x16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6554986624335b7c05f968342630f530">vquantize</a> (const float32x4x4_t &amp;qv, const <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> &amp;qi)</td></tr>
3475<tr class="memdesc:a6554986624335b7c05f968342630f530"><td class="mdescLeft">&#160;</td><td class="mdescRight">Quantize a neon vector holding 16 floating point values. <a href="#a6554986624335b7c05f968342630f530">More...</a><br /></td></tr>
3476<tr class="separator:a6554986624335b7c05f968342630f530"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003477<tr class="memitem:a93cc303c8ae098d264f07d37890412de"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a93cc303c8ae098d264f07d37890412de">colorconvert_rgb_to_rgbx</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003478<tr class="memdesc:a93cc303c8ae098d264f07d37890412de"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert RGB to RGBX. <a href="#a93cc303c8ae098d264f07d37890412de">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003479<tr class="separator:a93cc303c8ae098d264f07d37890412de"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003480<tr class="memitem:aa1d4cf707dec05e3ff1d63d4ce8065ca"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa1d4cf707dec05e3ff1d63d4ce8065ca">colorconvert_rgb_to_u8</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
3481<tr class="memdesc:aa1d4cf707dec05e3ff1d63d4ce8065ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert RGB to U8. <a href="#aa1d4cf707dec05e3ff1d63d4ce8065ca">More...</a><br /></td></tr>
3482<tr class="separator:aa1d4cf707dec05e3ff1d63d4ce8065ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003483<tr class="memitem:acf7451c0d0f8a4b1cfbb60d7531a43aa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acf7451c0d0f8a4b1cfbb60d7531a43aa">colorconvert_rgbx_to_rgb</a> (const void *input, void *output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003484<tr class="memdesc:acf7451c0d0f8a4b1cfbb60d7531a43aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert RGBX to RGB. <a href="#acf7451c0d0f8a4b1cfbb60d7531a43aa">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003485<tr class="separator:acf7451c0d0f8a4b1cfbb60d7531a43aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
3486<tr class="memitem:a3c22c0d3494660b72b4fc04fec76f92d"><td class="memTemplParams" colspan="2">template&lt;bool yuyv, bool alpha&gt; </td></tr>
3487<tr class="memitem:a3c22c0d3494660b72b4fc04fec76f92d"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3c22c0d3494660b72b4fc04fec76f92d">colorconvert_yuyv_to_rgb</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003488<tr class="memdesc:a3c22c0d3494660b72b4fc04fec76f92d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert YUYV to RGB. <a href="#a3c22c0d3494660b72b4fc04fec76f92d">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003489<tr class="separator:a3c22c0d3494660b72b4fc04fec76f92d"><td class="memSeparator" colspan="2">&#160;</td></tr>
3490<tr class="memitem:ae6a44e412bccc0705a720708b0692218"><td class="memTemplParams" colspan="2">template&lt;bool uv, bool alpha&gt; </td></tr>
3491<tr class="memitem:ae6a44e412bccc0705a720708b0692218"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae6a44e412bccc0705a720708b0692218">colorconvert_nv12_to_rgb</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003492<tr class="memdesc:ae6a44e412bccc0705a720708b0692218"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert NV12 to RGB. <a href="#ae6a44e412bccc0705a720708b0692218">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003493<tr class="separator:ae6a44e412bccc0705a720708b0692218"><td class="memSeparator" colspan="2">&#160;</td></tr>
3494<tr class="memitem:a6e42fac1baa264b033ac430b63ebd145"><td class="memTemplParams" colspan="2">template&lt;bool alpha&gt; </td></tr>
3495<tr class="memitem:a6e42fac1baa264b033ac430b63ebd145"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6e42fac1baa264b033ac430b63ebd145">colorconvert_iyuv_to_rgb</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003496<tr class="memdesc:a6e42fac1baa264b033ac430b63ebd145"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert IYUV to RGB. <a href="#a6e42fac1baa264b033ac430b63ebd145">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003497<tr class="separator:a6e42fac1baa264b033ac430b63ebd145"><td class="memSeparator" colspan="2">&#160;</td></tr>
3498<tr class="memitem:a8ee13904a3f5ba84b28cb53d956021d7"><td class="memTemplParams" colspan="2">template&lt;bool yuyv&gt; </td></tr>
3499<tr class="memitem:a8ee13904a3f5ba84b28cb53d956021d7"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8ee13904a3f5ba84b28cb53d956021d7">colorconvert_yuyv_to_nv12</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003500<tr class="memdesc:a8ee13904a3f5ba84b28cb53d956021d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert YUYV to NV12. <a href="#a8ee13904a3f5ba84b28cb53d956021d7">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003501<tr class="separator:a8ee13904a3f5ba84b28cb53d956021d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
3502<tr class="memitem:af2be1325decaa34a8a1199af177148c6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af2be1325decaa34a8a1199af177148c6">colorconvert_iyuv_to_nv12</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003503<tr class="memdesc:af2be1325decaa34a8a1199af177148c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert IYUV to NV12. <a href="#af2be1325decaa34a8a1199af177148c6">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003504<tr class="separator:af2be1325decaa34a8a1199af177148c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
3505<tr class="memitem:a199d36780fbb4a70168f290480673650"><td class="memTemplParams" colspan="2">template&lt;bool uv&gt; </td></tr>
3506<tr class="memitem:a199d36780fbb4a70168f290480673650"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a199d36780fbb4a70168f290480673650">colorconvert_nv12_to_iyuv</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003507<tr class="memdesc:a199d36780fbb4a70168f290480673650"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert NV12 to IYUV. <a href="#a199d36780fbb4a70168f290480673650">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003508<tr class="separator:a199d36780fbb4a70168f290480673650"><td class="memSeparator" colspan="2">&#160;</td></tr>
3509<tr class="memitem:ae43e8f0463c0289169025c3041688d36"><td class="memTemplParams" colspan="2">template&lt;bool yuyv&gt; </td></tr>
3510<tr class="memitem:ae43e8f0463c0289169025c3041688d36"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae43e8f0463c0289169025c3041688d36">colorconvert_yuyv_to_iyuv</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003511<tr class="memdesc:ae43e8f0463c0289169025c3041688d36"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert YUYV to IYUV. <a href="#ae43e8f0463c0289169025c3041688d36">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003512<tr class="separator:ae43e8f0463c0289169025c3041688d36"><td class="memSeparator" colspan="2">&#160;</td></tr>
3513<tr class="memitem:a587a54c85dcc72838b8f4b5575ebafe4"><td class="memTemplParams" colspan="2">template&lt;bool uv&gt; </td></tr>
3514<tr class="memitem:a587a54c85dcc72838b8f4b5575ebafe4"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a587a54c85dcc72838b8f4b5575ebafe4">colorconvert_nv12_to_yuv4</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003515<tr class="memdesc:a587a54c85dcc72838b8f4b5575ebafe4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert NV12 to YUV4. <a href="#a587a54c85dcc72838b8f4b5575ebafe4">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003516<tr class="separator:a587a54c85dcc72838b8f4b5575ebafe4"><td class="memSeparator" colspan="2">&#160;</td></tr>
3517<tr class="memitem:a08e9d88293a5cef787bb324c2dc0a6bf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a08e9d88293a5cef787bb324c2dc0a6bf">colorconvert_iyuv_to_yuv4</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003518<tr class="memdesc:a08e9d88293a5cef787bb324c2dc0a6bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert IYUV to YUV4. <a href="#a08e9d88293a5cef787bb324c2dc0a6bf">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003519<tr class="separator:a08e9d88293a5cef787bb324c2dc0a6bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
3520<tr class="memitem:a14fd899b732509e245976b9967b8931d"><td class="memTemplParams" colspan="2">template&lt;bool alpha&gt; </td></tr>
3521<tr class="memitem:a14fd899b732509e245976b9967b8931d"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a14fd899b732509e245976b9967b8931d">colorconvert_rgb_to_nv12</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003522<tr class="memdesc:a14fd899b732509e245976b9967b8931d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert RGB to NV12. <a href="#a14fd899b732509e245976b9967b8931d">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003523<tr class="separator:a14fd899b732509e245976b9967b8931d"><td class="memSeparator" colspan="2">&#160;</td></tr>
3524<tr class="memitem:a49b7a8e217ba7aad821fdeaab86bad53"><td class="memTemplParams" colspan="2">template&lt;bool alpha&gt; </td></tr>
3525<tr class="memitem:a49b7a8e217ba7aad821fdeaab86bad53"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a49b7a8e217ba7aad821fdeaab86bad53">colorconvert_rgb_to_iyuv</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003526<tr class="memdesc:a49b7a8e217ba7aad821fdeaab86bad53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert RGB to IYUV. <a href="#a49b7a8e217ba7aad821fdeaab86bad53">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003527<tr class="separator:a49b7a8e217ba7aad821fdeaab86bad53"><td class="memSeparator" colspan="2">&#160;</td></tr>
3528<tr class="memitem:ad304c0b0a72ed3f65c24fa69ab3cd53e"><td class="memTemplParams" colspan="2">template&lt;bool alpha&gt; </td></tr>
3529<tr class="memitem:ad304c0b0a72ed3f65c24fa69ab3cd53e"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad304c0b0a72ed3f65c24fa69ab3cd53e">colorconvert_rgb_to_yuv4</a> (const void *__restrict input, void *__restrict output, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003530<tr class="memdesc:ad304c0b0a72ed3f65c24fa69ab3cd53e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert RGB to YUV4. <a href="#ad304c0b0a72ed3f65c24fa69ab3cd53e">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003531<tr class="separator:ad304c0b0a72ed3f65c24fa69ab3cd53e"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003532<tr class="memitem:ace593813d742d127296b09fa8ab3f85e"><td class="memItemLeft" align="right" valign="top">float32x4x2_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ace593813d742d127296b09fa8ab3f85e">vmax2q_f32</a> (float32x4x2_t a, float32x4x2_t b)</td></tr>
3533<tr class="memdesc:ace593813d742d127296b09fa8ab3f85e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute lane-by-lane maximum between elements of a float vector with 4x2 elements. <a href="#ace593813d742d127296b09fa8ab3f85e">More...</a><br /></td></tr>
3534<tr class="separator:ace593813d742d127296b09fa8ab3f85e"><td class="memSeparator" colspan="2">&#160;</td></tr>
3535<tr class="memitem:af7a0f3e622aa4bc8c6077d2262a04e2e"><td class="memItemLeft" align="right" valign="top">float32x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af7a0f3e622aa4bc8c6077d2262a04e2e">vfloorq_f32</a> (float32x4_t val)</td></tr>
3536<tr class="memdesc:af7a0f3e622aa4bc8c6077d2262a04e2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate floor of a vector. <a href="#af7a0f3e622aa4bc8c6077d2262a04e2e">More...</a><br /></td></tr>
3537<tr class="separator:af7a0f3e622aa4bc8c6077d2262a04e2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
3538<tr class="memitem:afc415e7fc5e633a0b85b08b2bba5b5cf"><td class="memItemLeft" align="right" valign="top">float32x2_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afc415e7fc5e633a0b85b08b2bba5b5cf">vinvsqrt_f32</a> (float32x2_t x)</td></tr>
3539<tr class="memdesc:afc415e7fc5e633a0b85b08b2bba5b5cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate inverse square root. <a href="#afc415e7fc5e633a0b85b08b2bba5b5cf">More...</a><br /></td></tr>
3540<tr class="separator:afc415e7fc5e633a0b85b08b2bba5b5cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
3541<tr class="memitem:ab8970d7aed07d8649f5e3088455948b8"><td class="memItemLeft" align="right" valign="top">float32x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab8970d7aed07d8649f5e3088455948b8">vinvsqrtq_f32</a> (float32x4_t x)</td></tr>
3542<tr class="memdesc:ab8970d7aed07d8649f5e3088455948b8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate inverse square root. <a href="#ab8970d7aed07d8649f5e3088455948b8">More...</a><br /></td></tr>
3543<tr class="separator:ab8970d7aed07d8649f5e3088455948b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
3544<tr class="memitem:acc6fd1bcd12ef1141e15401a04d31187"><td class="memItemLeft" align="right" valign="top">float32x2_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acc6fd1bcd12ef1141e15401a04d31187">vinv_f32</a> (float32x2_t x)</td></tr>
3545<tr class="memdesc:acc6fd1bcd12ef1141e15401a04d31187"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate reciprocal. <a href="#acc6fd1bcd12ef1141e15401a04d31187">More...</a><br /></td></tr>
3546<tr class="separator:acc6fd1bcd12ef1141e15401a04d31187"><td class="memSeparator" colspan="2">&#160;</td></tr>
3547<tr class="memitem:a2e0f2412b4d1302272d1aeb85d21ab25"><td class="memItemLeft" align="right" valign="top">float32x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2e0f2412b4d1302272d1aeb85d21ab25">vinvq_f32</a> (float32x4_t x)</td></tr>
3548<tr class="memdesc:a2e0f2412b4d1302272d1aeb85d21ab25"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate reciprocal. <a href="#a2e0f2412b4d1302272d1aeb85d21ab25">More...</a><br /></td></tr>
3549<tr class="separator:a2e0f2412b4d1302272d1aeb85d21ab25"><td class="memSeparator" colspan="2">&#160;</td></tr>
3550<tr class="memitem:a0c10bb00a86edd8d0cd4c33b494f6cd4"><td class="memItemLeft" align="right" valign="top">float32x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0c10bb00a86edd8d0cd4c33b494f6cd4">vtaylor_polyq_f32</a> (float32x4_t x, const std::array&lt; float32x4_t, 8 &gt; &amp;coeffs)</td></tr>
3551<tr class="memdesc:a0c10bb00a86edd8d0cd4c33b494f6cd4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform a 7th degree polynomial approximation using Estrin's method. <a href="#a0c10bb00a86edd8d0cd4c33b494f6cd4">More...</a><br /></td></tr>
3552<tr class="separator:a0c10bb00a86edd8d0cd4c33b494f6cd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
3553<tr class="memitem:ab55486f1153a4c5f507d4923b59fc6a0"><td class="memItemLeft" align="right" valign="top">float32x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32</a> (float32x4_t x)</td></tr>
3554<tr class="memdesc:ab55486f1153a4c5f507d4923b59fc6a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate exponential. <a href="#ab55486f1153a4c5f507d4923b59fc6a0">More...</a><br /></td></tr>
3555<tr class="separator:ab55486f1153a4c5f507d4923b59fc6a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
3556<tr class="memitem:a1d090b80b655e7f8fd8977bb93808b04"><td class="memItemLeft" align="right" valign="top">float32x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1d090b80b655e7f8fd8977bb93808b04">vlogq_f32</a> (float32x4_t x)</td></tr>
3557<tr class="memdesc:a1d090b80b655e7f8fd8977bb93808b04"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate logarithm. <a href="#a1d090b80b655e7f8fd8977bb93808b04">More...</a><br /></td></tr>
3558<tr class="separator:a1d090b80b655e7f8fd8977bb93808b04"><td class="memSeparator" colspan="2">&#160;</td></tr>
3559<tr class="memitem:a3e59419da344d02daca9c5b274a1da45"><td class="memItemLeft" align="right" valign="top">float32x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3e59419da344d02daca9c5b274a1da45">vtanhq_f32</a> (float32x4_t val)</td></tr>
3560<tr class="memdesc:a3e59419da344d02daca9c5b274a1da45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate hyperbolic tangent. <a href="#a3e59419da344d02daca9c5b274a1da45">More...</a><br /></td></tr>
3561<tr class="separator:a3e59419da344d02daca9c5b274a1da45"><td class="memSeparator" colspan="2">&#160;</td></tr>
3562<tr class="memitem:aa6465367a67af2bae4ca46750231dae0"><td class="memItemLeft" align="right" valign="top">float32x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa6465367a67af2bae4ca46750231dae0">vpowq_f32</a> (float32x4_t val, float32x4_t n)</td></tr>
3563<tr class="memdesc:aa6465367a67af2bae4ca46750231dae0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate n power of a number. <a href="#aa6465367a67af2bae4ca46750231dae0">More...</a><br /></td></tr>
3564<tr class="separator:aa6465367a67af2bae4ca46750231dae0"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003565<tr class="memitem:aaae2b6b1c3f4404121346a4c27b22647"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aaae2b6b1c3f4404121346a4c27b22647">round</a> (float x, <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a> rounding_policy)</td></tr>
3566<tr class="memdesc:aaae2b6b1c3f4404121346a4c27b22647"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a rounded value of x. <a href="#aaae2b6b1c3f4404121346a4c27b22647">More...</a><br /></td></tr>
3567<tr class="separator:aaae2b6b1c3f4404121346a4c27b22647"><td class="memSeparator" colspan="2">&#160;</td></tr>
3568<tr class="memitem:acac1575c0edd329ceb4a54d9fe8dcb08"><td class="memTemplParams" colspan="2">template&lt;typename S , typename T &gt; </td></tr>
3569<tr class="memitem:acac1575c0edd329ceb4a54d9fe8dcb08"><td class="memTemplItemLeft" align="right" valign="top">constexpr auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acac1575c0edd329ceb4a54d9fe8dcb08">DIV_CEIL</a> (S val, T m) -&gt; decltype((val+m - 1)/m)</td></tr>
3570<tr class="memdesc:acac1575c0edd329ceb4a54d9fe8dcb08"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the rounded up quotient of val / m. <a href="#acac1575c0edd329ceb4a54d9fe8dcb08">More...</a><br /></td></tr>
3571<tr class="separator:acac1575c0edd329ceb4a54d9fe8dcb08"><td class="memSeparator" colspan="2">&#160;</td></tr>
3572<tr class="memitem:ab237a0a375cf382d52b61653248d3d4a"><td class="memTemplParams" colspan="2">template&lt;typename S , typename T &gt; </td></tr>
3573<tr class="memitem:ab237a0a375cf382d52b61653248d3d4a"><td class="memTemplItemLeft" align="right" valign="top">auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">ceil_to_multiple</a> (S value, T divisor) -&gt; decltype(((value+divisor - 1)/divisor) *divisor)</td></tr>
3574<tr class="memdesc:ab237a0a375cf382d52b61653248d3d4a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the smallest number larger or equal to value that is a multiple of divisor. <a href="#ab237a0a375cf382d52b61653248d3d4a">More...</a><br /></td></tr>
3575<tr class="separator:ab237a0a375cf382d52b61653248d3d4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
3576<tr class="memitem:a23062881efd3855d61bae58f330c97db"><td class="memTemplParams" colspan="2">template&lt;typename S , typename T &gt; </td></tr>
3577<tr class="memitem:a23062881efd3855d61bae58f330c97db"><td class="memTemplItemLeft" align="right" valign="top">auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a23062881efd3855d61bae58f330c97db">floor_to_multiple</a> (S value, T divisor) -&gt; decltype((value/divisor) *divisor)</td></tr>
3578<tr class="memdesc:a23062881efd3855d61bae58f330c97db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the largest number smaller or equal to value that is a multiple of divisor. <a href="#a23062881efd3855d61bae58f330c97db">More...</a><br /></td></tr>
3579<tr class="separator:a23062881efd3855d61bae58f330c97db"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003580<tr class="memitem:a64c17a5a42d2499a1626222ff9753b4d"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a64c17a5a42d2499a1626222ff9753b4d">build_information</a> ()</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003581<tr class="memdesc:a64c17a5a42d2499a1626222ff9753b4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the <a class="el" href="namespacearm__compute.xhtml" title="Copyright (c) 2017-2018 ARM Limited.">arm_compute</a> library build information. <a href="#a64c17a5a42d2499a1626222ff9753b4d">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003582<tr class="separator:a64c17a5a42d2499a1626222ff9753b4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003583<tr class="memitem:ae0d288429eb20baf6da6109f3a21e6bb"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae0d288429eb20baf6da6109f3a21e6bb">read_file</a> (const std::string &amp;filename, bool binary)</td></tr>
3584<tr class="memdesc:ae0d288429eb20baf6da6109f3a21e6bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Load an entire file in memory. <a href="#ae0d288429eb20baf6da6109f3a21e6bb">More...</a><br /></td></tr>
3585<tr class="separator:ae0d288429eb20baf6da6109f3a21e6bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003586<tr class="memitem:abb7e0f23a4f2e63f39433f158dad47ab"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abb7e0f23a4f2e63f39433f158dad47ab">data_size_from_type</a> (<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> data_type)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003587<tr class="memdesc:abb7e0f23a4f2e63f39433f158dad47ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">The size in bytes of the data type. <a href="#abb7e0f23a4f2e63f39433f158dad47ab">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003588<tr class="separator:abb7e0f23a4f2e63f39433f158dad47ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
3589<tr class="memitem:a4823543d67a2520c98669e2a5608ef6a"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4823543d67a2520c98669e2a5608ef6a">pixel_size_from_format</a> (<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> format)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003590<tr class="memdesc:a4823543d67a2520c98669e2a5608ef6a"><td class="mdescLeft">&#160;</td><td class="mdescRight">The size in bytes of the pixel format. <a href="#a4823543d67a2520c98669e2a5608ef6a">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003591<tr class="separator:a4823543d67a2520c98669e2a5608ef6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
3592<tr class="memitem:a34b06c0cd94808a77b697e79880b84b0"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a34b06c0cd94808a77b697e79880b84b0">element_size_from_data_type</a> (<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003593<tr class="memdesc:a34b06c0cd94808a77b697e79880b84b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">The size in bytes of the data type. <a href="#a34b06c0cd94808a77b697e79880b84b0">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003594<tr class="separator:a34b06c0cd94808a77b697e79880b84b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
3595<tr class="memitem:a59846ef5ca75cd81cdb7e8a1ce08f9db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a59846ef5ca75cd81cdb7e8a1ce08f9db">data_type_from_format</a> (<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> format)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003596<tr class="memdesc:a59846ef5ca75cd81cdb7e8a1ce08f9db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the data type used by a given single-planar pixel format. <a href="#a59846ef5ca75cd81cdb7e8a1ce08f9db">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003597<tr class="separator:a59846ef5ca75cd81cdb7e8a1ce08f9db"><td class="memSeparator" colspan="2">&#160;</td></tr>
3598<tr class="memitem:a4f6fe18760340bcec02d095b7099e923"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4f6fe18760340bcec02d095b7099e923">plane_idx_from_channel</a> (<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> format, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> channel)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003599<tr class="memdesc:a4f6fe18760340bcec02d095b7099e923"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the plane index of a given channel given an input format. <a href="#a4f6fe18760340bcec02d095b7099e923">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003600<tr class="separator:a4f6fe18760340bcec02d095b7099e923"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00003601<tr class="memitem:afab149f8d8b0f6405303ee8056fa77d3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afab149f8d8b0f6405303ee8056fa77d3">channel_idx_from_format</a> (<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> format, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> channel)</td></tr>
3602<tr class="memdesc:afab149f8d8b0f6405303ee8056fa77d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the channel index of a given channel given an input format. <a href="#afab149f8d8b0f6405303ee8056fa77d3">More...</a><br /></td></tr>
3603<tr class="separator:afab149f8d8b0f6405303ee8056fa77d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003604<tr class="memitem:a2a71659def659c8b1c164023a99a25a9"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2a71659def659c8b1c164023a99a25a9">num_planes_from_format</a> (<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> format)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003605<tr class="memdesc:a2a71659def659c8b1c164023a99a25a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of planes for a given format. <a href="#a2a71659def659c8b1c164023a99a25a9">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003606<tr class="separator:a2a71659def659c8b1c164023a99a25a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
3607<tr class="memitem:ab14153fb809c18823af3c9c8bc4286cb"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab14153fb809c18823af3c9c8bc4286cb">num_channels_from_format</a> (<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> format)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003608<tr class="memdesc:ab14153fb809c18823af3c9c8bc4286cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of channels for a given single-planar pixel format. <a href="#ab14153fb809c18823af3c9c8bc4286cb">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003609<tr class="separator:ab14153fb809c18823af3c9c8bc4286cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003610<tr class="memitem:a5e4254e9c71fffafb79b99d972df8f81"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5e4254e9c71fffafb79b99d972df8f81">get_promoted_data_type</a> (<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt)</td></tr>
3611<tr class="memdesc:a5e4254e9c71fffafb79b99d972df8f81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the promoted data type of a given data type. <a href="#a5e4254e9c71fffafb79b99d972df8f81">More...</a><br /></td></tr>
3612<tr class="separator:a5e4254e9c71fffafb79b99d972df8f81"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00003613<tr class="memitem:aa2f22cc01532e0236e438324310fdb94"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa2f22cc01532e0236e438324310fdb94">has_format_horizontal_subsampling</a> (<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> format)</td></tr>
3614<tr class="memdesc:aa2f22cc01532e0236e438324310fdb94"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return true if the given format has horizontal subsampling. <a href="#aa2f22cc01532e0236e438324310fdb94">More...</a><br /></td></tr>
3615<tr class="separator:aa2f22cc01532e0236e438324310fdb94"><td class="memSeparator" colspan="2">&#160;</td></tr>
3616<tr class="memitem:a95358b677c5c17f5cc1e369e4a27e2c2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a95358b677c5c17f5cc1e369e4a27e2c2">has_format_vertical_subsampling</a> (<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> format)</td></tr>
3617<tr class="memdesc:a95358b677c5c17f5cc1e369e4a27e2c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return true if the given format has vertical subsampling. <a href="#a95358b677c5c17f5cc1e369e4a27e2c2">More...</a><br /></td></tr>
3618<tr class="separator:a95358b677c5c17f5cc1e369e4a27e2c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003619<tr class="memitem:a18ec57dffc5c26864be77318111dfb2a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a18ec57dffc5c26864be77318111dfb2a">separate_matrix</a> (const int16_t *conv, int16_t *conv_col, int16_t *conv_row, uint8_t size)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003620<tr class="memdesc:a18ec57dffc5c26864be77318111dfb2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Separate a 2D convolution into two 1D convolutions. <a href="#a18ec57dffc5c26864be77318111dfb2a">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003621<tr class="separator:a18ec57dffc5c26864be77318111dfb2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
3622<tr class="memitem:a0101a40c4a6acc2af3b55afa7632f16a"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0101a40c4a6acc2af3b55afa7632f16a">calculate_matrix_scale</a> (const int16_t *matrix, unsigned int matrix_size)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003623<tr class="memdesc:a0101a40c4a6acc2af3b55afa7632f16a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the scale of the given square matrix. <a href="#a0101a40c4a6acc2af3b55afa7632f16a">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003624<tr class="separator:a0101a40c4a6acc2af3b55afa7632f16a"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00003625<tr class="memitem:add7f7487c235331a6518dd16ad1e3b38"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#add7f7487c235331a6518dd16ad1e3b38">adjust_odd_shape</a> (const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> format)</td></tr>
3626<tr class="memdesc:add7f7487c235331a6518dd16ad1e3b38"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adjust tensor shape size if width or height are odd for a given multi-planar format. <a href="#add7f7487c235331a6518dd16ad1e3b38">More...</a><br /></td></tr>
3627<tr class="separator:add7f7487c235331a6518dd16ad1e3b38"><td class="memSeparator" colspan="2">&#160;</td></tr>
3628<tr class="memitem:a9d714e1b7d9d7818309138b7d830ebcb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9d714e1b7d9d7818309138b7d830ebcb">calculate_subsampled_shape</a> (const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> format, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> channel=<a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">Channel::UNKNOWN</a>)</td></tr>
3629<tr class="memdesc:a9d714e1b7d9d7818309138b7d830ebcb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate subsampled shape for a given format and channel. <a href="#a9d714e1b7d9d7818309138b7d830ebcb">More...</a><br /></td></tr>
3630<tr class="separator:a9d714e1b7d9d7818309138b7d830ebcb"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003631<tr class="memitem:a01adc12d8e07c06cdb0f03c56a455bf3"><td class="memItemLeft" align="right" valign="top">std::pair&lt; <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a01adc12d8e07c06cdb0f03c56a455bf3">data_type_for_convolution</a> (const int16_t *conv_col, const int16_t *conv_row, size_t size)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003632<tr class="memdesc:a01adc12d8e07c06cdb0f03c56a455bf3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate accurary required by the horizontal and vertical convolution computations. <a href="#a01adc12d8e07c06cdb0f03c56a455bf3">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003633<tr class="separator:a01adc12d8e07c06cdb0f03c56a455bf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01003634<tr class="memitem:a3992df9e8723140a53e49dc194d89ef5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3992df9e8723140a53e49dc194d89ef5">data_type_for_convolution_matrix</a> (const int16_t *conv, size_t size)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003635<tr class="memdesc:a3992df9e8723140a53e49dc194d89ef5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the accuracy required by the squared convolution calculation. <a href="#a3992df9e8723140a53e49dc194d89ef5">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003636<tr class="separator:a3992df9e8723140a53e49dc194d89ef5"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003637<tr class="memitem:afcd35973f3a5d2d4d3015e155f185a81"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3638<tr class="memitem:afcd35973f3a5d2d4d3015e155f185a81"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afcd35973f3a5d2d4d3015e155f185a81">permute_strides</a> (<a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;dimensions, const <a class="el" href="namespacearm__compute.xhtml#a33e65be485104e2e9e69fca551d6f492">PermutationVector</a> &amp;perm)</td></tr>
3639<tr class="memdesc:afcd35973f3a5d2d4d3015e155f185a81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Permutes the given dimensions according the permutation vector. <a href="#afcd35973f3a5d2d4d3015e155f185a81">More...</a><br /></td></tr>
3640<tr class="separator:afcd35973f3a5d2d4d3015e155f185a81"><td class="memSeparator" colspan="2">&#160;</td></tr>
3641<tr class="memitem:a76d2c1e638da30c99ca2ff48051bcb04"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a76d2c1e638da30c99ca2ff48051bcb04">calculate_same_pad</a> (<a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> input_shape, <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> weights_shape, <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> conv_info, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> data_layout=<a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">DataLayout::NCHW</a>)</td></tr>
3642<tr class="memdesc:a76d2c1e638da30c99ca2ff48051bcb04"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate padding requirements in case of SAME padding. <a href="#a76d2c1e638da30c99ca2ff48051bcb04">More...</a><br /></td></tr>
3643<tr class="separator:a76d2c1e638da30c99ca2ff48051bcb04"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003644<tr class="memitem:a49d307dcc8f16084a061e1b6e8140eb7"><td class="memItemLeft" align="right" valign="top">const std::pair&lt; unsigned int, unsigned int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a49d307dcc8f16084a061e1b6e8140eb7">deconvolution_output_dimensions</a> (unsigned int in_width, unsigned int in_height, unsigned int kernel_width, unsigned int kernel_height, unsigned int padx, unsigned int pady, unsigned int stride_x, unsigned int stride_y)</td></tr>
3645<tr class="memdesc:a49d307dcc8f16084a061e1b6e8140eb7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns expected width and height of the deconvolution's output tensor. <a href="#a49d307dcc8f16084a061e1b6e8140eb7">More...</a><br /></td></tr>
3646<tr class="separator:a49d307dcc8f16084a061e1b6e8140eb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
3647<tr class="memitem:a546c6bed3c307414e8d0934bc13259e5"><td class="memItemLeft" align="right" valign="top">const std::pair&lt; unsigned int, unsigned int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a546c6bed3c307414e8d0934bc13259e5">scaled_dimensions</a> (unsigned int width, unsigned int height, unsigned int kernel_width, unsigned int kernel_height, const <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> &amp;pad_stride_info, const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;dilation=<a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a>(1U, 1U))</td></tr>
3648<tr class="memdesc:a546c6bed3c307414e8d0934bc13259e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns expected width and height of output scaled tensor depending on dimensions rounding mode. <a href="#a546c6bed3c307414e8d0934bc13259e5">More...</a><br /></td></tr>
3649<tr class="separator:a546c6bed3c307414e8d0934bc13259e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
3650<tr class="memitem:a8b82da7b5e0f6192f415ac347c9e0555"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8b82da7b5e0f6192f415ac347c9e0555">string_from_format</a> (<a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> format)</td></tr>
3651<tr class="memdesc:a8b82da7b5e0f6192f415ac347c9e0555"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a tensor format into a string. <a href="#a8b82da7b5e0f6192f415ac347c9e0555">More...</a><br /></td></tr>
3652<tr class="separator:a8b82da7b5e0f6192f415ac347c9e0555"><td class="memSeparator" colspan="2">&#160;</td></tr>
3653<tr class="memitem:af0dfcd19fb6510cd3c303db6c4583ee6"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af0dfcd19fb6510cd3c303db6c4583ee6">string_from_channel</a> (<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> channel)</td></tr>
3654<tr class="memdesc:af0dfcd19fb6510cd3c303db6c4583ee6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a channel identity into a string. <a href="#af0dfcd19fb6510cd3c303db6c4583ee6">More...</a><br /></td></tr>
3655<tr class="separator:af0dfcd19fb6510cd3c303db6c4583ee6"><td class="memSeparator" colspan="2">&#160;</td></tr>
3656<tr class="memitem:a56b9e25c2e8731ca5488e7b3ccd66f58"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a56b9e25c2e8731ca5488e7b3ccd66f58">string_from_data_layout</a> (<a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> dl)</td></tr>
3657<tr class="memdesc:a56b9e25c2e8731ca5488e7b3ccd66f58"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a data layout identity into a string. <a href="#a56b9e25c2e8731ca5488e7b3ccd66f58">More...</a><br /></td></tr>
3658<tr class="separator:a56b9e25c2e8731ca5488e7b3ccd66f58"><td class="memSeparator" colspan="2">&#160;</td></tr>
3659<tr class="memitem:a142b55a483cadf4e1068a1a09a55e8e9"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a142b55a483cadf4e1068a1a09a55e8e9">string_from_data_type</a> (<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt)</td></tr>
3660<tr class="memdesc:a142b55a483cadf4e1068a1a09a55e8e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a data type identity into a string. <a href="#a142b55a483cadf4e1068a1a09a55e8e9">More...</a><br /></td></tr>
3661<tr class="separator:a142b55a483cadf4e1068a1a09a55e8e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
3662<tr class="memitem:a067481a9a245a2ee831a650e72a377ce"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a067481a9a245a2ee831a650e72a377ce">string_from_matrix_pattern</a> (<a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a> pattern)</td></tr>
3663<tr class="memdesc:a067481a9a245a2ee831a650e72a377ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a matrix pattern into a string. <a href="#a067481a9a245a2ee831a650e72a377ce">More...</a><br /></td></tr>
3664<tr class="separator:a067481a9a245a2ee831a650e72a377ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
3665<tr class="memitem:a635f1895d94050329b7da12850d1a056"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a635f1895d94050329b7da12850d1a056">string_from_activation_func</a> (<a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9ea">ActivationLayerInfo::ActivationFunction</a> act)</td></tr>
3666<tr class="memdesc:a635f1895d94050329b7da12850d1a056"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given activation function to a string. <a href="#a635f1895d94050329b7da12850d1a056">More...</a><br /></td></tr>
3667<tr class="separator:a635f1895d94050329b7da12850d1a056"><td class="memSeparator" colspan="2">&#160;</td></tr>
3668<tr class="memitem:a99248d472f05dbf03ac613620f5acbbb"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a99248d472f05dbf03ac613620f5acbbb">string_from_non_linear_filter_function</a> (<a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a> function)</td></tr>
3669<tr class="memdesc:a99248d472f05dbf03ac613620f5acbbb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given non linear function to a string. <a href="#a99248d472f05dbf03ac613620f5acbbb">More...</a><br /></td></tr>
3670<tr class="separator:a99248d472f05dbf03ac613620f5acbbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
3671<tr class="memitem:a3e4a3ad379526db61e1ebf469b455f83"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3e4a3ad379526db61e1ebf469b455f83">string_from_interpolation_policy</a> (<a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> policy)</td></tr>
3672<tr class="memdesc:a3e4a3ad379526db61e1ebf469b455f83"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given interpolation policy to a string. <a href="#a3e4a3ad379526db61e1ebf469b455f83">More...</a><br /></td></tr>
3673<tr class="separator:a3e4a3ad379526db61e1ebf469b455f83"><td class="memSeparator" colspan="2">&#160;</td></tr>
3674<tr class="memitem:ae0204b49ec236bbaedb1cf96def276d4"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae0204b49ec236bbaedb1cf96def276d4">string_from_border_mode</a> (<a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> border_mode)</td></tr>
3675<tr class="memdesc:ae0204b49ec236bbaedb1cf96def276d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given border mode policy to a string. <a href="#ae0204b49ec236bbaedb1cf96def276d4">More...</a><br /></td></tr>
3676<tr class="separator:ae0204b49ec236bbaedb1cf96def276d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
3677<tr class="memitem:a0569839ee85ad0e35edaaf3b4c80d706"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0569839ee85ad0e35edaaf3b4c80d706">string_from_norm_type</a> (<a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">NormType</a> type)</td></tr>
3678<tr class="memdesc:a0569839ee85ad0e35edaaf3b4c80d706"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given normalization type to a string. <a href="#a0569839ee85ad0e35edaaf3b4c80d706">More...</a><br /></td></tr>
3679<tr class="separator:a0569839ee85ad0e35edaaf3b4c80d706"><td class="memSeparator" colspan="2">&#160;</td></tr>
3680<tr class="memitem:a1040394085749e4d02a0d4350493ec94"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1040394085749e4d02a0d4350493ec94">string_from_pooling_type</a> (<a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">PoolingType</a> type)</td></tr>
3681<tr class="memdesc:a1040394085749e4d02a0d4350493ec94"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given pooling type to a string. <a href="#a1040394085749e4d02a0d4350493ec94">More...</a><br /></td></tr>
3682<tr class="separator:a1040394085749e4d02a0d4350493ec94"><td class="memSeparator" colspan="2">&#160;</td></tr>
3683<tr class="memitem:a291164a04581bf953aa65ae87cc201a2"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a291164a04581bf953aa65ae87cc201a2">string_from_gemmlowp_output_stage</a> (<a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864">GEMMLowpOutputStageType</a> output_stage)</td></tr>
3684<tr class="memdesc:a291164a04581bf953aa65ae87cc201a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translates a given GEMMLowp output stage to a string. <a href="#a291164a04581bf953aa65ae87cc201a2">More...</a><br /></td></tr>
3685<tr class="separator:a291164a04581bf953aa65ae87cc201a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
3686<tr class="memitem:ad6eaf2181f8a8c418acaf3af76239997"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad6eaf2181f8a8c418acaf3af76239997">string_from_pixel_value</a> (const <a class="el" href="classarm__compute_1_1_pixel_value.xhtml">PixelValue</a> &amp;value, const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> data_type)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003687<tr class="memdesc:ad6eaf2181f8a8c418acaf3af76239997"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a <a class="el" href="classarm__compute_1_1_pixel_value.xhtml" title="Class describing the value of a pixel for any image format.">PixelValue</a> to a string, represented through the specific data type. <a href="#ad6eaf2181f8a8c418acaf3af76239997">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003688<tr class="separator:ad6eaf2181f8a8c418acaf3af76239997"><td class="memSeparator" colspan="2">&#160;</td></tr>
3689<tr class="memitem:a0a7bb17a0a0414a7162f635776a02eb5"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0a7bb17a0a0414a7162f635776a02eb5">lower_string</a> (const std::string &amp;val)</td></tr>
3690<tr class="memdesc:a0a7bb17a0a0414a7162f635776a02eb5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Lower a given string. <a href="#a0a7bb17a0a0414a7162f635776a02eb5">More...</a><br /></td></tr>
3691<tr class="separator:a0a7bb17a0a0414a7162f635776a02eb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003692<tr class="memitem:af5982a092e9eb743fce2d6392bdd8897"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af5982a092e9eb743fce2d6392bdd8897">is_data_type_float</a> (<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003693<tr class="memdesc:af5982a092e9eb743fce2d6392bdd8897"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if a given data type is of floating point type. <a href="#af5982a092e9eb743fce2d6392bdd8897">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00003694<tr class="separator:af5982a092e9eb743fce2d6392bdd8897"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003695<tr class="memitem:a0bee325b210f81bb89fe1f9e15badf9c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0bee325b210f81bb89fe1f9e15badf9c">is_data_type_quantized</a> (<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt)</td></tr>
3696<tr class="memdesc:a0bee325b210f81bb89fe1f9e15badf9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if a given data type is of quantized type. <a href="#a0bee325b210f81bb89fe1f9e15badf9c">More...</a><br /></td></tr>
3697<tr class="separator:a0bee325b210f81bb89fe1f9e15badf9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003698<tr class="memitem:a14f46283f316e7f0fad301d5c1507e9f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a14f46283f316e7f0fad301d5c1507e9f">is_data_type_quantized_asymmetric</a> (<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt)</td></tr>
3699<tr class="memdesc:a14f46283f316e7f0fad301d5c1507e9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if a given data type is of asymmetric quantized type. <a href="#a14f46283f316e7f0fad301d5c1507e9f">More...</a><br /></td></tr>
3700<tr class="separator:a14f46283f316e7f0fad301d5c1507e9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01003701<tr class="memitem:a9cd394c15b73f79ca1d98f5328064be2"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9cd394c15b73f79ca1d98f5328064be2">float_to_string_with_full_precision</a> (float val)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00003702<tr class="memdesc:a9cd394c15b73f79ca1d98f5328064be2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a string with the float in full precision. <a href="#a9cd394c15b73f79ca1d98f5328064be2">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01003703<tr class="separator:a9cd394c15b73f79ca1d98f5328064be2"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003704<tr class="memitem:a22ef3e50f7dbf08c974a120588e1ad90"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a22ef3e50f7dbf08c974a120588e1ad90">num_of_elements_in_range</a> (const float start, const float end, const float step)</td></tr>
3705<tr class="memdesc:a22ef3e50f7dbf08c974a120588e1ad90"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the number of elements required to go from start to end with the wanted step. <a href="#a22ef3e50f7dbf08c974a120588e1ad90">More...</a><br /></td></tr>
3706<tr class="separator:a22ef3e50f7dbf08c974a120588e1ad90"><td class="memSeparator" colspan="2">&#160;</td></tr>
3707<tr class="memitem:ad4fb37558f66dd33689292aebf4f843c"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3708<tr class="memitem:ad4fb37558f66dd33689292aebf4f843c"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad4fb37558f66dd33689292aebf4f843c">check_value_range</a> (T val, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> dt, <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> quant_info=<a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a>())</td></tr>
3709<tr class="memdesc:ad4fb37558f66dd33689292aebf4f843c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the value can be represented by the given data type. <a href="#ad4fb37558f66dd33689292aebf4f843c">More...</a><br /></td></tr>
3710<tr class="separator:ad4fb37558f66dd33689292aebf4f843c"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003711<tr class="memitem:a069d7a20d1a7d62042f23039b356113b"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3712<tr class="memitem:a069d7a20d1a7d62042f23039b356113b"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">error_on_nullptr</a> (const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</td></tr>
3713<tr class="memdesc:a069d7a20d1a7d62042f23039b356113b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an error if one of the pointers is a nullptr. <a href="#a069d7a20d1a7d62042f23039b356113b">More...</a><br /></td></tr>
3714<tr class="separator:a069d7a20d1a7d62042f23039b356113b"><td class="memSeparator" colspan="2">&#160;</td></tr>
3715<tr class="memitem:ad7f5b38e9d5391afc4a5ce5702e7379b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad7f5b38e9d5391afc4a5ce5702e7379b">error_on_mismatching_windows</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;full, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
3716<tr class="memdesc:ad7f5b38e9d5391afc4a5ce5702e7379b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed window is invalid. <a href="#ad7f5b38e9d5391afc4a5ce5702e7379b">More...</a><br /></td></tr>
3717<tr class="separator:ad7f5b38e9d5391afc4a5ce5702e7379b"><td class="memSeparator" colspan="2">&#160;</td></tr>
3718<tr class="memitem:ae93ff1ca47057b95d0c6fd0d287253a8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae93ff1ca47057b95d0c6fd0d287253a8">error_on_invalid_subwindow</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;full, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;sub)</td></tr>
3719<tr class="memdesc:ae93ff1ca47057b95d0c6fd0d287253a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed subwindow is invalid. <a href="#ae93ff1ca47057b95d0c6fd0d287253a8">More...</a><br /></td></tr>
3720<tr class="separator:ae93ff1ca47057b95d0c6fd0d287253a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
3721<tr class="memitem:a4f63a617a4897663b386ba5e1f5cb675"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4f63a617a4897663b386ba5e1f5cb675">error_on_window_not_collapsable_at_dimension</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;full, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;window, const int dim)</td></tr>
3722<tr class="memdesc:a4f63a617a4897663b386ba5e1f5cb675"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the window can't be collapsed at the given dimension. <a href="#a4f63a617a4897663b386ba5e1f5cb675">More...</a><br /></td></tr>
3723<tr class="separator:a4f63a617a4897663b386ba5e1f5cb675"><td class="memSeparator" colspan="2">&#160;</td></tr>
3724<tr class="memitem:a3c62cc8d5ee934d42c115c9315d66c13"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3c62cc8d5ee934d42c115c9315d66c13">error_on_coordinates_dimensions_gte</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;pos, unsigned int max_dim)</td></tr>
3725<tr class="memdesc:a3c62cc8d5ee934d42c115c9315d66c13"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed coordinates have too many dimensions. <a href="#a3c62cc8d5ee934d42c115c9315d66c13">More...</a><br /></td></tr>
3726<tr class="separator:a3c62cc8d5ee934d42c115c9315d66c13"><td class="memSeparator" colspan="2">&#160;</td></tr>
3727<tr class="memitem:a7d65985a30fc1229047b7db32caaab43"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7d65985a30fc1229047b7db32caaab43">error_on_window_dimensions_gte</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win, unsigned int max_dim)</td></tr>
3728<tr class="memdesc:a7d65985a30fc1229047b7db32caaab43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed window has too many dimensions. <a href="#a7d65985a30fc1229047b7db32caaab43">More...</a><br /></td></tr>
3729<tr class="separator:a7d65985a30fc1229047b7db32caaab43"><td class="memSeparator" colspan="2">&#160;</td></tr>
3730<tr class="memitem:a632c1b33a482f7126de4aca221542b64"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
3731<tr class="memitem:a632c1b33a482f7126de4aca221542b64"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a632c1b33a482f7126de4aca221542b64">error_on_mismatching_dimensions</a> (const char *function, const char *file, int line, const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;dim1, const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;dim2, Ts &amp;&amp;... dims)</td></tr>
3732<tr class="memdesc:a632c1b33a482f7126de4aca221542b64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed dimension objects differ. <a href="#a632c1b33a482f7126de4aca221542b64">More...</a><br /></td></tr>
3733<tr class="separator:a632c1b33a482f7126de4aca221542b64"><td class="memSeparator" colspan="2">&#160;</td></tr>
3734<tr class="memitem:aa8bcb895249c9b0207df5d6512433aab"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3735<tr class="memitem:aa8bcb895249c9b0207df5d6512433aab"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa8bcb895249c9b0207df5d6512433aab">error_on_tensors_not_even</a> (const char *function, const char *file, int line, const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;format, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor1, Ts... tensors)</td></tr>
3736<tr class="memdesc:aa8bcb895249c9b0207df5d6512433aab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor objects are not even. <a href="#aa8bcb895249c9b0207df5d6512433aab">More...</a><br /></td></tr>
3737<tr class="separator:aa8bcb895249c9b0207df5d6512433aab"><td class="memSeparator" colspan="2">&#160;</td></tr>
3738<tr class="memitem:a5865def3a35885dda73dd5f4d555d11c"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3739<tr class="memitem:a5865def3a35885dda73dd5f4d555d11c"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5865def3a35885dda73dd5f4d555d11c">error_on_tensors_not_subsampled</a> (const char *function, const char *file, int line, const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;format, const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor1, Ts... tensors)</td></tr>
3740<tr class="memdesc:a5865def3a35885dda73dd5f4d555d11c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor objects are not sub-sampled. <a href="#a5865def3a35885dda73dd5f4d555d11c">More...</a><br /></td></tr>
3741<tr class="separator:a5865def3a35885dda73dd5f4d555d11c"><td class="memSeparator" colspan="2">&#160;</td></tr>
3742<tr class="memitem:a900072ec18ac254db40901425e2b35b2"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3743<tr class="memitem:a900072ec18ac254db40901425e2b35b2"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a900072ec18ac254db40901425e2b35b2">error_on_mismatching_shapes</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_1, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_2, Ts... tensor_infos)</td></tr>
3744<tr class="memdesc:a900072ec18ac254db40901425e2b35b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensor infos have different shapes from the given dimension. <a href="#a900072ec18ac254db40901425e2b35b2">More...</a><br /></td></tr>
3745<tr class="separator:a900072ec18ac254db40901425e2b35b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
3746<tr class="memitem:a196a1a4faf1a8893963fd89d7efaf5d9"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3747<tr class="memitem:a196a1a4faf1a8893963fd89d7efaf5d9"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a196a1a4faf1a8893963fd89d7efaf5d9">error_on_mismatching_shapes</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_1, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_2, Ts... tensors)</td></tr>
3748<tr class="memdesc:a196a1a4faf1a8893963fd89d7efaf5d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensors have different shapes from the given dimension. <a href="#a196a1a4faf1a8893963fd89d7efaf5d9">More...</a><br /></td></tr>
3749<tr class="separator:a196a1a4faf1a8893963fd89d7efaf5d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
3750<tr class="memitem:a8f08e05970c101f7a9c852dc036f5ffb"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3751<tr class="memitem:a8f08e05970c101f7a9c852dc036f5ffb"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8f08e05970c101f7a9c852dc036f5ffb">error_on_mismatching_shapes</a> (const char *function, const char *file, const int line, unsigned int upper_dim, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_1, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_2, Ts... tensor_infos)</td></tr>
3752<tr class="memdesc:a8f08e05970c101f7a9c852dc036f5ffb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensors have different shapes from the given dimension. <a href="#a8f08e05970c101f7a9c852dc036f5ffb">More...</a><br /></td></tr>
3753<tr class="separator:a8f08e05970c101f7a9c852dc036f5ffb"><td class="memSeparator" colspan="2">&#160;</td></tr>
3754<tr class="memitem:a7a314d37a14fb002f52a148122238499"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3755<tr class="memitem:a7a314d37a14fb002f52a148122238499"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7a314d37a14fb002f52a148122238499">error_on_mismatching_shapes</a> (const char *function, const char *file, const int line, unsigned int upper_dim, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_1, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_2, Ts... tensors)</td></tr>
3756<tr class="memdesc:a7a314d37a14fb002f52a148122238499"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensors have different shapes from the given dimension. <a href="#a7a314d37a14fb002f52a148122238499">More...</a><br /></td></tr>
3757<tr class="separator:a7a314d37a14fb002f52a148122238499"><td class="memSeparator" colspan="2">&#160;</td></tr>
3758<tr class="memitem:a8355d6db4cebee2724bf4463076526c6"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3759<tr class="memitem:a8355d6db4cebee2724bf4463076526c6"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8355d6db4cebee2724bf4463076526c6">error_on_mismatching_data_layouts</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, Ts... tensor_infos)</td></tr>
3760<tr class="memdesc:a8355d6db4cebee2724bf4463076526c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor infos have different data layouts. <a href="#a8355d6db4cebee2724bf4463076526c6">More...</a><br /></td></tr>
3761<tr class="separator:a8355d6db4cebee2724bf4463076526c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
3762<tr class="memitem:ad6e5ea4c65e9a0e7853ce314024c955d"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3763<tr class="memitem:ad6e5ea4c65e9a0e7853ce314024c955d"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad6e5ea4c65e9a0e7853ce314024c955d">error_on_mismatching_data_layouts</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, Ts... tensors)</td></tr>
3764<tr class="memdesc:ad6e5ea4c65e9a0e7853ce314024c955d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensors have different data layouts. <a href="#ad6e5ea4c65e9a0e7853ce314024c955d">More...</a><br /></td></tr>
3765<tr class="separator:ad6e5ea4c65e9a0e7853ce314024c955d"><td class="memSeparator" colspan="2">&#160;</td></tr>
3766<tr class="memitem:a85c38583df1a7998d58c51f7c3d4b354"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3767<tr class="memitem:a85c38583df1a7998d58c51f7c3d4b354"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a85c38583df1a7998d58c51f7c3d4b354">error_on_mismatching_data_types</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, Ts... tensor_infos)</td></tr>
3768<tr class="memdesc:a85c38583df1a7998d58c51f7c3d4b354"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensor infos have different data types. <a href="#a85c38583df1a7998d58c51f7c3d4b354">More...</a><br /></td></tr>
3769<tr class="separator:a85c38583df1a7998d58c51f7c3d4b354"><td class="memSeparator" colspan="2">&#160;</td></tr>
3770<tr class="memitem:aa8b68ddd24c352a4cdd4fb1eea263429"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3771<tr class="memitem:aa8b68ddd24c352a4cdd4fb1eea263429"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa8b68ddd24c352a4cdd4fb1eea263429">error_on_mismatching_data_types</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, Ts... tensors)</td></tr>
3772<tr class="memdesc:aa8b68ddd24c352a4cdd4fb1eea263429"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed two tensors have different data types. <a href="#aa8b68ddd24c352a4cdd4fb1eea263429">More...</a><br /></td></tr>
3773<tr class="separator:aa8b68ddd24c352a4cdd4fb1eea263429"><td class="memSeparator" colspan="2">&#160;</td></tr>
3774<tr class="memitem:a49e1fb8719a6e3b4db298796bdeac758"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3775<tr class="memitem:a49e1fb8719a6e3b4db298796bdeac758"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a49e1fb8719a6e3b4db298796bdeac758">error_on_mismatching_quantization_info</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_1, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info_2, Ts... tensor_infos)</td></tr>
3776<tr class="memdesc:a49e1fb8719a6e3b4db298796bdeac758"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor infos have different asymmetric quantized data types or different quantization info. <a href="#a49e1fb8719a6e3b4db298796bdeac758">More...</a><br /></td></tr>
3777<tr class="separator:a49e1fb8719a6e3b4db298796bdeac758"><td class="memSeparator" colspan="2">&#160;</td></tr>
3778<tr class="memitem:a3ba911901c6a47649cba6884e0f43a18"><td class="memTemplParams" colspan="2">template&lt;typename... Ts&gt; </td></tr>
3779<tr class="memitem:a3ba911901c6a47649cba6884e0f43a18"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3ba911901c6a47649cba6884e0f43a18">error_on_mismatching_quantization_info</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_1, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor_2, Ts... tensors)</td></tr>
3780<tr class="memdesc:a3ba911901c6a47649cba6884e0f43a18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the passed tensor have different asymmetric quantized data types or different quantization info. <a href="#a3ba911901c6a47649cba6884e0f43a18">More...</a><br /></td></tr>
3781<tr class="separator:a3ba911901c6a47649cba6884e0f43a18"><td class="memSeparator" colspan="2">&#160;</td></tr>
3782<tr class="memitem:a8a09f045f83a973807cbfdd3083732ef"><td class="memTemplParams" colspan="2">template&lt;typename T , typename F , typename... Fs&gt; </td></tr>
3783<tr class="memitem:a8a09f045f83a973807cbfdd3083732ef"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8a09f045f83a973807cbfdd3083732ef">error_on_format_not_in</a> (const char *function, const char *file, const int line, const T *object, F &amp;&amp;format, Fs &amp;&amp;... formats)</td></tr>
3784<tr class="memdesc:a8a09f045f83a973807cbfdd3083732ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Throw an error if the format of the passed tensor/multi-image does not match any of the formats provided. <a href="#a8a09f045f83a973807cbfdd3083732ef">More...</a><br /></td></tr>
3785<tr class="separator:a8a09f045f83a973807cbfdd3083732ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
3786<tr class="memitem:abb2e6a7590121c1c9139bdb14558f20a"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
3787<tr class="memitem:abb2e6a7590121c1c9139bdb14558f20a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abb2e6a7590121c1c9139bdb14558f20a">error_on_data_type_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, T &amp;&amp;dt, Ts &amp;&amp;... dts)</td></tr>
3788<tr class="memdesc:abb2e6a7590121c1c9139bdb14558f20a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type of the passed tensor info does not match any of the data types provided. <a href="#abb2e6a7590121c1c9139bdb14558f20a">More...</a><br /></td></tr>
3789<tr class="separator:abb2e6a7590121c1c9139bdb14558f20a"><td class="memSeparator" colspan="2">&#160;</td></tr>
3790<tr class="memitem:ae8dfd7ddb80f1bd4042a0409d56cc72a"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
3791<tr class="memitem:ae8dfd7ddb80f1bd4042a0409d56cc72a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae8dfd7ddb80f1bd4042a0409d56cc72a">error_on_data_type_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, T &amp;&amp;dt, Ts &amp;&amp;... dts)</td></tr>
3792<tr class="memdesc:ae8dfd7ddb80f1bd4042a0409d56cc72a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type of the passed tensor does not match any of the data types provided. <a href="#ae8dfd7ddb80f1bd4042a0409d56cc72a">More...</a><br /></td></tr>
3793<tr class="separator:ae8dfd7ddb80f1bd4042a0409d56cc72a"><td class="memSeparator" colspan="2">&#160;</td></tr>
3794<tr class="memitem:a4b97ba5512e8deb4a428515bc61c0c7a"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
3795<tr class="memitem:a4b97ba5512e8deb4a428515bc61c0c7a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4b97ba5512e8deb4a428515bc61c0c7a">error_on_data_layout_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, T &amp;&amp;dl, Ts &amp;&amp;... dls)</td></tr>
3796<tr class="memdesc:a4b97ba5512e8deb4a428515bc61c0c7a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data layout of the passed tensor info does not match any of the data layouts provided. <a href="#a4b97ba5512e8deb4a428515bc61c0c7a">More...</a><br /></td></tr>
3797<tr class="separator:a4b97ba5512e8deb4a428515bc61c0c7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
3798<tr class="memitem:aba935fe0dd1a33ed2525ace5b21e1a8a"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
3799<tr class="memitem:aba935fe0dd1a33ed2525ace5b21e1a8a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aba935fe0dd1a33ed2525ace5b21e1a8a">error_on_data_layout_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, T &amp;&amp;dl, Ts &amp;&amp;... dls)</td></tr>
3800<tr class="memdesc:aba935fe0dd1a33ed2525ace5b21e1a8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data layout of the passed tensor does not match any of the data layout provided. <a href="#aba935fe0dd1a33ed2525ace5b21e1a8a">More...</a><br /></td></tr>
3801<tr class="separator:aba935fe0dd1a33ed2525ace5b21e1a8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
3802<tr class="memitem:a2f061a50e9fd383396233a85234c1774"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
3803<tr class="memitem:a2f061a50e9fd383396233a85234c1774"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2f061a50e9fd383396233a85234c1774">error_on_data_type_channel_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, size_t num_channels, T &amp;&amp;dt, Ts &amp;&amp;... dts)</td></tr>
3804<tr class="memdesc:a2f061a50e9fd383396233a85234c1774"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type or the number of channels of the passed tensor info does not match any of the data types and number of channels provided. <a href="#a2f061a50e9fd383396233a85234c1774">More...</a><br /></td></tr>
3805<tr class="separator:a2f061a50e9fd383396233a85234c1774"><td class="memSeparator" colspan="2">&#160;</td></tr>
3806<tr class="memitem:aa87a2bd032fb1e4406506f5bb2da3225"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
3807<tr class="memitem:aa87a2bd032fb1e4406506f5bb2da3225"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa87a2bd032fb1e4406506f5bb2da3225">error_on_data_type_channel_not_in</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, size_t num_channels, T &amp;&amp;dt, Ts &amp;&amp;... dts)</td></tr>
3808<tr class="memdesc:aa87a2bd032fb1e4406506f5bb2da3225"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type or the number of channels of the passed tensor does not match any of the data types and number of channels provided. <a href="#aa87a2bd032fb1e4406506f5bb2da3225">More...</a><br /></td></tr>
3809<tr class="separator:aa87a2bd032fb1e4406506f5bb2da3225"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00003810<tr class="memitem:a76433394f276fbc92390850a15bd2cae"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a76433394f276fbc92390850a15bd2cae">error_on_unsupported_fp16</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor_info, bool is_fp16_supported)</td></tr>
3811<tr class="memdesc:a76433394f276fbc92390850a15bd2cae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type of the passed tensor info is FP16 and FP16 extension is not supported by the device. <a href="#a76433394f276fbc92390850a15bd2cae">More...</a><br /></td></tr>
3812<tr class="separator:a76433394f276fbc92390850a15bd2cae"><td class="memSeparator" colspan="2">&#160;</td></tr>
3813<tr class="memitem:aea2b331c31943c1f726c9f552348c89c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aea2b331c31943c1f726c9f552348c89c">error_on_unsupported_fp16</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor, bool is_fp16_supported)</td></tr>
3814<tr class="memdesc:aea2b331c31943c1f726c9f552348c89c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the data type of the passed tensor is FP16 and FP16 extension is not supported by the device. <a href="#aea2b331c31943c1f726c9f552348c89c">More...</a><br /></td></tr>
3815<tr class="separator:aea2b331c31943c1f726c9f552348c89c"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003816<tr class="memitem:a398f32595ee55b858853d5bcdcacfef5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a398f32595ee55b858853d5bcdcacfef5">error_on_tensor_not_2d</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *tensor)</td></tr>
3817<tr class="memdesc:a398f32595ee55b858853d5bcdcacfef5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the tensor is not 2D. <a href="#a398f32595ee55b858853d5bcdcacfef5">More...</a><br /></td></tr>
3818<tr class="separator:a398f32595ee55b858853d5bcdcacfef5"><td class="memSeparator" colspan="2">&#160;</td></tr>
3819<tr class="memitem:aa394a6ffa74616f886c889f04883663d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa394a6ffa74616f886c889f04883663d">error_on_tensor_not_2d</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *tensor)</td></tr>
3820<tr class="memdesc:aa394a6ffa74616f886c889f04883663d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the tensor info is not 2D. <a href="#aa394a6ffa74616f886c889f04883663d">More...</a><br /></td></tr>
3821<tr class="separator:aa394a6ffa74616f886c889f04883663d"><td class="memSeparator" colspan="2">&#160;</td></tr>
3822<tr class="memitem:a89059fcfb27bba71edffcc22c6e1a1a2"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Ts&gt; </td></tr>
3823<tr class="memitem:a89059fcfb27bba71edffcc22c6e1a1a2"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a89059fcfb27bba71edffcc22c6e1a1a2">error_on_channel_not_in</a> (const char *function, const char *file, const int line, T cn, T &amp;&amp;channel, Ts &amp;&amp;... channels)</td></tr>
3824<tr class="memdesc:a89059fcfb27bba71edffcc22c6e1a1a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the channel is not in channels. <a href="#a89059fcfb27bba71edffcc22c6e1a1a2">More...</a><br /></td></tr>
3825<tr class="separator:a89059fcfb27bba71edffcc22c6e1a1a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
3826<tr class="memitem:a66876161b2add31c70efb9d1ba9423cb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a66876161b2add31c70efb9d1ba9423cb">error_on_channel_not_in_known_format</a> (const char *function, const char *file, const int line, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> fmt, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> cn)</td></tr>
3827<tr class="memdesc:a66876161b2add31c70efb9d1ba9423cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the channel is not in format. <a href="#a66876161b2add31c70efb9d1ba9423cb">More...</a><br /></td></tr>
3828<tr class="separator:a66876161b2add31c70efb9d1ba9423cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
3829<tr class="memitem:a689cede2a5855c731f7d69b487f30aaa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a689cede2a5855c731f7d69b487f30aaa">error_on_invalid_multi_hog</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml">IMultiHOG</a> *multi_hog)</td></tr>
3830<tr class="memdesc:a689cede2a5855c731f7d69b487f30aaa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the <a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml">IMultiHOG</a> container is invalid. <a href="#a689cede2a5855c731f7d69b487f30aaa">More...</a><br /></td></tr>
3831<tr class="separator:a689cede2a5855c731f7d69b487f30aaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
3832<tr class="memitem:acd11fc94aa2828fee0715de0297eb306"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acd11fc94aa2828fee0715de0297eb306">error_on_unconfigured_kernel</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_i_kernel.xhtml">IKernel</a> *kernel)</td></tr>
3833<tr class="memdesc:acd11fc94aa2828fee0715de0297eb306"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the kernel is not configured. <a href="#acd11fc94aa2828fee0715de0297eb306">More...</a><br /></td></tr>
3834<tr class="separator:acd11fc94aa2828fee0715de0297eb306"><td class="memSeparator" colspan="2">&#160;</td></tr>
3835<tr class="memitem:a9f83032f49a13db29baa1af1a62e5627"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9f83032f49a13db29baa1af1a62e5627">error_on_invalid_subtensor</a> (const char *function, const char *file, const int line, const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;parent_shape, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;coords, const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape)</td></tr>
3836<tr class="memdesc:a9f83032f49a13db29baa1af1a62e5627"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if if the coordinates and shape of the subtensor are within the parent tensor. <a href="#a9f83032f49a13db29baa1af1a62e5627">More...</a><br /></td></tr>
3837<tr class="separator:a9f83032f49a13db29baa1af1a62e5627"><td class="memSeparator" colspan="2">&#160;</td></tr>
3838<tr class="memitem:ac2ab765daf6f586ceaa12575743361e7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac2ab765daf6f586ceaa12575743361e7">error_on_invalid_subtensor_valid_region</a> (const char *function, const char *file, const int line, const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;parent_valid_region, const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;valid_region)</td></tr>
3839<tr class="memdesc:ac2ab765daf6f586ceaa12575743361e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return an error if the valid region of a subtensor is not inside the valid region of the parent tensor. <a href="#ac2ab765daf6f586ceaa12575743361e7">More...</a><br /></td></tr>
3840<tr class="separator:ac2ab765daf6f586ceaa12575743361e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
3841<tr class="memitem:afe3b7128bf77dd12c85eed944fe5b3d4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afe3b7128bf77dd12c85eed944fe5b3d4">convert_window_coord_to_position</a> (const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;w, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;<a class="el" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a>)</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00003842<tr class="memdesc:afe3b7128bf77dd12c85eed944fe5b3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert an offset in window steps into absolute coordinates. <a href="#afe3b7128bf77dd12c85eed944fe5b3d4">More...</a><br /></td></tr>
3843<tr class="separator:afe3b7128bf77dd12c85eed944fe5b3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
3844<tr class="memitem:aaf5f536bf7ec25ff83b912badcf61405"><td class="memTemplParams" colspan="2">template&lt;typename L &gt; </td></tr>
3845<tr class="memitem:aaf5f536bf7ec25ff83b912badcf61405"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_window_iterator.xhtml">WindowIterator</a>&lt; L &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aaf5f536bf7ec25ff83b912badcf61405">create_window_iterator</a> (const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;w, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;start, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;end, L &amp;&amp;lambda_function)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003846<tr class="memdesc:aaf5f536bf7ec25ff83b912badcf61405"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a <a class="el" href="classarm__compute_1_1_window_iterator.xhtml" title="Iterate over a portion of a Window.">WindowIterator</a> object. <a href="#aaf5f536bf7ec25ff83b912badcf61405">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00003847<tr class="separator:aaf5f536bf7ec25ff83b912badcf61405"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003848<tr class="memitem:a307a55b07dc70dc9177ff26543b1c66f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a307a55b07dc70dc9177ff26543b1c66f">data_type_from_name</a> (const std::string &amp;name)</td></tr>
3849<tr class="memdesc:a307a55b07dc70dc9177ff26543b1c66f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts a string to a strong types enumeration <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>. <a href="#a307a55b07dc70dc9177ff26543b1c66f">More...</a><br /></td></tr>
3850<tr class="separator:a307a55b07dc70dc9177ff26543b1c66f"><td class="memSeparator" colspan="2">&#160;</td></tr>
3851<tr class="memitem:a7cec6ed141f3eb1d6330533a90bba9e1"><td class="memItemLeft" align="right" valign="top">inline ::std::istream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7cec6ed141f3eb1d6330533a90bba9e1">operator&gt;&gt;</a> (::std::istream &amp;stream, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a> &amp;data_type)</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00003852<tr class="memdesc:a7cec6ed141f3eb1d6330533a90bba9e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Input Stream operator for <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>. <a href="#a7cec6ed141f3eb1d6330533a90bba9e1">More...</a><br /></td></tr>
3853<tr class="separator:a7cec6ed141f3eb1d6330533a90bba9e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003854<tr class="memitem:a834b76c7d21af898f39def3b787d7530"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a834b76c7d21af898f39def3b787d7530">data_layout_from_name</a> (const std::string &amp;name)</td></tr>
3855<tr class="memdesc:a834b76c7d21af898f39def3b787d7530"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts a string to a strong types enumeration <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a>. <a href="#a834b76c7d21af898f39def3b787d7530">More...</a><br /></td></tr>
3856<tr class="separator:a834b76c7d21af898f39def3b787d7530"><td class="memSeparator" colspan="2">&#160;</td></tr>
3857<tr class="memitem:a9c4a3d0e80938810dd7b22b16785f5c8"><td class="memItemLeft" align="right" valign="top">inline ::std::istream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9c4a3d0e80938810dd7b22b16785f5c8">operator&gt;&gt;</a> (::std::istream &amp;stream, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a> &amp;data_layout)</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00003858<tr class="memdesc:a9c4a3d0e80938810dd7b22b16785f5c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Input Stream operator for <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a>. <a href="#a9c4a3d0e80938810dd7b22b16785f5c8">More...</a><br /></td></tr>
3859<tr class="separator:a9c4a3d0e80938810dd7b22b16785f5c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003860<tr class="memitem:aca9062d049299f125a442eac466402fd"><td class="memItemLeft" align="right" valign="top">std::tuple&lt; cl::Context, cl::Device, cl_int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aca9062d049299f125a442eac466402fd">create_opencl_context_and_device</a> ()</td></tr>
3861<tr class="memdesc:aca9062d049299f125a442eac466402fd"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function creates an OpenCL context and a device. <a href="#aca9062d049299f125a442eac466402fd">More...</a><br /></td></tr>
3862<tr class="separator:aca9062d049299f125a442eac466402fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003863<tr class="memitem:a92d01d03db1530581737484c1290ca16"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a92d01d03db1530581737484c1290ca16">get_cpu_configuration</a> (<a class="el" href="classarm__compute_1_1_c_p_u_info.xhtml">CPUInfo</a> &amp;cpuinfo)</td></tr>
3864<tr class="memdesc:a92d01d03db1530581737484c1290ca16"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function will try to detect the CPU configuration on the system and will fill the cpuinfo object accordingly to reflect this. <a href="#a92d01d03db1530581737484c1290ca16">More...</a><br /></td></tr>
3865<tr class="separator:a92d01d03db1530581737484c1290ca16"><td class="memSeparator" colspan="2">&#160;</td></tr>
3866<tr class="memitem:a9a9fa44b29bc17746a0b486626a76e0a"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9a9fa44b29bc17746a0b486626a76e0a">get_threads_hint</a> ()</td></tr>
3867<tr class="memdesc:a9a9fa44b29bc17746a0b486626a76e0a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Some systems have both big and small cores, this fuction computes the minimum number of cores that are exactly the same on the system. <a href="#a9a9fa44b29bc17746a0b486626a76e0a">More...</a><br /></td></tr>
3868<tr class="separator:a9a9fa44b29bc17746a0b486626a76e0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
3869<tr class="memitem:a192c7cf59b34ae925eb1c8c315a06225"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a192c7cf59b34ae925eb1c8c315a06225">string_from_scheduler_type</a> (<a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7">Scheduler::Type</a> t)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003870<tr class="memdesc:a192c7cf59b34ae925eb1c8c315a06225"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a <a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7" title="Scheduler type.">Scheduler::Type</a> into a string. <a href="#a192c7cf59b34ae925eb1c8c315a06225">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003871<tr class="separator:a192c7cf59b34ae925eb1c8c315a06225"><td class="memSeparator" colspan="2">&#160;</td></tr>
3872<tr class="memitem:ad1e1cc57e3e2ae0ea65d607f6d6312f8"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad1e1cc57e3e2ae0ea65d607f6d6312f8">FloatFlip</a> (float val)</td></tr>
3873<tr class="separator:ad1e1cc57e3e2ae0ea65d607f6d6312f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
3874<tr class="memitem:a69c96727fe92b1ad1b07da3117c73c76"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a69c96727fe92b1ad1b07da3117c73c76">IFloatFlip</a> (int32_t val)</td></tr>
3875<tr class="separator:a69c96727fe92b1ad1b07da3117c73c76"><td class="memSeparator" colspan="2">&#160;</td></tr>
3876<tr class="memitem:aff311815b306f7885265c103dc0344b9"><td class="memTemplParams" colspan="2">template&lt;bool is_bounded_relu&gt; </td></tr>
3877<tr class="memitem:aff311815b306f7885265c103dc0344b9"><td class="memTemplItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aff311815b306f7885265c103dc0344b9">finalize_quantization</a> (int32x4_t in_s32, int result_fixedpoint_multiplier, int32_t result_shift, int32x4_t result_offset_after_shift_s32, uint8_t min_u8, uint8_t max_u8)</td></tr>
3878<tr class="separator:aff311815b306f7885265c103dc0344b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00003879<tr class="memitem:a57de30d9ebd8eed0393798583555dd16"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3880<tr class="memitem:a57de30d9ebd8eed0393798583555dd16"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a57de30d9ebd8eed0393798583555dd16">run_reverse</a> (const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;window, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *input, const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *axis, <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *output)</td></tr>
3881<tr class="separator:a57de30d9ebd8eed0393798583555dd16"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00003882<tr class="memitem:a40552ea65ee3fc6d7fa7f1fb17baebe7"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3883<tr class="memitem:a40552ea65ee3fc6d7fa7f1fb17baebe7"><td class="memTemplItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a40552ea65ee3fc6d7fa7f1fb17baebe7">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; vec)</td></tr>
3884<tr class="separator:a40552ea65ee3fc6d7fa7f1fb17baebe7"><td class="memSeparator" colspan="2">&#160;</td></tr>
3885<tr class="memitem:a5229f4c7a2c8d07ebc247c3e5075af2b"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3886<tr class="memitem:a5229f4c7a2c8d07ebc247c3e5075af2b"><td class="memTemplItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5229f4c7a2c8d07ebc247c3e5075af2b">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; vec)</td></tr>
3887<tr class="separator:a5229f4c7a2c8d07ebc247c3e5075af2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
3888<tr class="memitem:a2cb9483082ea29427722db15d23ec130"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3889<tr class="memitem:a2cb9483082ea29427722db15d23ec130"><td class="memTemplItemLeft" align="right" valign="top">int8_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2cb9483082ea29427722db15d23ec130">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; vec)</td></tr>
3890<tr class="separator:a2cb9483082ea29427722db15d23ec130"><td class="memSeparator" colspan="2">&#160;</td></tr>
3891<tr class="memitem:a46b08aeab78badc7365668e0051e7fac"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3892<tr class="memitem:a46b08aeab78badc7365668e0051e7fac"><td class="memTemplItemLeft" align="right" valign="top">int8_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a46b08aeab78badc7365668e0051e7fac">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; vec)</td></tr>
3893<tr class="separator:a46b08aeab78badc7365668e0051e7fac"><td class="memSeparator" colspan="2">&#160;</td></tr>
3894<tr class="memitem:aaa7aea48ed8a5c267d4631ad6884e0bd"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3895<tr class="memitem:aaa7aea48ed8a5c267d4631ad6884e0bd"><td class="memTemplItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aaa7aea48ed8a5c267d4631ad6884e0bd">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; vec)</td></tr>
3896<tr class="separator:aaa7aea48ed8a5c267d4631ad6884e0bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
3897<tr class="memitem:ab2aef7b4b81a6108c8d7a8f782340850"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3898<tr class="memitem:ab2aef7b4b81a6108c8d7a8f782340850"><td class="memTemplItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab2aef7b4b81a6108c8d7a8f782340850">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; vec)</td></tr>
3899<tr class="separator:ab2aef7b4b81a6108c8d7a8f782340850"><td class="memSeparator" colspan="2">&#160;</td></tr>
3900<tr class="memitem:a21a10c0d7629ac794f59a6e06dad8b7c"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3901<tr class="memitem:a21a10c0d7629ac794f59a6e06dad8b7c"><td class="memTemplItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a21a10c0d7629ac794f59a6e06dad8b7c">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; vec)</td></tr>
3902<tr class="separator:a21a10c0d7629ac794f59a6e06dad8b7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
3903<tr class="memitem:aab831e66636598a49c321c248da55108"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3904<tr class="memitem:aab831e66636598a49c321c248da55108"><td class="memTemplItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aab831e66636598a49c321c248da55108">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; vec)</td></tr>
3905<tr class="separator:aab831e66636598a49c321c248da55108"><td class="memSeparator" colspan="2">&#160;</td></tr>
3906<tr class="memitem:a1050dd97652f516c036f54173d3cce10"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3907<tr class="memitem:a1050dd97652f516c036f54173d3cce10"><td class="memTemplItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1050dd97652f516c036f54173d3cce10">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; vec)</td></tr>
3908<tr class="separator:a1050dd97652f516c036f54173d3cce10"><td class="memSeparator" colspan="2">&#160;</td></tr>
3909<tr class="memitem:a6e766d98a0e130be624d6dee74c8fb29"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3910<tr class="memitem:a6e766d98a0e130be624d6dee74c8fb29"><td class="memTemplItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6e766d98a0e130be624d6dee74c8fb29">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; vec)</td></tr>
3911<tr class="separator:a6e766d98a0e130be624d6dee74c8fb29"><td class="memSeparator" colspan="2">&#160;</td></tr>
3912<tr class="memitem:adc187f0eff944013383bdc28e8d1e713"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3913<tr class="memitem:adc187f0eff944013383bdc28e8d1e713"><td class="memTemplItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adc187f0eff944013383bdc28e8d1e713">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; vec)</td></tr>
3914<tr class="separator:adc187f0eff944013383bdc28e8d1e713"><td class="memSeparator" colspan="2">&#160;</td></tr>
3915<tr class="memitem:a61f87c089f50e7016ac74d79bbc417eb"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3916<tr class="memitem:a61f87c089f50e7016ac74d79bbc417eb"><td class="memTemplItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a61f87c089f50e7016ac74d79bbc417eb">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; vec)</td></tr>
3917<tr class="separator:a61f87c089f50e7016ac74d79bbc417eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
3918<tr class="memitem:a696409f1f3c572c8a899605e36b87e9a"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3919<tr class="memitem:a696409f1f3c572c8a899605e36b87e9a"><td class="memTemplItemLeft" align="right" valign="top">float&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a696409f1f3c572c8a899605e36b87e9a">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; vec)</td></tr>
3920<tr class="separator:a696409f1f3c572c8a899605e36b87e9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
3921<tr class="memitem:a2b122d56b7bf307cf06ec05b4bdeea63"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3922<tr class="memitem:a2b122d56b7bf307cf06ec05b4bdeea63"><td class="memTemplItemLeft" align="right" valign="top">float&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2b122d56b7bf307cf06ec05b4bdeea63">vget_lane</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; vec)</td></tr>
3923<tr class="separator:a2b122d56b7bf307cf06ec05b4bdeea63"><td class="memSeparator" colspan="2">&#160;</td></tr>
3924<tr class="memitem:a45617be0c289f11c60f659f3123fb210"><td class="memTemplParams" colspan="2">template&lt;int lane&gt; </td></tr>
3925<tr class="memitem:a45617be0c289f11c60f659f3123fb210"><td class="memTemplItemLeft" align="right" valign="top">float&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a45617be0c289f11c60f659f3123fb210">vget_lane</a> (float32x4x4_t vec)</td></tr>
3926<tr class="separator:a45617be0c289f11c60f659f3123fb210"><td class="memSeparator" colspan="2">&#160;</td></tr>
3927<tr class="memitem:af4b13d125dfe1bec25b8df8840c6dd8f"><td class="memTemplParams" colspan="2">template&lt;typename V &gt; </td></tr>
3928<tr class="memitem:af4b13d125dfe1bec25b8df8840c6dd8f"><td class="memTemplItemLeft" align="right" valign="top">constexpr size_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af4b13d125dfe1bec25b8df8840c6dd8f">vec_size_of</a> (const V &amp;vec)</td></tr>
3929<tr class="separator:af4b13d125dfe1bec25b8df8840c6dd8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
3930<tr class="memitem:a2603e5f72e3fa052025c189c1a6647ce"><td class="memTemplParams" colspan="2">template&lt;typename V &gt; </td></tr>
3931<tr class="memitem:a2603e5f72e3fa052025c189c1a6647ce"><td class="memTemplItemLeft" align="right" valign="top">V&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">vdup_n</a> (<a class="el" href="namespacearm__compute.xhtml#a534a101b6176c3e065eba4b4cde7a40e">elem_type_t</a>&lt; V &gt; val)</td></tr>
3932<tr class="separator:a2603e5f72e3fa052025c189c1a6647ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
3933<tr class="memitem:a85d0b4103385d996d4014691d2df0cf1"><td class="memTemplParams" colspan="2">template&lt;typename V &gt; </td></tr>
3934<tr class="memitem:a85d0b4103385d996d4014691d2df0cf1"><td class="memTemplItemLeft" align="right" valign="top">V&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">vld</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a534a101b6176c3e065eba4b4cde7a40e">elem_type_t</a>&lt; V &gt;&gt; ptr)</td></tr>
3935<tr class="separator:a85d0b4103385d996d4014691d2df0cf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
3936<tr class="memitem:a671b1da70aa3efc02c508648ae2d81b5"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3937<tr class="memitem:a671b1da70aa3efc02c508648ae2d81b5"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a671b1da70aa3efc02c508648ae2d81b5">sqadd</a> (T a, T b)</td></tr>
3938<tr class="separator:a671b1da70aa3efc02c508648ae2d81b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
3939<tr class="memitem:a7462bb232b41864413a4d8603a660d16"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3940<tr class="memitem:a7462bb232b41864413a4d8603a660d16"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7462bb232b41864413a4d8603a660d16">sqsub</a> (T a, T b)</td></tr>
3941<tr class="separator:a7462bb232b41864413a4d8603a660d16"><td class="memSeparator" colspan="2">&#160;</td></tr>
3942<tr class="memitem:a705ed42150ffbe645f7ba2fb5d0a5bb6"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
3943<tr class="memitem:a705ed42150ffbe645f7ba2fb5d0a5bb6"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a705ed42150ffbe645f7ba2fb5d0a5bb6">sqmul</a> (T a, T b)</td></tr>
3944<tr class="separator:a705ed42150ffbe645f7ba2fb5d0a5bb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
3945<tr class="memitem:a194e168c19bf049bd3e903552f112d5c"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
3946<tr class="memitem:a194e168c19bf049bd3e903552f112d5c"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a194e168c19bf049bd3e903552f112d5c">vdup_n&lt; vec_8_byte_t&lt; uint8_t &gt; &gt;</a> (uint8_t val)</td></tr>
3947<tr class="separator:a194e168c19bf049bd3e903552f112d5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
3948<tr class="memitem:a84aacbb969d72f3b89aa93cc87af9bdf"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
3949<tr class="memitem:a84aacbb969d72f3b89aa93cc87af9bdf"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a84aacbb969d72f3b89aa93cc87af9bdf">vdup_n&lt; vec_16_byte_t&lt; uint8_t &gt; &gt;</a> (uint8_t val)</td></tr>
3950<tr class="separator:a84aacbb969d72f3b89aa93cc87af9bdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
3951<tr class="memitem:abcfc5b1ed91557ba1b6edf2eae8533e7"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
3952<tr class="memitem:abcfc5b1ed91557ba1b6edf2eae8533e7"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abcfc5b1ed91557ba1b6edf2eae8533e7">vld&lt; vec_8_byte_t&lt; uint8_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint8_t &gt; ptr)</td></tr>
3953<tr class="separator:abcfc5b1ed91557ba1b6edf2eae8533e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
3954<tr class="memitem:a70cff70817eb6a40e893331c4df276a5"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
3955<tr class="memitem:a70cff70817eb6a40e893331c4df276a5"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a70cff70817eb6a40e893331c4df276a5">vld&lt; vec_16_byte_t&lt; uint8_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint8_t &gt; ptr)</td></tr>
3956<tr class="separator:a70cff70817eb6a40e893331c4df276a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
3957<tr class="memitem:a3753b9d735032ba72e7df0c5cbba31a1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3753b9d735032ba72e7df0c5cbba31a1">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint8_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; vec)</td></tr>
3958<tr class="separator:a3753b9d735032ba72e7df0c5cbba31a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
3959<tr class="memitem:aa17a7667769390f153ad5289d5390341"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa17a7667769390f153ad5289d5390341">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint8_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; vec)</td></tr>
3960<tr class="separator:aa17a7667769390f153ad5289d5390341"><td class="memSeparator" colspan="2">&#160;</td></tr>
3961<tr class="memitem:a1cb1c90103d83ca052919e98dbaac553"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1cb1c90103d83ca052919e98dbaac553">vmax</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; b)</td></tr>
3962<tr class="separator:a1cb1c90103d83ca052919e98dbaac553"><td class="memSeparator" colspan="2">&#160;</td></tr>
3963<tr class="memitem:aae85042ef273ca700734604b5488f2ff"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aae85042ef273ca700734604b5488f2ff">vpmax</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; b)</td></tr>
3964<tr class="separator:aae85042ef273ca700734604b5488f2ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
3965<tr class="memitem:a3bb60064e505cfd3a0d43528a3c1845d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3bb60064e505cfd3a0d43528a3c1845d">vget_low</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; vec)</td></tr>
3966<tr class="separator:a3bb60064e505cfd3a0d43528a3c1845d"><td class="memSeparator" colspan="2">&#160;</td></tr>
3967<tr class="memitem:af311129b4dccf2fbd9307a7d644876d1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af311129b4dccf2fbd9307a7d644876d1">vget_high</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; vec)</td></tr>
3968<tr class="separator:af311129b4dccf2fbd9307a7d644876d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
3969<tr class="memitem:afbcedeccc32a67996ea90a0a97c94269"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
3970<tr class="memitem:afbcedeccc32a67996ea90a0a97c94269"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afbcedeccc32a67996ea90a0a97c94269">vdup_n&lt; vec_8_byte_t&lt; int8_t &gt; &gt;</a> (int8_t val)</td></tr>
3971<tr class="separator:afbcedeccc32a67996ea90a0a97c94269"><td class="memSeparator" colspan="2">&#160;</td></tr>
3972<tr class="memitem:a3c5a58b994f82b7eb24e85803fdd08c1"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
3973<tr class="memitem:a3c5a58b994f82b7eb24e85803fdd08c1"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3c5a58b994f82b7eb24e85803fdd08c1">vdup_n&lt; vec_16_byte_t&lt; int8_t &gt; &gt;</a> (int8_t val)</td></tr>
3974<tr class="separator:a3c5a58b994f82b7eb24e85803fdd08c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
3975<tr class="memitem:add42730b56d7b3614fc39f525eb55286"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
3976<tr class="memitem:add42730b56d7b3614fc39f525eb55286"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#add42730b56d7b3614fc39f525eb55286">vld&lt; vec_8_byte_t&lt; int8_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int8_t &gt; ptr)</td></tr>
3977<tr class="separator:add42730b56d7b3614fc39f525eb55286"><td class="memSeparator" colspan="2">&#160;</td></tr>
3978<tr class="memitem:a9d896907abfbde0613b952bb4db5897a"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
3979<tr class="memitem:a9d896907abfbde0613b952bb4db5897a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9d896907abfbde0613b952bb4db5897a">vld&lt; vec_16_byte_t&lt; int8_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int8_t &gt; ptr)</td></tr>
3980<tr class="separator:a9d896907abfbde0613b952bb4db5897a"><td class="memSeparator" colspan="2">&#160;</td></tr>
3981<tr class="memitem:acec5b4ba08b0ab7d080e2177e4b3deb1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acec5b4ba08b0ab7d080e2177e4b3deb1">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int8_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; vec)</td></tr>
3982<tr class="separator:acec5b4ba08b0ab7d080e2177e4b3deb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
3983<tr class="memitem:ab2c29d96efc44a4163d8f594cd836d1e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab2c29d96efc44a4163d8f594cd836d1e">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int8_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; vec)</td></tr>
3984<tr class="separator:ab2c29d96efc44a4163d8f594cd836d1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
3985<tr class="memitem:a2ee044b41b71a344cad69a08aecb1d5f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2ee044b41b71a344cad69a08aecb1d5f">vmax</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; b)</td></tr>
3986<tr class="separator:a2ee044b41b71a344cad69a08aecb1d5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
3987<tr class="memitem:a0d9a679f8dfa41f17d46f6c1e56ca82d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0d9a679f8dfa41f17d46f6c1e56ca82d">vpmax</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; b)</td></tr>
3988<tr class="separator:a0d9a679f8dfa41f17d46f6c1e56ca82d"><td class="memSeparator" colspan="2">&#160;</td></tr>
3989<tr class="memitem:a2a0a49e26931849079897f0a225589cb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2a0a49e26931849079897f0a225589cb">vget_low</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; vec)</td></tr>
3990<tr class="separator:a2a0a49e26931849079897f0a225589cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
3991<tr class="memitem:abfb64320f5b05fc08dffafc2b039e559"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abfb64320f5b05fc08dffafc2b039e559">vget_high</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; vec)</td></tr>
3992<tr class="separator:abfb64320f5b05fc08dffafc2b039e559"><td class="memSeparator" colspan="2">&#160;</td></tr>
3993<tr class="memitem:aca706ca8cd2fec97cf6b3ab747c40dc6"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
3994<tr class="memitem:aca706ca8cd2fec97cf6b3ab747c40dc6"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aca706ca8cd2fec97cf6b3ab747c40dc6">vdup_n&lt; vec_8_byte_t&lt; uint16_t &gt; &gt;</a> (uint16_t val)</td></tr>
3995<tr class="separator:aca706ca8cd2fec97cf6b3ab747c40dc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
3996<tr class="memitem:a93020987fbede1b8da7db6a1a855ddd4"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
3997<tr class="memitem:a93020987fbede1b8da7db6a1a855ddd4"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a93020987fbede1b8da7db6a1a855ddd4">vdup_n&lt; vec_16_byte_t&lt; uint16_t &gt; &gt;</a> (uint16_t val)</td></tr>
3998<tr class="separator:a93020987fbede1b8da7db6a1a855ddd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
3999<tr class="memitem:ab764431d90825796c5060d85810781fa"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4000<tr class="memitem:ab764431d90825796c5060d85810781fa"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab764431d90825796c5060d85810781fa">vld&lt; vec_8_byte_t&lt; uint16_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint16_t &gt; ptr)</td></tr>
4001<tr class="separator:ab764431d90825796c5060d85810781fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
4002<tr class="memitem:ad2174760efe31f80528b5a4cf8ebed66"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4003<tr class="memitem:ad2174760efe31f80528b5a4cf8ebed66"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad2174760efe31f80528b5a4cf8ebed66">vld&lt; vec_16_byte_t&lt; uint16_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint16_t &gt; ptr)</td></tr>
4004<tr class="separator:ad2174760efe31f80528b5a4cf8ebed66"><td class="memSeparator" colspan="2">&#160;</td></tr>
4005<tr class="memitem:a9893527df6922f85f0f3173142247ece"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9893527df6922f85f0f3173142247ece">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint16_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; vec)</td></tr>
4006<tr class="separator:a9893527df6922f85f0f3173142247ece"><td class="memSeparator" colspan="2">&#160;</td></tr>
4007<tr class="memitem:a090a9d8254580d7c22668e21e581d58e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a090a9d8254580d7c22668e21e581d58e">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint16_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; vec)</td></tr>
4008<tr class="separator:a090a9d8254580d7c22668e21e581d58e"><td class="memSeparator" colspan="2">&#160;</td></tr>
4009<tr class="memitem:a7c4bfe1c9c07571952a81783fa8540de"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7c4bfe1c9c07571952a81783fa8540de">vmax</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; b)</td></tr>
4010<tr class="separator:a7c4bfe1c9c07571952a81783fa8540de"><td class="memSeparator" colspan="2">&#160;</td></tr>
4011<tr class="memitem:a2bc9036a2d288d7a4ad2d015d91ba5d9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2bc9036a2d288d7a4ad2d015d91ba5d9">vpmax</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; b)</td></tr>
4012<tr class="separator:a2bc9036a2d288d7a4ad2d015d91ba5d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
4013<tr class="memitem:a5b825f82ef9a09db968b003310b44030"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5b825f82ef9a09db968b003310b44030">vget_low</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; vec)</td></tr>
4014<tr class="separator:a5b825f82ef9a09db968b003310b44030"><td class="memSeparator" colspan="2">&#160;</td></tr>
4015<tr class="memitem:aebe61fd1828294b9794b3c87174649b2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aebe61fd1828294b9794b3c87174649b2">vget_high</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; vec)</td></tr>
4016<tr class="separator:aebe61fd1828294b9794b3c87174649b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
4017<tr class="memitem:a10a9088cc35ece085610063eec583ad1"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4018<tr class="memitem:a10a9088cc35ece085610063eec583ad1"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a10a9088cc35ece085610063eec583ad1">vdup_n&lt; vec_8_byte_t&lt; int16_t &gt; &gt;</a> (int16_t val)</td></tr>
4019<tr class="separator:a10a9088cc35ece085610063eec583ad1"><td class="memSeparator" colspan="2">&#160;</td></tr>
4020<tr class="memitem:aa6ec87dc4f97241833eace4b1784cc50"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4021<tr class="memitem:aa6ec87dc4f97241833eace4b1784cc50"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa6ec87dc4f97241833eace4b1784cc50">vdup_n&lt; vec_16_byte_t&lt; int16_t &gt; &gt;</a> (int16_t val)</td></tr>
4022<tr class="separator:aa6ec87dc4f97241833eace4b1784cc50"><td class="memSeparator" colspan="2">&#160;</td></tr>
4023<tr class="memitem:a1b29ca880e2b7282c9318d6c36f07140"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4024<tr class="memitem:a1b29ca880e2b7282c9318d6c36f07140"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1b29ca880e2b7282c9318d6c36f07140">vld&lt; vec_8_byte_t&lt; int16_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int16_t &gt; ptr)</td></tr>
4025<tr class="separator:a1b29ca880e2b7282c9318d6c36f07140"><td class="memSeparator" colspan="2">&#160;</td></tr>
4026<tr class="memitem:afd4981f6532c3a76716e3053d119e269"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4027<tr class="memitem:afd4981f6532c3a76716e3053d119e269"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afd4981f6532c3a76716e3053d119e269">vld&lt; vec_16_byte_t&lt; int16_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int16_t &gt; ptr)</td></tr>
4028<tr class="separator:afd4981f6532c3a76716e3053d119e269"><td class="memSeparator" colspan="2">&#160;</td></tr>
4029<tr class="memitem:a7a7441e9c3870a817f9084697730a0e9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7a7441e9c3870a817f9084697730a0e9">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int16_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; vec)</td></tr>
4030<tr class="separator:a7a7441e9c3870a817f9084697730a0e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
4031<tr class="memitem:ac9aedf36525da0e2306db27867c2bb5d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac9aedf36525da0e2306db27867c2bb5d">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int16_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; vec)</td></tr>
4032<tr class="separator:ac9aedf36525da0e2306db27867c2bb5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
4033<tr class="memitem:abe221c26fe4f91102c0f7b5e2336c070"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abe221c26fe4f91102c0f7b5e2336c070">vmax</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; b)</td></tr>
4034<tr class="separator:abe221c26fe4f91102c0f7b5e2336c070"><td class="memSeparator" colspan="2">&#160;</td></tr>
4035<tr class="memitem:ab831eb6268e8d3dcfd9ce6e1e7daf598"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab831eb6268e8d3dcfd9ce6e1e7daf598">vpmax</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; b)</td></tr>
4036<tr class="separator:ab831eb6268e8d3dcfd9ce6e1e7daf598"><td class="memSeparator" colspan="2">&#160;</td></tr>
4037<tr class="memitem:a264ecd01ca0763d79aa4ad5515ce7b65"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a264ecd01ca0763d79aa4ad5515ce7b65">vget_low</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; vec)</td></tr>
4038<tr class="separator:a264ecd01ca0763d79aa4ad5515ce7b65"><td class="memSeparator" colspan="2">&#160;</td></tr>
4039<tr class="memitem:afc14b8933176ce40c7b99a1ef0f6a062"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afc14b8933176ce40c7b99a1ef0f6a062">vget_high</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; vec)</td></tr>
4040<tr class="separator:afc14b8933176ce40c7b99a1ef0f6a062"><td class="memSeparator" colspan="2">&#160;</td></tr>
4041<tr class="memitem:af8c50d8dac4fe454183078d34515b50a"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4042<tr class="memitem:af8c50d8dac4fe454183078d34515b50a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af8c50d8dac4fe454183078d34515b50a">vdup_n&lt; vec_8_byte_t&lt; uint32_t &gt; &gt;</a> (uint32_t val)</td></tr>
4043<tr class="separator:af8c50d8dac4fe454183078d34515b50a"><td class="memSeparator" colspan="2">&#160;</td></tr>
4044<tr class="memitem:aacce75282b76aeb1eda5375b6dcef231"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4045<tr class="memitem:aacce75282b76aeb1eda5375b6dcef231"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aacce75282b76aeb1eda5375b6dcef231">vdup_n&lt; vec_16_byte_t&lt; uint32_t &gt; &gt;</a> (uint32_t val)</td></tr>
4046<tr class="separator:aacce75282b76aeb1eda5375b6dcef231"><td class="memSeparator" colspan="2">&#160;</td></tr>
4047<tr class="memitem:ac7a8e67b90d2c99626733ea9bdc60a1d"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4048<tr class="memitem:ac7a8e67b90d2c99626733ea9bdc60a1d"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac7a8e67b90d2c99626733ea9bdc60a1d">vld&lt; vec_8_byte_t&lt; uint32_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint32_t &gt; ptr)</td></tr>
4049<tr class="separator:ac7a8e67b90d2c99626733ea9bdc60a1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
4050<tr class="memitem:a13a69ef04626a27771a6e19542cac767"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4051<tr class="memitem:a13a69ef04626a27771a6e19542cac767"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a13a69ef04626a27771a6e19542cac767">vld&lt; vec_16_byte_t&lt; uint32_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint32_t &gt; ptr)</td></tr>
4052<tr class="separator:a13a69ef04626a27771a6e19542cac767"><td class="memSeparator" colspan="2">&#160;</td></tr>
4053<tr class="memitem:aa1e4aafb14bd8eee38caa7ad5db69507"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa1e4aafb14bd8eee38caa7ad5db69507">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint32_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; vec)</td></tr>
4054<tr class="separator:aa1e4aafb14bd8eee38caa7ad5db69507"><td class="memSeparator" colspan="2">&#160;</td></tr>
4055<tr class="memitem:aca451511712482f55001063da2317427"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aca451511712482f55001063da2317427">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint32_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; vec)</td></tr>
4056<tr class="separator:aca451511712482f55001063da2317427"><td class="memSeparator" colspan="2">&#160;</td></tr>
4057<tr class="memitem:a1bb4dd507d55db5ae8fafab84d31b870"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1bb4dd507d55db5ae8fafab84d31b870">vmax</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; b)</td></tr>
4058<tr class="separator:a1bb4dd507d55db5ae8fafab84d31b870"><td class="memSeparator" colspan="2">&#160;</td></tr>
4059<tr class="memitem:aacd10f0e821aff266057a1fc443c6344"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aacd10f0e821aff266057a1fc443c6344">vpmax</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; b)</td></tr>
4060<tr class="separator:aacd10f0e821aff266057a1fc443c6344"><td class="memSeparator" colspan="2">&#160;</td></tr>
4061<tr class="memitem:a0477c495757cd6c2bdf6f151aa26a542"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0477c495757cd6c2bdf6f151aa26a542">vget_low</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; vec)</td></tr>
4062<tr class="separator:a0477c495757cd6c2bdf6f151aa26a542"><td class="memSeparator" colspan="2">&#160;</td></tr>
4063<tr class="memitem:a94683a211fef1215ec7576bc74a1cc68"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a94683a211fef1215ec7576bc74a1cc68">vget_high</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; vec)</td></tr>
4064<tr class="separator:a94683a211fef1215ec7576bc74a1cc68"><td class="memSeparator" colspan="2">&#160;</td></tr>
4065<tr class="memitem:aee16a2b366642146ef353e0939a71b83"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4066<tr class="memitem:aee16a2b366642146ef353e0939a71b83"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aee16a2b366642146ef353e0939a71b83">vdup_n&lt; vec_8_byte_t&lt; int32_t &gt; &gt;</a> (int32_t val)</td></tr>
4067<tr class="separator:aee16a2b366642146ef353e0939a71b83"><td class="memSeparator" colspan="2">&#160;</td></tr>
4068<tr class="memitem:a434a14d651e75e624bfed91646a9582e"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4069<tr class="memitem:a434a14d651e75e624bfed91646a9582e"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a434a14d651e75e624bfed91646a9582e">vdup_n&lt; vec_16_byte_t&lt; int32_t &gt; &gt;</a> (int32_t val)</td></tr>
4070<tr class="separator:a434a14d651e75e624bfed91646a9582e"><td class="memSeparator" colspan="2">&#160;</td></tr>
4071<tr class="memitem:a10449c2936e1986b131e8c070db9c16b"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4072<tr class="memitem:a10449c2936e1986b131e8c070db9c16b"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a10449c2936e1986b131e8c070db9c16b">vld&lt; vec_8_byte_t&lt; int32_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int32_t &gt; ptr)</td></tr>
4073<tr class="separator:a10449c2936e1986b131e8c070db9c16b"><td class="memSeparator" colspan="2">&#160;</td></tr>
4074<tr class="memitem:a1acc117060f7ad740f059fbb97359d6b"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4075<tr class="memitem:a1acc117060f7ad740f059fbb97359d6b"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1acc117060f7ad740f059fbb97359d6b">vld&lt; vec_16_byte_t&lt; int32_t &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int32_t &gt; ptr)</td></tr>
4076<tr class="separator:a1acc117060f7ad740f059fbb97359d6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
4077<tr class="memitem:a59f96d9a74850a843c1f710803fe8de8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a59f96d9a74850a843c1f710803fe8de8">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int32_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; vec)</td></tr>
4078<tr class="separator:a59f96d9a74850a843c1f710803fe8de8"><td class="memSeparator" colspan="2">&#160;</td></tr>
4079<tr class="memitem:a788c1fc3809f77d2866e4282d374770b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a788c1fc3809f77d2866e4282d374770b">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int32_t &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; vec)</td></tr>
4080<tr class="separator:a788c1fc3809f77d2866e4282d374770b"><td class="memSeparator" colspan="2">&#160;</td></tr>
4081<tr class="memitem:a4e2374d1a63f2e9433b7965eede927af"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4e2374d1a63f2e9433b7965eede927af">vmax</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; b)</td></tr>
4082<tr class="separator:a4e2374d1a63f2e9433b7965eede927af"><td class="memSeparator" colspan="2">&#160;</td></tr>
4083<tr class="memitem:aeb42b9eb65ed0207ddcdb9c870fd5697"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aeb42b9eb65ed0207ddcdb9c870fd5697">vpmax</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; b)</td></tr>
4084<tr class="separator:aeb42b9eb65ed0207ddcdb9c870fd5697"><td class="memSeparator" colspan="2">&#160;</td></tr>
4085<tr class="memitem:a4624ac629ac1199b9482f01334fe93a8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4624ac629ac1199b9482f01334fe93a8">vget_low</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; vec)</td></tr>
4086<tr class="separator:a4624ac629ac1199b9482f01334fe93a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
4087<tr class="memitem:aeaf3494a0fcf8be9555194a8e7a18a07"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aeaf3494a0fcf8be9555194a8e7a18a07">vget_high</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; vec)</td></tr>
4088<tr class="separator:aeaf3494a0fcf8be9555194a8e7a18a07"><td class="memSeparator" colspan="2">&#160;</td></tr>
4089<tr class="memitem:ae23d199254b002d668fde87246f2f6f7"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4090<tr class="memitem:ae23d199254b002d668fde87246f2f6f7"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae23d199254b002d668fde87246f2f6f7">vdup_n&lt; vec_8_byte_t&lt; float &gt; &gt;</a> (float val)</td></tr>
4091<tr class="separator:ae23d199254b002d668fde87246f2f6f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
4092<tr class="memitem:ace69f5de3783f9cd924dac392710facf"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4093<tr class="memitem:ace69f5de3783f9cd924dac392710facf"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ace69f5de3783f9cd924dac392710facf">vdup_n&lt; vec_16_byte_t&lt; float &gt; &gt;</a> (float val)</td></tr>
4094<tr class="separator:ace69f5de3783f9cd924dac392710facf"><td class="memSeparator" colspan="2">&#160;</td></tr>
4095<tr class="memitem:a323be126777e57614c5dc57ee1345c7e"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4096<tr class="memitem:a323be126777e57614c5dc57ee1345c7e"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a323be126777e57614c5dc57ee1345c7e">vld&lt; vec_8_byte_t&lt; float &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; float &gt; ptr)</td></tr>
4097<tr class="separator:a323be126777e57614c5dc57ee1345c7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
4098<tr class="memitem:aa8e2f6d1e361e3ac707595f1092b9103"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4099<tr class="memitem:aa8e2f6d1e361e3ac707595f1092b9103"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa8e2f6d1e361e3ac707595f1092b9103">vld&lt; vec_16_byte_t&lt; float &gt; &gt;</a> (<a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; float &gt; ptr)</td></tr>
4100<tr class="separator:aa8e2f6d1e361e3ac707595f1092b9103"><td class="memSeparator" colspan="2">&#160;</td></tr>
4101<tr class="memitem:a01cfd18ed87a496fc5d3be04a040be61"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a01cfd18ed87a496fc5d3be04a040be61">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; float &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; vec)</td></tr>
4102<tr class="separator:a01cfd18ed87a496fc5d3be04a040be61"><td class="memSeparator" colspan="2">&#160;</td></tr>
4103<tr class="memitem:abd25994f8abe7093700a88a65fdb6ad5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abd25994f8abe7093700a88a65fdb6ad5">vst</a> (<a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; float &gt; ptr, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; vec)</td></tr>
4104<tr class="separator:abd25994f8abe7093700a88a65fdb6ad5"><td class="memSeparator" colspan="2">&#160;</td></tr>
4105<tr class="memitem:a837afab6fd85e34f2bd6e267f4c9e849"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a837afab6fd85e34f2bd6e267f4c9e849">vmax</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; b)</td></tr>
4106<tr class="separator:a837afab6fd85e34f2bd6e267f4c9e849"><td class="memSeparator" colspan="2">&#160;</td></tr>
4107<tr class="memitem:af8efc828ccf4a8f2c6b26cfe3813952d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af8efc828ccf4a8f2c6b26cfe3813952d">vpmax</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; b)</td></tr>
4108<tr class="separator:af8efc828ccf4a8f2c6b26cfe3813952d"><td class="memSeparator" colspan="2">&#160;</td></tr>
4109<tr class="memitem:ae83ce5db69a7a14f5c0ee9d9326e1a40"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae83ce5db69a7a14f5c0ee9d9326e1a40">vget_low</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; vec)</td></tr>
4110<tr class="separator:ae83ce5db69a7a14f5c0ee9d9326e1a40"><td class="memSeparator" colspan="2">&#160;</td></tr>
4111<tr class="memitem:abc735b1b07e30e093dd39507606a1e35"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abc735b1b07e30e093dd39507606a1e35">vget_high</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; vec)</td></tr>
4112<tr class="separator:abc735b1b07e30e093dd39507606a1e35"><td class="memSeparator" colspan="2">&#160;</td></tr>
4113<tr class="memitem:abe949a509da417044624d62a73057441"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abe949a509da417044624d62a73057441">vadd</a> (<a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; a, <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; b)</td></tr>
4114<tr class="separator:abe949a509da417044624d62a73057441"><td class="memSeparator" colspan="2">&#160;</td></tr>
4115<tr class="memitem:ab11431f1a64a618e5ed1d37634d0e0fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab11431f1a64a618e5ed1d37634d0e0fe">vadd</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; b)</td></tr>
4116<tr class="separator:ab11431f1a64a618e5ed1d37634d0e0fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
4117<tr class="memitem:ad0ebbe865e9e6cfd1b2df041f8374ed0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad0ebbe865e9e6cfd1b2df041f8374ed0">vsub</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; a, <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; b)</td></tr>
4118<tr class="separator:ad0ebbe865e9e6cfd1b2df041f8374ed0"><td class="memSeparator" colspan="2">&#160;</td></tr>
4119<tr class="memitem:a5dce3fda8114a32a2c8f1f517adca368"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5dce3fda8114a32a2c8f1f517adca368">vmul_n</a> (<a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; vec, float val)</td></tr>
4120<tr class="separator:a5dce3fda8114a32a2c8f1f517adca368"><td class="memSeparator" colspan="2">&#160;</td></tr>
4121<tr class="memitem:a6cb464349a8f184ffb8eded9ae9e5925"><td class="memTemplParams" colspan="2">template&lt;typename VO , typename VI &gt; </td></tr>
4122<tr class="memitem:a6cb464349a8f184ffb8eded9ae9e5925"><td class="memTemplItemLeft" align="right" valign="top">VO&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6cb464349a8f184ffb8eded9ae9e5925">vcvt</a> (VI vec)</td></tr>
4123<tr class="separator:a6cb464349a8f184ffb8eded9ae9e5925"><td class="memSeparator" colspan="2">&#160;</td></tr>
4124<tr class="memitem:a146b84422a0eaf6c66ba8156425b5bdf"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4125<tr class="memitem:a146b84422a0eaf6c66ba8156425b5bdf"><td class="memTemplItemLeft" align="right" valign="top">float32x4x4_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a146b84422a0eaf6c66ba8156425b5bdf">vcvt&lt; float32x4x4_t &gt;</a> (uint8x16_t vec)</td></tr>
4126<tr class="separator:a146b84422a0eaf6c66ba8156425b5bdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
4127<tr class="memitem:ab6bc00d6c4503a0bc303dd363e021476"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4128<tr class="memitem:ab6bc00d6c4503a0bc303dd363e021476"><td class="memTemplItemLeft" align="right" valign="top">uint8x16_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab6bc00d6c4503a0bc303dd363e021476">vcvt&lt; uint8x16_t &gt;</a> (float32x4x4_t vec)</td></tr>
4129<tr class="separator:ab6bc00d6c4503a0bc303dd363e021476"><td class="memSeparator" colspan="2">&#160;</td></tr>
4130<tr class="memitem:a91d2c1f68de68401d1aa465e27f78ab0"><td class="memItemLeft" align="right" valign="top">float32x4x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a91d2c1f68de68401d1aa465e27f78ab0">vexp</a> (float32x4x4_t vec)</td></tr>
4131<tr class="separator:a91d2c1f68de68401d1aa465e27f78ab0"><td class="memSeparator" colspan="2">&#160;</td></tr>
4132<tr class="memitem:adcb77ffd576a7addf3be8508e50451d2"><td class="memItemLeft" align="right" valign="top">float32x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adcb77ffd576a7addf3be8508e50451d2">vexp</a> (const float32x4_t &amp;vec)</td></tr>
4133<tr class="separator:adcb77ffd576a7addf3be8508e50451d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
4134<tr class="memitem:aeabe5dd1c5751f380322a841d7ad8d7a"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
4135<tr class="memitem:aeabe5dd1c5751f380322a841d7ad8d7a"><td class="memTemplItemLeft" align="right" valign="top">float32x4x4_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aeabe5dd1c5751f380322a841d7ad8d7a">vdup_n&lt; float32x4x4_t &gt;</a> (float val)</td></tr>
4136<tr class="separator:aeabe5dd1c5751f380322a841d7ad8d7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
4137<tr class="memitem:abc9f4323a93d34d19bab7cc371649441"><td class="memItemLeft" align="right" valign="top">float32x4x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abc9f4323a93d34d19bab7cc371649441">vmul_n</a> (float32x4x4_t vec, float val)</td></tr>
4138<tr class="separator:abc9f4323a93d34d19bab7cc371649441"><td class="memSeparator" colspan="2">&#160;</td></tr>
4139<tr class="memitem:a4cc9ed76f48e918e73249c894380f91b"><td class="memItemLeft" align="right" valign="top">float32x4x4_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4cc9ed76f48e918e73249c894380f91b">vadd</a> (float32x4x4_t a, float32x4x4_t b)</td></tr>
4140<tr class="separator:a4cc9ed76f48e918e73249c894380f91b"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004141<tr class="memitem:a5196b5248c3c12035174abb6c85ba093"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5196b5248c3c12035174abb6c85ba093">extract_bounding_boxes_from_tensor</a> (const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *bboxes, std::vector&lt; <a class="el" href="namespacearm__compute.xhtml#a4ec997c1b05a1fd406828bc7e1f41dad">NormalizedBBox</a> &gt; &amp;bboxes_vector)</td></tr>
4142<tr class="separator:a5196b5248c3c12035174abb6c85ba093"><td class="memSeparator" colspan="2">&#160;</td></tr>
4143<tr class="memitem:a0ed6c4009303a6e319eb9e0519124b00"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0ed6c4009303a6e319eb9e0519124b00">extract_scores_from_tensor</a> (const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *scores, std::vector&lt; float &gt; &amp;scores_vector)</td></tr>
4144<tr class="separator:a0ed6c4009303a6e319eb9e0519124b00"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004145<tr class="memitem:af3985189d478b45014e7dead9d002e2a"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af3985189d478b45014e7dead9d002e2a">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7">GradientDimension</a> &amp;dim)</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004146<tr class="memdesc:af3985189d478b45014e7dead9d002e2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the GradientDimension type. <a href="#af3985189d478b45014e7dead9d002e2a">More...</a><br /></td></tr>
4147<tr class="separator:af3985189d478b45014e7dead9d002e2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
4148<tr class="memitem:ab75d8ff29ba9b398d5740b3efd156e71"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab75d8ff29ba9b398d5740b3efd156e71">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7">arm_compute::GradientDimension</a> &amp;type)</td></tr>
4149<tr class="memdesc:ab75d8ff29ba9b398d5740b3efd156e71"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the GradientDimension type. <a href="#ab75d8ff29ba9b398d5740b3efd156e71">More...</a><br /></td></tr>
4150<tr class="separator:ab75d8ff29ba9b398d5740b3efd156e71"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004151<tr class="memitem:a1379e5f8a8b4640d7a52d901f0539ccd"><td class="memItemLeft" align="right" valign="top">inline ::std::istream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1379e5f8a8b4640d7a52d901f0539ccd">operator&gt;&gt;</a> (::std::istream &amp;is, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> &amp;mode)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004152<tr class="memdesc:a1379e5f8a8b4640d7a52d901f0539ccd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted input of the BorderMode type. <a href="#a1379e5f8a8b4640d7a52d901f0539ccd">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004153<tr class="separator:a1379e5f8a8b4640d7a52d901f0539ccd"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004154<tr class="memitem:ad023d4ca1d3facf3975c941fd728a6f4"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
4155<tr class="memitem:ad023d4ca1d3facf3975c941fd728a6f4"><td class="memTemplItemLeft" align="right" valign="top">std::string&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad023d4ca1d3facf3975c941fd728a6f4">to_string_if_not_null</a> (T *arg)</td></tr>
4156<tr class="memdesc:ad023d4ca1d3facf3975c941fd728a6f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output if arg is not null. <a href="#ad023d4ca1d3facf3975c941fd728a6f4">More...</a><br /></td></tr>
4157<tr class="separator:ad023d4ca1d3facf3975c941fd728a6f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01004158<tr class="memitem:a18d43401e8f84ed020429b41ec4e99f5"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004159<tr class="memitem:a18d43401e8f84ed020429b41ec4e99f5"><td class="memTemplItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a18d43401e8f84ed020429b41ec4e99f5">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;dimensions)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004160<tr class="memdesc:a18d43401e8f84ed020429b41ec4e99f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_dimensions.xhtml" title="Dimensions with dimensionality.">Dimensions</a> type. <a href="#a18d43401e8f84ed020429b41ec4e99f5">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01004161<tr class="separator:a18d43401e8f84ed020429b41ec4e99f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004162<tr class="memitem:ae8c2a3451bcf739a75aa7438e7a78d45"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae8c2a3451bcf739a75aa7438e7a78d45">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a> &amp;function)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004163<tr class="memdesc:ae8c2a3451bcf739a75aa7438e7a78d45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the NonLinearFilterFunction type. <a href="#ae8c2a3451bcf739a75aa7438e7a78d45">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004164<tr class="separator:ae8c2a3451bcf739a75aa7438e7a78d45"><td class="memSeparator" colspan="2">&#160;</td></tr>
4165<tr class="memitem:aabe16be22edb41656e66ed9eae3b69e6"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aabe16be22edb41656e66ed9eae3b69e6">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a> &amp;function)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004166<tr class="memdesc:aabe16be22edb41656e66ed9eae3b69e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the NonLinearFilterFunction type. <a href="#aabe16be22edb41656e66ed9eae3b69e6">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004167<tr class="separator:aabe16be22edb41656e66ed9eae3b69e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004168<tr class="memitem:acec416ec5af175a7aad47a518fefb770"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acec416ec5af175a7aad47a518fefb770">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a> &amp;pattern)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004169<tr class="memdesc:acec416ec5af175a7aad47a518fefb770"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the MatrixPattern type. <a href="#acec416ec5af175a7aad47a518fefb770">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004170<tr class="separator:acec416ec5af175a7aad47a518fefb770"><td class="memSeparator" colspan="2">&#160;</td></tr>
4171<tr class="memitem:a27f0ebddef1b83e0ac31c7a7a23a8d36"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a27f0ebddef1b83e0ac31c7a7a23a8d36">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a> &amp;pattern)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004172<tr class="memdesc:a27f0ebddef1b83e0ac31c7a7a23a8d36"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the MatrixPattern type. <a href="#a27f0ebddef1b83e0ac31c7a7a23a8d36">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004173<tr class="separator:a27f0ebddef1b83e0ac31c7a7a23a8d36"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004174<tr class="memitem:a295edc9f8caf95838db2c5e251153514"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a295edc9f8caf95838db2c5e251153514">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a> &amp;rounding_policy)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004175<tr class="memdesc:a295edc9f8caf95838db2c5e251153514"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the RoundingPolicy type. <a href="#a295edc9f8caf95838db2c5e251153514">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01004176<tr class="separator:a295edc9f8caf95838db2c5e251153514"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004177<tr class="memitem:a5972c7131d378f567af9c2961f088a0b"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5972c7131d378f567af9c2961f088a0b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_weights_info.xhtml">WeightsInfo</a> &amp;weights_info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004178<tr class="memdesc:a5972c7131d378f567af9c2961f088a0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_weights_info.xhtml" title="Convolution Layer Weights Information class.">WeightsInfo</a> type. <a href="#a5972c7131d378f567af9c2961f088a0b">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004179<tr class="separator:a5972c7131d378f567af9c2961f088a0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004180<tr class="memitem:a352b805b77fde4f32f44af271580677b"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a352b805b77fde4f32f44af271580677b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_r_o_i_pooling_layer_info.xhtml">ROIPoolingLayerInfo</a> &amp;pool_info)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004181<tr class="memdesc:a352b805b77fde4f32f44af271580677b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the ROIPoolingInfo type. <a href="#a352b805b77fde4f32f44af271580677b">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004182<tr class="separator:a352b805b77fde4f32f44af271580677b"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004183<tr class="memitem:ac7e5dca61375f7583860ab07d951a323"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ac7e5dca61375f7583860ab07d951a323">to_string</a> (const <a class="el" href="classarm__compute_1_1_r_o_i_pooling_layer_info.xhtml">ROIPoolingLayerInfo</a> &amp;pool_info)</td></tr>
4184<tr class="memdesc:ac7e5dca61375f7583860ab07d951a323"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the ROIPoolingInfo type. <a href="#ac7e5dca61375f7583860ab07d951a323">More...</a><br /></td></tr>
4185<tr class="separator:ac7e5dca61375f7583860ab07d951a323"><td class="memSeparator" colspan="2">&#160;</td></tr>
4186<tr class="memitem:af81bb4f87d418311c7ca43a28c74bf03"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af81bb4f87d418311c7ca43a28c74bf03">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml">BoundingBoxTransformInfo</a> &amp;bbox_info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004187<tr class="memdesc:af81bb4f87d418311c7ca43a28c74bf03"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml" title="Bounding Box Transform information class.">BoundingBoxTransformInfo</a> type. <a href="#af81bb4f87d418311c7ca43a28c74bf03">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004188<tr class="separator:af81bb4f87d418311c7ca43a28c74bf03"><td class="memSeparator" colspan="2">&#160;</td></tr>
4189<tr class="memitem:aadd27b86f0ff4fbb03ed673a549e91a8"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aadd27b86f0ff4fbb03ed673a549e91a8">to_string</a> (const <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml">BoundingBoxTransformInfo</a> &amp;bbox_info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004190<tr class="memdesc:aadd27b86f0ff4fbb03ed673a549e91a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml" title="Bounding Box Transform information class.">BoundingBoxTransformInfo</a> type. <a href="#aadd27b86f0ff4fbb03ed673a549e91a8">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004191<tr class="separator:aadd27b86f0ff4fbb03ed673a549e91a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
4192<tr class="memitem:a59ea8b6694897a281eb3105f5c99f28f"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a59ea8b6694897a281eb3105f5c99f28f">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml">ComputeAnchorsInfo</a> &amp;anchors_info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004193<tr class="memdesc:a59ea8b6694897a281eb3105f5c99f28f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml" title="ComputeAnchors information class.">ComputeAnchorsInfo</a> type. <a href="#a59ea8b6694897a281eb3105f5c99f28f">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004194<tr class="separator:a59ea8b6694897a281eb3105f5c99f28f"><td class="memSeparator" colspan="2">&#160;</td></tr>
4195<tr class="memitem:a24bc4de5c636b56f9b59533fead920c2"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a24bc4de5c636b56f9b59533fead920c2">to_string</a> (const <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml">ComputeAnchorsInfo</a> &amp;anchors_info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004196<tr class="memdesc:a24bc4de5c636b56f9b59533fead920c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml" title="ComputeAnchors information class.">ComputeAnchorsInfo</a> type. <a href="#a24bc4de5c636b56f9b59533fead920c2">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004197<tr class="separator:a24bc4de5c636b56f9b59533fead920c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
4198<tr class="memitem:a1a54a883f8acc0664accdae9bed93494"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1a54a883f8acc0664accdae9bed93494">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml">GenerateProposalsInfo</a> &amp;proposals_info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004199<tr class="memdesc:a1a54a883f8acc0664accdae9bed93494"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml" title="Generate Proposals Information class.">GenerateProposalsInfo</a> type. <a href="#a1a54a883f8acc0664accdae9bed93494">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004200<tr class="separator:a1a54a883f8acc0664accdae9bed93494"><td class="memSeparator" colspan="2">&#160;</td></tr>
4201<tr class="memitem:aa597016c0aaa2990ed31b8aaa6f2ccc3"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa597016c0aaa2990ed31b8aaa6f2ccc3">to_string</a> (const <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml">GenerateProposalsInfo</a> &amp;proposals_info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004202<tr class="memdesc:aa597016c0aaa2990ed31b8aaa6f2ccc3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml" title="Generate Proposals Information class.">GenerateProposalsInfo</a> type. <a href="#aa597016c0aaa2990ed31b8aaa6f2ccc3">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004203<tr class="separator:aa597016c0aaa2990ed31b8aaa6f2ccc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
4204<tr class="memitem:a32a5556a927543fe57c0d7b82c20e9b4"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a32a5556a927543fe57c0d7b82c20e9b4">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> &amp;quantization_info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004205<tr class="memdesc:a32a5556a927543fe57c0d7b82c20e9b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_quantization_info.xhtml" title="Quantization settings (used for QASYMM8 data type)">QuantizationInfo</a> type. <a href="#a32a5556a927543fe57c0d7b82c20e9b4">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004206<tr class="separator:a32a5556a927543fe57c0d7b82c20e9b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
4207<tr class="memitem:ad9fd48b3c01116b217a684aaeaf8b24f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad9fd48b3c01116b217a684aaeaf8b24f">to_string</a> (const <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> &amp;quantization_info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004208<tr class="memdesc:ad9fd48b3c01116b217a684aaeaf8b24f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_quantization_info.xhtml" title="Quantization settings (used for QASYMM8 data type)">QuantizationInfo</a> type. <a href="#ad9fd48b3c01116b217a684aaeaf8b24f">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004209<tr class="separator:ad9fd48b3c01116b217a684aaeaf8b24f"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004210<tr class="memitem:a9d79efe2673aeb3f9a9160b6a78de50c"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9d79efe2673aeb3f9a9160b6a78de50c">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9ea">ActivationLayerInfo::ActivationFunction</a> &amp;act_function)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004211<tr class="memdesc:a9d79efe2673aeb3f9a9160b6a78de50c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the activation function type. <a href="#a9d79efe2673aeb3f9a9160b6a78de50c">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004212<tr class="separator:a9d79efe2673aeb3f9a9160b6a78de50c"><td class="memSeparator" colspan="2">&#160;</td></tr>
4213<tr class="memitem:a72626d2cca3922127c41526e37e9e623"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a72626d2cca3922127c41526e37e9e623">to_string</a> (const <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml">arm_compute::ActivationLayerInfo</a> &amp;info)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004214<tr class="memdesc:a72626d2cca3922127c41526e37e9e623"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the activation function info type. <a href="#a72626d2cca3922127c41526e37e9e623">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004215<tr class="separator:a72626d2cca3922127c41526e37e9e623"><td class="memSeparator" colspan="2">&#160;</td></tr>
4216<tr class="memitem:a8a18c453150ab547c1add44b3ed3bc56"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8a18c453150ab547c1add44b3ed3bc56">to_string</a> (const <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9ea">arm_compute::ActivationLayerInfo::ActivationFunction</a> &amp;function)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004217<tr class="memdesc:a8a18c453150ab547c1add44b3ed3bc56"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the activation function type. <a href="#a8a18c453150ab547c1add44b3ed3bc56">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004218<tr class="separator:a8a18c453150ab547c1add44b3ed3bc56"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004219<tr class="memitem:a2ab7370aab6e5698990c50c8871fa6fb"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2ab7370aab6e5698990c50c8871fa6fb">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">NormType</a> &amp;norm_type)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004220<tr class="memdesc:a2ab7370aab6e5698990c50c8871fa6fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the NormType type. <a href="#a2ab7370aab6e5698990c50c8871fa6fb">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004221<tr class="separator:a2ab7370aab6e5698990c50c8871fa6fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
4222<tr class="memitem:a45dd771bdecbafb975fd267c2ae320a7"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a45dd771bdecbafb975fd267c2ae320a7">to_string</a> (const <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">arm_compute::NormalizationLayerInfo</a> &amp;info)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004223<tr class="memdesc:a45dd771bdecbafb975fd267c2ae320a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">NormalizationLayerInfo</a>. <a href="#a45dd771bdecbafb975fd267c2ae320a7">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004224<tr class="separator:a45dd771bdecbafb975fd267c2ae320a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004225<tr class="memitem:a6e422c610c91f611590173cd595c94c5"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6e422c610c91f611590173cd595c94c5">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">NormalizationLayerInfo</a> &amp;info)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004226<tr class="memdesc:a6e422c610c91f611590173cd595c94c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">NormalizationLayerInfo</a>. <a href="#a6e422c610c91f611590173cd595c94c5">More...</a><br /></td></tr>
Kaizenbf8b01d2017-10-12 14:26:51 +01004227<tr class="separator:a6e422c610c91f611590173cd595c94c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004228<tr class="memitem:a336cf1e870f467e44c184587a13feeec"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a336cf1e870f467e44c184587a13feeec">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">PoolingType</a> &amp;pool_type)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004229<tr class="memdesc:a336cf1e870f467e44c184587a13feeec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the PoolingType type. <a href="#a336cf1e870f467e44c184587a13feeec">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004230<tr class="separator:a336cf1e870f467e44c184587a13feeec"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004231<tr class="memitem:ae72a61a2ca5c962ab1d37065e5598060"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae72a61a2ca5c962ab1d37065e5598060">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_pooling_layer_info.xhtml">PoolingLayerInfo</a> &amp;info)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004232<tr class="memdesc:ae72a61a2ca5c962ab1d37065e5598060"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of <a class="el" href="classarm__compute_1_1_pooling_layer_info.xhtml">PoolingLayerInfo</a>. <a href="#ae72a61a2ca5c962ab1d37065e5598060">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004233<tr class="separator:ae72a61a2ca5c962ab1d37065e5598060"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004234<tr class="memitem:a25dac68b6321b9e53027e79222a0eb7f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a25dac68b6321b9e53027e79222a0eb7f">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a> &amp;rounding_policy)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004235<tr class="memdesc:a25dac68b6321b9e53027e79222a0eb7f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a>. <a href="#a25dac68b6321b9e53027e79222a0eb7f">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004236<tr class="separator:a25dac68b6321b9e53027e79222a0eb7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004237<tr class="memitem:a1698cb24508a2bc45962bc887f18a8d0"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1698cb24508a2bc45962bc887f18a8d0">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> &amp;data_layout)</td></tr>
4238<tr class="memdesc:a1698cb24508a2bc45962bc887f18a8d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">[Print DataLayout type] <a href="#a1698cb24508a2bc45962bc887f18a8d0">More...</a><br /></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004239<tr class="separator:a1698cb24508a2bc45962bc887f18a8d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
4240<tr class="memitem:ae1240e4698e8a901179e519102b5e033"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae1240e4698e8a901179e519102b5e033">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a> &amp;data_layout)</td></tr>
4241<tr class="memdesc:ae1240e4698e8a901179e519102b5e033"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the DataLayout type. <a href="#ae1240e4698e8a901179e519102b5e033">More...</a><br /></td></tr>
4242<tr class="separator:ae1240e4698e8a901179e519102b5e033"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004243<tr class="memitem:adec19acb64bfca26fa53ef76f03b79ef"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adec19acb64bfca26fa53ef76f03b79ef">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02">DataLayoutDimension</a> &amp;data_layout_dim)</td></tr>
4244<tr class="memdesc:adec19acb64bfca26fa53ef76f03b79ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">[Print DataLayout type] <a href="#adec19acb64bfca26fa53ef76f03b79ef">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004245<tr class="separator:adec19acb64bfca26fa53ef76f03b79ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004246<tr class="memitem:a685af15532d70b8682bcc52f06f034f9"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a685af15532d70b8682bcc52f06f034f9">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;data_type)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004247<tr class="memdesc:a685af15532d70b8682bcc52f06f034f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the DataType type. <a href="#a685af15532d70b8682bcc52f06f034f9">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01004248<tr class="separator:a685af15532d70b8682bcc52f06f034f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004249<tr class="memitem:a96b47511b549b48d2ead05b5c757ccc9"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a96b47511b549b48d2ead05b5c757ccc9">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a> &amp;data_type)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004250<tr class="memdesc:a96b47511b549b48d2ead05b5c757ccc9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the DataType type. <a href="#a96b47511b549b48d2ead05b5c757ccc9">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004251<tr class="separator:a96b47511b549b48d2ead05b5c757ccc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004252<tr class="memitem:a3b22e54b0ac0204c3b89aebcd695fa03"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3b22e54b0ac0204c3b89aebcd695fa03">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;format)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004253<tr class="memdesc:a3b22e54b0ac0204c3b89aebcd695fa03"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Format type. <a href="#a3b22e54b0ac0204c3b89aebcd695fa03">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01004254<tr class="separator:a3b22e54b0ac0204c3b89aebcd695fa03"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004255<tr class="memitem:ab0e6381843dc9901bb59285ec846dc5d"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab0e6381843dc9901bb59285ec846dc5d">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;format)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004256<tr class="memdesc:ab0e6381843dc9901bb59285ec846dc5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Format type. <a href="#ab0e6381843dc9901bb59285ec846dc5d">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004257<tr class="separator:ab0e6381843dc9901bb59285ec846dc5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004258<tr class="memitem:aa66be15c012986ebd4c1934b97e08a36"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa66be15c012986ebd4c1934b97e08a36">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> &amp;channel)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004259<tr class="memdesc:aa66be15c012986ebd4c1934b97e08a36"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Channel type. <a href="#aa66be15c012986ebd4c1934b97e08a36">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01004260<tr class="separator:aa66be15c012986ebd4c1934b97e08a36"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00004261<tr class="memitem:a813e71cd70c2bbcbf0743fa83a3608b9"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a813e71cd70c2bbcbf0743fa83a3608b9">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> &amp;channel)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004262<tr class="memdesc:a813e71cd70c2bbcbf0743fa83a3608b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Channel type. <a href="#a813e71cd70c2bbcbf0743fa83a3608b9">More...</a><br /></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00004263<tr class="separator:a813e71cd70c2bbcbf0743fa83a3608b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004264<tr class="memitem:a7929032d41d5f23cd1778a70508d0219"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7929032d41d5f23cd1778a70508d0219">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> &amp;mode)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004265<tr class="memdesc:a7929032d41d5f23cd1778a70508d0219"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the BorderMode type. <a href="#a7929032d41d5f23cd1778a70508d0219">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004266<tr class="separator:a7929032d41d5f23cd1778a70508d0219"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004267<tr class="memitem:af32c4c5cdd0efde09774eb803bc8a0bd"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af32c4c5cdd0efde09774eb803bc8a0bd">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> &amp;border)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004268<tr class="memdesc:af32c4c5cdd0efde09774eb803bc8a0bd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_border_size.xhtml" title="Container for 2D border size.">BorderSize</a> type. <a href="#af32c4c5cdd0efde09774eb803bc8a0bd">More...</a><br /></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01004269<tr class="separator:af32c4c5cdd0efde09774eb803bc8a0bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004270<tr class="memitem:af15a06b73e1fde15f0809ce07bf1ab7d"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af15a06b73e1fde15f0809ce07bf1ab7d">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ac1a1b012674e0f1de071a611391828ad">PaddingList</a> &amp;padding)</td></tr>
4271<tr class="memdesc:af15a06b73e1fde15f0809ce07bf1ab7d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the PaddingList type. <a href="#af15a06b73e1fde15f0809ce07bf1ab7d">More...</a><br /></td></tr>
4272<tr class="separator:af15a06b73e1fde15f0809ce07bf1ab7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004273<tr class="memitem:a9caac285297030f50a972095e767aff9"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9caac285297030f50a972095e767aff9">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#afe9e10e5fdfd1e2665ac17c75c0cacd8">Multiples</a> &amp;multiples)</td></tr>
4274<tr class="memdesc:a9caac285297030f50a972095e767aff9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Multiples type. <a href="#a9caac285297030f50a972095e767aff9">More...</a><br /></td></tr>
4275<tr class="separator:a9caac285297030f50a972095e767aff9"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004276<tr class="memitem:a509047aefc691398f1bb60b1f967a98b"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a509047aefc691398f1bb60b1f967a98b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> &amp;policy)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004277<tr class="memdesc:a509047aefc691398f1bb60b1f967a98b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the InterpolationPolicy type. <a href="#a509047aefc691398f1bb60b1f967a98b">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004278<tr class="separator:a509047aefc691398f1bb60b1f967a98b"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004279<tr class="memitem:aab8eb6dc1ba89bb8a69f1c3845988a2b"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aab8eb6dc1ba89bb8a69f1c3845988a2b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7b">SamplingPolicy</a> &amp;policy)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004280<tr class="memdesc:aab8eb6dc1ba89bb8a69f1c3845988a2b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the SamplingPolicy type. <a href="#aab8eb6dc1ba89bb8a69f1c3845988a2b">More...</a><br /></td></tr>
4281<tr class="separator:aab8eb6dc1ba89bb8a69f1c3845988a2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004282<tr class="memitem:ab398837465010958bfccff032ad1ee51"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab398837465010958bfccff032ad1ee51">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_tensor_info.xhtml">TensorInfo</a> &amp;info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004283<tr class="memdesc:ab398837465010958bfccff032ad1ee51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_tensor_info.xhtml" title="Store the tensor&#39;s metadata.">TensorInfo</a> type. <a href="#ab398837465010958bfccff032ad1ee51">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004284<tr class="separator:ab398837465010958bfccff032ad1ee51"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004285<tr class="memitem:a48fd5e28bdb4975c141841f0b96f8707"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a48fd5e28bdb4975c141841f0b96f8707">to_string</a> (const <a class="el" href="classarm__compute_1_1_tensor_info.xhtml">TensorInfo</a> &amp;info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004286<tr class="memdesc:a48fd5e28bdb4975c141841f0b96f8707"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_tensor_info.xhtml" title="Store the tensor&#39;s metadata.">TensorInfo</a> type. <a href="#a48fd5e28bdb4975c141841f0b96f8707">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004287<tr class="separator:a48fd5e28bdb4975c141841f0b96f8707"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004288<tr class="memitem:aa32488ee1dd78e0464ed23e8cc2b6e49"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
4289<tr class="memitem:aa32488ee1dd78e0464ed23e8cc2b6e49"><td class="memTemplItemLeft" align="right" valign="top">std::string&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aa32488ee1dd78e0464ed23e8cc2b6e49">to_string</a> (const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;dimensions)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004290<tr class="memdesc:aa32488ee1dd78e0464ed23e8cc2b6e49"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_dimensions.xhtml" title="Dimensions with dimensionality.">Dimensions</a> type. <a href="#aa32488ee1dd78e0464ed23e8cc2b6e49">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004291<tr class="separator:aa32488ee1dd78e0464ed23e8cc2b6e49"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizenbf8b01d2017-10-12 14:26:51 +01004292<tr class="memitem:a1c4486f45128be7156e38e6dea345a16"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1c4486f45128be7156e38e6dea345a16">to_string</a> (const <a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a> &amp;stride)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004293<tr class="memdesc:a1c4486f45128be7156e38e6dea345a16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_strides.xhtml" title="Strides of an item in bytes.">Strides</a> type. <a href="#a1c4486f45128be7156e38e6dea345a16">More...</a><br /></td></tr>
Kaizenbf8b01d2017-10-12 14:26:51 +01004294<tr class="separator:a1c4486f45128be7156e38e6dea345a16"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004295<tr class="memitem:a9d9b56d1b106b79fc5c5411372222d0f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9d9b56d1b106b79fc5c5411372222d0f">to_string</a> (const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004296<tr class="memdesc:a9d9b56d1b106b79fc5c5411372222d0f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml" title="Shape of a tensor.">TensorShape</a> type. <a href="#a9d9b56d1b106b79fc5c5411372222d0f">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004297<tr class="separator:a9d9b56d1b106b79fc5c5411372222d0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizenbf8b01d2017-10-12 14:26:51 +01004298<tr class="memitem:a805a74997e303d29108845956a674387"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a805a74997e303d29108845956a674387">to_string</a> (const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;coord)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004299<tr class="memdesc:a805a74997e303d29108845956a674387"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a> type. <a href="#a805a74997e303d29108845956a674387">More...</a><br /></td></tr>
Kaizenbf8b01d2017-10-12 14:26:51 +01004300<tr class="separator:a805a74997e303d29108845956a674387"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004301<tr class="memitem:a0fc75dce8064a37effa5e71344b6a5d2"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0fc75dce8064a37effa5e71344b6a5d2">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_g_e_m_m_reshape_info.xhtml">GEMMReshapeInfo</a> &amp;info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004302<tr class="memdesc:a0fc75dce8064a37effa5e71344b6a5d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_g_e_m_m_reshape_info.xhtml" title="GEMM reshape information class.">GEMMReshapeInfo</a> type. <a href="#a0fc75dce8064a37effa5e71344b6a5d2">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004303<tr class="separator:a0fc75dce8064a37effa5e71344b6a5d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004304<tr class="memitem:a5fdae5de2d2cf2e7957f0299d17ce5ec"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5fdae5de2d2cf2e7957f0299d17ce5ec">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_g_e_m_m_info.xhtml">GEMMInfo</a> &amp;info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004305<tr class="memdesc:a5fdae5de2d2cf2e7957f0299d17ce5ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_g_e_m_m_info.xhtml" title="GEMM information class.">GEMMInfo</a> type. <a href="#a5fdae5de2d2cf2e7957f0299d17ce5ec">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004306<tr class="separator:a5fdae5de2d2cf2e7957f0299d17ce5ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004307<tr class="memitem:a6ed8dc0f587448d14a1a33cbd5fc4f70"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6ed8dc0f587448d14a1a33cbd5fc4f70">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a> &amp;dim)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004308<tr class="memdesc:a6ed8dc0f587448d14a1a33cbd5fc4f70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_window_1_1_dimension.xhtml" title="Describe one of the image&#39;s dimensions with a start, end and step.">Window::Dimension</a> type. <a href="#a6ed8dc0f587448d14a1a33cbd5fc4f70">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004309<tr class="separator:a6ed8dc0f587448d14a1a33cbd5fc4f70"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004310<tr class="memitem:afc6e49991e36423027a467eab1e405b2"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#afc6e49991e36423027a467eab1e405b2">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004311<tr class="memdesc:afc6e49991e36423027a467eab1e405b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> type. <a href="#afc6e49991e36423027a467eab1e405b2">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004312<tr class="separator:afc6e49991e36423027a467eab1e405b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
4313<tr class="memitem:a26a595cd5522bae4fa1c4f2fb9b8f4d5"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a26a595cd5522bae4fa1c4f2fb9b8f4d5">to_string</a> (const <a class="el" href="classarm__compute_1_1_weights_info.xhtml">WeightsInfo</a> &amp;info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004314<tr class="memdesc:a26a595cd5522bae4fa1c4f2fb9b8f4d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_weights_info.xhtml" title="Convolution Layer Weights Information class.">WeightsInfo</a> type. <a href="#a26a595cd5522bae4fa1c4f2fb9b8f4d5">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004315<tr class="separator:a26a595cd5522bae4fa1c4f2fb9b8f4d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
4316<tr class="memitem:adac3c1908846c6361e664a353ad1c3cf"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adac3c1908846c6361e664a353ad1c3cf">to_string</a> (const <a class="el" href="classarm__compute_1_1_g_e_m_m_reshape_info.xhtml">GEMMReshapeInfo</a> &amp;info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004317<tr class="memdesc:adac3c1908846c6361e664a353ad1c3cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_g_e_m_m_reshape_info.xhtml" title="GEMM reshape information class.">GEMMReshapeInfo</a> type. <a href="#adac3c1908846c6361e664a353ad1c3cf">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004318<tr class="separator:adac3c1908846c6361e664a353ad1c3cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
4319<tr class="memitem:a8ac2dfdfad6db71a5cf2ecee6b70f722"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8ac2dfdfad6db71a5cf2ecee6b70f722">to_string</a> (const <a class="el" href="classarm__compute_1_1_g_e_m_m_info.xhtml">GEMMInfo</a> &amp;info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004320<tr class="memdesc:a8ac2dfdfad6db71a5cf2ecee6b70f722"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_g_e_m_m_info.xhtml" title="GEMM information class.">GEMMInfo</a> type. <a href="#a8ac2dfdfad6db71a5cf2ecee6b70f722">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004321<tr class="separator:a8ac2dfdfad6db71a5cf2ecee6b70f722"><td class="memSeparator" colspan="2">&#160;</td></tr>
4322<tr class="memitem:ab6ea50ec0a98c2180e6530cfcb5eb366"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab6ea50ec0a98c2180e6530cfcb5eb366">to_string</a> (const <a class="el" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a> &amp;dim)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004323<tr class="memdesc:ab6ea50ec0a98c2180e6530cfcb5eb366"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_window_1_1_dimension.xhtml" title="Describe one of the image&#39;s dimensions with a start, end and step.">Window::Dimension</a> type. <a href="#ab6ea50ec0a98c2180e6530cfcb5eb366">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004324<tr class="separator:ab6ea50ec0a98c2180e6530cfcb5eb366"><td class="memSeparator" colspan="2">&#160;</td></tr>
4325<tr class="memitem:a99aba2774f142d36c6a286cbfe027772"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a99aba2774f142d36c6a286cbfe027772">to_string</a> (const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;win)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004326<tr class="memdesc:a99aba2774f142d36c6a286cbfe027772"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> type. <a href="#a99aba2774f142d36c6a286cbfe027772">More...</a><br /></td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004327<tr class="separator:a99aba2774f142d36c6a286cbfe027772"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004328<tr class="memitem:a17881750c427aedd95deba46a4366ace"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a17881750c427aedd95deba46a4366ace">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_rectangle.xhtml">Rectangle</a> &amp;rect)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004329<tr class="memdesc:a17881750c427aedd95deba46a4366ace"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_rectangle.xhtml" title="Rectangle type.">Rectangle</a> type. <a href="#a17881750c427aedd95deba46a4366ace">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004330<tr class="separator:a17881750c427aedd95deba46a4366ace"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004331<tr class="memitem:a8af36ae3a3613112c3a95e57f606359a"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8af36ae3a3613112c3a95e57f606359a">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> &amp;pad_stride_info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004332<tr class="memdesc:a8af36ae3a3613112c3a95e57f606359a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml" title="Padding and stride information class.">PadStrideInfo</a> type. <a href="#a8af36ae3a3613112c3a95e57f606359a">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004333<tr class="separator:a8af36ae3a3613112c3a95e57f606359a"><td class="memSeparator" colspan="2">&#160;</td></tr>
4334<tr class="memitem:a2c0e6c1c4cf10da25e7a7362ba151ba2"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2c0e6c1c4cf10da25e7a7362ba151ba2">to_string</a> (const <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> &amp;pad_stride_info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004335<tr class="memdesc:a2c0e6c1c4cf10da25e7a7362ba151ba2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml" title="Padding and stride information class.">PadStrideInfo</a> type. <a href="#a2c0e6c1c4cf10da25e7a7362ba151ba2">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004336<tr class="separator:a2c0e6c1c4cf10da25e7a7362ba151ba2"><td class="memSeparator" colspan="2">&#160;</td></tr>
4337<tr class="memitem:a0604106dd269acd58152a81ba87cc265"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a0604106dd269acd58152a81ba87cc265">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> &amp;mode)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004338<tr class="memdesc:a0604106dd269acd58152a81ba87cc265"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the BorderMode type. <a href="#a0604106dd269acd58152a81ba87cc265">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004339<tr class="separator:a0604106dd269acd58152a81ba87cc265"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizenbf8b01d2017-10-12 14:26:51 +01004340<tr class="memitem:a5c9cde9144eaeceaf086377b9bc5a5be"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5c9cde9144eaeceaf086377b9bc5a5be">to_string</a> (const <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> &amp;border)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004341<tr class="memdesc:a5c9cde9144eaeceaf086377b9bc5a5be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_border_size.xhtml" title="Container for 2D border size.">BorderSize</a> type. <a href="#a5c9cde9144eaeceaf086377b9bc5a5be">More...</a><br /></td></tr>
Kaizenbf8b01d2017-10-12 14:26:51 +01004342<tr class="separator:a5c9cde9144eaeceaf086377b9bc5a5be"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004343<tr class="memitem:a09b674dcee4a1b59f9c7c51ecaae40a6"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a09b674dcee4a1b59f9c7c51ecaae40a6">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#ac1a1b012674e0f1de071a611391828ad">PaddingList</a> &amp;padding)</td></tr>
4344<tr class="memdesc:a09b674dcee4a1b59f9c7c51ecaae40a6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the PaddingList type. <a href="#a09b674dcee4a1b59f9c7c51ecaae40a6">More...</a><br /></td></tr>
4345<tr class="separator:a09b674dcee4a1b59f9c7c51ecaae40a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004346<tr class="memitem:ad710fdad147ab4ab21e14a7c49b3516a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad710fdad147ab4ab21e14a7c49b3516a">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#afe9e10e5fdfd1e2665ac17c75c0cacd8">Multiples</a> &amp;multiples)</td></tr>
4347<tr class="memdesc:ad710fdad147ab4ab21e14a7c49b3516a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Multiples type. <a href="#ad710fdad147ab4ab21e14a7c49b3516a">More...</a><br /></td></tr>
4348<tr class="separator:ad710fdad147ab4ab21e14a7c49b3516a"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004349<tr class="memitem:a94bd78942b683c05cba85048537d3ee7"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a94bd78942b683c05cba85048537d3ee7">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> &amp;policy)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004350<tr class="memdesc:a94bd78942b683c05cba85048537d3ee7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the InterpolationPolicy type. <a href="#a94bd78942b683c05cba85048537d3ee7">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004351<tr class="separator:a94bd78942b683c05cba85048537d3ee7"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004352<tr class="memitem:a5b8e815072ae54278cb1c91e254be4d3"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5b8e815072ae54278cb1c91e254be4d3">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7b">SamplingPolicy</a> &amp;policy)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004353<tr class="memdesc:a5b8e815072ae54278cb1c91e254be4d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the SamplingPolicy type. <a href="#a5b8e815072ae54278cb1c91e254be4d3">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004354<tr class="separator:a5b8e815072ae54278cb1c91e254be4d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004355<tr class="memitem:a4287c6842a60e5f6bf309e55f8813527"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4287c6842a60e5f6bf309e55f8813527">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6f">ConvertPolicy</a> &amp;policy)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004356<tr class="memdesc:a4287c6842a60e5f6bf309e55f8813527"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the ConvertPolicy type. <a href="#a4287c6842a60e5f6bf309e55f8813527">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004357<tr class="separator:a4287c6842a60e5f6bf309e55f8813527"><td class="memSeparator" colspan="2">&#160;</td></tr>
4358<tr class="memitem:adcc7e107e7dbd2ffac02189089c33e4f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#adcc7e107e7dbd2ffac02189089c33e4f">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6f">ConvertPolicy</a> &amp;policy)</td></tr>
4359<tr class="separator:adcc7e107e7dbd2ffac02189089c33e4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004360<tr class="memitem:a7b94aeca99a5d6b1a5723014a01faac0"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a7b94aeca99a5d6b1a5723014a01faac0">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8ae">ArithmeticOperation</a> &amp;op)</td></tr>
4361<tr class="memdesc:a7b94aeca99a5d6b1a5723014a01faac0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the ArithmeticOperation type. <a href="#a7b94aeca99a5d6b1a5723014a01faac0">More...</a><br /></td></tr>
4362<tr class="separator:a7b94aeca99a5d6b1a5723014a01faac0"><td class="memSeparator" colspan="2">&#160;</td></tr>
4363<tr class="memitem:aca516517d47534e06d4c57e7bc706b2a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aca516517d47534e06d4c57e7bc706b2a">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8ae">ArithmeticOperation</a> &amp;op)</td></tr>
4364<tr class="memdesc:aca516517d47534e06d4c57e7bc706b2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Arithmetic Operation. <a href="#aca516517d47534e06d4c57e7bc706b2a">More...</a><br /></td></tr>
4365<tr class="separator:aca516517d47534e06d4c57e7bc706b2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004366<tr class="memitem:a292505a0ec686541cfe0dcfd1d651ec5"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a292505a0ec686541cfe0dcfd1d651ec5">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45b">ReductionOperation</a> &amp;op)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004367<tr class="memdesc:a292505a0ec686541cfe0dcfd1d651ec5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Reduction Operations. <a href="#a292505a0ec686541cfe0dcfd1d651ec5">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004368<tr class="separator:a292505a0ec686541cfe0dcfd1d651ec5"><td class="memSeparator" colspan="2">&#160;</td></tr>
4369<tr class="memitem:aae534105c7ea67999ccbb34a0ed567cd"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aae534105c7ea67999ccbb34a0ed567cd">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45b">ReductionOperation</a> &amp;op)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004370<tr class="memdesc:aae534105c7ea67999ccbb34a0ed567cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Reduction Operations. <a href="#aae534105c7ea67999ccbb34a0ed567cd">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004371<tr class="separator:aae534105c7ea67999ccbb34a0ed567cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004372<tr class="memitem:aac34f5e54ad35f26328f8706b3d28b43"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aac34f5e54ad35f26328f8706b3d28b43">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58c">ComparisonOperation</a> &amp;op)</td></tr>
4373<tr class="memdesc:aac34f5e54ad35f26328f8706b3d28b43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Comparison Operations. <a href="#aac34f5e54ad35f26328f8706b3d28b43">More...</a><br /></td></tr>
4374<tr class="separator:aac34f5e54ad35f26328f8706b3d28b43"><td class="memSeparator" colspan="2">&#160;</td></tr>
4375<tr class="memitem:accfc6f2e5fb354e1fb19a7067b6efdec"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#accfc6f2e5fb354e1fb19a7067b6efdec">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936d">ElementWiseUnary</a> &amp;op)</td></tr>
4376<tr class="memdesc:accfc6f2e5fb354e1fb19a7067b6efdec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Elementwise unary Operations. <a href="#accfc6f2e5fb354e1fb19a7067b6efdec">More...</a><br /></td></tr>
4377<tr class="separator:accfc6f2e5fb354e1fb19a7067b6efdec"><td class="memSeparator" colspan="2">&#160;</td></tr>
4378<tr class="memitem:a77007283b591963074b8398202e90f5a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a77007283b591963074b8398202e90f5a">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58c">ComparisonOperation</a> &amp;op)</td></tr>
4379<tr class="memdesc:a77007283b591963074b8398202e90f5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Comparison Operations. <a href="#a77007283b591963074b8398202e90f5a">More...</a><br /></td></tr>
4380<tr class="separator:a77007283b591963074b8398202e90f5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
4381<tr class="memitem:ab76157462925ad1b13149317ded2e404"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab76157462925ad1b13149317ded2e404">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936d">ElementWiseUnary</a> &amp;op)</td></tr>
4382<tr class="memdesc:ab76157462925ad1b13149317ded2e404"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Elementwise unary Operations. <a href="#ab76157462925ad1b13149317ded2e404">More...</a><br /></td></tr>
4383<tr class="separator:ab76157462925ad1b13149317ded2e404"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004384<tr class="memitem:ad8b676c38d9b8d9d9bde7caec5720bd9"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ad8b676c38d9b8d9d9bde7caec5720bd9">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">NormType</a> &amp;type)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004385<tr class="memdesc:ad8b676c38d9b8d9d9bde7caec5720bd9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Norm Type. <a href="#ad8b676c38d9b8d9d9bde7caec5720bd9">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004386<tr class="separator:ad8b676c38d9b8d9d9bde7caec5720bd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
4387<tr class="memitem:a2872d19dd10dc3117813d291c08e0383"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2872d19dd10dc3117813d291c08e0383">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">PoolingType</a> &amp;type)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004388<tr class="memdesc:a2872d19dd10dc3117813d291c08e0383"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Pooling Type. <a href="#a2872d19dd10dc3117813d291c08e0383">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004389<tr class="separator:a2872d19dd10dc3117813d291c08e0383"><td class="memSeparator" colspan="2">&#160;</td></tr>
4390<tr class="memitem:acef515348c5f7f73c89aa4b8a47a02bc"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#acef515348c5f7f73c89aa4b8a47a02bc">to_string</a> (const <a class="el" href="classarm__compute_1_1_pooling_layer_info.xhtml">PoolingLayerInfo</a> &amp;info)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004391<tr class="memdesc:acef515348c5f7f73c89aa4b8a47a02bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Pooling Layer Info. <a href="#acef515348c5f7f73c89aa4b8a47a02bc">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004392<tr class="separator:acef515348c5f7f73c89aa4b8a47a02bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004393<tr class="memitem:ae62747a5179626328bf7e67c709d5fcf"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae62747a5179626328bf7e67c709d5fcf">to_string</a> (const <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml">PriorBoxLayerInfo</a> &amp;info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004394<tr class="memdesc:ae62747a5179626328bf7e67c709d5fcf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml" title="PriorBox layer info.">PriorBoxLayerInfo</a>. <a href="#ae62747a5179626328bf7e67c709d5fcf">More...</a><br /></td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004395<tr class="separator:ae62747a5179626328bf7e67c709d5fcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
4396<tr class="memitem:a9a2e48a508dc85b7280f955876bb4462"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a9a2e48a508dc85b7280f955876bb4462">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_key_point.xhtml">KeyPoint</a> &amp;point)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004397<tr class="memdesc:a9a2e48a508dc85b7280f955876bb4462"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_key_point.xhtml" title="Keypoint type.">KeyPoint</a> type. <a href="#a9a2e48a508dc85b7280f955876bb4462">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01004398<tr class="separator:a9a2e48a508dc85b7280f955876bb4462"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004399<tr class="memitem:abe52a76af2aa88876d54ce8a5969e509"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abe52a76af2aa88876d54ce8a5969e509">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72">PhaseType</a> &amp;phase_type)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004400<tr class="memdesc:abe52a76af2aa88876d54ce8a5969e509"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the PhaseType type. <a href="#abe52a76af2aa88876d54ce8a5969e509">More...</a><br /></td></tr>
4401<tr class="separator:abe52a76af2aa88876d54ce8a5969e509"><td class="memSeparator" colspan="2">&#160;</td></tr>
4402<tr class="memitem:ae4ead564f3c96ea5f1ec7fe035b941f3"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae4ead564f3c96ea5f1ec7fe035b941f3">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72">arm_compute::PhaseType</a> &amp;type)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004403<tr class="memdesc:ae4ead564f3c96ea5f1ec7fe035b941f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the PhaseType type. <a href="#ae4ead564f3c96ea5f1ec7fe035b941f3">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004404<tr class="separator:ae4ead564f3c96ea5f1ec7fe035b941f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004405<tr class="memitem:a530d86eec3dbd22cab6336ffdceb0d37"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a530d86eec3dbd22cab6336ffdceb0d37">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8a">MagnitudeType</a> &amp;magnitude_type)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004406<tr class="memdesc:a530d86eec3dbd22cab6336ffdceb0d37"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the MagnitudeType type. <a href="#a530d86eec3dbd22cab6336ffdceb0d37">More...</a><br /></td></tr>
4407<tr class="separator:a530d86eec3dbd22cab6336ffdceb0d37"><td class="memSeparator" colspan="2">&#160;</td></tr>
4408<tr class="memitem:a42e6f8761f01b5846f56c3b8025c8c0a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a42e6f8761f01b5846f56c3b8025c8c0a">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8a">arm_compute::MagnitudeType</a> &amp;type)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004409<tr class="memdesc:a42e6f8761f01b5846f56c3b8025c8c0a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the MagnitudeType type. <a href="#a42e6f8761f01b5846f56c3b8025c8c0a">More...</a><br /></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004410<tr class="separator:a42e6f8761f01b5846f56c3b8025c8c0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004411<tr class="memitem:a5e7a61df2b926347b42ecadf8bcc8969"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a5e7a61df2b926347b42ecadf8bcc8969">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3">HOGNormType</a> &amp;norm_type)</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00004412<tr class="memdesc:a5e7a61df2b926347b42ecadf8bcc8969"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the HOGNormType type. <a href="#a5e7a61df2b926347b42ecadf8bcc8969">More...</a><br /></td></tr>
4413<tr class="separator:a5e7a61df2b926347b42ecadf8bcc8969"><td class="memSeparator" colspan="2">&#160;</td></tr>
4414<tr class="memitem:a950ba288e8136db4bf52f7c51dea20eb"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a950ba288e8136db4bf52f7c51dea20eb">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3">HOGNormType</a> &amp;type)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004415<tr class="memdesc:a950ba288e8136db4bf52f7c51dea20eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the HOGNormType type. <a href="#a950ba288e8136db4bf52f7c51dea20eb">More...</a><br /></td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00004416<tr class="separator:a950ba288e8136db4bf52f7c51dea20eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004417<tr class="memitem:ab91d110e020f6ed987e05e82df3e350b"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ab91d110e020f6ed987e05e82df3e350b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;size)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004418<tr class="memdesc:ab91d110e020f6ed987e05e82df3e350b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_size2_d.xhtml" title="Class for specifying the size of an image or rectangle.">Size2D</a> type. <a href="#ab91d110e020f6ed987e05e82df3e350b">More...</a><br /></td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00004419<tr class="separator:ab91d110e020f6ed987e05e82df3e350b"><td class="memSeparator" colspan="2">&#160;</td></tr>
4420<tr class="memitem:aee88a2c259879eb9dc18cb5965e87c29"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aee88a2c259879eb9dc18cb5965e87c29">to_string</a> (const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;type)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004421<tr class="memdesc:aee88a2c259879eb9dc18cb5965e87c29"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_size2_d.xhtml" title="Class for specifying the size of an image or rectangle.">Size2D</a> type. <a href="#aee88a2c259879eb9dc18cb5965e87c29">More...</a><br /></td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00004422<tr class="separator:aee88a2c259879eb9dc18cb5965e87c29"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004423<tr class="memitem:a4228b490e13b79a60737929d9d9e5957"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4228b490e13b79a60737929d9d9e5957">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml">HOGInfo</a> &amp;hog_info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004424<tr class="memdesc:a4228b490e13b79a60737929d9d9e5957"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml" title="Store the HOG&#39;s metadata.">HOGInfo</a> type. <a href="#a4228b490e13b79a60737929d9d9e5957">More...</a><br /></td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00004425<tr class="separator:a4228b490e13b79a60737929d9d9e5957"><td class="memSeparator" colspan="2">&#160;</td></tr>
4426<tr class="memitem:a3cf43a216912b361eaffc3c71452a31e"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3cf43a216912b361eaffc3c71452a31e">to_string</a> (const <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml">HOGInfo</a> &amp;type)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004427<tr class="memdesc:a3cf43a216912b361eaffc3c71452a31e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml" title="Store the HOG&#39;s metadata.">HOGInfo</a> type. <a href="#a3cf43a216912b361eaffc3c71452a31e">More...</a><br /></td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00004428<tr class="separator:a3cf43a216912b361eaffc3c71452a31e"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004429<tr class="memitem:abd35c1c3fb716078b1f4a25981defac4"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#abd35c1c3fb716078b1f4a25981defac4">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517d">ConvolutionMethod</a> &amp;conv_method)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004430<tr class="memdesc:abd35c1c3fb716078b1f4a25981defac4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the ConvolutionMethod type. <a href="#abd35c1c3fb716078b1f4a25981defac4">More...</a><br /></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00004431<tr class="separator:abd35c1c3fb716078b1f4a25981defac4"><td class="memSeparator" colspan="2">&#160;</td></tr>
4432<tr class="memitem:a853d44a32a328fb4455f6200a11c4785"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a853d44a32a328fb4455f6200a11c4785">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517d">ConvolutionMethod</a> &amp;conv_method)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004433<tr class="memdesc:a853d44a32a328fb4455f6200a11c4785"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the ConvolutionMethod type. <a href="#a853d44a32a328fb4455f6200a11c4785">More...</a><br /></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00004434<tr class="separator:a853d44a32a328fb4455f6200a11c4785"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004435<tr class="memitem:a1f4d95d65a62a085e929ab0a1a77add2"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1f4d95d65a62a085e929ab0a1a77add2">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> &amp;gpu_target)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004436<tr class="memdesc:a1f4d95d65a62a085e929ab0a1a77add2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the GPUTarget type. <a href="#a1f4d95d65a62a085e929ab0a1a77add2">More...</a><br /></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00004437<tr class="separator:a1f4d95d65a62a085e929ab0a1a77add2"><td class="memSeparator" colspan="2">&#160;</td></tr>
4438<tr class="memitem:aee29ccfc095313663fc954f581ddf40a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#aee29ccfc095313663fc954f581ddf40a">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> &amp;gpu_target)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004439<tr class="memdesc:aee29ccfc095313663fc954f581ddf40a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the GPUTarget type. <a href="#aee29ccfc095313663fc954f581ddf40a">More...</a><br /></td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00004440<tr class="separator:aee29ccfc095313663fc954f581ddf40a"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004441<tr class="memitem:a907c93ba5daaabf6af7095f20340d024"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a907c93ba5daaabf6af7095f20340d024">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a> &amp;detection_window)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004442<tr class="memdesc:a907c93ba5daaabf6af7095f20340d024"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_detection_window.xhtml" title="Detection window used for the object detection.">DetectionWindow</a> type. <a href="#a907c93ba5daaabf6af7095f20340d024">More...</a><br /></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004443<tr class="separator:a907c93ba5daaabf6af7095f20340d024"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004444<tr class="memitem:a28634df052522fe60e15a0128ba924cc"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a28634df052522fe60e15a0128ba924cc">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830">DetectionOutputLayerCodeType</a> &amp;detection_code)</td></tr>
4445<tr class="memdesc:a28634df052522fe60e15a0128ba924cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the DetectionOutputLayerCodeType type. <a href="#a28634df052522fe60e15a0128ba924cc">More...</a><br /></td></tr>
4446<tr class="separator:a28634df052522fe60e15a0128ba924cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
4447<tr class="memitem:a41c7dc2aa88c4e30effb2e3f550de481"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a41c7dc2aa88c4e30effb2e3f550de481">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830">DetectionOutputLayerCodeType</a> &amp;detection_code)</td></tr>
4448<tr class="memdesc:a41c7dc2aa88c4e30effb2e3f550de481"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the DetectionOutputLayerCodeType type. <a href="#a41c7dc2aa88c4e30effb2e3f550de481">More...</a><br /></td></tr>
4449<tr class="separator:a41c7dc2aa88c4e30effb2e3f550de481"><td class="memSeparator" colspan="2">&#160;</td></tr>
4450<tr class="memitem:a22b40e983993e76ab39ce878fb111b9b"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a22b40e983993e76ab39ce878fb111b9b">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_detection_output_layer_info.xhtml">DetectionOutputLayerInfo</a> &amp;detection_info)</td></tr>
4451<tr class="memdesc:a22b40e983993e76ab39ce878fb111b9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_detection_output_layer_info.xhtml" title="Detection Output layer info.">DetectionOutputLayerInfo</a> type. <a href="#a22b40e983993e76ab39ce878fb111b9b">More...</a><br /></td></tr>
4452<tr class="separator:a22b40e983993e76ab39ce878fb111b9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
4453<tr class="memitem:a4084858fda1caec39457dd70322e6bd6"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a4084858fda1caec39457dd70322e6bd6">to_string</a> (const <a class="el" href="classarm__compute_1_1_detection_output_layer_info.xhtml">DetectionOutputLayerInfo</a> &amp;detection_info)</td></tr>
4454<tr class="memdesc:a4084858fda1caec39457dd70322e6bd6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="classarm__compute_1_1_detection_output_layer_info.xhtml" title="Detection Output layer info.">DetectionOutputLayerInfo</a> type. <a href="#a4084858fda1caec39457dd70322e6bd6">More...</a><br /></td></tr>
4455<tr class="separator:a4084858fda1caec39457dd70322e6bd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004456<tr class="memitem:a905d7ec8787e8c4b7e88b0a2faaccd1f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a905d7ec8787e8c4b7e88b0a2faaccd1f">to_string</a> (const <a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a> &amp;detection_window)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004457<tr class="memdesc:a905d7ec8787e8c4b7e88b0a2faaccd1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_detection_window.xhtml" title="Detection window used for the object detection.">DetectionWindow</a> type. <a href="#a905d7ec8787e8c4b7e88b0a2faaccd1f">More...</a><br /></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004458<tr class="separator:a905d7ec8787e8c4b7e88b0a2faaccd1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004459<tr class="memitem:a8cfa7d498e60be008d557d025fe62ff3"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a8cfa7d498e60be008d557d025fe62ff3">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453">Termination</a> &amp;termination)</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004460<tr class="memdesc:a8cfa7d498e60be008d557d025fe62ff3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Termination type. <a href="#a8cfa7d498e60be008d557d025fe62ff3">More...</a><br /></td></tr>
4461<tr class="separator:a8cfa7d498e60be008d557d025fe62ff3"><td class="memSeparator" colspan="2">&#160;</td></tr>
4462<tr class="memitem:a51fc944d872cf00c1e8e71ccdf8be264"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a51fc944d872cf00c1e8e71ccdf8be264">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453">Termination</a> &amp;termination)</td></tr>
4463<tr class="memdesc:a51fc944d872cf00c1e8e71ccdf8be264"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the Termination type. <a href="#a51fc944d872cf00c1e8e71ccdf8be264">More...</a><br /></td></tr>
4464<tr class="separator:a51fc944d872cf00c1e8e71ccdf8be264"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004465<tr class="memitem:a2329ad899483ca80bbffd03a63da9f5d"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2329ad899483ca80bbffd03a63da9f5d">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">CPUModel</a> &amp;cpu_model)</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004466<tr class="memdesc:a2329ad899483ca80bbffd03a63da9f5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the CPUModel type. <a href="#a2329ad899483ca80bbffd03a63da9f5d">More...</a><br /></td></tr>
4467<tr class="separator:a2329ad899483ca80bbffd03a63da9f5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
4468<tr class="memitem:add33a9d992aeaa69d6940fd896ee5e75"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#add33a9d992aeaa69d6940fd896ee5e75">to_string</a> (const <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">CPUModel</a> &amp;cpu_model)</td></tr>
4469<tr class="memdesc:add33a9d992aeaa69d6940fd896ee5e75"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the CPUModel type. <a href="#add33a9d992aeaa69d6940fd896ee5e75">More...</a><br /></td></tr>
4470<tr class="separator:add33a9d992aeaa69d6940fd896ee5e75"><td class="memSeparator" colspan="2">&#160;</td></tr>
4471<tr class="memitem:a29cd1c3e1b33d61a479fa49465c5a7e7"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004472<tr class="memitem:a29cd1c3e1b33d61a479fa49465c5a7e7"><td class="memTemplItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a29cd1c3e1b33d61a479fa49465c5a7e7">operator&lt;&lt;</a> (::std::ostream &amp;os, const std::vector&lt; T &gt; &amp;args)</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004473<tr class="memdesc:a29cd1c3e1b33d61a479fa49465c5a7e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of a vector of objects. <a href="#a29cd1c3e1b33d61a479fa49465c5a7e7">More...</a><br /></td></tr>
4474<tr class="separator:a29cd1c3e1b33d61a479fa49465c5a7e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004475<tr class="memitem:ae7393414bb7b814bf70e0399f2347847"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#ae7393414bb7b814bf70e0399f2347847">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml">PriorBoxLayerInfo</a> &amp;info)</td></tr>
4476<tr class="memdesc:ae7393414bb7b814bf70e0399f2347847"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml">PriorBoxLayerInfo</a>. <a href="#ae7393414bb7b814bf70e0399f2347847">More...</a><br /></td></tr>
4477<tr class="separator:ae7393414bb7b814bf70e0399f2347847"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004478<tr class="memitem:a6411da4e87e64e8859f8b725645ee9aa"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
4479<tr class="memitem:a6411da4e87e64e8859f8b725645ee9aa"><td class="memTemplItemLeft" align="right" valign="top">std::string&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a6411da4e87e64e8859f8b725645ee9aa">to_string</a> (const std::vector&lt; T &gt; &amp;args)</td></tr>
4480<tr class="memdesc:a6411da4e87e64e8859f8b725645ee9aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of a vector of objects. <a href="#a6411da4e87e64e8859f8b725645ee9aa">More...</a><br /></td></tr>
4481<tr class="separator:a6411da4e87e64e8859f8b725645ee9aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004482<tr class="memitem:af3cba8a4493cee4c431d128eed565ffe"><td class="memItemLeft" align="right" valign="top">inline ::std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af3cba8a4493cee4c431d128eed565ffe">operator&lt;&lt;</a> (::std::ostream &amp;os, const <a class="el" href="structarm__compute_1_1_winograd_info.xhtml">WinogradInfo</a> &amp;info)</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004483<tr class="memdesc:af3cba8a4493cee4c431d128eed565ffe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted output of the <a class="el" href="structarm__compute_1_1_winograd_info.xhtml" title="Winograd information.">WinogradInfo</a> type. <a href="#af3cba8a4493cee4c431d128eed565ffe">More...</a><br /></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004484<tr class="separator:af3cba8a4493cee4c431d128eed565ffe"><td class="memSeparator" colspan="2">&#160;</td></tr>
4485<tr class="memitem:a37cc282b0852aab04b13a6e6566adda7"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a37cc282b0852aab04b13a6e6566adda7">to_string</a> (const <a class="el" href="structarm__compute_1_1_winograd_info.xhtml">WinogradInfo</a> &amp;type)</td></tr>
4486<tr class="separator:a37cc282b0852aab04b13a6e6566adda7"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00004487<tr class="memitem:a1d8c24abe3cf6edd704d126d1d2a5420"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
4488<tr class="memitem:a1d8c24abe3cf6edd704d126d1d2a5420"><td class="memTemplItemLeft" align="right" valign="top">std::string&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a1d8c24abe3cf6edd704d126d1d2a5420">to_string</a> (const T &amp;val)</td></tr>
4489<tr class="memdesc:a1d8c24abe3cf6edd704d126d1d2a5420"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fallback method: try to use std::to_string: <a href="#a1d8c24abe3cf6edd704d126d1d2a5420">More...</a><br /></td></tr>
4490<tr class="separator:a1d8c24abe3cf6edd704d126d1d2a5420"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00004491</table><table class="memberdecls">
4492<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
4493Variables</h2></td></tr>
4494<tr class="memitem:a769d636d7a3c7c84579a5f477a18bc9d"><td class="memItemLeft" align="right" valign="top">constexpr size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a769d636d7a3c7c84579a5f477a18bc9d">MAX_DIMS</a> = 6</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004495<tr class="memdesc:a769d636d7a3c7c84579a5f477a18bc9d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant value used to indicate maximum dimensions of a <a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a>, <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml" title="Shape of a tensor.">TensorShape</a> and <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a>. <a href="#a769d636d7a3c7c84579a5f477a18bc9d">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00004496<tr class="separator:a769d636d7a3c7c84579a5f477a18bc9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
4497<tr class="memitem:a869945609357fa552d94eb16f7aad4e9"><td class="memItemLeft" align="right" valign="top">const std::array&lt; float32x4_t, 8 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a869945609357fa552d94eb16f7aad4e9">exp_tab</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004498<tr class="memdesc:a869945609357fa552d94eb16f7aad4e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exponent polynomial coefficients. <a href="#a869945609357fa552d94eb16f7aad4e9">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00004499<tr class="separator:a869945609357fa552d94eb16f7aad4e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
4500<tr class="memitem:a48fb9cf404e8f7043235bf14105c9793"><td class="memItemLeft" align="right" valign="top">const std::array&lt; float32x4_t, 8 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a48fb9cf404e8f7043235bf14105c9793">log_tab</a></td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004501<tr class="memdesc:a48fb9cf404e8f7043235bf14105c9793"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logarithm polynomial coefficients. <a href="#a48fb9cf404e8f7043235bf14105c9793">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00004502<tr class="separator:a48fb9cf404e8f7043235bf14105c9793"><td class="memSeparator" colspan="2">&#160;</td></tr>
4503<tr class="memitem:a3fed059965fe44cbe7ed4091d6b63acf"><td class="memItemLeft" align="right" valign="top">constexpr uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a3fed059965fe44cbe7ed4091d6b63acf">CONSTANT_BORDER_VALUE</a> = 199</td></tr>
Jenkins514be652019-02-28 12:25:18 +00004504<tr class="memdesc:a3fed059965fe44cbe7ed4091d6b63acf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant value of the border pixels when using <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92" title="Pixels outside the image are assumed to have a constant value.">BorderMode::CONSTANT</a>. <a href="#a3fed059965fe44cbe7ed4091d6b63acf">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00004505<tr class="separator:a3fed059965fe44cbe7ed4091d6b63acf"><td class="memSeparator" colspan="2">&#160;</td></tr>
4506<tr class="memitem:af9876aedd664cac0ddeacddb40cb71cd"><td class="memItemLeft" align="right" valign="top">constexpr float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#af9876aedd664cac0ddeacddb40cb71cd">SCALE_PYRAMID_HALF</a> = 0.5f</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004507<tr class="memdesc:af9876aedd664cac0ddeacddb40cb71cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant value used to indicate a half-scale pyramid. <a href="#af9876aedd664cac0ddeacddb40cb71cd">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00004508<tr class="separator:af9876aedd664cac0ddeacddb40cb71cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
4509<tr class="memitem:a2ebcd5423d5fba468e7debd2e1aabe91"><td class="memItemLeft" align="right" valign="top">constexpr float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a2ebcd5423d5fba468e7debd2e1aabe91">SCALE_PYRAMID_ORB</a> = 8.408964152537146130583778358414e-01</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01004510<tr class="memdesc:a2ebcd5423d5fba468e7debd2e1aabe91"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant value used to indicate a ORB scaled pyramid. <a href="#a2ebcd5423d5fba468e7debd2e1aabe91">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00004511<tr class="separator:a2ebcd5423d5fba468e7debd2e1aabe91"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00004512<tr class="memitem:a13d15bf68bbaf481be9ba3988b1cf779"><td class="memItemLeft" align="right" valign="top">constexpr unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute.xhtml#a13d15bf68bbaf481be9ba3988b1cf779">num_num_elems_processed_per_iteration</a> = 16</td></tr>
4513<tr class="separator:a13d15bf68bbaf481be9ba3988b1cf779"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00004514</table>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004515<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +00004516<div class="textblock"><p>Copyright (c) 2017-2018 ARM Limited. </p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004517<p>This file contains all available output stages for GEMMLowp on NEON.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +00004518<p>This file contains all available output stages for GEMMLowp on OpenCL.</p>
4519<p>Copyright (c) 2018 ARM Limited.</p>
Jenkins514be652019-02-28 12:25:18 +00004520<p>Copyright (c) 2018-2019 ARM Limited.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +00004521<p>SPDX-License-Identifier: MIT</p>
4522<p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>
4523<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
4524<p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00004525<p>In gemmlowp, the "output stage" is the process that takes a final int32 accumulator value (the output of <a class="el" href="classarm__compute_1_1_c_l_g_e_m_m_lowp_matrix_multiply_core.xhtml">CLGEMMLowpMatrixMultiplyCore</a>), and processes it to obtain the final ASYMM8 value.</p>
4526<p>More information about the GEMMLowp output stage can be found at <a href="https://github.com/google/gemmlowp/blob/master/doc/output.md">https://github.com/google/gemmlowp/blob/master/doc/output.md</a></p>
4527<p>In gemmlowp, the "output stage" is the process that takes a final int32 accumulator value (the output of <a class="el" href="classarm__compute_1_1_n_e_g_e_m_m_lowp_matrix_multiply_core.xhtml">NEGEMMLowpMatrixMultiplyCore</a>), and processes it to obtain the final ASYMM8 value.</p>
4528<p>More information about the GEMMLowp output stage can be found at <a href="https://github.com/google/gemmlowp/blob/master/doc/output.md">https://github.com/google/gemmlowp/blob/master/doc/output.md</a> </p>
4529</div><h2 class="groupheader">Typedef Documentation</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +00004530<a id="a11916d4148a39a67794050373f54825a"></a>
4531<h2 class="memtitle"><span class="permalink"><a href="#a11916d4148a39a67794050373f54825a">&#9670;&nbsp;</a></span>BiStrides</h2>
4532
4533<div class="memitem">
4534<div class="memproto">
4535 <table class="memname">
4536 <tr>
4537 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a11916d4148a39a67794050373f54825a">BiStrides</a> = <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a></td>
4538 </tr>
4539 </table>
4540</div><div class="memdoc">
4541
4542<p>Bidirectional strides. </p>
4543
4544<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00049">49</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
4545
4546</div>
4547</div>
4548<a id="afcef84cf3b7d147b2b6ab0bd884afc16"></a>
4549<h2 class="memtitle"><span class="permalink"><a href="#afcef84cf3b7d147b2b6ab0bd884afc16">&#9670;&nbsp;</a></span>CLCoefficientTableArray</h2>
4550
Anthony Barbier871448e2017-03-24 14:54:29 +00004551<div class="memitem">
4552<div class="memproto">
4553 <table class="memname">
4554 <tr>
4555 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#afcef84cf3b7d147b2b6ab0bd884afc16">CLCoefficientTableArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt;<a class="el" href="structarm__compute_1_1_c_l_coefficient_table.xhtml">CLCoefficientTable</a>&gt;</td>
4556 </tr>
4557 </table>
4558</div><div class="memdoc">
4559
Jenkins514be652019-02-28 12:25:18 +00004560<p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Coefficient Tables. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01004561
Jenkinsb9abeae2018-11-22 11:58:08 +00004562<p class="definition">Definition at line <a class="el" href="_c_l_optical_flow_8h_source.xhtml#l00049">49</a> of file <a class="el" href="_c_l_optical_flow_8h_source.xhtml">CLOpticalFlow.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004563
4564</div>
4565</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004566<a id="a4751499f1c526c7285e7e946c2e84541"></a>
4567<h2 class="memtitle"><span class="permalink"><a href="#a4751499f1c526c7285e7e946c2e84541">&#9670;&nbsp;</a></span>CLConvolution3x3Kernel</h2>
4568
Anthony Barbier871448e2017-03-24 14:54:29 +00004569<div class="memitem">
4570<div class="memproto">
4571 <table class="memname">
4572 <tr>
4573 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a4751499f1c526c7285e7e946c2e84541">CLConvolution3x3Kernel</a> = <a class="el" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml">CLConvolutionKernel</a>&lt;3&gt;</td>
4574 </tr>
4575 </table>
4576</div><div class="memdoc">
4577
4578<p>Interface for the kernel which applies a 3x3 convolution to a tensor. </p>
4579
Jenkinsb9abeae2018-11-22 11:58:08 +00004580<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00070">70</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004581
4582</div>
4583</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004584<a id="a843447b81f09d837e90d44e6e6bd236d"></a>
4585<h2 class="memtitle"><span class="permalink"><a href="#a843447b81f09d837e90d44e6e6bd236d">&#9670;&nbsp;</a></span>CLConvolution5x5</h2>
4586
Anthony Barbier871448e2017-03-24 14:54:29 +00004587<div class="memitem">
4588<div class="memproto">
4589 <table class="memname">
4590 <tr>
4591 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a843447b81f09d837e90d44e6e6bd236d">CLConvolution5x5</a> = <a class="el" href="classarm__compute_1_1_c_l_convolution_square.xhtml">CLConvolutionSquare</a>&lt;5&gt;</td>
4592 </tr>
4593 </table>
4594</div><div class="memdoc">
4595
4596<p>Basic function to run 5x5 convolution. </p>
4597
Jenkinsb9abeae2018-11-22 11:58:08 +00004598<p class="definition">Definition at line <a class="el" href="_c_l_convolution_8h_source.xhtml#l00102">102</a> of file <a class="el" href="_c_l_convolution_8h_source.xhtml">CLConvolution.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004599
4600</div>
4601</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004602<a id="ac4cfbdf439d7bf5d420546298bd5ca0d"></a>
4603<h2 class="memtitle"><span class="permalink"><a href="#ac4cfbdf439d7bf5d420546298bd5ca0d">&#9670;&nbsp;</a></span>CLConvolution5x5Kernel</h2>
4604
Anthony Barbier871448e2017-03-24 14:54:29 +00004605<div class="memitem">
4606<div class="memproto">
4607 <table class="memname">
4608 <tr>
4609 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ac4cfbdf439d7bf5d420546298bd5ca0d">CLConvolution5x5Kernel</a> = <a class="el" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml">CLConvolutionKernel</a>&lt;5&gt;</td>
4610 </tr>
4611 </table>
4612</div><div class="memdoc">
4613
4614<p>Interface for the kernel which applies a 5x5 convolution to a tensor. </p>
4615
Jenkinsb9abeae2018-11-22 11:58:08 +00004616<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00072">72</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004617
4618</div>
4619</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004620<a id="a1992a8362b7074e709394a5219d16e62"></a>
4621<h2 class="memtitle"><span class="permalink"><a href="#a1992a8362b7074e709394a5219d16e62">&#9670;&nbsp;</a></span>CLConvolution7x7</h2>
4622
Anthony Barbier871448e2017-03-24 14:54:29 +00004623<div class="memitem">
4624<div class="memproto">
4625 <table class="memname">
4626 <tr>
4627 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a1992a8362b7074e709394a5219d16e62">CLConvolution7x7</a> = <a class="el" href="classarm__compute_1_1_c_l_convolution_square.xhtml">CLConvolutionSquare</a>&lt;7&gt;</td>
4628 </tr>
4629 </table>
4630</div><div class="memdoc">
4631
4632<p>Basic function to run 7x7 convolution. </p>
4633
Jenkinsb9abeae2018-11-22 11:58:08 +00004634<p class="definition">Definition at line <a class="el" href="_c_l_convolution_8h_source.xhtml#l00104">104</a> of file <a class="el" href="_c_l_convolution_8h_source.xhtml">CLConvolution.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004635
4636</div>
4637</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004638<a id="a99a54c937a254c96cd1a29a96ffa7dcf"></a>
4639<h2 class="memtitle"><span class="permalink"><a href="#a99a54c937a254c96cd1a29a96ffa7dcf">&#9670;&nbsp;</a></span>CLConvolution7x7Kernel</h2>
4640
Anthony Barbier871448e2017-03-24 14:54:29 +00004641<div class="memitem">
4642<div class="memproto">
4643 <table class="memname">
4644 <tr>
4645 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a99a54c937a254c96cd1a29a96ffa7dcf">CLConvolution7x7Kernel</a> = <a class="el" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml">CLConvolutionKernel</a>&lt;7&gt;</td>
4646 </tr>
4647 </table>
4648</div><div class="memdoc">
4649
4650<p>Interface for the kernel which applies a 7x7 convolution to a tensor. </p>
4651
Jenkinsb9abeae2018-11-22 11:58:08 +00004652<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00074">74</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004653
4654</div>
4655</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004656<a id="a587dee5d7f05d5e9c3b8704ae8927101"></a>
4657<h2 class="memtitle"><span class="permalink"><a href="#a587dee5d7f05d5e9c3b8704ae8927101">&#9670;&nbsp;</a></span>CLConvolution9x9</h2>
4658
Anthony Barbier871448e2017-03-24 14:54:29 +00004659<div class="memitem">
4660<div class="memproto">
4661 <table class="memname">
4662 <tr>
4663 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a587dee5d7f05d5e9c3b8704ae8927101">CLConvolution9x9</a> = <a class="el" href="classarm__compute_1_1_c_l_convolution_square.xhtml">CLConvolutionSquare</a>&lt;9&gt;</td>
4664 </tr>
4665 </table>
4666</div><div class="memdoc">
4667
4668<p>Basic function to run 9x9 convolution. </p>
4669
Jenkinsb9abeae2018-11-22 11:58:08 +00004670<p class="definition">Definition at line <a class="el" href="_c_l_convolution_8h_source.xhtml#l00106">106</a> of file <a class="el" href="_c_l_convolution_8h_source.xhtml">CLConvolution.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004671
4672</div>
4673</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004674<a id="a908439cd5cf8253865d5c70a413fd607"></a>
4675<h2 class="memtitle"><span class="permalink"><a href="#a908439cd5cf8253865d5c70a413fd607">&#9670;&nbsp;</a></span>CLConvolution9x9Kernel</h2>
4676
Anthony Barbier871448e2017-03-24 14:54:29 +00004677<div class="memitem">
4678<div class="memproto">
4679 <table class="memname">
4680 <tr>
4681 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a908439cd5cf8253865d5c70a413fd607">CLConvolution9x9Kernel</a> = <a class="el" href="classarm__compute_1_1_c_l_convolution_kernel.xhtml">CLConvolutionKernel</a>&lt;9&gt;</td>
4682 </tr>
4683 </table>
4684</div><div class="memdoc">
4685
4686<p>Interface for the kernel which applies a 9x9 convolution to a tensor. </p>
4687
Jenkinsb9abeae2018-11-22 11:58:08 +00004688<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00076">76</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004689
4690</div>
4691</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004692<a id="a0fd5f0310a26faad00b905bac3792726"></a>
4693<h2 class="memtitle"><span class="permalink"><a href="#a0fd5f0310a26faad00b905bac3792726">&#9670;&nbsp;</a></span>CLCoordinates2DArray</h2>
4694
Anthony Barbier871448e2017-03-24 14:54:29 +00004695<div class="memitem">
4696<div class="memproto">
4697 <table class="memname">
4698 <tr>
4699 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a0fd5f0310a26faad00b905bac3792726">CLCoordinates2DArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt;<a class="el" href="structarm__compute_1_1_coordinates2_d.xhtml">Coordinates2D</a>&gt;</td>
4700 </tr>
4701 </table>
4702</div><div class="memdoc">
4703
Jenkins514be652019-02-28 12:25:18 +00004704<p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a>. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01004705
Jenkinsb9abeae2018-11-22 11:58:08 +00004706<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00109">109</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004707
4708</div>
4709</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004710<a id="ab8d2c7efb7643ce8f9e5446dbe1da0b4"></a>
4711<h2 class="memtitle"><span class="permalink"><a href="#ab8d2c7efb7643ce8f9e5446dbe1da0b4">&#9670;&nbsp;</a></span>CLDetectionWindowArray</h2>
4712
Anthony Barbier871448e2017-03-24 14:54:29 +00004713<div class="memitem">
4714<div class="memproto">
4715 <table class="memname">
4716 <tr>
4717 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ab8d2c7efb7643ce8f9e5446dbe1da0b4">CLDetectionWindowArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt;<a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a>&gt;</td>
4718 </tr>
4719 </table>
4720</div><div class="memdoc">
4721
Jenkins514be652019-02-28 12:25:18 +00004722<p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Detection Windows. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01004723
Jenkinsb9abeae2018-11-22 11:58:08 +00004724<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00111">111</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004725
4726</div>
4727</div>
Jenkins514be652019-02-28 12:25:18 +00004728<a id="a18e76ae589217a65f77b971de3f3f65a"></a>
4729<h2 class="memtitle"><span class="permalink"><a href="#a18e76ae589217a65f77b971de3f3f65a">&#9670;&nbsp;</a></span>CLEqual</h2>
4730
4731<div class="memitem">
4732<div class="memproto">
4733 <table class="memname">
4734 <tr>
4735 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a18e76ae589217a65f77b971de3f3f65a">CLEqual</a> = <a class="el" href="classarm__compute_1_1_c_l_comparison_static.xhtml">CLComparisonStatic</a>&lt;<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5">ComparisonOperation::Equal</a>&gt;</td>
4736 </tr>
4737 </table>
4738</div><div class="memdoc">
4739
4740<p>Basic function to run equal comparison. </p>
4741
4742<p class="definition">Definition at line <a class="el" href="_c_l_comparison_8h_source.xhtml#l00090">90</a> of file <a class="el" href="_c_l_comparison_8h_source.xhtml">CLComparison.h</a>.</p>
4743
4744</div>
4745</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004746<a id="a193a4859b365f3ef4e0d73a1e6b12c85"></a>
4747<h2 class="memtitle"><span class="permalink"><a href="#a193a4859b365f3ef4e0d73a1e6b12c85">&#9670;&nbsp;</a></span>CLFloatArray</h2>
4748
Anthony Barbier871448e2017-03-24 14:54:29 +00004749<div class="memitem">
4750<div class="memproto">
4751 <table class="memname">
4752 <tr>
4753 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a193a4859b365f3ef4e0d73a1e6b12c85">CLFloatArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt;cl_float&gt;</td>
4754 </tr>
4755 </table>
4756</div><div class="memdoc">
4757
Jenkins514be652019-02-28 12:25:18 +00004758<p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of floats. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01004759
Jenkins514be652019-02-28 12:25:18 +00004760<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00125">125</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
4761
4762</div>
4763</div>
4764<a id="ab9b18840e11edcbeafcd80d4c44b80cb"></a>
4765<h2 class="memtitle"><span class="permalink"><a href="#ab9b18840e11edcbeafcd80d4c44b80cb">&#9670;&nbsp;</a></span>CLGreater</h2>
4766
4767<div class="memitem">
4768<div class="memproto">
4769 <table class="memname">
4770 <tr>
4771 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ab9b18840e11edcbeafcd80d4c44b80cb">CLGreater</a> = <a class="el" href="classarm__compute_1_1_c_l_comparison_static.xhtml">CLComparisonStatic</a>&lt;<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">ComparisonOperation::Greater</a>&gt;</td>
4772 </tr>
4773 </table>
4774</div><div class="memdoc">
4775
4776<p>Basic function to run greater comparison. </p>
4777
4778<p class="definition">Definition at line <a class="el" href="_c_l_comparison_8h_source.xhtml#l00094">94</a> of file <a class="el" href="_c_l_comparison_8h_source.xhtml">CLComparison.h</a>.</p>
4779
4780</div>
4781</div>
4782<a id="ade630074f2c9d58d64c399bd6b49bc56"></a>
4783<h2 class="memtitle"><span class="permalink"><a href="#ade630074f2c9d58d64c399bd6b49bc56">&#9670;&nbsp;</a></span>CLGreaterEqual</h2>
4784
4785<div class="memitem">
4786<div class="memproto">
4787 <table class="memname">
4788 <tr>
4789 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ade630074f2c9d58d64c399bd6b49bc56">CLGreaterEqual</a> = <a class="el" href="classarm__compute_1_1_c_l_comparison_static.xhtml">CLComparisonStatic</a>&lt;<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca758b05d899def79c9eb864ad4f96be1f">ComparisonOperation::GreaterEqual</a>&gt;</td>
4790 </tr>
4791 </table>
4792</div><div class="memdoc">
4793
4794<p>Basic function to run greater-equal comparison. </p>
4795
4796<p class="definition">Definition at line <a class="el" href="_c_l_comparison_8h_source.xhtml#l00096">96</a> of file <a class="el" href="_c_l_comparison_8h_source.xhtml">CLComparison.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004797
4798</div>
4799</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004800<a id="aae712f442eae2d56d17529ca6cb9cb77"></a>
4801<h2 class="memtitle"><span class="permalink"><a href="#aae712f442eae2d56d17529ca6cb9cb77">&#9670;&nbsp;</a></span>CLImage</h2>
4802
Anthony Barbier871448e2017-03-24 14:54:29 +00004803<div class="memitem">
4804<div class="memproto">
4805 <table class="memname">
4806 <tr>
4807 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#aae712f442eae2d56d17529ca6cb9cb77">CLImage</a> = <a class="el" href="classarm__compute_1_1_c_l_tensor.xhtml">CLTensor</a></td>
4808 </tr>
4809 </table>
4810</div><div class="memdoc">
4811
Jenkins514be652019-02-28 12:25:18 +00004812<p>OpenCL <a class="el" href="struct_image.xhtml" title="Structure to hold Image information.">Image</a>. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01004813
Jenkinsb9abeae2018-11-22 11:58:08 +00004814<p class="definition">Definition at line <a class="el" href="_c_l_tensor_8h_source.xhtml#l00080">80</a> of file <a class="el" href="_c_l_tensor_8h_source.xhtml">CLTensor.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004815
4816</div>
4817</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004818<a id="a5fb8cb339705102066c915d18f0701ac"></a>
4819<h2 class="memtitle"><span class="permalink"><a href="#a5fb8cb339705102066c915d18f0701ac">&#9670;&nbsp;</a></span>CLInt16Array</h2>
4820
Anthony Barbier871448e2017-03-24 14:54:29 +00004821<div class="memitem">
4822<div class="memproto">
4823 <table class="memname">
4824 <tr>
4825 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a5fb8cb339705102066c915d18f0701ac">CLInt16Array</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt;cl_short&gt;</td>
4826 </tr>
4827 </table>
4828</div><div class="memdoc">
4829
Jenkins514be652019-02-28 12:25:18 +00004830<p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int16s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01004831
Jenkins514be652019-02-28 12:25:18 +00004832<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00121">121</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004833
4834</div>
4835</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004836<a id="a8a401a071524761c661a75969c951cf5"></a>
4837<h2 class="memtitle"><span class="permalink"><a href="#a8a401a071524761c661a75969c951cf5">&#9670;&nbsp;</a></span>CLInt32Array</h2>
4838
Anthony Barbier871448e2017-03-24 14:54:29 +00004839<div class="memitem">
4840<div class="memproto">
4841 <table class="memname">
4842 <tr>
4843 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a8a401a071524761c661a75969c951cf5">CLInt32Array</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt;cl_int&gt;</td>
4844 </tr>
4845 </table>
4846</div><div class="memdoc">
4847
Jenkins514be652019-02-28 12:25:18 +00004848<p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int32s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01004849
Jenkins514be652019-02-28 12:25:18 +00004850<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00123">123</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004851
4852</div>
4853</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004854<a id="a55e1c5ed17b7ee3762198a38eb50650a"></a>
4855<h2 class="memtitle"><span class="permalink"><a href="#a55e1c5ed17b7ee3762198a38eb50650a">&#9670;&nbsp;</a></span>CLKeyPointArray</h2>
4856
Anthony Barbier871448e2017-03-24 14:54:29 +00004857<div class="memitem">
4858<div class="memproto">
4859 <table class="memname">
4860 <tr>
4861 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a55e1c5ed17b7ee3762198a38eb50650a">CLKeyPointArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt;<a class="el" href="structarm__compute_1_1_key_point.xhtml">KeyPoint</a>&gt;</td>
4862 </tr>
4863 </table>
4864</div><div class="memdoc">
4865
Jenkins514be652019-02-28 12:25:18 +00004866<p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Key Points. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01004867
Jenkinsb9abeae2018-11-22 11:58:08 +00004868<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00107">107</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004869
4870</div>
4871</div>
Jenkins514be652019-02-28 12:25:18 +00004872<a id="a8c2c9a77f235807441eacdddd896d50c"></a>
4873<h2 class="memtitle"><span class="permalink"><a href="#a8c2c9a77f235807441eacdddd896d50c">&#9670;&nbsp;</a></span>CLLess</h2>
4874
4875<div class="memitem">
4876<div class="memproto">
4877 <table class="memname">
4878 <tr>
4879 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a8c2c9a77f235807441eacdddd896d50c">CLLess</a> = <a class="el" href="classarm__compute_1_1_c_l_comparison_static.xhtml">CLComparisonStatic</a>&lt;<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca1cfdf0e8d0c87a228c1f40d9bee7888b">ComparisonOperation::Less</a>&gt;</td>
4880 </tr>
4881 </table>
4882</div><div class="memdoc">
4883
4884<p>Basic function to run less comparison. </p>
4885
4886<p class="definition">Definition at line <a class="el" href="_c_l_comparison_8h_source.xhtml#l00098">98</a> of file <a class="el" href="_c_l_comparison_8h_source.xhtml">CLComparison.h</a>.</p>
4887
4888</div>
4889</div>
4890<a id="a258b8c95199c121d8f2a9a540cd48e5e"></a>
4891<h2 class="memtitle"><span class="permalink"><a href="#a258b8c95199c121d8f2a9a540cd48e5e">&#9670;&nbsp;</a></span>CLLessEqual</h2>
4892
4893<div class="memitem">
4894<div class="memproto">
4895 <table class="memname">
4896 <tr>
4897 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a258b8c95199c121d8f2a9a540cd48e5e">CLLessEqual</a> = <a class="el" href="classarm__compute_1_1_c_l_comparison_static.xhtml">CLComparisonStatic</a>&lt;<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58cad3e6fdac55bb7b0edd7834c968ba1f38">ComparisonOperation::LessEqual</a>&gt;</td>
4898 </tr>
4899 </table>
4900</div><div class="memdoc">
4901
4902<p>Basic function to run less-equal comparison. </p>
4903
4904<p class="definition">Definition at line <a class="el" href="_c_l_comparison_8h_source.xhtml#l00100">100</a> of file <a class="el" href="_c_l_comparison_8h_source.xhtml">CLComparison.h</a>.</p>
4905
4906</div>
4907</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004908<a id="a70997613219641045213b0c12948fb74"></a>
4909<h2 class="memtitle"><span class="permalink"><a href="#a70997613219641045213b0c12948fb74">&#9670;&nbsp;</a></span>CLLKInternalKeypointArray</h2>
4910
Anthony Barbier871448e2017-03-24 14:54:29 +00004911<div class="memitem">
4912<div class="memproto">
4913 <table class="memname">
4914 <tr>
4915 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a70997613219641045213b0c12948fb74">CLLKInternalKeypointArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt;<a class="el" href="structarm__compute_1_1_c_l_l_k_internal_keypoint.xhtml">CLLKInternalKeypoint</a>&gt;</td>
4916 </tr>
4917 </table>
4918</div><div class="memdoc">
4919
Jenkins514be652019-02-28 12:25:18 +00004920<p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Internal Keypoints. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01004921
Jenkinsb9abeae2018-11-22 11:58:08 +00004922<p class="definition">Definition at line <a class="el" href="_c_l_optical_flow_8h_source.xhtml#l00047">47</a> of file <a class="el" href="_c_l_optical_flow_8h_source.xhtml">CLOpticalFlow.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +01004923
4924</div>
4925</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004926<a id="ac87d48489667d7ff7fc4cc7d0d12c52e"></a>
4927<h2 class="memtitle"><span class="permalink"><a href="#ac87d48489667d7ff7fc4cc7d0d12c52e">&#9670;&nbsp;</a></span>CLMemoryGroup</h2>
4928
Kaizen8938bd32017-09-28 14:38:23 +01004929<div class="memitem">
4930<div class="memproto">
4931 <table class="memname">
4932 <tr>
4933 <td class="memname">typedef <a class="el" href="classarm__compute_1_1_memory_group_base.xhtml">MemoryGroupBase</a>&lt; <a class="el" href="classarm__compute_1_1_c_l_tensor.xhtml">CLTensor</a> &gt; <a class="el" href="namespacearm__compute.xhtml#ac87d48489667d7ff7fc4cc7d0d12c52e">CLMemoryGroup</a></td>
4934 </tr>
4935 </table>
4936</div><div class="memdoc">
4937
Jenkins514be652019-02-28 12:25:18 +00004938<p><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object.">Memory</a> Group in OpenCL. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01004939
Jenkinsb9abeae2018-11-22 11:58:08 +00004940<p class="definition">Definition at line <a class="el" href="_c_l_memory_group_8h_source.xhtml#l00035">35</a> of file <a class="el" href="_c_l_memory_group_8h_source.xhtml">CLMemoryGroup.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004941
4942</div>
4943</div>
Jenkins514be652019-02-28 12:25:18 +00004944<a id="aea3e261c61344f44892f8be73cfc0301"></a>
4945<h2 class="memtitle"><span class="permalink"><a href="#aea3e261c61344f44892f8be73cfc0301">&#9670;&nbsp;</a></span>CLNotEqual</h2>
4946
4947<div class="memitem">
4948<div class="memproto">
4949 <table class="memname">
4950 <tr>
4951 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#aea3e261c61344f44892f8be73cfc0301">CLNotEqual</a> = <a class="el" href="classarm__compute_1_1_c_l_comparison_static.xhtml">CLComparisonStatic</a>&lt;<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca19bb0af2c3c530538cb41aff7f235b96">ComparisonOperation::NotEqual</a>&gt;</td>
4952 </tr>
4953 </table>
4954</div><div class="memdoc">
4955
4956<p>Basic function to run not equal comparison. </p>
4957
4958<p class="definition">Definition at line <a class="el" href="_c_l_comparison_8h_source.xhtml#l00092">92</a> of file <a class="el" href="_c_l_comparison_8h_source.xhtml">CLComparison.h</a>.</p>
4959
4960</div>
4961</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004962<a id="a4ec6965f606c588137f7a48d84c1d6f0"></a>
4963<h2 class="memtitle"><span class="permalink"><a href="#a4ec6965f606c588137f7a48d84c1d6f0">&#9670;&nbsp;</a></span>CLOldValueArray</h2>
4964
Anthony Barbier871448e2017-03-24 14:54:29 +00004965<div class="memitem">
4966<div class="memproto">
4967 <table class="memname">
4968 <tr>
4969 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a4ec6965f606c588137f7a48d84c1d6f0">CLOldValueArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt;<a class="el" href="structarm__compute_1_1_c_l_old_value.xhtml">CLOldValue</a>&gt;</td>
4970 </tr>
4971 </table>
4972</div><div class="memdoc">
4973
Jenkins514be652019-02-28 12:25:18 +00004974<p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Old Values. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01004975
Jenkinsb9abeae2018-11-22 11:58:08 +00004976<p class="definition">Definition at line <a class="el" href="_c_l_optical_flow_8h_source.xhtml#l00051">51</a> of file <a class="el" href="_c_l_optical_flow_8h_source.xhtml">CLOpticalFlow.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +01004977
4978</div>
4979</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004980<a id="ac72d613f7270604dbcad2553c278b16c"></a>
4981<h2 class="memtitle"><span class="permalink"><a href="#ac72d613f7270604dbcad2553c278b16c">&#9670;&nbsp;</a></span>CLSeparableConvolution5x5HorKernel</h2>
4982
Anthony Barbier871448e2017-03-24 14:54:29 +00004983<div class="memitem">
4984<div class="memproto">
4985 <table class="memname">
4986 <tr>
4987 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ac72d613f7270604dbcad2553c278b16c">CLSeparableConvolution5x5HorKernel</a> = <a class="el" href="classarm__compute_1_1_c_l_separable_convolution_hor_kernel.xhtml">CLSeparableConvolutionHorKernel</a>&lt;5&gt;</td>
4988 </tr>
4989 </table>
4990</div><div class="memdoc">
4991
4992<p>Interface for the kernel which applies a horizontal pass of 5x5 convolution to a tensor. </p>
4993
Jenkinsb9abeae2018-11-22 11:58:08 +00004994<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00106">106</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00004995
4996</div>
4997</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00004998<a id="ac7295b0d8d71be75033238ad7fbba38c"></a>
4999<h2 class="memtitle"><span class="permalink"><a href="#ac7295b0d8d71be75033238ad7fbba38c">&#9670;&nbsp;</a></span>CLSeparableConvolution5x5VertKernel</h2>
5000
Anthony Barbier871448e2017-03-24 14:54:29 +00005001<div class="memitem">
5002<div class="memproto">
5003 <table class="memname">
5004 <tr>
5005 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ac7295b0d8d71be75033238ad7fbba38c">CLSeparableConvolution5x5VertKernel</a> = <a class="el" href="classarm__compute_1_1_c_l_separable_convolution_vert_kernel.xhtml">CLSeparableConvolutionVertKernel</a>&lt;5&gt;</td>
5006 </tr>
5007 </table>
5008</div><div class="memdoc">
5009
5010<p>Interface for the kernel which applies a vertical pass of 5x5 convolution to a tensor. </p>
5011
Jenkinsb9abeae2018-11-22 11:58:08 +00005012<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00133">133</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005013
5014</div>
5015</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005016<a id="aab26624bf4b326f8145b2909a5042004"></a>
5017<h2 class="memtitle"><span class="permalink"><a href="#aab26624bf4b326f8145b2909a5042004">&#9670;&nbsp;</a></span>CLSeparableConvolution7x7HorKernel</h2>
5018
Anthony Barbier871448e2017-03-24 14:54:29 +00005019<div class="memitem">
5020<div class="memproto">
5021 <table class="memname">
5022 <tr>
5023 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#aab26624bf4b326f8145b2909a5042004">CLSeparableConvolution7x7HorKernel</a> = <a class="el" href="classarm__compute_1_1_c_l_separable_convolution_hor_kernel.xhtml">CLSeparableConvolutionHorKernel</a>&lt;7&gt;</td>
5024 </tr>
5025 </table>
5026</div><div class="memdoc">
5027
5028<p>Interface for the kernel which applies a horizontal pass of 7x7 convolution to a tensor. </p>
5029
Jenkinsb9abeae2018-11-22 11:58:08 +00005030<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00108">108</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005031
5032</div>
5033</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005034<a id="a0ffdf01e236016ce8d366a69875d1375"></a>
5035<h2 class="memtitle"><span class="permalink"><a href="#a0ffdf01e236016ce8d366a69875d1375">&#9670;&nbsp;</a></span>CLSeparableConvolution7x7VertKernel</h2>
5036
Anthony Barbier871448e2017-03-24 14:54:29 +00005037<div class="memitem">
5038<div class="memproto">
5039 <table class="memname">
5040 <tr>
5041 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a0ffdf01e236016ce8d366a69875d1375">CLSeparableConvolution7x7VertKernel</a> = <a class="el" href="classarm__compute_1_1_c_l_separable_convolution_vert_kernel.xhtml">CLSeparableConvolutionVertKernel</a>&lt;7&gt;</td>
5042 </tr>
5043 </table>
5044</div><div class="memdoc">
5045
5046<p>Interface for the kernel which applies a vertical pass of 7x7 convolution to a tensor. </p>
5047
Jenkinsb9abeae2018-11-22 11:58:08 +00005048<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00135">135</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005049
5050</div>
5051</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005052<a id="a9f34ccad344bc43d25e8be2b828853aa"></a>
5053<h2 class="memtitle"><span class="permalink"><a href="#a9f34ccad344bc43d25e8be2b828853aa">&#9670;&nbsp;</a></span>CLSeparableConvolution9x9HorKernel</h2>
5054
Anthony Barbier871448e2017-03-24 14:54:29 +00005055<div class="memitem">
5056<div class="memproto">
5057 <table class="memname">
5058 <tr>
5059 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a9f34ccad344bc43d25e8be2b828853aa">CLSeparableConvolution9x9HorKernel</a> = <a class="el" href="classarm__compute_1_1_c_l_separable_convolution_hor_kernel.xhtml">CLSeparableConvolutionHorKernel</a>&lt;9&gt;</td>
5060 </tr>
5061 </table>
5062</div><div class="memdoc">
5063
5064<p>Interface for the kernel which applies a horizontal pass of 9x9 convolution to a tensor. </p>
5065
Jenkinsb9abeae2018-11-22 11:58:08 +00005066<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00110">110</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005067
5068</div>
5069</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005070<a id="a6d08e1e881bf611c1e1b9e2bb8810d19"></a>
5071<h2 class="memtitle"><span class="permalink"><a href="#a6d08e1e881bf611c1e1b9e2bb8810d19">&#9670;&nbsp;</a></span>CLSeparableConvolution9x9VertKernel</h2>
5072
Anthony Barbier871448e2017-03-24 14:54:29 +00005073<div class="memitem">
5074<div class="memproto">
5075 <table class="memname">
5076 <tr>
5077 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a6d08e1e881bf611c1e1b9e2bb8810d19">CLSeparableConvolution9x9VertKernel</a> = <a class="el" href="classarm__compute_1_1_c_l_separable_convolution_vert_kernel.xhtml">CLSeparableConvolutionVertKernel</a>&lt;9&gt;</td>
5078 </tr>
5079 </table>
5080</div><div class="memdoc">
5081
5082<p>Interface for the kernel which applies a vertical pass of 9x9 convolution to a tensor. </p>
5083
Jenkinsb9abeae2018-11-22 11:58:08 +00005084<p class="definition">Definition at line <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml#l00137">137</a> of file <a class="el" href="_c_l_convolution_kernel_8h_source.xhtml">CLConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005085
5086</div>
5087</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005088<a id="a3f9ab729931f4e4fa36ff1683186d988"></a>
5089<h2 class="memtitle"><span class="permalink"><a href="#a3f9ab729931f4e4fa36ff1683186d988">&#9670;&nbsp;</a></span>CLSize2DArray</h2>
5090
Anthony Barbier871448e2017-03-24 14:54:29 +00005091<div class="memitem">
5092<div class="memproto">
5093 <table class="memname">
5094 <tr>
5095 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a3f9ab729931f4e4fa36ff1683186d988">CLSize2DArray</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt;<a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a>&gt;</td>
5096 </tr>
5097 </table>
5098</div><div class="memdoc">
5099
Jenkins514be652019-02-28 12:25:18 +00005100<p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D Sizes. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005101
Jenkins514be652019-02-28 12:25:18 +00005102<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00113">113</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005103
5104</div>
5105</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005106<a id="a7b4c4a79c73a3f85ba89aff03fddefa7"></a>
5107<h2 class="memtitle"><span class="permalink"><a href="#a7b4c4a79c73a3f85ba89aff03fddefa7">&#9670;&nbsp;</a></span>CLUInt16Array</h2>
5108
Anthony Barbier871448e2017-03-24 14:54:29 +00005109<div class="memitem">
5110<div class="memproto">
5111 <table class="memname">
5112 <tr>
5113 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a7b4c4a79c73a3f85ba89aff03fddefa7">CLUInt16Array</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt;cl_ushort&gt;</td>
5114 </tr>
5115 </table>
5116</div><div class="memdoc">
5117
Jenkins514be652019-02-28 12:25:18 +00005118<p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint16s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005119
Jenkins514be652019-02-28 12:25:18 +00005120<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00117">117</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005121
5122</div>
5123</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005124<a id="a1d7d89b7e990055dc95ed37dfb24da48"></a>
5125<h2 class="memtitle"><span class="permalink"><a href="#a1d7d89b7e990055dc95ed37dfb24da48">&#9670;&nbsp;</a></span>CLUInt32Array</h2>
5126
Anthony Barbier871448e2017-03-24 14:54:29 +00005127<div class="memitem">
5128<div class="memproto">
5129 <table class="memname">
5130 <tr>
5131 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a1d7d89b7e990055dc95ed37dfb24da48">CLUInt32Array</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt;cl_uint&gt;</td>
5132 </tr>
5133 </table>
5134</div><div class="memdoc">
5135
Jenkins514be652019-02-28 12:25:18 +00005136<p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint32s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005137
Jenkins514be652019-02-28 12:25:18 +00005138<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00119">119</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005139
5140</div>
5141</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005142<a id="aa031694bb03711e09e25546ad2b643cc"></a>
5143<h2 class="memtitle"><span class="permalink"><a href="#aa031694bb03711e09e25546ad2b643cc">&#9670;&nbsp;</a></span>CLUInt8Array</h2>
5144
Anthony Barbier871448e2017-03-24 14:54:29 +00005145<div class="memitem">
5146<div class="memproto">
5147 <table class="memname">
5148 <tr>
5149 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#aa031694bb03711e09e25546ad2b643cc">CLUInt8Array</a> = <a class="el" href="classarm__compute_1_1_c_l_array.xhtml">CLArray</a>&lt;cl_uchar&gt;</td>
5150 </tr>
5151 </table>
5152</div><div class="memdoc">
5153
Jenkins514be652019-02-28 12:25:18 +00005154<p>OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint8s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005155
Jenkins514be652019-02-28 12:25:18 +00005156<p class="definition">Definition at line <a class="el" href="_c_l_array_8h_source.xhtml#l00115">115</a> of file <a class="el" href="_c_l_array_8h_source.xhtml">CLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005157
5158</div>
5159</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005160<a id="a926fa1a0e7fd320cff5ba6c6f62f463b"></a>
5161<h2 class="memtitle"><span class="permalink"><a href="#a926fa1a0e7fd320cff5ba6c6f62f463b">&#9670;&nbsp;</a></span>const_ptr_t</h2>
5162
5163<div class="memitem">
5164<div class="memproto">
5165 <table class="memname">
5166 <tr>
5167 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a> = const T *</td>
5168 </tr>
5169 </table>
5170</div><div class="memdoc">
5171
5172<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00095">95</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
5173
5174</div>
5175</div>
5176<a id="a327abccf7b43aa32d6a24319b986f3ab"></a>
5177<h2 class="memtitle"><span class="permalink"><a href="#a327abccf7b43aa32d6a24319b986f3ab">&#9670;&nbsp;</a></span>Coordinates2DArray</h2>
5178
Anthony Barbier871448e2017-03-24 14:54:29 +00005179<div class="memitem">
5180<div class="memproto">
5181 <table class="memname">
5182 <tr>
5183 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a327abccf7b43aa32d6a24319b986f3ab">Coordinates2DArray</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt;<a class="el" href="structarm__compute_1_1_coordinates2_d.xhtml">Coordinates2D</a>&gt;</td>
5184 </tr>
5185 </table>
5186</div><div class="memdoc">
5187
Jenkins514be652019-02-28 12:25:18 +00005188<p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a>. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005189
Jenkinsb9abeae2018-11-22 11:58:08 +00005190<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00067">67</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005191
5192</div>
5193</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005194<a id="a5fe01ab895629edd84a511b56657d79e"></a>
5195<h2 class="memtitle"><span class="permalink"><a href="#a5fe01ab895629edd84a511b56657d79e">&#9670;&nbsp;</a></span>DetectionWindowArray</h2>
5196
Anthony Barbier871448e2017-03-24 14:54:29 +00005197<div class="memitem">
5198<div class="memproto">
5199 <table class="memname">
5200 <tr>
5201 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a5fe01ab895629edd84a511b56657d79e">DetectionWindowArray</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt;<a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a>&gt;</td>
5202 </tr>
5203 </table>
5204</div><div class="memdoc">
5205
Jenkins514be652019-02-28 12:25:18 +00005206<p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Detection Windows. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005207
Jenkinsb9abeae2018-11-22 11:58:08 +00005208<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00069">69</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005209
5210</div>
5211</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005212<a id="a534a101b6176c3e065eba4b4cde7a40e"></a>
5213<h2 class="memtitle"><span class="permalink"><a href="#a534a101b6176c3e065eba4b4cde7a40e">&#9670;&nbsp;</a></span>elem_type_t</h2>
5214
5215<div class="memitem">
5216<div class="memproto">
5217 <table class="memname">
5218 <tr>
5219 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a534a101b6176c3e065eba4b4cde7a40e">elem_type_t</a> = decltype(<a class="el" href="namespacearm__compute.xhtml#a40552ea65ee3fc6d7fa7f1fb17baebe7">vget_lane</a>&lt;0&gt;(std::declval&lt;V&gt;()))</td>
5220 </tr>
5221 </table>
5222</div><div class="memdoc">
5223
5224<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00120">120</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
5225
5226</div>
5227</div>
5228<a id="a6e06029aa1b68c0cdeb80656cc9353fe"></a>
5229<h2 class="memtitle"><span class="permalink"><a href="#a6e06029aa1b68c0cdeb80656cc9353fe">&#9670;&nbsp;</a></span>FloatArray</h2>
5230
Anthony Barbier871448e2017-03-24 14:54:29 +00005231<div class="memitem">
5232<div class="memproto">
5233 <table class="memname">
5234 <tr>
5235 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a6e06029aa1b68c0cdeb80656cc9353fe">FloatArray</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt;float&gt;</td>
5236 </tr>
5237 </table>
5238</div><div class="memdoc">
5239
Jenkins514be652019-02-28 12:25:18 +00005240<p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of floats. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005241
Jenkins514be652019-02-28 12:25:18 +00005242<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00083">83</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005243
5244</div>
5245</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005246<a id="a10f3af894ca8b0479a5e6bc296083314"></a>
5247<h2 class="memtitle"><span class="permalink"><a href="#a10f3af894ca8b0479a5e6bc296083314">&#9670;&nbsp;</a></span>GCDirectConvolutionLayer1x1Kernel</h2>
5248
Anthony Barbier8140e1e2017-12-14 23:48:46 +00005249<div class="memitem">
5250<div class="memproto">
5251 <table class="memname">
5252 <tr>
5253 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a10f3af894ca8b0479a5e6bc296083314">GCDirectConvolutionLayer1x1Kernel</a> = <a class="el" href="classarm__compute_1_1_g_c_direct_convolution_layer_kernel.xhtml">GCDirectConvolutionLayerKernel</a>&lt;1&gt;</td>
5254 </tr>
5255 </table>
5256</div><div class="memdoc">
5257
Jenkinsb3a371b2018-05-23 11:36:53 +01005258<p>Interface for the 1x1 direct convolution kernel. </p>
5259
Jenkinsb9abeae2018-11-22 11:58:08 +00005260<p class="definition">Definition at line <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml#l00086">86</a> of file <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml">GCDirectConvolutionLayerKernel.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00005261
5262</div>
5263</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005264<a id="a35ccf8834da8b67bfb9c61fbc5e5f1e6"></a>
5265<h2 class="memtitle"><span class="permalink"><a href="#a35ccf8834da8b67bfb9c61fbc5e5f1e6">&#9670;&nbsp;</a></span>GCDirectConvolutionLayer3x3Kernel</h2>
5266
Anthony Barbier8140e1e2017-12-14 23:48:46 +00005267<div class="memitem">
5268<div class="memproto">
5269 <table class="memname">
5270 <tr>
5271 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a35ccf8834da8b67bfb9c61fbc5e5f1e6">GCDirectConvolutionLayer3x3Kernel</a> = <a class="el" href="classarm__compute_1_1_g_c_direct_convolution_layer_kernel.xhtml">GCDirectConvolutionLayerKernel</a>&lt;3&gt;</td>
5272 </tr>
5273 </table>
5274</div><div class="memdoc">
5275
Jenkinsb3a371b2018-05-23 11:36:53 +01005276<p>Interface for the 3x3 direct convolution kernel. </p>
5277
Jenkinsb9abeae2018-11-22 11:58:08 +00005278<p class="definition">Definition at line <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml#l00088">88</a> of file <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml">GCDirectConvolutionLayerKernel.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00005279
5280</div>
5281</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005282<a id="a227e525a4d0a4da25040cfdf8a3cf06b"></a>
5283<h2 class="memtitle"><span class="permalink"><a href="#a227e525a4d0a4da25040cfdf8a3cf06b">&#9670;&nbsp;</a></span>GCDirectConvolutionLayer5x5Kernel</h2>
5284
Anthony Barbier8140e1e2017-12-14 23:48:46 +00005285<div class="memitem">
5286<div class="memproto">
5287 <table class="memname">
5288 <tr>
5289 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a227e525a4d0a4da25040cfdf8a3cf06b">GCDirectConvolutionLayer5x5Kernel</a> = <a class="el" href="classarm__compute_1_1_g_c_direct_convolution_layer_kernel.xhtml">GCDirectConvolutionLayerKernel</a>&lt;5&gt;</td>
5290 </tr>
5291 </table>
5292</div><div class="memdoc">
5293
Jenkinsb3a371b2018-05-23 11:36:53 +01005294<p>Interface for the 5x5 direct convolution kernel. </p>
5295
Jenkinsb9abeae2018-11-22 11:58:08 +00005296<p class="definition">Definition at line <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml#l00090">90</a> of file <a class="el" href="_g_c_direct_convolution_layer_kernel_8h_source.xhtml">GCDirectConvolutionLayerKernel.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00005297
5298</div>
5299</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005300<a id="a0b1d72d612fb6f33393ea6cd6cbcf523"></a>
5301<h2 class="memtitle"><span class="permalink"><a href="#a0b1d72d612fb6f33393ea6cd6cbcf523">&#9670;&nbsp;</a></span>GCImage</h2>
5302
Anthony Barbier8140e1e2017-12-14 23:48:46 +00005303<div class="memitem">
5304<div class="memproto">
5305 <table class="memname">
5306 <tr>
5307 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a0b1d72d612fb6f33393ea6cd6cbcf523">GCImage</a> = <a class="el" href="classarm__compute_1_1_g_c_tensor.xhtml">GCTensor</a></td>
5308 </tr>
5309 </table>
5310</div><div class="memdoc">
5311
Jenkins514be652019-02-28 12:25:18 +00005312<p>OpenGL ES <a class="el" href="struct_image.xhtml" title="Structure to hold Image information.">Image</a>. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005313
Jenkinsb9abeae2018-11-22 11:58:08 +00005314<p class="definition">Definition at line <a class="el" href="_g_c_tensor_8h_source.xhtml#l00098">98</a> of file <a class="el" href="_g_c_tensor_8h_source.xhtml">GCTensor.h</a>.</p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005315
5316</div>
5317</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005318<a id="abb079bea3cd2a65a7018eab99392747e"></a>
5319<h2 class="memtitle"><span class="permalink"><a href="#abb079bea3cd2a65a7018eab99392747e">&#9670;&nbsp;</a></span>GCMemoryGroup</h2>
5320
Jenkinsb3a371b2018-05-23 11:36:53 +01005321<div class="memitem">
5322<div class="memproto">
5323 <table class="memname">
5324 <tr>
5325 <td class="memname">typedef <a class="el" href="classarm__compute_1_1_memory_group_base.xhtml">MemoryGroupBase</a>&lt; <a class="el" href="classarm__compute_1_1_g_c_tensor.xhtml">GCTensor</a> &gt; <a class="el" href="namespacearm__compute.xhtml#abb079bea3cd2a65a7018eab99392747e">GCMemoryGroup</a></td>
5326 </tr>
5327 </table>
5328</div><div class="memdoc">
5329
Jenkinsb9abeae2018-11-22 11:58:08 +00005330<p class="definition">Definition at line <a class="el" href="_g_c_memory_group_8h_source.xhtml#l00035">35</a> of file <a class="el" href="_g_c_memory_group_8h_source.xhtml">GCMemoryGroup.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00005331
5332</div>
5333</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005334<a id="ad2398d0f2ce77c10bbebf1f85317dde5"></a>
5335<h2 class="memtitle"><span class="permalink"><a href="#ad2398d0f2ce77c10bbebf1f85317dde5">&#9670;&nbsp;</a></span>GroupMappings</h2>
5336
Kaizen8938bd32017-09-28 14:38:23 +01005337<div class="memitem">
5338<div class="memproto">
5339 <table class="memname">
5340 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00005341 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ad2398d0f2ce77c10bbebf1f85317dde5">GroupMappings</a> = std::map&lt;size_t, <a class="el" href="namespacearm__compute.xhtml#a43b7da220a8ead83acff98f218f7eb6b">MemoryMappings</a>&gt;</td>
Kaizen8938bd32017-09-28 14:38:23 +01005342 </tr>
5343 </table>
5344</div><div class="memdoc">
5345
5346<p>A map of the groups and memory mappings. </p>
5347
Jenkinsb9abeae2018-11-22 11:58:08 +00005348<p class="definition">Definition at line <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml#l00048">48</a> of file <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml">Types.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +01005349
5350</div>
5351</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005352<a id="a73e2825fd61d349c5ca2f5313e3c8ea1"></a>
5353<h2 class="memtitle"><span class="permalink"><a href="#a73e2825fd61d349c5ca2f5313e3c8ea1">&#9670;&nbsp;</a></span>half</h2>
5354
Kaizen8938bd32017-09-28 14:38:23 +01005355<div class="memitem">
5356<div class="memproto">
5357 <table class="memname">
5358 <tr>
5359 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">half</a> = half_float::half</td>
5360 </tr>
5361 </table>
5362</div><div class="memdoc">
5363
5364<p>16-bit floating point type </p>
5365
Jenkinsb9abeae2018-11-22 11:58:08 +00005366<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00044">44</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +01005367
5368</div>
5369</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005370<a id="a05d88c40a53babe38cb2cb5841c4a0ad"></a>
5371<h2 class="memtitle"><span class="permalink"><a href="#a05d88c40a53babe38cb2cb5841c4a0ad">&#9670;&nbsp;</a></span>ICLCoefficientTableArray</h2>
5372
Anthony Barbier871448e2017-03-24 14:54:29 +00005373<div class="memitem">
5374<div class="memproto">
5375 <table class="memname">
5376 <tr>
5377 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a05d88c40a53babe38cb2cb5841c4a0ad">ICLCoefficientTableArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt;<a class="el" href="structarm__compute_1_1_c_l_coefficient_table.xhtml">CLCoefficientTable</a>&gt;</td>
5378 </tr>
5379 </table>
5380</div><div class="memdoc">
5381
Jenkins514be652019-02-28 12:25:18 +00005382<p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Coefficient Tables. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005383
Jenkinsb9abeae2018-11-22 11:58:08 +00005384<p class="definition">Definition at line <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml#l00068">68</a> of file <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml">CLLKTrackerKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005385
5386</div>
5387</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005388<a id="adf4063963bf3a4b07a5d0cc840da9ee2"></a>
5389<h2 class="memtitle"><span class="permalink"><a href="#adf4063963bf3a4b07a5d0cc840da9ee2">&#9670;&nbsp;</a></span>ICLCoordinates2DArray</h2>
5390
Anthony Barbier871448e2017-03-24 14:54:29 +00005391<div class="memitem">
5392<div class="memproto">
5393 <table class="memname">
5394 <tr>
5395 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#adf4063963bf3a4b07a5d0cc840da9ee2">ICLCoordinates2DArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt;<a class="el" href="structarm__compute_1_1_coordinates2_d.xhtml">Coordinates2D</a>&gt;</td>
5396 </tr>
5397 </table>
5398</div><div class="memdoc">
5399
Jenkins514be652019-02-28 12:25:18 +00005400<p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a>. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005401
Jenkinsb9abeae2018-11-22 11:58:08 +00005402<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00121">121</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005403
5404</div>
5405</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005406<a id="a4cc908807b0a45ccc6ce7ba340ae2259"></a>
5407<h2 class="memtitle"><span class="permalink"><a href="#a4cc908807b0a45ccc6ce7ba340ae2259">&#9670;&nbsp;</a></span>ICLDetectionWindowArray</h2>
5408
Anthony Barbier871448e2017-03-24 14:54:29 +00005409<div class="memitem">
5410<div class="memproto">
5411 <table class="memname">
5412 <tr>
5413 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a4cc908807b0a45ccc6ce7ba340ae2259">ICLDetectionWindowArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt;<a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a>&gt;</td>
5414 </tr>
5415 </table>
5416</div><div class="memdoc">
5417
Jenkins514be652019-02-28 12:25:18 +00005418<p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Detection Windows. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005419
Jenkinsb9abeae2018-11-22 11:58:08 +00005420<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00123">123</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005421
5422</div>
5423</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005424<a id="a631bac7c033a0d341c631870f9755217"></a>
5425<h2 class="memtitle"><span class="permalink"><a href="#a631bac7c033a0d341c631870f9755217">&#9670;&nbsp;</a></span>ICLFloatArray</h2>
5426
Anthony Barbier871448e2017-03-24 14:54:29 +00005427<div class="memitem">
5428<div class="memproto">
5429 <table class="memname">
5430 <tr>
5431 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a631bac7c033a0d341c631870f9755217">ICLFloatArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt;cl_float&gt;</td>
5432 </tr>
5433 </table>
5434</div><div class="memdoc">
5435
Jenkins514be652019-02-28 12:25:18 +00005436<p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of floats. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005437
Jenkins514be652019-02-28 12:25:18 +00005438<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00137">137</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005439
5440</div>
5441</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005442<a id="aa80145f30ddae0c2ccbcaa910e3e71dd"></a>
5443<h2 class="memtitle"><span class="permalink"><a href="#aa80145f30ddae0c2ccbcaa910e3e71dd">&#9670;&nbsp;</a></span>ICLImage</h2>
5444
Anthony Barbier871448e2017-03-24 14:54:29 +00005445<div class="memitem">
5446<div class="memproto">
5447 <table class="memname">
5448 <tr>
5449 <td class="memname">typedef <a class="el" href="classarm__compute_1_1_i_c_l_tensor.xhtml">ICLTensor</a> <a class="el" href="namespacearm__compute.xhtml#aa80145f30ddae0c2ccbcaa910e3e71dd">ICLImage</a></td>
5450 </tr>
5451 </table>
5452</div><div class="memdoc">
5453
Jenkinsb3a371b2018-05-23 11:36:53 +01005454<p>Interface for OpenCL images. </p>
5455
Jenkinsb9abeae2018-11-22 11:58:08 +00005456<p class="definition">Definition at line <a class="el" href="_i_c_l_multi_image_8h_source.xhtml#l00033">33</a> of file <a class="el" href="_i_c_l_multi_image_8h_source.xhtml">ICLMultiImage.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005457
5458</div>
5459</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005460<a id="a67328fa21e30aecd0c27d6d2e63a2b9c"></a>
5461<h2 class="memtitle"><span class="permalink"><a href="#a67328fa21e30aecd0c27d6d2e63a2b9c">&#9670;&nbsp;</a></span>ICLInt16Array</h2>
5462
Anthony Barbier871448e2017-03-24 14:54:29 +00005463<div class="memitem">
5464<div class="memproto">
5465 <table class="memname">
5466 <tr>
5467 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a67328fa21e30aecd0c27d6d2e63a2b9c">ICLInt16Array</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt;cl_short&gt;</td>
5468 </tr>
5469 </table>
5470</div><div class="memdoc">
5471
Jenkins514be652019-02-28 12:25:18 +00005472<p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int16s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005473
Jenkins514be652019-02-28 12:25:18 +00005474<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00133">133</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005475
5476</div>
5477</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005478<a id="ab95380ecf1c0253f6c785c0f59194066"></a>
5479<h2 class="memtitle"><span class="permalink"><a href="#ab95380ecf1c0253f6c785c0f59194066">&#9670;&nbsp;</a></span>ICLInt32Array</h2>
5480
Anthony Barbier871448e2017-03-24 14:54:29 +00005481<div class="memitem">
5482<div class="memproto">
5483 <table class="memname">
5484 <tr>
5485 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ab95380ecf1c0253f6c785c0f59194066">ICLInt32Array</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt;cl_int&gt;</td>
5486 </tr>
5487 </table>
5488</div><div class="memdoc">
5489
Jenkins514be652019-02-28 12:25:18 +00005490<p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int32s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005491
Jenkins514be652019-02-28 12:25:18 +00005492<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00135">135</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005493
5494</div>
5495</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005496<a id="adb969f0e554bf563f2fa671399d59280"></a>
5497<h2 class="memtitle"><span class="permalink"><a href="#adb969f0e554bf563f2fa671399d59280">&#9670;&nbsp;</a></span>ICLKeyPointArray</h2>
5498
Anthony Barbier871448e2017-03-24 14:54:29 +00005499<div class="memitem">
5500<div class="memproto">
5501 <table class="memname">
5502 <tr>
5503 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#adb969f0e554bf563f2fa671399d59280">ICLKeyPointArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt;<a class="el" href="structarm__compute_1_1_key_point.xhtml">KeyPoint</a>&gt;</td>
5504 </tr>
5505 </table>
5506</div><div class="memdoc">
5507
Jenkins514be652019-02-28 12:25:18 +00005508<p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Key Points. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005509
Jenkinsb9abeae2018-11-22 11:58:08 +00005510<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00119">119</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005511
5512</div>
5513</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005514<a id="a569a32a7a853d4708fd4f4840c88a157"></a>
5515<h2 class="memtitle"><span class="permalink"><a href="#a569a32a7a853d4708fd4f4840c88a157">&#9670;&nbsp;</a></span>ICLLKInternalKeypointArray</h2>
5516
Anthony Barbier871448e2017-03-24 14:54:29 +00005517<div class="memitem">
5518<div class="memproto">
5519 <table class="memname">
5520 <tr>
5521 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a569a32a7a853d4708fd4f4840c88a157">ICLLKInternalKeypointArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt;<a class="el" href="structarm__compute_1_1_c_l_l_k_internal_keypoint.xhtml">CLLKInternalKeypoint</a>&gt;</td>
5522 </tr>
5523 </table>
5524</div><div class="memdoc">
5525
Jenkins514be652019-02-28 12:25:18 +00005526<p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Internal Key Points. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005527
Jenkinsb9abeae2018-11-22 11:58:08 +00005528<p class="definition">Definition at line <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml#l00066">66</a> of file <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml">CLLKTrackerKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005529
5530</div>
5531</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005532<a id="a0339a19c93dde6754834a7d4ec7dab73"></a>
5533<h2 class="memtitle"><span class="permalink"><a href="#a0339a19c93dde6754834a7d4ec7dab73">&#9670;&nbsp;</a></span>ICLOldValArray</h2>
5534
Anthony Barbier871448e2017-03-24 14:54:29 +00005535<div class="memitem">
5536<div class="memproto">
5537 <table class="memname">
5538 <tr>
5539 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a0339a19c93dde6754834a7d4ec7dab73">ICLOldValArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt;<a class="el" href="structarm__compute_1_1_c_l_old_value.xhtml">CLOldValue</a>&gt;</td>
5540 </tr>
5541 </table>
5542</div><div class="memdoc">
5543
Jenkins514be652019-02-28 12:25:18 +00005544<p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Old Values. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005545
Jenkinsb9abeae2018-11-22 11:58:08 +00005546<p class="definition">Definition at line <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml#l00070">70</a> of file <a class="el" href="_c_l_l_k_tracker_kernel_8h_source.xhtml">CLLKTrackerKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005547
5548</div>
5549</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005550<a id="a68396eee600b3d23bf7f95a802e65dff"></a>
5551<h2 class="memtitle"><span class="permalink"><a href="#a68396eee600b3d23bf7f95a802e65dff">&#9670;&nbsp;</a></span>ICLSize2DArray</h2>
5552
Anthony Barbier871448e2017-03-24 14:54:29 +00005553<div class="memitem">
5554<div class="memproto">
5555 <table class="memname">
5556 <tr>
5557 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a68396eee600b3d23bf7f95a802e65dff">ICLSize2DArray</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt;<a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a>&gt;</td>
5558 </tr>
5559 </table>
5560</div><div class="memdoc">
5561
Jenkins514be652019-02-28 12:25:18 +00005562<p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D Sizes. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005563
Jenkins514be652019-02-28 12:25:18 +00005564<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00125">125</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005565
5566</div>
5567</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005568<a id="aed5c7222c31a34327f00de37d8c4f4fc"></a>
5569<h2 class="memtitle"><span class="permalink"><a href="#aed5c7222c31a34327f00de37d8c4f4fc">&#9670;&nbsp;</a></span>ICLUInt16Array</h2>
5570
Anthony Barbier871448e2017-03-24 14:54:29 +00005571<div class="memitem">
5572<div class="memproto">
5573 <table class="memname">
5574 <tr>
5575 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#aed5c7222c31a34327f00de37d8c4f4fc">ICLUInt16Array</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt;cl_ushort&gt;</td>
5576 </tr>
5577 </table>
5578</div><div class="memdoc">
5579
Jenkins514be652019-02-28 12:25:18 +00005580<p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint16s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005581
Jenkins514be652019-02-28 12:25:18 +00005582<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00129">129</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005583
5584</div>
5585</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005586<a id="a6b5f839e8d27c6351e8d58812dd46c97"></a>
5587<h2 class="memtitle"><span class="permalink"><a href="#a6b5f839e8d27c6351e8d58812dd46c97">&#9670;&nbsp;</a></span>ICLUInt32Array</h2>
5588
Anthony Barbier871448e2017-03-24 14:54:29 +00005589<div class="memitem">
5590<div class="memproto">
5591 <table class="memname">
5592 <tr>
5593 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a6b5f839e8d27c6351e8d58812dd46c97">ICLUInt32Array</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt;cl_uint&gt;</td>
5594 </tr>
5595 </table>
5596</div><div class="memdoc">
5597
Jenkins514be652019-02-28 12:25:18 +00005598<p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint32s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005599
Jenkins514be652019-02-28 12:25:18 +00005600<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00131">131</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005601
5602</div>
5603</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005604<a id="a72251c7a73b3c057ffca9f32ee3e19ea"></a>
5605<h2 class="memtitle"><span class="permalink"><a href="#a72251c7a73b3c057ffca9f32ee3e19ea">&#9670;&nbsp;</a></span>ICLUInt8Array</h2>
5606
Anthony Barbier871448e2017-03-24 14:54:29 +00005607<div class="memitem">
5608<div class="memproto">
5609 <table class="memname">
5610 <tr>
5611 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a72251c7a73b3c057ffca9f32ee3e19ea">ICLUInt8Array</a> = <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml">ICLArray</a>&lt;cl_uchar&gt;</td>
5612 </tr>
5613 </table>
5614</div><div class="memdoc">
5615
Jenkins514be652019-02-28 12:25:18 +00005616<p>Interface for OpenCL <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint8s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005617
Jenkins514be652019-02-28 12:25:18 +00005618<p class="definition">Definition at line <a class="el" href="_i_c_l_array_8h_source.xhtml#l00127">127</a> of file <a class="el" href="_i_c_l_array_8h_source.xhtml">ICLArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005619
5620</div>
5621</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005622<a id="aac9efd49d3bbbd53779713e5fb37de62"></a>
5623<h2 class="memtitle"><span class="permalink"><a href="#aac9efd49d3bbbd53779713e5fb37de62">&#9670;&nbsp;</a></span>ICoordinates2DArray</h2>
5624
Anthony Barbier871448e2017-03-24 14:54:29 +00005625<div class="memitem">
5626<div class="memproto">
5627 <table class="memname">
5628 <tr>
5629 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#aac9efd49d3bbbd53779713e5fb37de62">ICoordinates2DArray</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt;<a class="el" href="structarm__compute_1_1_coordinates2_d.xhtml">Coordinates2D</a>&gt;</td>
5630 </tr>
5631 </table>
5632</div><div class="memdoc">
5633
Jenkins514be652019-02-28 12:25:18 +00005634<p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a>. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005635
Jenkins514be652019-02-28 12:25:18 +00005636<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00141">141</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005637
5638</div>
5639</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005640<a id="a52b3b9de6092ae37321159c4c2f1bf40"></a>
5641<h2 class="memtitle"><span class="permalink"><a href="#a52b3b9de6092ae37321159c4c2f1bf40">&#9670;&nbsp;</a></span>IDetectionWindowArray</h2>
5642
Anthony Barbier871448e2017-03-24 14:54:29 +00005643<div class="memitem">
5644<div class="memproto">
5645 <table class="memname">
5646 <tr>
5647 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a52b3b9de6092ae37321159c4c2f1bf40">IDetectionWindowArray</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt;<a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a>&gt;</td>
5648 </tr>
5649 </table>
5650</div><div class="memdoc">
5651
Jenkins514be652019-02-28 12:25:18 +00005652<p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Detection Windows. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005653
Jenkins514be652019-02-28 12:25:18 +00005654<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00143">143</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005655
5656</div>
5657</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005658<a id="a8a82a1928159e86b0778c3c14e8842be"></a>
5659<h2 class="memtitle"><span class="permalink"><a href="#a8a82a1928159e86b0778c3c14e8842be">&#9670;&nbsp;</a></span>IFloatArray</h2>
5660
Anthony Barbier871448e2017-03-24 14:54:29 +00005661<div class="memitem">
5662<div class="memproto">
5663 <table class="memname">
5664 <tr>
5665 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a8a82a1928159e86b0778c3c14e8842be">IFloatArray</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt;float&gt;</td>
5666 </tr>
5667 </table>
5668</div><div class="memdoc">
5669
Jenkins514be652019-02-28 12:25:18 +00005670<p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of floats. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005671
Jenkins514be652019-02-28 12:25:18 +00005672<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00157">157</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005673
5674</div>
5675</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005676<a id="a39070701484fa98eaa18cfcdb6aeb175"></a>
5677<h2 class="memtitle"><span class="permalink"><a href="#a39070701484fa98eaa18cfcdb6aeb175">&#9670;&nbsp;</a></span>IGCImage</h2>
5678
Anthony Barbier8140e1e2017-12-14 23:48:46 +00005679<div class="memitem">
5680<div class="memproto">
5681 <table class="memname">
5682 <tr>
5683 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a39070701484fa98eaa18cfcdb6aeb175">IGCImage</a> = <a class="el" href="classarm__compute_1_1_i_g_c_tensor.xhtml">IGCTensor</a></td>
5684 </tr>
5685 </table>
5686</div><div class="memdoc">
5687
Jenkinsb3a371b2018-05-23 11:36:53 +01005688<p>Interface for GLES Compute image. </p>
5689
Jenkinsb9abeae2018-11-22 11:58:08 +00005690<p class="definition">Definition at line <a class="el" href="_i_g_c_tensor_8h_source.xhtml#l00111">111</a> of file <a class="el" href="_i_g_c_tensor_8h_source.xhtml">IGCTensor.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00005691
5692</div>
5693</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005694<a id="ac20902ac1ef01783c8a8d71a9bdf1100"></a>
5695<h2 class="memtitle"><span class="permalink"><a href="#ac20902ac1ef01783c8a8d71a9bdf1100">&#9670;&nbsp;</a></span>IImage</h2>
5696
Anthony Barbier871448e2017-03-24 14:54:29 +00005697<div class="memitem">
5698<div class="memproto">
5699 <table class="memname">
5700 <tr>
5701 <td class="memname">typedef <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> <a class="el" href="namespacearm__compute.xhtml#ac20902ac1ef01783c8a8d71a9bdf1100">IImage</a></td>
5702 </tr>
5703 </table>
5704</div><div class="memdoc">
5705
Jenkinsb3a371b2018-05-23 11:36:53 +01005706<p>Interface for CPP Images. </p>
5707
Jenkinsb9abeae2018-11-22 11:58:08 +00005708<p class="definition">Definition at line <a class="el" href="_c_p_p_corner_candidates_kernel_8h_source.xhtml#l00037">37</a> of file <a class="el" href="_c_p_p_corner_candidates_kernel_8h_source.xhtml">CPPCornerCandidatesKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005709
5710</div>
5711</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005712<a id="a1dd5e04cea002eae658fa2a899848ad7"></a>
5713<h2 class="memtitle"><span class="permalink"><a href="#a1dd5e04cea002eae658fa2a899848ad7">&#9670;&nbsp;</a></span>IInt16Array</h2>
5714
Anthony Barbier871448e2017-03-24 14:54:29 +00005715<div class="memitem">
5716<div class="memproto">
5717 <table class="memname">
5718 <tr>
5719 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a1dd5e04cea002eae658fa2a899848ad7">IInt16Array</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt;int16_t&gt;</td>
5720 </tr>
5721 </table>
5722</div><div class="memdoc">
5723
Jenkins514be652019-02-28 12:25:18 +00005724<p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int16s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005725
Jenkins514be652019-02-28 12:25:18 +00005726<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00153">153</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005727
5728</div>
5729</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005730<a id="a51fdf34dfc5c60b6f4f455f0a9cac457"></a>
5731<h2 class="memtitle"><span class="permalink"><a href="#a51fdf34dfc5c60b6f4f455f0a9cac457">&#9670;&nbsp;</a></span>IInt32Array</h2>
5732
Anthony Barbier871448e2017-03-24 14:54:29 +00005733<div class="memitem">
5734<div class="memproto">
5735 <table class="memname">
5736 <tr>
5737 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a51fdf34dfc5c60b6f4f455f0a9cac457">IInt32Array</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt;int32_t&gt;</td>
5738 </tr>
5739 </table>
5740</div><div class="memdoc">
5741
Jenkins514be652019-02-28 12:25:18 +00005742<p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int32s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005743
Jenkins514be652019-02-28 12:25:18 +00005744<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00155">155</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005745
5746</div>
5747</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005748<a id="ab56a557a5fdf97819f23c35c24f0b0d2"></a>
5749<h2 class="memtitle"><span class="permalink"><a href="#ab56a557a5fdf97819f23c35c24f0b0d2">&#9670;&nbsp;</a></span>IKeyPointArray</h2>
5750
Anthony Barbier871448e2017-03-24 14:54:29 +00005751<div class="memitem">
5752<div class="memproto">
5753 <table class="memname">
5754 <tr>
5755 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ab56a557a5fdf97819f23c35c24f0b0d2">IKeyPointArray</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt;<a class="el" href="structarm__compute_1_1_key_point.xhtml">KeyPoint</a>&gt;</td>
5756 </tr>
5757 </table>
5758</div><div class="memdoc">
5759
Jenkins514be652019-02-28 12:25:18 +00005760<p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Key Points. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005761
Jenkins514be652019-02-28 12:25:18 +00005762<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00139">139</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005763
5764</div>
5765</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005766<a id="a7fb6a368d181ef193475f725c713430a"></a>
5767<h2 class="memtitle"><span class="permalink"><a href="#a7fb6a368d181ef193475f725c713430a">&#9670;&nbsp;</a></span>Image</h2>
5768
Anthony Barbier871448e2017-03-24 14:54:29 +00005769<div class="memitem">
5770<div class="memproto">
5771 <table class="memname">
5772 <tr>
5773 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a7fb6a368d181ef193475f725c713430a">Image</a> = <a class="el" href="classarm__compute_1_1_tensor.xhtml">Tensor</a></td>
5774 </tr>
5775 </table>
5776</div><div class="memdoc">
5777
Jenkins514be652019-02-28 12:25:18 +00005778<p><a class="el" href="struct_image.xhtml" title="Structure to hold Image information.">Image</a>. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005779
Jenkinsb9abeae2018-11-22 11:58:08 +00005780<p class="definition">Definition at line <a class="el" href="runtime_2_tensor_8h_source.xhtml#l00064">64</a> of file <a class="el" href="runtime_2_tensor_8h_source.xhtml">Tensor.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005781
5782</div>
5783</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005784<a id="a9f3ed96e009111cfbe53d3f77c712390"></a>
5785<h2 class="memtitle"><span class="permalink"><a href="#a9f3ed96e009111cfbe53d3f77c712390">&#9670;&nbsp;</a></span>INEKernel</h2>
5786
Anthony Barbier871448e2017-03-24 14:54:29 +00005787<div class="memitem">
5788<div class="memproto">
5789 <table class="memname">
5790 <tr>
5791 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a9f3ed96e009111cfbe53d3f77c712390">INEKernel</a> = <a class="el" href="classarm__compute_1_1_i_c_p_p_kernel.xhtml">ICPPKernel</a></td>
5792 </tr>
5793 </table>
5794</div><div class="memdoc">
5795
Jenkinsb3a371b2018-05-23 11:36:53 +01005796<p>Common interface for all kernels implemented in NEON. </p>
5797
Jenkinsb9abeae2018-11-22 11:58:08 +00005798<p class="definition">Definition at line <a class="el" href="_i_n_e_kernel_8h_source.xhtml#l00032">32</a> of file <a class="el" href="_i_n_e_kernel_8h_source.xhtml">INEKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005799
5800</div>
5801</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005802<a id="a19699533eb1b662e46a10715f6086487"></a>
5803<h2 class="memtitle"><span class="permalink"><a href="#a19699533eb1b662e46a10715f6086487">&#9670;&nbsp;</a></span>INELKInternalKeypointArray</h2>
5804
Anthony Barbier871448e2017-03-24 14:54:29 +00005805<div class="memitem">
5806<div class="memproto">
5807 <table class="memname">
5808 <tr>
5809 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a19699533eb1b662e46a10715f6086487">INELKInternalKeypointArray</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt;<a class="el" href="structarm__compute_1_1_n_e_l_k_internal_keypoint.xhtml">NELKInternalKeypoint</a>&gt;</td>
5810 </tr>
5811 </table>
5812</div><div class="memdoc">
5813
Jenkins514be652019-02-28 12:25:18 +00005814<p>Interface for NEON <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Internal Key Points. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005815
Jenkinsb9abeae2018-11-22 11:58:08 +00005816<p class="definition">Definition at line <a class="el" href="_n_e_l_k_tracker_kernel_8h_source.xhtml#l00049">49</a> of file <a class="el" href="_n_e_l_k_tracker_kernel_8h_source.xhtml">NELKTrackerKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005817
5818</div>
5819</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005820<a id="a4aad0c49ce3d7cf4693830398f190250"></a>
5821<h2 class="memtitle"><span class="permalink"><a href="#a4aad0c49ce3d7cf4693830398f190250">&#9670;&nbsp;</a></span>INESimpleKernel</h2>
5822
Anthony Barbier871448e2017-03-24 14:54:29 +00005823<div class="memitem">
5824<div class="memproto">
5825 <table class="memname">
5826 <tr>
5827 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a4aad0c49ce3d7cf4693830398f190250">INESimpleKernel</a> = <a class="el" href="classarm__compute_1_1_i_c_p_p_simple_kernel.xhtml">ICPPSimpleKernel</a></td>
5828 </tr>
5829 </table>
5830</div><div class="memdoc">
5831
Jenkinsb3a371b2018-05-23 11:36:53 +01005832<p>Interface for simple NEON kernels having 1 tensor input and 1 tensor output. </p>
5833
Jenkinsb9abeae2018-11-22 11:58:08 +00005834<p class="definition">Definition at line <a class="el" href="_i_n_e_simple_kernel_8h_source.xhtml#l00032">32</a> of file <a class="el" href="_i_n_e_simple_kernel_8h_source.xhtml">INESimpleKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005835
5836</div>
5837</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005838<a id="a69c19b38cbee8fa6680513f6ff76bbb3"></a>
5839<h2 class="memtitle"><span class="permalink"><a href="#a69c19b38cbee8fa6680513f6ff76bbb3">&#9670;&nbsp;</a></span>Int16Array</h2>
5840
Anthony Barbier871448e2017-03-24 14:54:29 +00005841<div class="memitem">
5842<div class="memproto">
5843 <table class="memname">
5844 <tr>
5845 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a69c19b38cbee8fa6680513f6ff76bbb3">Int16Array</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt;int16_t&gt;</td>
5846 </tr>
5847 </table>
5848</div><div class="memdoc">
5849
Jenkins514be652019-02-28 12:25:18 +00005850<p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int16s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005851
Jenkins514be652019-02-28 12:25:18 +00005852<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00079">79</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005853
5854</div>
5855</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005856<a id="a6af9862834629c287a81b16837b51e44"></a>
5857<h2 class="memtitle"><span class="permalink"><a href="#a6af9862834629c287a81b16837b51e44">&#9670;&nbsp;</a></span>Int32Array</h2>
5858
Anthony Barbier871448e2017-03-24 14:54:29 +00005859<div class="memitem">
5860<div class="memproto">
5861 <table class="memname">
5862 <tr>
5863 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a6af9862834629c287a81b16837b51e44">Int32Array</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt;int32_t&gt;</td>
5864 </tr>
5865 </table>
5866</div><div class="memdoc">
5867
Jenkins514be652019-02-28 12:25:18 +00005868<p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of int32s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005869
Jenkins514be652019-02-28 12:25:18 +00005870<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00081">81</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005871
5872</div>
5873</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005874<a id="a2ab89a5d0959531aac270879cdd3ed78"></a>
5875<h2 class="memtitle"><span class="permalink"><a href="#a2ab89a5d0959531aac270879cdd3ed78">&#9670;&nbsp;</a></span>InternalKeypoint</h2>
5876
Anthony Barbier871448e2017-03-24 14:54:29 +00005877<div class="memitem">
5878<div class="memproto">
5879 <table class="memname">
5880 <tr>
5881 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a2ab89a5d0959531aac270879cdd3ed78">InternalKeypoint</a> = std::tuple&lt;float, float, float&gt;</td>
5882 </tr>
5883 </table>
5884</div><div class="memdoc">
5885
Jenkinsb3a371b2018-05-23 11:36:53 +01005886<p>Internal key point. </p>
5887
Jenkins514be652019-02-28 12:25:18 +00005888<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00469">469</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005889
5890</div>
5891</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005892<a id="a32e4b9083329486a06960006af89a84c"></a>
5893<h2 class="memtitle"><span class="permalink"><a href="#a32e4b9083329486a06960006af89a84c">&#9670;&nbsp;</a></span>ISize2DArray</h2>
5894
Anthony Barbier871448e2017-03-24 14:54:29 +00005895<div class="memitem">
5896<div class="memproto">
5897 <table class="memname">
5898 <tr>
5899 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a32e4b9083329486a06960006af89a84c">ISize2DArray</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt;<a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a>&gt;</td>
5900 </tr>
5901 </table>
5902</div><div class="memdoc">
5903
Jenkins514be652019-02-28 12:25:18 +00005904<p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D Sizes. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005905
Jenkins514be652019-02-28 12:25:18 +00005906<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00145">145</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005907
5908</div>
5909</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005910<a id="a1ffe8af91a934c926d102938db8d3ce1"></a>
5911<h2 class="memtitle"><span class="permalink"><a href="#a1ffe8af91a934c926d102938db8d3ce1">&#9670;&nbsp;</a></span>IUInt16Array</h2>
5912
Anthony Barbier871448e2017-03-24 14:54:29 +00005913<div class="memitem">
5914<div class="memproto">
5915 <table class="memname">
5916 <tr>
5917 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a1ffe8af91a934c926d102938db8d3ce1">IUInt16Array</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt;uint16_t&gt;</td>
5918 </tr>
5919 </table>
5920</div><div class="memdoc">
5921
Jenkins514be652019-02-28 12:25:18 +00005922<p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint16s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005923
Jenkins514be652019-02-28 12:25:18 +00005924<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00149">149</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005925
5926</div>
5927</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005928<a id="ac9b2a6fa6e146437bfc8c0bee96e4760"></a>
5929<h2 class="memtitle"><span class="permalink"><a href="#ac9b2a6fa6e146437bfc8c0bee96e4760">&#9670;&nbsp;</a></span>IUInt32Array</h2>
5930
Anthony Barbier871448e2017-03-24 14:54:29 +00005931<div class="memitem">
5932<div class="memproto">
5933 <table class="memname">
5934 <tr>
5935 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ac9b2a6fa6e146437bfc8c0bee96e4760">IUInt32Array</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt;uint32_t&gt;</td>
5936 </tr>
5937 </table>
5938</div><div class="memdoc">
5939
Jenkins514be652019-02-28 12:25:18 +00005940<p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint32s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005941
Jenkins514be652019-02-28 12:25:18 +00005942<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00151">151</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005943
5944</div>
5945</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005946<a id="a276401fd5651e75431d3e1cc90601caa"></a>
5947<h2 class="memtitle"><span class="permalink"><a href="#a276401fd5651e75431d3e1cc90601caa">&#9670;&nbsp;</a></span>IUInt8Array</h2>
5948
Anthony Barbier871448e2017-03-24 14:54:29 +00005949<div class="memitem">
5950<div class="memproto">
5951 <table class="memname">
5952 <tr>
5953 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a276401fd5651e75431d3e1cc90601caa">IUInt8Array</a> = <a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a>&lt;uint8_t&gt;</td>
5954 </tr>
5955 </table>
5956</div><div class="memdoc">
5957
Jenkins514be652019-02-28 12:25:18 +00005958<p>Interface for <a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint8s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005959
Jenkins514be652019-02-28 12:25:18 +00005960<p class="definition">Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00147">147</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005961
5962</div>
5963</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005964<a id="a8856eca9a83e16bb0cb5880e9c6c9fe7"></a>
5965<h2 class="memtitle"><span class="permalink"><a href="#a8856eca9a83e16bb0cb5880e9c6c9fe7">&#9670;&nbsp;</a></span>KeyPointArray</h2>
5966
Anthony Barbier871448e2017-03-24 14:54:29 +00005967<div class="memitem">
5968<div class="memproto">
5969 <table class="memname">
5970 <tr>
5971 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a8856eca9a83e16bb0cb5880e9c6c9fe7">KeyPointArray</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt;<a class="el" href="structarm__compute_1_1_key_point.xhtml">KeyPoint</a>&gt;</td>
5972 </tr>
5973 </table>
5974</div><div class="memdoc">
5975
Jenkins514be652019-02-28 12:25:18 +00005976<p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of Key Points. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01005977
Jenkinsb9abeae2018-11-22 11:58:08 +00005978<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00065">65</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00005979
5980</div>
5981</div>
Jenkins514be652019-02-28 12:25:18 +00005982<a id="a668a7893195a4a08c4d26afd2b15a6b4"></a>
5983<h2 class="memtitle"><span class="permalink"><a href="#a668a7893195a4a08c4d26afd2b15a6b4">&#9670;&nbsp;</a></span>LabelBBox</h2>
5984
5985<div class="memitem">
5986<div class="memproto">
5987 <table class="memname">
5988 <tr>
5989 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a668a7893195a4a08c4d26afd2b15a6b4">LabelBBox</a> = std::map&lt;int, std::vector&lt;<a class="el" href="namespacearm__compute.xhtml#a4ec997c1b05a1fd406828bc7e1f41dad">NormalizedBBox</a>&gt; &gt;</td>
5990 </tr>
5991 </table>
5992</div><div class="memdoc">
5993
5994<p class="definition">Definition at line <a class="el" href="_c_p_p_detection_output_layer_8h_source.xhtml#l00040">40</a> of file <a class="el" href="_c_p_p_detection_output_layer_8h_source.xhtml">CPPDetectionOutputLayer.h</a>.</p>
5995
5996</div>
5997</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00005998<a id="a681c120e2188371794ec3a59768c64ab"></a>
5999<h2 class="memtitle"><span class="permalink"><a href="#a681c120e2188371794ec3a59768c64ab">&#9670;&nbsp;</a></span>LKInternalKeypointArray</h2>
6000
Anthony Barbier871448e2017-03-24 14:54:29 +00006001<div class="memitem">
6002<div class="memproto">
6003 <table class="memname">
6004 <tr>
6005 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a681c120e2188371794ec3a59768c64ab">LKInternalKeypointArray</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt;<a class="el" href="structarm__compute_1_1_n_e_l_k_internal_keypoint.xhtml">NELKInternalKeypoint</a>&gt;</td>
6006 </tr>
6007 </table>
6008</div><div class="memdoc">
6009
Jenkins514be652019-02-28 12:25:18 +00006010<p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of LK Internel Keypoints. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01006011
Jenkinsb9abeae2018-11-22 11:58:08 +00006012<p class="definition">Definition at line <a class="el" href="_n_e_optical_flow_8h_source.xhtml#l00046">46</a> of file <a class="el" href="_n_e_optical_flow_8h_source.xhtml">NEOpticalFlow.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +01006013
6014</div>
6015</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006016<a id="a0e7a03e2e133cb1fbb12517a3f646a09"></a>
6017<h2 class="memtitle"><span class="permalink"><a href="#a0e7a03e2e133cb1fbb12517a3f646a09">&#9670;&nbsp;</a></span>MemoryGroup</h2>
6018
Kaizen8938bd32017-09-28 14:38:23 +01006019<div class="memitem">
6020<div class="memproto">
6021 <table class="memname">
6022 <tr>
6023 <td class="memname">typedef <a class="el" href="classarm__compute_1_1_memory_group_base.xhtml">MemoryGroupBase</a>&lt; <a class="el" href="classarm__compute_1_1_tensor.xhtml">Tensor</a> &gt; <a class="el" href="namespacearm__compute.xhtml#a0e7a03e2e133cb1fbb12517a3f646a09">MemoryGroup</a></td>
6024 </tr>
6025 </table>
6026</div><div class="memdoc">
6027
Jenkins514be652019-02-28 12:25:18 +00006028<p><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object.">Memory</a> Group. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01006029
Jenkinsb9abeae2018-11-22 11:58:08 +00006030<p class="definition">Definition at line <a class="el" href="_memory_group_8h_source.xhtml#l00034">34</a> of file <a class="el" href="_memory_group_8h_source.xhtml">MemoryGroup.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +01006031
6032</div>
6033</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006034<a id="a43b7da220a8ead83acff98f218f7eb6b"></a>
6035<h2 class="memtitle"><span class="permalink"><a href="#a43b7da220a8ead83acff98f218f7eb6b">&#9670;&nbsp;</a></span>MemoryMappings</h2>
6036
Kaizen8938bd32017-09-28 14:38:23 +01006037<div class="memitem">
6038<div class="memproto">
6039 <table class="memname">
6040 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00006041 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a43b7da220a8ead83acff98f218f7eb6b">MemoryMappings</a> = std::map&lt;<a class="el" href="classarm__compute_1_1_i_memory.xhtml">IMemory</a> *, size_t&gt;</td>
Kaizen8938bd32017-09-28 14:38:23 +01006042 </tr>
6043 </table>
6044</div><div class="memdoc">
6045
6046<p>A map of (handle, index/offset), where handle is the memory handle of the object to provide the memory for and index/offset is the buffer/offset from the pool that should be used. </p>
6047<dl class="section note"><dt>Note</dt><dd>All objects are pre-pinned to specific buffers to avoid any relevant overheads </dd></dl>
6048
Jenkinsb9abeae2018-11-22 11:58:08 +00006049<p class="definition">Definition at line <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml#l00045">45</a> of file <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml">Types.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +01006050
6051</div>
6052</div>
Jenkins514be652019-02-28 12:25:18 +00006053<a id="afe9e10e5fdfd1e2665ac17c75c0cacd8"></a>
6054<h2 class="memtitle"><span class="permalink"><a href="#afe9e10e5fdfd1e2665ac17c75c0cacd8">&#9670;&nbsp;</a></span>Multiples</h2>
6055
6056<div class="memitem">
6057<div class="memproto">
6058 <table class="memname">
6059 <tr>
6060 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#afe9e10e5fdfd1e2665ac17c75c0cacd8">Multiples</a> = std::vector&lt;uint32_t&gt;</td>
6061 </tr>
6062 </table>
6063</div><div class="memdoc">
6064
6065<p>Information to produce a tiled version of a <a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a>. </p>
6066
6067<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00502">502</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
6068
6069</div>
6070</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006071<a id="acded863dbfdd730829d4188d67eefcf0"></a>
6072<h2 class="memtitle"><span class="permalink"><a href="#acded863dbfdd730829d4188d67eefcf0">&#9670;&nbsp;</a></span>Mutex</h2>
6073
Kaizen8938bd32017-09-28 14:38:23 +01006074<div class="memitem">
6075<div class="memproto">
6076 <table class="memname">
6077 <tr>
6078 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#acded863dbfdd730829d4188d67eefcf0">Mutex</a> = std::mutex</td>
6079 </tr>
6080 </table>
6081</div><div class="memdoc">
6082
Jenkinsb3a371b2018-05-23 11:36:53 +01006083<p>Wrapper of Mutex data-object. </p>
6084
Jenkinsb9abeae2018-11-22 11:58:08 +00006085<p class="definition">Definition at line <a class="el" href="_mutex_8h_source.xhtml#l00033">33</a> of file <a class="el" href="_mutex_8h_source.xhtml">Mutex.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006086
6087</div>
6088</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006089<a id="aff99c045b07329b332b1cb97a2dd1518"></a>
6090<h2 class="memtitle"><span class="permalink"><a href="#aff99c045b07329b332b1cb97a2dd1518">&#9670;&nbsp;</a></span>NEAccumulateWeightedFP16Kernel</h2>
6091
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006092<div class="memitem">
6093<div class="memproto">
6094 <table class="memname">
6095 <tr>
6096 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#aff99c045b07329b332b1cb97a2dd1518">NEAccumulateWeightedFP16Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_accumulate_weighted_kernel.xhtml">NEAccumulateWeightedKernel</a></td>
6097 </tr>
6098 </table>
6099</div><div class="memdoc">
6100
Jenkinsb3a371b2018-05-23 11:36:53 +01006101<p>Interface for the accumulate weighted kernel using F16. </p>
6102
Jenkinsb9abeae2018-11-22 11:58:08 +00006103<p class="definition">Definition at line <a class="el" href="_n_e_accumulate_kernel_8h_source.xhtml#l00105">105</a> of file <a class="el" href="_n_e_accumulate_kernel_8h_source.xhtml">NEAccumulateKernel.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006104
6105</div>
6106</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006107<a id="a96f7f6f98dc47e0dc3b928bf87397ebf"></a>
6108<h2 class="memtitle"><span class="permalink"><a href="#a96f7f6f98dc47e0dc3b928bf87397ebf">&#9670;&nbsp;</a></span>NEBox3x3FP16Kernel</h2>
6109
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006110<div class="memitem">
6111<div class="memproto">
6112 <table class="memname">
6113 <tr>
6114 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a96f7f6f98dc47e0dc3b928bf87397ebf">NEBox3x3FP16Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_box3x3_kernel.xhtml">NEBox3x3Kernel</a></td>
6115 </tr>
6116 </table>
6117</div><div class="memdoc">
6118
Jenkinsb3a371b2018-05-23 11:36:53 +01006119<p>NEON kernel to perform a Box 3x3 filter for FP16 datatype. </p>
6120
Jenkinsb9abeae2018-11-22 11:58:08 +00006121<p class="definition">Definition at line <a class="el" href="_n_e_box3x3_kernel_8h_source.xhtml#l00068">68</a> of file <a class="el" href="_n_e_box3x3_kernel_8h_source.xhtml">NEBox3x3Kernel.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006122
6123</div>
6124</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006125<a id="acf81639b3d33b5da654ef088e4d10520"></a>
6126<h2 class="memtitle"><span class="permalink"><a href="#acf81639b3d33b5da654ef088e4d10520">&#9670;&nbsp;</a></span>NEConvolution3x3Kernel</h2>
6127
Anthony Barbier871448e2017-03-24 14:54:29 +00006128<div class="memitem">
6129<div class="memproto">
6130 <table class="memname">
6131 <tr>
6132 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#acf81639b3d33b5da654ef088e4d10520">NEConvolution3x3Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_kernel.xhtml">NEConvolutionKernel</a>&lt;3&gt;</td>
6133 </tr>
6134 </table>
6135</div><div class="memdoc">
6136
6137<p>Interface for the kernel which applied a 3x3 convolution to a tensor. </p>
6138
Jenkinsb9abeae2018-11-22 11:58:08 +00006139<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00088">88</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006140
6141</div>
6142</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006143<a id="adbc7771d367ba8f51da1450d3602e5c0"></a>
6144<h2 class="memtitle"><span class="permalink"><a href="#adbc7771d367ba8f51da1450d3602e5c0">&#9670;&nbsp;</a></span>NEConvolution5x5</h2>
6145
Anthony Barbier46d59272017-05-04 09:15:15 +01006146<div class="memitem">
6147<div class="memproto">
6148 <table class="memname">
6149 <tr>
6150 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#adbc7771d367ba8f51da1450d3602e5c0">NEConvolution5x5</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_square.xhtml">NEConvolutionSquare</a>&lt;5&gt;</td>
6151 </tr>
6152 </table>
6153</div><div class="memdoc">
6154
6155<p>Basic function to run 5x5 convolution. </p>
6156
Jenkinsb9abeae2018-11-22 11:58:08 +00006157<p class="definition">Definition at line <a class="el" href="_n_e_convolution_8h_source.xhtml#l00102">102</a> of file <a class="el" href="_n_e_convolution_8h_source.xhtml">NEConvolution.h</a>.</p>
Anthony Barbier46d59272017-05-04 09:15:15 +01006158
6159</div>
6160</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006161<a id="a21898b2d2e31ab9af8933c66ff82c8c6"></a>
6162<h2 class="memtitle"><span class="permalink"><a href="#a21898b2d2e31ab9af8933c66ff82c8c6">&#9670;&nbsp;</a></span>NEConvolution5x5Kernel</h2>
6163
Anthony Barbier871448e2017-03-24 14:54:29 +00006164<div class="memitem">
6165<div class="memproto">
6166 <table class="memname">
6167 <tr>
6168 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a21898b2d2e31ab9af8933c66ff82c8c6">NEConvolution5x5Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_kernel.xhtml">NEConvolutionKernel</a>&lt;5&gt;</td>
6169 </tr>
6170 </table>
6171</div><div class="memdoc">
6172
6173<p>Interface for the kernel which applied a 5x5 convolution to a tensor. </p>
6174
Jenkinsb9abeae2018-11-22 11:58:08 +00006175<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00090">90</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006176
6177</div>
6178</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006179<a id="aeb2682fbeb2766df26b4be1971c9757d"></a>
6180<h2 class="memtitle"><span class="permalink"><a href="#aeb2682fbeb2766df26b4be1971c9757d">&#9670;&nbsp;</a></span>NEConvolution7x7</h2>
6181
Anthony Barbier46d59272017-05-04 09:15:15 +01006182<div class="memitem">
6183<div class="memproto">
6184 <table class="memname">
6185 <tr>
6186 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#aeb2682fbeb2766df26b4be1971c9757d">NEConvolution7x7</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_square.xhtml">NEConvolutionSquare</a>&lt;7&gt;</td>
6187 </tr>
6188 </table>
6189</div><div class="memdoc">
6190
6191<p>Basic function to run 7x7 convolution. </p>
6192
Jenkinsb9abeae2018-11-22 11:58:08 +00006193<p class="definition">Definition at line <a class="el" href="_n_e_convolution_8h_source.xhtml#l00104">104</a> of file <a class="el" href="_n_e_convolution_8h_source.xhtml">NEConvolution.h</a>.</p>
Anthony Barbier46d59272017-05-04 09:15:15 +01006194
6195</div>
6196</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006197<a id="ae46cbbe03d31c6c8e7eba7b58999842d"></a>
6198<h2 class="memtitle"><span class="permalink"><a href="#ae46cbbe03d31c6c8e7eba7b58999842d">&#9670;&nbsp;</a></span>NEConvolution7x7Kernel</h2>
6199
Anthony Barbier871448e2017-03-24 14:54:29 +00006200<div class="memitem">
6201<div class="memproto">
6202 <table class="memname">
6203 <tr>
6204 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ae46cbbe03d31c6c8e7eba7b58999842d">NEConvolution7x7Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_kernel.xhtml">NEConvolutionKernel</a>&lt;7&gt;</td>
6205 </tr>
6206 </table>
6207</div><div class="memdoc">
6208
6209<p>Interface for the kernel which applied a 7x7 convolution to a tensor. </p>
6210
Jenkinsb9abeae2018-11-22 11:58:08 +00006211<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00092">92</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006212
6213</div>
6214</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006215<a id="ae5a088552f26a1afafd0cbf821d256fb"></a>
6216<h2 class="memtitle"><span class="permalink"><a href="#ae5a088552f26a1afafd0cbf821d256fb">&#9670;&nbsp;</a></span>NEConvolution9x9</h2>
6217
Anthony Barbier46d59272017-05-04 09:15:15 +01006218<div class="memitem">
6219<div class="memproto">
6220 <table class="memname">
6221 <tr>
6222 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ae5a088552f26a1afafd0cbf821d256fb">NEConvolution9x9</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_square.xhtml">NEConvolutionSquare</a>&lt;9&gt;</td>
6223 </tr>
6224 </table>
6225</div><div class="memdoc">
6226
6227<p>Basic function to run 9x9 convolution. </p>
6228
Jenkinsb9abeae2018-11-22 11:58:08 +00006229<p class="definition">Definition at line <a class="el" href="_n_e_convolution_8h_source.xhtml#l00106">106</a> of file <a class="el" href="_n_e_convolution_8h_source.xhtml">NEConvolution.h</a>.</p>
Anthony Barbier46d59272017-05-04 09:15:15 +01006230
6231</div>
6232</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006233<a id="a1025306f820a9e76df7e5891caacff7b"></a>
6234<h2 class="memtitle"><span class="permalink"><a href="#a1025306f820a9e76df7e5891caacff7b">&#9670;&nbsp;</a></span>NEConvolution9x9Kernel</h2>
6235
Anthony Barbier871448e2017-03-24 14:54:29 +00006236<div class="memitem">
6237<div class="memproto">
6238 <table class="memname">
6239 <tr>
6240 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a1025306f820a9e76df7e5891caacff7b">NEConvolution9x9Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_convolution_kernel.xhtml">NEConvolutionKernel</a>&lt;9&gt;</td>
6241 </tr>
6242 </table>
6243</div><div class="memdoc">
6244
6245<p>Interface for the kernel which applied a 9x9 convolution to a tensor. </p>
6246
Jenkinsb9abeae2018-11-22 11:58:08 +00006247<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00094">94</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006248
6249</div>
6250</div>
Jenkins514be652019-02-28 12:25:18 +00006251<a id="a8fdefd8ed8639758d0aa6c68087d55e6"></a>
6252<h2 class="memtitle"><span class="permalink"><a href="#a8fdefd8ed8639758d0aa6c68087d55e6">&#9670;&nbsp;</a></span>NEEqual</h2>
6253
6254<div class="memitem">
6255<div class="memproto">
6256 <table class="memname">
6257 <tr>
6258 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a8fdefd8ed8639758d0aa6c68087d55e6">NEEqual</a> = <a class="el" href="classarm__compute_1_1_n_e_elementwise_comparison_static.xhtml">NEElementwiseComparisonStatic</a>&lt;<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5">ComparisonOperation::Equal</a>&gt;</td>
6259 </tr>
6260 </table>
6261</div><div class="memdoc">
6262
6263<p>Basic function to run equal comparison. </p>
6264
6265<p class="definition">Definition at line <a class="el" href="_n_e_elementwise_operations_8h_source.xhtml#l00194">194</a> of file <a class="el" href="_n_e_elementwise_operations_8h_source.xhtml">NEElementwiseOperations.h</a>.</p>
6266
6267</div>
6268</div>
6269<a id="a44f1c40220d4ac837899ef5ebf7aaee9"></a>
6270<h2 class="memtitle"><span class="permalink"><a href="#a44f1c40220d4ac837899ef5ebf7aaee9">&#9670;&nbsp;</a></span>NEGreater</h2>
6271
6272<div class="memitem">
6273<div class="memproto">
6274 <table class="memname">
6275 <tr>
6276 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a44f1c40220d4ac837899ef5ebf7aaee9">NEGreater</a> = <a class="el" href="classarm__compute_1_1_n_e_elementwise_comparison_static.xhtml">NEElementwiseComparisonStatic</a>&lt;<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">ComparisonOperation::Greater</a>&gt;</td>
6277 </tr>
6278 </table>
6279</div><div class="memdoc">
6280
6281<p>Basic function to run greater comparison. </p>
6282
6283<p class="definition">Definition at line <a class="el" href="_n_e_elementwise_operations_8h_source.xhtml#l00198">198</a> of file <a class="el" href="_n_e_elementwise_operations_8h_source.xhtml">NEElementwiseOperations.h</a>.</p>
6284
6285</div>
6286</div>
6287<a id="aa09ba119a3b8b2950581f7c80e9445b6"></a>
6288<h2 class="memtitle"><span class="permalink"><a href="#aa09ba119a3b8b2950581f7c80e9445b6">&#9670;&nbsp;</a></span>NEGreaterEqual</h2>
6289
6290<div class="memitem">
6291<div class="memproto">
6292 <table class="memname">
6293 <tr>
6294 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#aa09ba119a3b8b2950581f7c80e9445b6">NEGreaterEqual</a> = <a class="el" href="classarm__compute_1_1_n_e_elementwise_comparison_static.xhtml">NEElementwiseComparisonStatic</a>&lt;<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca758b05d899def79c9eb864ad4f96be1f">ComparisonOperation::GreaterEqual</a>&gt;</td>
6295 </tr>
6296 </table>
6297</div><div class="memdoc">
6298
6299<p>Basic function to run greater-equal comparison. </p>
6300
6301<p class="definition">Definition at line <a class="el" href="_n_e_elementwise_operations_8h_source.xhtml#l00200">200</a> of file <a class="el" href="_n_e_elementwise_operations_8h_source.xhtml">NEElementwiseOperations.h</a>.</p>
6302
6303</div>
6304</div>
6305<a id="a36ae4d66ca830f6aeef54964b0c31fd3"></a>
6306<h2 class="memtitle"><span class="permalink"><a href="#a36ae4d66ca830f6aeef54964b0c31fd3">&#9670;&nbsp;</a></span>NELess</h2>
6307
6308<div class="memitem">
6309<div class="memproto">
6310 <table class="memname">
6311 <tr>
6312 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a36ae4d66ca830f6aeef54964b0c31fd3">NELess</a> = <a class="el" href="classarm__compute_1_1_n_e_elementwise_comparison_static.xhtml">NEElementwiseComparisonStatic</a>&lt;<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca1cfdf0e8d0c87a228c1f40d9bee7888b">ComparisonOperation::Less</a>&gt;</td>
6313 </tr>
6314 </table>
6315</div><div class="memdoc">
6316
6317<p>Basic function to run less comparison. </p>
6318
6319<p class="definition">Definition at line <a class="el" href="_n_e_elementwise_operations_8h_source.xhtml#l00202">202</a> of file <a class="el" href="_n_e_elementwise_operations_8h_source.xhtml">NEElementwiseOperations.h</a>.</p>
6320
6321</div>
6322</div>
6323<a id="ab10ab37a597594e7aabec4a067988d37"></a>
6324<h2 class="memtitle"><span class="permalink"><a href="#ab10ab37a597594e7aabec4a067988d37">&#9670;&nbsp;</a></span>NELessEqual</h2>
6325
6326<div class="memitem">
6327<div class="memproto">
6328 <table class="memname">
6329 <tr>
6330 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ab10ab37a597594e7aabec4a067988d37">NELessEqual</a> = <a class="el" href="classarm__compute_1_1_n_e_elementwise_comparison_static.xhtml">NEElementwiseComparisonStatic</a>&lt;<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58cad3e6fdac55bb7b0edd7834c968ba1f38">ComparisonOperation::LessEqual</a>&gt;</td>
6331 </tr>
6332 </table>
6333</div><div class="memdoc">
6334
6335<p>Basic function to run less-equal comparison. </p>
6336
6337<p class="definition">Definition at line <a class="el" href="_n_e_elementwise_operations_8h_source.xhtml#l00204">204</a> of file <a class="el" href="_n_e_elementwise_operations_8h_source.xhtml">NEElementwiseOperations.h</a>.</p>
6338
6339</div>
6340</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006341<a id="a38cad49e6beaef76bc1ec5064c9e9dba"></a>
6342<h2 class="memtitle"><span class="permalink"><a href="#a38cad49e6beaef76bc1ec5064c9e9dba">&#9670;&nbsp;</a></span>NENonMaximaSuppression3x3FP16Kernel</h2>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006343
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006344<div class="memitem">
6345<div class="memproto">
6346 <table class="memname">
6347 <tr>
6348 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a38cad49e6beaef76bc1ec5064c9e9dba">NENonMaximaSuppression3x3FP16Kernel</a> = <a class="el" href="classarm__compute_1_1_n_e_non_maxima_suppression3x3_kernel.xhtml">NENonMaximaSuppression3x3Kernel</a></td>
6349 </tr>
6350 </table>
6351</div><div class="memdoc">
6352
Jenkinsb3a371b2018-05-23 11:36:53 +01006353<p>NEON kernel to perform Non-Maxima suppression 3x3 with intermediate results in FP16 if the input data type is FP32. </p>
6354
Jenkinsb9abeae2018-11-22 11:58:08 +00006355<p class="definition">Definition at line <a class="el" href="_n_e_non_maxima_suppression3x3_kernel_8h_source.xhtml#l00105">105</a> of file <a class="el" href="_n_e_non_maxima_suppression3x3_kernel_8h_source.xhtml">NENonMaximaSuppression3x3Kernel.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006356
6357</div>
6358</div>
Jenkins514be652019-02-28 12:25:18 +00006359<a id="a732ac47723cd850cc5ffa208bc3e3b00"></a>
6360<h2 class="memtitle"><span class="permalink"><a href="#a732ac47723cd850cc5ffa208bc3e3b00">&#9670;&nbsp;</a></span>NENotEqual</h2>
6361
6362<div class="memitem">
6363<div class="memproto">
6364 <table class="memname">
6365 <tr>
6366 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a732ac47723cd850cc5ffa208bc3e3b00">NENotEqual</a> = <a class="el" href="classarm__compute_1_1_n_e_elementwise_comparison_static.xhtml">NEElementwiseComparisonStatic</a>&lt;<a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca19bb0af2c3c530538cb41aff7f235b96">ComparisonOperation::NotEqual</a>&gt;</td>
6367 </tr>
6368 </table>
6369</div><div class="memdoc">
6370
6371<p>Basic function to run not equal comparison. </p>
6372
6373<p class="definition">Definition at line <a class="el" href="_n_e_elementwise_operations_8h_source.xhtml#l00196">196</a> of file <a class="el" href="_n_e_elementwise_operations_8h_source.xhtml">NEElementwiseOperations.h</a>.</p>
6374
6375</div>
6376</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006377<a id="a0604c803e41880a4a16408efc4e6a69b"></a>
6378<h2 class="memtitle"><span class="permalink"><a href="#a0604c803e41880a4a16408efc4e6a69b">&#9670;&nbsp;</a></span>NEScheduler</h2>
6379
Anthony Barbier871448e2017-03-24 14:54:29 +00006380<div class="memitem">
6381<div class="memproto">
6382 <table class="memname">
6383 <tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01006384 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a0604c803e41880a4a16408efc4e6a69b">NEScheduler</a> = <a class="el" href="classarm__compute_1_1_scheduler.xhtml">Scheduler</a></td>
Anthony Barbier871448e2017-03-24 14:54:29 +00006385 </tr>
6386 </table>
6387</div><div class="memdoc">
6388
Jenkinsb3a371b2018-05-23 11:36:53 +01006389<p>NEON <a class="el" href="classarm__compute_1_1_scheduler.xhtml" title="Configurable scheduler which supports multiple multithreading APIs and choosing between different sch...">Scheduler</a>. </p>
6390
Jenkinsb9abeae2018-11-22 11:58:08 +00006391<p class="definition">Definition at line <a class="el" href="_n_e_scheduler_8h_source.xhtml#l00032">32</a> of file <a class="el" href="_n_e_scheduler_8h_source.xhtml">NEScheduler.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006392
6393</div>
6394</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006395<a id="ac78a7593874c21cff86478c1ba6df27b"></a>
6396<h2 class="memtitle"><span class="permalink"><a href="#ac78a7593874c21cff86478c1ba6df27b">&#9670;&nbsp;</a></span>NESeparableConvolution5x5HorKernel</h2>
6397
Anthony Barbier871448e2017-03-24 14:54:29 +00006398<div class="memitem">
6399<div class="memproto">
6400 <table class="memname">
6401 <tr>
6402 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ac78a7593874c21cff86478c1ba6df27b">NESeparableConvolution5x5HorKernel</a> = <a class="el" href="classarm__compute_1_1_n_e_separable_convolution_hor_kernel.xhtml">NESeparableConvolutionHorKernel</a>&lt;5&gt;</td>
6403 </tr>
6404 </table>
6405</div><div class="memdoc">
6406
6407<p>Interface for the kernel which applied a 5x1 horizontal convolution to a tensor. </p>
6408
Jenkinsb9abeae2018-11-22 11:58:08 +00006409<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00138">138</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006410
6411</div>
6412</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006413<a id="ae4152320657df499674ed64b16c28a7b"></a>
6414<h2 class="memtitle"><span class="permalink"><a href="#ae4152320657df499674ed64b16c28a7b">&#9670;&nbsp;</a></span>NESeparableConvolution5x5VertKernel</h2>
6415
Anthony Barbier871448e2017-03-24 14:54:29 +00006416<div class="memitem">
6417<div class="memproto">
6418 <table class="memname">
6419 <tr>
6420 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ae4152320657df499674ed64b16c28a7b">NESeparableConvolution5x5VertKernel</a> = <a class="el" href="classarm__compute_1_1_n_e_separable_convolution_vert_kernel.xhtml">NESeparableConvolutionVertKernel</a>&lt;5&gt;</td>
6421 </tr>
6422 </table>
6423</div><div class="memdoc">
6424
6425<p>Interface for the kernel which applied a 1x5 vertical convolution to a tensor. </p>
6426
Jenkinsb9abeae2018-11-22 11:58:08 +00006427<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00198">198</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006428
6429</div>
6430</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006431<a id="aca4adbcd292c26b0e392c59875c1e926"></a>
6432<h2 class="memtitle"><span class="permalink"><a href="#aca4adbcd292c26b0e392c59875c1e926">&#9670;&nbsp;</a></span>NESeparableConvolution7x7HorKernel</h2>
6433
Anthony Barbier871448e2017-03-24 14:54:29 +00006434<div class="memitem">
6435<div class="memproto">
6436 <table class="memname">
6437 <tr>
6438 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#aca4adbcd292c26b0e392c59875c1e926">NESeparableConvolution7x7HorKernel</a> = <a class="el" href="classarm__compute_1_1_n_e_separable_convolution_hor_kernel.xhtml">NESeparableConvolutionHorKernel</a>&lt;7&gt;</td>
6439 </tr>
6440 </table>
6441</div><div class="memdoc">
6442
6443<p>Interface for the kernel which applied a 7x1 horizontal convolution to a tensor. </p>
6444
Jenkinsb9abeae2018-11-22 11:58:08 +00006445<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00140">140</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006446
6447</div>
6448</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006449<a id="a0f952bd0821b506e18514a3f4dbc6c39"></a>
6450<h2 class="memtitle"><span class="permalink"><a href="#a0f952bd0821b506e18514a3f4dbc6c39">&#9670;&nbsp;</a></span>NESeparableConvolution7x7VertKernel</h2>
6451
Anthony Barbier871448e2017-03-24 14:54:29 +00006452<div class="memitem">
6453<div class="memproto">
6454 <table class="memname">
6455 <tr>
6456 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a0f952bd0821b506e18514a3f4dbc6c39">NESeparableConvolution7x7VertKernel</a> = <a class="el" href="classarm__compute_1_1_n_e_separable_convolution_vert_kernel.xhtml">NESeparableConvolutionVertKernel</a>&lt;7&gt;</td>
6457 </tr>
6458 </table>
6459</div><div class="memdoc">
6460
6461<p>Interface for the kernel which applied a 1x7 vertical convolution to a tensor. </p>
6462
Jenkinsb9abeae2018-11-22 11:58:08 +00006463<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00200">200</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006464
6465</div>
6466</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006467<a id="a4ba5f6b7cd6b70b75e42149f3bc08f38"></a>
6468<h2 class="memtitle"><span class="permalink"><a href="#a4ba5f6b7cd6b70b75e42149f3bc08f38">&#9670;&nbsp;</a></span>NESeparableConvolution9x9HorKernel</h2>
6469
Anthony Barbier871448e2017-03-24 14:54:29 +00006470<div class="memitem">
6471<div class="memproto">
6472 <table class="memname">
6473 <tr>
6474 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a4ba5f6b7cd6b70b75e42149f3bc08f38">NESeparableConvolution9x9HorKernel</a> = <a class="el" href="classarm__compute_1_1_n_e_separable_convolution_hor_kernel.xhtml">NESeparableConvolutionHorKernel</a>&lt;9&gt;</td>
6475 </tr>
6476 </table>
6477</div><div class="memdoc">
6478
6479<p>Interface for the kernel which applied a 9x1 horizontal convolution to a tensor. </p>
6480
Jenkinsb9abeae2018-11-22 11:58:08 +00006481<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00142">142</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006482
6483</div>
6484</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006485<a id="a6310d21f215fface41df4cde725a62b9"></a>
6486<h2 class="memtitle"><span class="permalink"><a href="#a6310d21f215fface41df4cde725a62b9">&#9670;&nbsp;</a></span>NESeparableConvolution9x9VertKernel</h2>
6487
Anthony Barbier871448e2017-03-24 14:54:29 +00006488<div class="memitem">
6489<div class="memproto">
6490 <table class="memname">
6491 <tr>
6492 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a6310d21f215fface41df4cde725a62b9">NESeparableConvolution9x9VertKernel</a> = <a class="el" href="classarm__compute_1_1_n_e_separable_convolution_vert_kernel.xhtml">NESeparableConvolutionVertKernel</a>&lt;9&gt;</td>
6493 </tr>
6494 </table>
6495</div><div class="memdoc">
6496
6497<p>Interface for the kernel which applied a 1x9 vertical convolution to a tensor. </p>
6498
Jenkinsb9abeae2018-11-22 11:58:08 +00006499<p class="definition">Definition at line <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml#l00202">202</a> of file <a class="el" href="_n_e_convolution_kernel_8h_source.xhtml">NEConvolutionKernel.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006500
6501</div>
6502</div>
Jenkins514be652019-02-28 12:25:18 +00006503<a id="a4ec997c1b05a1fd406828bc7e1f41dad"></a>
6504<h2 class="memtitle"><span class="permalink"><a href="#a4ec997c1b05a1fd406828bc7e1f41dad">&#9670;&nbsp;</a></span>NormalizedBBox</h2>
6505
6506<div class="memitem">
6507<div class="memproto">
6508 <table class="memname">
6509 <tr>
6510 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a4ec997c1b05a1fd406828bc7e1f41dad">NormalizedBBox</a> = std::array&lt;float, 4&gt;</td>
6511 </tr>
6512 </table>
6513</div><div class="memdoc">
6514
6515<p class="definition">Definition at line <a class="el" href="_c_p_p_detection_output_layer_8h_source.xhtml#l00038">38</a> of file <a class="el" href="_c_p_p_detection_output_layer_8h_source.xhtml">CPPDetectionOutputLayer.h</a>.</p>
6516
6517</div>
6518</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006519<a id="a669b5d3c5994f9ae3be31df9a1014297"></a>
6520<h2 class="memtitle"><span class="permalink"><a href="#a669b5d3c5994f9ae3be31df9a1014297">&#9670;&nbsp;</a></span>PaddingInfo</h2>
6521
6522<div class="memitem">
6523<div class="memproto">
6524 <table class="memname">
6525 <tr>
6526 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a669b5d3c5994f9ae3be31df9a1014297">PaddingInfo</a> = std::pair&lt;uint32_t, uint32_t&gt;</td>
6527 </tr>
6528 </table>
6529</div><div class="memdoc">
6530
6531<p>Padding information as a pair of unsigned int start/end. </p>
6532
Jenkins514be652019-02-28 12:25:18 +00006533<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00496">496</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +00006534
6535</div>
6536</div>
6537<a id="ac1a1b012674e0f1de071a611391828ad"></a>
6538<h2 class="memtitle"><span class="permalink"><a href="#ac1a1b012674e0f1de071a611391828ad">&#9670;&nbsp;</a></span>PaddingList</h2>
6539
6540<div class="memitem">
6541<div class="memproto">
6542 <table class="memname">
6543 <tr>
6544 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ac1a1b012674e0f1de071a611391828ad">PaddingList</a> = std::vector&lt;<a class="el" href="namespacearm__compute.xhtml#a669b5d3c5994f9ae3be31df9a1014297">PaddingInfo</a>&gt;</td>
6545 </tr>
6546 </table>
6547</div><div class="memdoc">
6548
6549<p>List of padding information. </p>
6550
Jenkins514be652019-02-28 12:25:18 +00006551<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00499">499</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +00006552
6553</div>
6554</div>
6555<a id="a4467b302fc9ec312c40580336ab783da"></a>
6556<h2 class="memtitle"><span class="permalink"><a href="#a4467b302fc9ec312c40580336ab783da">&#9670;&nbsp;</a></span>PaddingSize</h2>
6557
Anthony Barbier871448e2017-03-24 14:54:29 +00006558<div class="memitem">
6559<div class="memproto">
6560 <table class="memname">
6561 <tr>
6562 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a4467b302fc9ec312c40580336ab783da">PaddingSize</a> = <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a></td>
6563 </tr>
6564 </table>
6565</div><div class="memdoc">
6566
Jenkinsb3a371b2018-05-23 11:36:53 +01006567<p>Container for 2D padding size. </p>
6568
Jenkins514be652019-02-28 12:25:18 +00006569<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00400">400</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006570
6571</div>
6572</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006573<a id="a33e65be485104e2e9e69fca551d6f492"></a>
6574<h2 class="memtitle"><span class="permalink"><a href="#a33e65be485104e2e9e69fca551d6f492">&#9670;&nbsp;</a></span>PermutationVector</h2>
6575
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006576<div class="memitem">
6577<div class="memproto">
6578 <table class="memname">
6579 <tr>
6580 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a33e65be485104e2e9e69fca551d6f492">PermutationVector</a> = <a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a></td>
6581 </tr>
6582 </table>
6583</div><div class="memdoc">
6584
6585<p>Permutation vector. </p>
6586
Jenkinsb9abeae2018-11-22 11:58:08 +00006587<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00047">47</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006588
6589</div>
6590</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006591<a id="a1e36f8a2df3d6bd1756b90e2efb151e9"></a>
6592<h2 class="memtitle"><span class="permalink"><a href="#a1e36f8a2df3d6bd1756b90e2efb151e9">&#9670;&nbsp;</a></span>ptr_t</h2>
6593
6594<div class="memitem">
6595<div class="memproto">
6596 <table class="memname">
6597 <tr>
6598 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a> = T *</td>
6599 </tr>
6600 </table>
6601</div><div class="memdoc">
6602
6603<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00098">98</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
6604
6605</div>
6606</div>
6607<a id="ab8938bcb3ec0f5f8d93285eb3a28b701"></a>
6608<h2 class="memtitle"><span class="permalink"><a href="#ab8938bcb3ec0f5f8d93285eb3a28b701">&#9670;&nbsp;</a></span>qasymm8_t</h2>
6609
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006610<div class="memitem">
6611<div class="memproto">
6612 <table class="memname">
6613 <tr>
6614 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ab8938bcb3ec0f5f8d93285eb3a28b701">qasymm8_t</a> = uint8_t</td>
6615 </tr>
6616 </table>
6617</div><div class="memdoc">
6618
6619<p>8 bit quantized asymmetric scalar value </p>
6620
Jenkinsb9abeae2018-11-22 11:58:08 +00006621<p class="definition">Definition at line <a class="el" href="_q_asymm8_8h_source.xhtml#l00030">30</a> of file <a class="el" href="_q_asymm8_8h_source.xhtml">QAsymm8.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006622
6623</div>
6624</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006625<a id="ac7e1832b8c58f07a98fc8d390b16ac27"></a>
6626<h2 class="memtitle"><span class="permalink"><a href="#ac7e1832b8c58f07a98fc8d390b16ac27">&#9670;&nbsp;</a></span>qasymm8x16_t</h2>
6627
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006628<div class="memitem">
6629<div class="memproto">
6630 <table class="memname">
6631 <tr>
6632 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ac7e1832b8c58f07a98fc8d390b16ac27">qasymm8x16_t</a> = uint8x16_t</td>
6633 </tr>
6634 </table>
6635</div><div class="memdoc">
6636
6637<p>8 bit quantized asymmetric vector with 16 elements </p>
6638
Jenkinsb9abeae2018-11-22 11:58:08 +00006639<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00035">35</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006640
6641</div>
6642</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006643<a id="a70ecc99f2f6b646579b58463dc026671"></a>
6644<h2 class="memtitle"><span class="permalink"><a href="#a70ecc99f2f6b646579b58463dc026671">&#9670;&nbsp;</a></span>qasymm8x8_t</h2>
6645
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006646<div class="memitem">
6647<div class="memproto">
6648 <table class="memname">
6649 <tr>
6650 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a70ecc99f2f6b646579b58463dc026671">qasymm8x8_t</a> = uint8x8_t</td>
6651 </tr>
6652 </table>
6653</div><div class="memdoc">
6654
6655<p>8 bit quantized asymmetric vector with 8 elements </p>
6656
Jenkinsb9abeae2018-11-22 11:58:08 +00006657<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00031">31</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006658
6659</div>
6660</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006661<a id="a805d740633d70a5f0b019d72c517e67d"></a>
6662<h2 class="memtitle"><span class="permalink"><a href="#a805d740633d70a5f0b019d72c517e67d">&#9670;&nbsp;</a></span>qasymm8x8x2_t</h2>
6663
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006664<div class="memitem">
6665<div class="memproto">
6666 <table class="memname">
6667 <tr>
6668 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a805d740633d70a5f0b019d72c517e67d">qasymm8x8x2_t</a> = uint8x8x2_t</td>
6669 </tr>
6670 </table>
6671</div><div class="memdoc">
6672
6673<p>8 bit quantized asymmetric vector with 16 elements </p>
6674
Jenkinsb9abeae2018-11-22 11:58:08 +00006675<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00032">32</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006676
6677</div>
6678</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006679<a id="a0c6e16826765130b480af53eda3635be"></a>
6680<h2 class="memtitle"><span class="permalink"><a href="#a0c6e16826765130b480af53eda3635be">&#9670;&nbsp;</a></span>qasymm8x8x3_t</h2>
6681
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006682<div class="memitem">
6683<div class="memproto">
6684 <table class="memname">
6685 <tr>
6686 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a0c6e16826765130b480af53eda3635be">qasymm8x8x3_t</a> = uint8x8x3_t</td>
6687 </tr>
6688 </table>
6689</div><div class="memdoc">
6690
6691<p>8 bit quantized asymmetric vector with 24 elements </p>
6692
Jenkinsb9abeae2018-11-22 11:58:08 +00006693<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00033">33</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006694
6695</div>
6696</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006697<a id="a41d3460ff424e2e21c629b3f27386a8b"></a>
6698<h2 class="memtitle"><span class="permalink"><a href="#a41d3460ff424e2e21c629b3f27386a8b">&#9670;&nbsp;</a></span>qasymm8x8x4_t</h2>
6699
Anthony Barbier8140e1e2017-12-14 23:48:46 +00006700<div class="memitem">
6701<div class="memproto">
6702 <table class="memname">
6703 <tr>
6704 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a41d3460ff424e2e21c629b3f27386a8b">qasymm8x8x4_t</a> = uint8x8x4_t</td>
6705 </tr>
6706 </table>
6707</div><div class="memdoc">
6708
6709<p>8 bit quantized asymmetric vector with 32 elements </p>
6710
Jenkinsb9abeae2018-11-22 11:58:08 +00006711<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00034">34</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
Anthony Barbierdbdab852017-06-23 15:42:00 +01006712
6713</div>
6714</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006715<a id="abd445adaaca7913c9344c90dc8c76358"></a>
6716<h2 class="memtitle"><span class="permalink"><a href="#abd445adaaca7913c9344c90dc8c76358">&#9670;&nbsp;</a></span>Size2DArray</h2>
6717
Anthony Barbier871448e2017-03-24 14:54:29 +00006718<div class="memitem">
6719<div class="memproto">
6720 <table class="memname">
6721 <tr>
6722 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#abd445adaaca7913c9344c90dc8c76358">Size2DArray</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt;<a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a>&gt;</td>
6723 </tr>
6724 </table>
6725</div><div class="memdoc">
6726
Jenkins514be652019-02-28 12:25:18 +00006727<p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of 2D Sizes. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01006728
Jenkins514be652019-02-28 12:25:18 +00006729<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00071">71</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006730
6731</div>
6732</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006733<a id="ab91cb2269b2e58ed2cb6bd2ca831d434"></a>
6734<h2 class="memtitle"><span class="permalink"><a href="#ab91cb2269b2e58ed2cb6bd2ca831d434">&#9670;&nbsp;</a></span>UInt16Array</h2>
6735
Anthony Barbier871448e2017-03-24 14:54:29 +00006736<div class="memitem">
6737<div class="memproto">
6738 <table class="memname">
6739 <tr>
6740 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ab91cb2269b2e58ed2cb6bd2ca831d434">UInt16Array</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt;uint16_t&gt;</td>
6741 </tr>
6742 </table>
6743</div><div class="memdoc">
6744
Jenkins514be652019-02-28 12:25:18 +00006745<p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint16s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01006746
Jenkins514be652019-02-28 12:25:18 +00006747<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00075">75</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006748
6749</div>
6750</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006751<a id="acd6eb2619ccd5eee4963de3195785359"></a>
6752<h2 class="memtitle"><span class="permalink"><a href="#acd6eb2619ccd5eee4963de3195785359">&#9670;&nbsp;</a></span>UInt32Array</h2>
6753
Anthony Barbier871448e2017-03-24 14:54:29 +00006754<div class="memitem">
6755<div class="memproto">
6756 <table class="memname">
6757 <tr>
6758 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#acd6eb2619ccd5eee4963de3195785359">UInt32Array</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt;uint32_t&gt;</td>
6759 </tr>
6760 </table>
6761</div><div class="memdoc">
6762
Jenkins514be652019-02-28 12:25:18 +00006763<p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint32s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01006764
Jenkins514be652019-02-28 12:25:18 +00006765<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00077">77</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006766
6767</div>
6768</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006769<a id="a9dbb5e00a3f397691eb782f03f65375c"></a>
6770<h2 class="memtitle"><span class="permalink"><a href="#a9dbb5e00a3f397691eb782f03f65375c">&#9670;&nbsp;</a></span>UInt8Array</h2>
6771
Anthony Barbier871448e2017-03-24 14:54:29 +00006772<div class="memitem">
6773<div class="memproto">
6774 <table class="memname">
6775 <tr>
6776 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a9dbb5e00a3f397691eb782f03f65375c">UInt8Array</a> = <a class="el" href="classarm__compute_1_1_array.xhtml">Array</a>&lt;uint8_t&gt;</td>
6777 </tr>
6778 </table>
6779</div><div class="memdoc">
6780
Jenkins514be652019-02-28 12:25:18 +00006781<p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values.">Array</a> of uint8s. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01006782
Jenkins514be652019-02-28 12:25:18 +00006783<p class="definition">Definition at line <a class="el" href="_array_8h_source.xhtml#l00073">73</a> of file <a class="el" href="_array_8h_source.xhtml">Array.h</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +00006784
6785</div>
6786</div>
6787<a id="aef7a69b9cf4a1732d2be114b9b9bf3e3"></a>
6788<h2 class="memtitle"><span class="permalink"><a href="#aef7a69b9cf4a1732d2be114b9b9bf3e3">&#9670;&nbsp;</a></span>vec_16_byte_t</h2>
6789
6790<div class="memitem">
6791<div class="memproto">
6792 <table class="memname">
6793 <tr>
6794 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a> = <a class="el" href="namespacearm__compute.xhtml#a5cd8407762d2446f8eceefcc4b63e537">vec_n_byte_t</a>&lt;T, 16&gt;</td>
6795 </tr>
6796 </table>
6797</div><div class="memdoc">
6798
6799<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00089">89</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
6800
6801</div>
6802</div>
6803<a id="ab448de27f94cd38059b63980c3c08f40"></a>
6804<h2 class="memtitle"><span class="permalink"><a href="#ab448de27f94cd38059b63980c3c08f40">&#9670;&nbsp;</a></span>vec_8_byte_t</h2>
6805
6806<div class="memitem">
6807<div class="memproto">
6808 <table class="memname">
6809 <tr>
6810 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a> = <a class="el" href="namespacearm__compute.xhtml#a5cd8407762d2446f8eceefcc4b63e537">vec_n_byte_t</a>&lt;T, 8&gt;</td>
6811 </tr>
6812 </table>
6813</div><div class="memdoc">
6814
6815<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00092">92</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
6816
6817</div>
6818</div>
6819<a id="a5cd8407762d2446f8eceefcc4b63e537"></a>
6820<h2 class="memtitle"><span class="permalink"><a href="#a5cd8407762d2446f8eceefcc4b63e537">&#9670;&nbsp;</a></span>vec_n_byte_t</h2>
6821
6822<div class="memitem">
6823<div class="memproto">
6824 <table class="memname">
6825 <tr>
6826 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a5cd8407762d2446f8eceefcc4b63e537">vec_n_byte_t</a> = <a class="el" href="namespacearm__compute.xhtml#a3fd0d641ff68bfe8475361a13de7b1cc">vec_n_t</a> &lt; T, N / sizeof(T) &gt;</td>
6827 </tr>
6828 </table>
6829</div><div class="memdoc">
6830
6831<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00086">86</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
6832
6833</div>
6834</div>
6835<a id="a3fd0d641ff68bfe8475361a13de7b1cc"></a>
6836<h2 class="memtitle"><span class="permalink"><a href="#a3fd0d641ff68bfe8475361a13de7b1cc">&#9670;&nbsp;</a></span>vec_n_t</h2>
6837
6838<div class="memitem">
6839<div class="memproto">
6840 <table class="memname">
6841 <tr>
6842 <td class="memname">using <a class="el" href="namespacearm__compute.xhtml#a3fd0d641ff68bfe8475361a13de7b1cc">vec_n_t</a> = typename vec_n_type&lt;T, N&gt;::type</td>
6843 </tr>
6844 </table>
6845</div><div class="memdoc">
6846
6847<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00083">83</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006848
6849</div>
6850</div>
6851<h2 class="groupheader">Enumeration Type Documentation</h2>
Jenkins514be652019-02-28 12:25:18 +00006852<a id="a23d9f0c01c9e120dfb828ee922b7a8ae"></a>
6853<h2 class="memtitle"><span class="permalink"><a href="#a23d9f0c01c9e120dfb828ee922b7a8ae">&#9670;&nbsp;</a></span>ArithmeticOperation</h2>
6854
6855<div class="memitem">
6856<div class="memproto">
6857<table class="mlabels">
6858 <tr>
6859 <td class="mlabels-left">
6860 <table class="memname">
6861 <tr>
6862 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8ae">ArithmeticOperation</a></td>
6863 </tr>
6864 </table>
6865 </td>
6866 <td class="mlabels-right">
6867<span class="mlabels"><span class="mlabel">strong</span></span> </td>
6868 </tr>
6869</table>
6870</div><div class="memdoc">
6871
6872<p>Available element-wise operations. </p>
6873<table class="fieldtable">
6874<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a23d9f0c01c9e120dfb828ee922b7a8aea9eeb52badb613229884838847294b90d"></a>ADD&#160;</td><td class="fielddoc"><p>(x + y) </p>
6875</td></tr>
6876<tr><td class="fieldname"><a id="a23d9f0c01c9e120dfb828ee922b7a8aea241dd841abade20fcb27b8a9f494e1eb"></a>SUB&#160;</td><td class="fielddoc"><p>(x - y) </p>
6877</td></tr>
6878<tr><td class="fieldname"><a id="a23d9f0c01c9e120dfb828ee922b7a8aea29bbf66f7f8529ec47e394fb5a36c646"></a>DIV&#160;</td><td class="fielddoc"><p>(x / y) </p>
6879</td></tr>
6880<tr><td class="fieldname"><a id="a23d9f0c01c9e120dfb828ee922b7a8aeace31e2a082d17e038fcc6e3006166653"></a>MIN&#160;</td><td class="fielddoc"><p>Min(x, y) </p>
6881</td></tr>
6882<tr><td class="fieldname"><a id="a23d9f0c01c9e120dfb828ee922b7a8aea26a4b44a837bf97b972628509912b4a5"></a>MAX&#160;</td><td class="fielddoc"><p>Max(x, y) </p>
6883</td></tr>
6884<tr><td class="fieldname"><a id="a23d9f0c01c9e120dfb828ee922b7a8aea46ea186b87dc545033d86ba8d6e63916"></a>SQUARED_DIFF&#160;</td><td class="fielddoc"><p>(x - y)^2 </p>
6885</td></tr>
6886</table>
6887
6888<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00550">550</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
6889<div class="fragment"><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160;{</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <a class="code" href="elementwise__operation_8cl.xhtml#af3b709fb668cf93ca09e2a46a2a031a8">ADD</a>, </div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; <a class="code" href="elementwise__operation_8cl.xhtml#aafc2c4f262a0686c07f86c7d2e1d8d14">SUB</a>, </div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; <a class="code" href="elementwise__operation_8cl.xhtml#a49f6fecffd852cda3b0ece53dcbb2b87">DIV</a>, </div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; <a class="code" href="elementwise__operation_8cl.xhtml#a74e75242132eaabbc1c512488a135926">MIN</a>, </div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; <a class="code" href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">MAX</a>, </div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; <a class="code" href="elementwise__operation_8cl.xhtml#ab05bd244cb8823c69d6dce6a23a758fd">SQUARED_DIFF</a>, </div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;};</div><div class="ttc" id="elementwise__operation_8cl_xhtml_af3b709fb668cf93ca09e2a46a2a031a8"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#af3b709fb668cf93ca09e2a46a2a031a8">ADD</a></div><div class="ttdeci">#define ADD(x, y)</div><div class="ttdoc">List of all the operations supported by this kernel.</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00032">elementwise_operation.cl:32</a></div></div>
6890<div class="ttc" id="elementwise__operation_8cl_xhtml_a74e75242132eaabbc1c512488a135926"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#a74e75242132eaabbc1c512488a135926">MIN</a></div><div class="ttdeci">#define MIN(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00037">elementwise_operation.cl:37</a></div></div>
6891<div class="ttc" id="elementwise__operation_8cl_xhtml_aafc2c4f262a0686c07f86c7d2e1d8d14"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#aafc2c4f262a0686c07f86c7d2e1d8d14">SUB</a></div><div class="ttdeci">#define SUB(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00033">elementwise_operation.cl:33</a></div></div>
6892<div class="ttc" id="elementwise__operation_8cl_xhtml_a49f6fecffd852cda3b0ece53dcbb2b87"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#a49f6fecffd852cda3b0ece53dcbb2b87">DIV</a></div><div class="ttdeci">#define DIV(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00039">elementwise_operation.cl:39</a></div></div>
6893<div class="ttc" id="elementwise__operation_8cl_xhtml_aacc3ee1a7f283f8ef65cea31f4436a95"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">MAX</a></div><div class="ttdeci">#define MAX(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00036">elementwise_operation.cl:36</a></div></div>
6894<div class="ttc" id="elementwise__operation_8cl_xhtml_ab05bd244cb8823c69d6dce6a23a758fd"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#ab05bd244cb8823c69d6dce6a23a758fd">SQUARED_DIFF</a></div><div class="ttdeci">#define SQUARED_DIFF(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00038">elementwise_operation.cl:38</a></div></div>
6895</div><!-- fragment -->
6896</div>
6897</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006898<a id="a2d8a00f1d80a53ce8f75fa929c873202"></a>
6899<h2 class="memtitle"><span class="permalink"><a href="#a2d8a00f1d80a53ce8f75fa929c873202">&#9670;&nbsp;</a></span>BilinearInterpolation</h2>
6900
Anthony Barbier871448e2017-03-24 14:54:29 +00006901<div class="memitem">
6902<div class="memproto">
6903<table class="mlabels">
6904 <tr>
6905 <td class="mlabels-left">
6906 <table class="memname">
6907 <tr>
6908 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202">BilinearInterpolation</a></td>
6909 </tr>
6910 </table>
6911 </td>
6912 <td class="mlabels-right">
6913<span class="mlabels"><span class="mlabel">strong</span></span> </td>
6914 </tr>
6915</table>
6916</div><div class="memdoc">
6917
6918<p>Bilinear Interpolation method used by LKTracker. </p>
6919<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00006920<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a2d8a00f1d80a53ce8f75fa929c873202a856d68c521c4c85363f54d95a33b7532"></a>BILINEAR_OLD_NEW&#160;</td><td class="fielddoc"><p>Old-new method. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006921</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00006922<tr><td class="fieldname"><a id="a2d8a00f1d80a53ce8f75fa929c873202a731cb35d2d520920db9ab20dfc5edc64"></a>BILINEAR_SCHARR&#160;</td><td class="fielddoc"><p>Scharr method. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006923</td></tr>
6924</table>
6925
Jenkins514be652019-02-28 12:25:18 +00006926<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00418">418</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
6927<div class="fragment"><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;{</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202a856d68c521c4c85363f54d95a33b7532">BILINEAR_OLD_NEW</a>, </div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202a731cb35d2d520920db9ab20dfc5edc64">BILINEAR_SCHARR</a> </div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a2d8a00f1d80a53ce8f75fa929c873202a856d68c521c4c85363f54d95a33b7532"><div class="ttname"><a href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202a856d68c521c4c85363f54d95a33b7532">arm_compute::BilinearInterpolation::BILINEAR_OLD_NEW</a></div><div class="ttdoc">Old-new method.</div></div>
6928<div class="ttc" id="namespacearm__compute_xhtml_a2d8a00f1d80a53ce8f75fa929c873202a731cb35d2d520920db9ab20dfc5edc64"><div class="ttname"><a href="namespacearm__compute.xhtml#a2d8a00f1d80a53ce8f75fa929c873202a731cb35d2d520920db9ab20dfc5edc64">arm_compute::BilinearInterpolation::BILINEAR_SCHARR</a></div><div class="ttdoc">Scharr method.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00006929</div><!-- fragment -->
6930</div>
6931</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006932<a id="a15a05537a472ee742404821851529327"></a>
6933<h2 class="memtitle"><span class="permalink"><a href="#a15a05537a472ee742404821851529327">&#9670;&nbsp;</a></span>BorderMode</h2>
6934
Anthony Barbier871448e2017-03-24 14:54:29 +00006935<div class="memitem">
6936<div class="memproto">
6937<table class="mlabels">
6938 <tr>
6939 <td class="mlabels-left">
6940 <table class="memname">
6941 <tr>
6942 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a></td>
6943 </tr>
6944 </table>
6945 </td>
6946 <td class="mlabels-right">
6947<span class="mlabels"><span class="mlabel">strong</span></span> </td>
6948 </tr>
6949</table>
6950</div><div class="memdoc">
6951
6952<p>Methods available to handle borders. </p>
6953<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00006954<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3"></a>UNDEFINED&#160;</td><td class="fielddoc"><p>Borders are left undefined. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006955</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00006956<tr><td class="fieldname"><a id="a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92"></a>CONSTANT&#160;</td><td class="fielddoc"><p>Pixels outside the image are assumed to have a constant value. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006957</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00006958<tr><td class="fieldname"><a id="a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa"></a>REPLICATE&#160;</td><td class="fielddoc"><p>Pixels outside the image are assumed to have the same value as the closest image pixel. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006959</td></tr>
6960</table>
6961
Jenkins514be652019-02-28 12:25:18 +00006962<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00305">305</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
6963<div class="fragment"><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;{</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3">UNDEFINED</a>, </div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92">CONSTANT</a>, </div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa">REPLICATE</a> </div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3"><div class="ttname"><a href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3">arm_compute::BorderMode::UNDEFINED</a></div><div class="ttdoc">Borders are left undefined.</div></div>
6964<div class="ttc" id="namespacearm__compute_xhtml_a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa"><div class="ttname"><a href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa">arm_compute::BorderMode::REPLICATE</a></div><div class="ttdoc">Pixels outside the image are assumed to have the same value as the closest image pixel.</div></div>
6965<div class="ttc" id="namespacearm__compute_xhtml_a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92"><div class="ttname"><a href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92">arm_compute::BorderMode::CONSTANT</a></div><div class="ttdoc">Pixels outside the image are assumed to have a constant value.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00006966</div><!-- fragment -->
6967</div>
6968</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00006969<a id="a1ce9b523fd4f3b5bbcadcd796183455a"></a>
6970<h2 class="memtitle"><span class="permalink"><a href="#a1ce9b523fd4f3b5bbcadcd796183455a">&#9670;&nbsp;</a></span>Channel</h2>
6971
Anthony Barbier871448e2017-03-24 14:54:29 +00006972<div class="memitem">
6973<div class="memproto">
6974<table class="mlabels">
6975 <tr>
6976 <td class="mlabels-left">
6977 <table class="memname">
6978 <tr>
6979 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a></td>
6980 </tr>
6981 </table>
6982 </td>
6983 <td class="mlabels-right">
6984<span class="mlabels"><span class="mlabel">strong</span></span> </td>
6985 </tr>
6986</table>
6987</div><div class="memdoc">
6988
6989<p>Available channels. </p>
6990<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00006991<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc"></td></tr>
6992<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa9c5959e6f08f10d0edbadf5be1f33c53"></a>C0&#160;</td><td class="fielddoc"><p>Unknown channel format. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006993<p>First channel (used by formats with unknown channel types). </p>
6994</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00006995<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1"></a>C1&#160;</td><td class="fielddoc"><p>Second channel (used by formats with unknown channel types). </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006996</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00006997<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aaf1a543f5a2c5d49bc5dde298fcf716e4"></a>C2&#160;</td><td class="fielddoc"><p>Third channel (used by formats with unknown channel types). </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00006998</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00006999<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa3abe124ecc82bf2c2e22e6058f38c50c"></a>C3&#160;</td><td class="fielddoc"><p>Fourth channel (used by formats with unknown channel types). </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007000</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007001<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6"></a>R&#160;</td><td class="fielddoc"><p>Red channel. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007002</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007003<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf"></a>G&#160;</td><td class="fielddoc"><p>Green channel. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007004</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007005<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571"></a>B&#160;</td><td class="fielddoc"><p>Blue channel. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007006</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007007<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29"></a>A&#160;</td><td class="fielddoc"><p>Alpha channel. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007008</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007009<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0"></a>Y&#160;</td><td class="fielddoc"><p>Luma channel. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007010</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007011<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb"></a>U&#160;</td><td class="fielddoc"><p>Cb/U channel. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007012</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007013<tr><td class="fieldname"><a id="a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce"></a>V&#160;</td><td class="fielddoc"><p>Cr/V/Value channel. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007014</td></tr>
7015</table>
7016
Jenkins514be652019-02-28 12:25:18 +00007017<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00505">505</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
7018<div class="fragment"><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160;{</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, </div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9c5959e6f08f10d0edbadf5be1f33c53">C0</a>, </div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1">C1</a>, </div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aaf1a543f5a2c5d49bc5dde298fcf716e4">C2</a>, </div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa3abe124ecc82bf2c2e22e6058f38c50c">C3</a>, </div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">R</a>, </div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">G</a>, </div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a>, </div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a>, </div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>, </div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; <a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">U</a>, </div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a> </div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">arm_compute::Channel::A</a></div><div class="ttdoc">Alpha channel.</div></div>
7019<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1">arm_compute::Channel::C1</a></div><div class="ttdoc">Second channel (used by formats with unknown channel types).</div></div>
7020<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">arm_compute::Channel::V</a></div><div class="ttdoc">Cr/V/Value channel.</div></div>
7021<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">arm_compute::Channel::B</a></div><div class="ttdoc">Blue channel.</div></div>
7022<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa9c5959e6f08f10d0edbadf5be1f33c53"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9c5959e6f08f10d0edbadf5be1f33c53">arm_compute::Channel::C0</a></div><div class="ttdoc">Unknown channel format.</div></div>
7023<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">arm_compute::Channel::R</a></div><div class="ttdoc">Red channel.</div></div>
7024<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aaf1a543f5a2c5d49bc5dde298fcf716e4"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aaf1a543f5a2c5d49bc5dde298fcf716e4">arm_compute::Channel::C2</a></div><div class="ttdoc">Third channel (used by formats with unknown channel types).</div></div>
7025<div class="ttc" id="namespacearm__compute_1_1utils_1_1cast_xhtml_a2ea3d1fc01a3a442900249ca182ffa5e"><div class="ttname"><a href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">arm_compute::utils::cast::U</a></div><div class="ttdeci">U</div><div class="ttdef"><b>Definition:</b> <a href="_saturate_cast_8h_source.xhtml#l00057">SaturateCast.h:57</a></div></div>
7026<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa3abe124ecc82bf2c2e22e6058f38c50c"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa3abe124ecc82bf2c2e22e6058f38c50c">arm_compute::Channel::C3</a></div><div class="ttdoc">Fourth channel (used by formats with unknown channel types).</div></div>
7027<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">arm_compute::Channel::Y</a></div><div class="ttdoc">Luma channel.</div></div>
Kaizen8938bd32017-09-28 14:38:23 +01007028<div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">arm_compute::CLVersion::UNKNOWN</a></div></div>
Jenkins514be652019-02-28 12:25:18 +00007029<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">arm_compute::Channel::G</a></div><div class="ttdoc">Green channel.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00007030</div><!-- fragment -->
7031</div>
7032</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007033<a id="a3a440b3893fa10608d4428958be1c52e"></a>
7034<h2 class="memtitle"><span class="permalink"><a href="#a3a440b3893fa10608d4428958be1c52e">&#9670;&nbsp;</a></span>CLVersion</h2>
7035
Kaizen8938bd32017-09-28 14:38:23 +01007036<div class="memitem">
7037<div class="memproto">
7038<table class="mlabels">
7039 <tr>
7040 <td class="mlabels-left">
7041 <table class="memname">
7042 <tr>
7043 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52e">CLVersion</a></td>
7044 </tr>
7045 </table>
7046 </td>
7047 <td class="mlabels-right">
7048<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7049 </tr>
7050</table>
7051</div><div class="memdoc">
Jenkinsb3a371b2018-05-23 11:36:53 +01007052
7053<p>Available OpenCL Version. </p>
Kaizen8938bd32017-09-28 14:38:23 +01007054<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007055<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a3a440b3893fa10608d4428958be1c52ea06e5b2cbe2f75bb5eec32613499cf22a"></a>CL10&#160;</td><td class="fielddoc"></td></tr>
7056<tr><td class="fieldname"><a id="a3a440b3893fa10608d4428958be1c52ea80e95ed62d0c47e4d8c0696d467d4db3"></a>CL11&#160;</td><td class="fielddoc"></td></tr>
7057<tr><td class="fieldname"><a id="a3a440b3893fa10608d4428958be1c52ead7beedb1bf6bfae8111da26424266675"></a>CL12&#160;</td><td class="fielddoc"></td></tr>
7058<tr><td class="fieldname"><a id="a3a440b3893fa10608d4428958be1c52eaba90edbc644c32afa8a7e36e87735aab"></a>CL20&#160;</td><td class="fielddoc"></td></tr>
7059<tr><td class="fieldname"><a id="a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc"></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01007060</table>
7061
Jenkinsb9abeae2018-11-22 11:58:08 +00007062<p class="definition">Definition at line <a class="el" href="_c_l_types_8h_source.xhtml#l00037">37</a> of file <a class="el" href="_c_l_types_8h_source.xhtml">CLTypes.h</a>.</p>
Jenkinsb3a371b2018-05-23 11:36:53 +01007063<div class="fragment"><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;{</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea06e5b2cbe2f75bb5eec32613499cf22a">CL10</a>, <span class="comment">/* the OpenCL 1.0 */</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea80e95ed62d0c47e4d8c0696d467d4db3">CL11</a>, <span class="comment">/* the OpenCL 1.1 */</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ead7beedb1bf6bfae8111da26424266675">CL12</a>, <span class="comment">/* the OpenCL 1.2 */</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52eaba90edbc644c32afa8a7e36e87735aab">CL20</a>, <span class="comment">/* the OpenCL 2.0 and above */</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a> <span class="comment">/* unkown version */</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52eaba90edbc644c32afa8a7e36e87735aab"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52eaba90edbc644c32afa8a7e36e87735aab">arm_compute::CLVersion::CL20</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +01007064<div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52ead7beedb1bf6bfae8111da26424266675"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ead7beedb1bf6bfae8111da26424266675">arm_compute::CLVersion::CL12</a></div></div>
7065<div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52ea06e5b2cbe2f75bb5eec32613499cf22a"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea06e5b2cbe2f75bb5eec32613499cf22a">arm_compute::CLVersion::CL10</a></div></div>
7066<div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52ea80e95ed62d0c47e4d8c0696d467d4db3"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea80e95ed62d0c47e4d8c0696d467d4db3">arm_compute::CLVersion::CL11</a></div></div>
7067<div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">arm_compute::CLVersion::UNKNOWN</a></div></div>
7068</div><!-- fragment -->
7069</div>
7070</div>
Jenkins514be652019-02-28 12:25:18 +00007071<a id="a2d299363c9fc33334c571fa29ca4f58c"></a>
7072<h2 class="memtitle"><span class="permalink"><a href="#a2d299363c9fc33334c571fa29ca4f58c">&#9670;&nbsp;</a></span>ComparisonOperation</h2>
7073
7074<div class="memitem">
7075<div class="memproto">
7076<table class="mlabels">
7077 <tr>
7078 <td class="mlabels-left">
7079 <table class="memname">
7080 <tr>
7081 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58c">ComparisonOperation</a></td>
7082 </tr>
7083 </table>
7084 </td>
7085 <td class="mlabels-right">
7086<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7087 </tr>
7088</table>
7089</div><div class="memdoc">
7090
7091<p>Supported comparison operations. </p>
7092<table class="fieldtable">
7093<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5"></a>Equal&#160;</td><td class="fielddoc"><p>Equal comparison ( \( x == y \) ) </p>
7094</td></tr>
7095<tr><td class="fieldname"><a id="a2d299363c9fc33334c571fa29ca4f58ca19bb0af2c3c530538cb41aff7f235b96"></a>NotEqual&#160;</td><td class="fielddoc"><p>NotEqual comparison ( \( x != y \) ) </p>
7096</td></tr>
7097<tr><td class="fieldname"><a id="a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a"></a>Greater&#160;</td><td class="fielddoc"><p>Greater comparison ( \( x &gt; y \) ) </p>
7098</td></tr>
7099<tr><td class="fieldname"><a id="a2d299363c9fc33334c571fa29ca4f58ca758b05d899def79c9eb864ad4f96be1f"></a>GreaterEqual&#160;</td><td class="fielddoc"><p>Greater equal comparison ( \( x &gt;= y \) ) </p>
7100</td></tr>
7101<tr><td class="fieldname"><a id="a2d299363c9fc33334c571fa29ca4f58ca1cfdf0e8d0c87a228c1f40d9bee7888b"></a>Less&#160;</td><td class="fielddoc"><p>Less comparison ( \( x &lt; y \) ) </p>
7102</td></tr>
7103<tr><td class="fieldname"><a id="a2d299363c9fc33334c571fa29ca4f58cad3e6fdac55bb7b0edd7834c968ba1f38"></a>LessEqual&#160;</td><td class="fielddoc"><p>Less equal comparison ( \( x &lt;= y \) ) </p>
7104</td></tr>
7105</table>
7106
7107<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00137">137</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
7108<div class="fragment"><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;{</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5">Equal</a>, </div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca19bb0af2c3c530538cb41aff7f235b96">NotEqual</a>, </div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">Greater</a>, </div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca758b05d899def79c9eb864ad4f96be1f">GreaterEqual</a>, </div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca1cfdf0e8d0c87a228c1f40d9bee7888b">Less</a>, </div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58cad3e6fdac55bb7b0edd7834c968ba1f38">LessEqual</a> </div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a2d299363c9fc33334c571fa29ca4f58ca1cfdf0e8d0c87a228c1f40d9bee7888b"><div class="ttname"><a href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca1cfdf0e8d0c87a228c1f40d9bee7888b">arm_compute::ComparisonOperation::Less</a></div><div class="ttdoc">Less comparison ( )</div></div>
7109<div class="ttc" id="namespacearm__compute_xhtml_a2d299363c9fc33334c571fa29ca4f58ca758b05d899def79c9eb864ad4f96be1f"><div class="ttname"><a href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca758b05d899def79c9eb864ad4f96be1f">arm_compute::ComparisonOperation::GreaterEqual</a></div><div class="ttdoc">Greater equal comparison ( )</div></div>
7110<div class="ttc" id="namespacearm__compute_xhtml_a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5"><div class="ttname"><a href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5">arm_compute::ComparisonOperation::Equal</a></div><div class="ttdoc">Equal comparison ( )</div></div>
7111<div class="ttc" id="namespacearm__compute_xhtml_a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a"><div class="ttname"><a href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">arm_compute::ComparisonOperation::Greater</a></div><div class="ttdoc">Greater comparison ( )</div></div>
7112<div class="ttc" id="namespacearm__compute_xhtml_a2d299363c9fc33334c571fa29ca4f58cad3e6fdac55bb7b0edd7834c968ba1f38"><div class="ttname"><a href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58cad3e6fdac55bb7b0edd7834c968ba1f38">arm_compute::ComparisonOperation::LessEqual</a></div><div class="ttdoc">Less equal comparison ( )</div></div>
7113<div class="ttc" id="namespacearm__compute_xhtml_a2d299363c9fc33334c571fa29ca4f58ca19bb0af2c3c530538cb41aff7f235b96"><div class="ttname"><a href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca19bb0af2c3c530538cb41aff7f235b96">arm_compute::ComparisonOperation::NotEqual</a></div><div class="ttdoc">NotEqual comparison ( )</div></div>
7114</div><!-- fragment -->
7115</div>
7116</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007117<a id="a82b8ac759c804bc1fb4e2d21e178fb6f"></a>
7118<h2 class="memtitle"><span class="permalink"><a href="#a82b8ac759c804bc1fb4e2d21e178fb6f">&#9670;&nbsp;</a></span>ConvertPolicy</h2>
7119
Anthony Barbier871448e2017-03-24 14:54:29 +00007120<div class="memitem">
7121<div class="memproto">
7122<table class="mlabels">
7123 <tr>
7124 <td class="mlabels-left">
7125 <table class="memname">
7126 <tr>
7127 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6f">ConvertPolicy</a></td>
7128 </tr>
7129 </table>
7130 </td>
7131 <td class="mlabels-right">
7132<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7133 </tr>
7134</table>
7135</div><div class="memdoc">
7136
7137<p>Policy to handle overflow. </p>
7138<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007139<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0"></a>WRAP&#160;</td><td class="fielddoc"><p>Wrap around. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007140</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007141<tr><td class="fieldname"><a id="a82b8ac759c804bc1fb4e2d21e178fb6fa4729d95f983955f0d93a30179deb2b86"></a>SATURATE&#160;</td><td class="fielddoc"><p>Saturate. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007142</td></tr>
7143</table>
7144
Jenkins514be652019-02-28 12:25:18 +00007145<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00403">403</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
7146<div class="fragment"><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;{</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0">WRAP</a>, </div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fa4729d95f983955f0d93a30179deb2b86">SATURATE</a> </div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0"><div class="ttname"><a href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0">arm_compute::ConvertPolicy::WRAP</a></div><div class="ttdoc">Wrap around.</div></div>
7147<div class="ttc" id="namespacearm__compute_xhtml_a82b8ac759c804bc1fb4e2d21e178fb6fa4729d95f983955f0d93a30179deb2b86"><div class="ttname"><a href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fa4729d95f983955f0d93a30179deb2b86">arm_compute::ConvertPolicy::SATURATE</a></div><div class="ttdoc">Saturate.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00007148</div><!-- fragment -->
7149</div>
7150</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007151<a id="a683661ae75dcb7aef16b9c9bde31517d"></a>
7152<h2 class="memtitle"><span class="permalink"><a href="#a683661ae75dcb7aef16b9c9bde31517d">&#9670;&nbsp;</a></span>ConvolutionMethod</h2>
7153
Anthony Barbier06ea0482018-02-22 15:45:35 +00007154<div class="memitem">
7155<div class="memproto">
7156<table class="mlabels">
7157 <tr>
7158 <td class="mlabels-left">
7159 <table class="memname">
7160 <tr>
7161 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517d">ConvolutionMethod</a></td>
7162 </tr>
7163 </table>
7164 </td>
7165 <td class="mlabels-right">
7166<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7167 </tr>
7168</table>
7169</div><div class="memdoc">
7170
7171<p>Available ConvolutionMethod. </p>
7172<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007173<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3"></a>GEMM&#160;</td><td class="fielddoc"><p>Convolution using GEMM. </p>
Anthony Barbier06ea0482018-02-22 15:45:35 +00007174</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007175<tr><td class="fieldname"><a id="a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76"></a>DIRECT&#160;</td><td class="fielddoc"><p>Direct convolution. </p>
Anthony Barbier06ea0482018-02-22 15:45:35 +00007176</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007177<tr><td class="fieldname"><a id="a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8"></a>WINOGRAD&#160;</td><td class="fielddoc"><p>Convolution using Winograd. </p>
Anthony Barbier06ea0482018-02-22 15:45:35 +00007178</td></tr>
7179</table>
7180
Jenkins514be652019-02-28 12:25:18 +00007181<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00129">129</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
7182<div class="fragment"><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;{</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3">GEMM</a>, </div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76">DIRECT</a>, </div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8">WINOGRAD</a> </div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76"><div class="ttname"><a href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76">arm_compute::ConvolutionMethod::DIRECT</a></div><div class="ttdoc">Direct convolution.</div></div>
7183<div class="ttc" id="namespacearm__compute_xhtml_a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8"><div class="ttname"><a href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8">arm_compute::ConvolutionMethod::WINOGRAD</a></div><div class="ttdoc">Convolution using Winograd.</div></div>
7184<div class="ttc" id="namespacearm__compute_xhtml_a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3"><div class="ttname"><a href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3">arm_compute::ConvolutionMethod::GEMM</a></div><div class="ttdoc">Convolution using GEMM.</div></div>
Anthony Barbier06ea0482018-02-22 15:45:35 +00007185</div><!-- fragment -->
7186</div>
7187</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007188<a id="aa41d7415a5386798147cccae2333d5d4"></a>
7189<h2 class="memtitle"><span class="permalink"><a href="#aa41d7415a5386798147cccae2333d5d4">&#9670;&nbsp;</a></span>CPUModel</h2>
7190
Kaizen8938bd32017-09-28 14:38:23 +01007191<div class="memitem">
7192<div class="memproto">
7193<table class="mlabels">
7194 <tr>
7195 <td class="mlabels-left">
7196 <table class="memname">
7197 <tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01007198 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">CPUModel</a></td>
Kaizen8938bd32017-09-28 14:38:23 +01007199 </tr>
7200 </table>
7201 </td>
7202 <td class="mlabels-right">
7203<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7204 </tr>
7205</table>
7206</div><div class="memdoc">
7207
Jenkinsb3a371b2018-05-23 11:36:53 +01007208<p>CPU models - we only need to detect CPUs we have microarchitecture-specific code for. </p>
7209<p>Architecture features are detected via HWCAPs. </p>
Kaizen8938bd32017-09-28 14:38:23 +01007210<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007211<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b"></a>GENERIC&#160;</td><td class="fielddoc"></td></tr>
7212<tr><td class="fieldname"><a id="aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8"></a>GENERIC_FP16&#160;</td><td class="fielddoc"></td></tr>
7213<tr><td class="fieldname"><a id="aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7"></a>GENERIC_FP16_DOT&#160;</td><td class="fielddoc"></td></tr>
7214<tr><td class="fieldname"><a id="aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d"></a>A53&#160;</td><td class="fielddoc"></td></tr>
7215<tr><td class="fieldname"><a id="aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92"></a>A55r0&#160;</td><td class="fielddoc"></td></tr>
7216<tr><td class="fieldname"><a id="aa41d7415a5386798147cccae2333d5d4a2f2d74257db975404ff4ca97ce1e0bca"></a>A55r1&#160;</td><td class="fielddoc"></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01007217</table>
7218
Jenkinsb9abeae2018-11-22 11:58:08 +00007219<p class="definition">Definition at line <a class="el" href="_c_p_p_types_8h_source.xhtml#l00040">40</a> of file <a class="el" href="_c_p_p_types_8h_source.xhtml">CPPTypes.h</a>.</p>
7220<div class="fragment"><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;{</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b">GENERIC</a>,</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8">GENERIC_FP16</a>,</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7">GENERIC_FP16_DOT</a>,</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d">A53</a>,</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92">A55r0</a>,</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a2f2d74257db975404ff4ca97ce1e0bca">A55r1</a></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7"><div class="ttname"><a href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7">arm_compute::CPUModel::GENERIC_FP16_DOT</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +00007221<div class="ttc" id="namespacearm__compute_xhtml_aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d"><div class="ttname"><a href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d">arm_compute::CPUModel::A53</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +01007222<div class="ttc" id="namespacearm__compute_xhtml_aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92"><div class="ttname"><a href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92">arm_compute::CPUModel::A55r0</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +00007223<div class="ttc" id="namespacearm__compute_xhtml_aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8"><div class="ttname"><a href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8">arm_compute::CPUModel::GENERIC_FP16</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +01007224<div class="ttc" id="namespacearm__compute_xhtml_aa41d7415a5386798147cccae2333d5d4a2f2d74257db975404ff4ca97ce1e0bca"><div class="ttname"><a href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a2f2d74257db975404ff4ca97ce1e0bca">arm_compute::CPUModel::A55r1</a></div></div>
7225<div class="ttc" id="namespacearm__compute_xhtml_aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b"><div class="ttname"><a href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b">arm_compute::CPUModel::GENERIC</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +01007226</div><!-- fragment -->
7227</div>
7228</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007229<a id="ad1d5cce2d9e9a5d61c243e5c989112e0"></a>
7230<h2 class="memtitle"><span class="permalink"><a href="#ad1d5cce2d9e9a5d61c243e5c989112e0">&#9670;&nbsp;</a></span>DataLayout</h2>
7231
Anthony Barbier06ea0482018-02-22 15:45:35 +00007232<div class="memitem">
7233<div class="memproto">
7234<table class="mlabels">
7235 <tr>
7236 <td class="mlabels-left">
7237 <table class="memname">
7238 <tr>
7239 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a></td>
7240 </tr>
7241 </table>
7242 </td>
7243 <td class="mlabels-right">
7244<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7245 </tr>
7246</table>
7247</div><div class="memdoc">
7248
Jenkinsb9abeae2018-11-22 11:58:08 +00007249<p>[DataLayout enum definition] </p>
7250<p>Supported tensor data layouts </p>
Anthony Barbier06ea0482018-02-22 15:45:35 +00007251<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007252<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ad1d5cce2d9e9a5d61c243e5c989112e0a696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc"><p>Unknown data layout. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01007253</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007254<tr><td class="fieldname"><a id="ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f"></a>NCHW&#160;</td><td class="fielddoc"><p>Num samples, channels, height, width. </p>
Anthony Barbier06ea0482018-02-22 15:45:35 +00007255</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007256<tr><td class="fieldname"><a id="ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51"></a>NHWC&#160;</td><td class="fielddoc"><p>Num samples, height, width, channels. </p>
Anthony Barbier06ea0482018-02-22 15:45:35 +00007257</td></tr>
7258</table>
7259
Jenkinsb9abeae2018-11-22 11:58:08 +00007260<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00111">111</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00007261<div class="fragment"><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;{</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, </div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>, </div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">NHWC</a> </div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f"><div class="ttname"><a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">arm_compute::DataLayout::NCHW</a></div><div class="ttdoc">Num samples, channels, height, width.</div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +01007262<div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">arm_compute::CLVersion::UNKNOWN</a></div></div>
Jenkins514be652019-02-28 12:25:18 +00007263<div class="ttc" id="namespacearm__compute_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51"><div class="ttname"><a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">arm_compute::DataLayout::NHWC</a></div><div class="ttdoc">Num samples, height, width, channels.</div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +01007264</div><!-- fragment -->
7265</div>
7266</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007267<a id="a74ce3f7420453d3446218ff3b7453e02"></a>
7268<h2 class="memtitle"><span class="permalink"><a href="#a74ce3f7420453d3446218ff3b7453e02">&#9670;&nbsp;</a></span>DataLayoutDimension</h2>
7269
Jenkinsb3a371b2018-05-23 11:36:53 +01007270<div class="memitem">
7271<div class="memproto">
7272<table class="mlabels">
7273 <tr>
7274 <td class="mlabels-left">
7275 <table class="memname">
7276 <tr>
7277 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02">DataLayoutDimension</a></td>
7278 </tr>
7279 </table>
7280 </td>
7281 <td class="mlabels-right">
7282<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7283 </tr>
7284</table>
7285</div><div class="memdoc">
7286
Jenkinsb9abeae2018-11-22 11:58:08 +00007287<p>[DataLayout enum definition] </p>
7288<p>Supported tensor data layout dimensions </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01007289<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007290<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229"></a>CHANNEL&#160;</td><td class="fielddoc"><p>channel </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01007291</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007292<tr><td class="fieldname"><a id="a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6"></a>HEIGHT&#160;</td><td class="fielddoc"><p>height </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01007293</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007294<tr><td class="fieldname"><a id="a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195"></a>WIDTH&#160;</td><td class="fielddoc"><p>width </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01007295</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007296<tr><td class="fieldname"><a id="a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a"></a>BATCHES&#160;</td><td class="fielddoc"><p>batches </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01007297</td></tr>
7298</table>
7299
Jenkinsb9abeae2018-11-22 11:58:08 +00007300<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00120">120</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00007301<div class="fragment"><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;{</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">CHANNEL</a>, </div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">HEIGHT</a>, </div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>, </div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a">BATCHES</a> </div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6"><div class="ttname"><a href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">arm_compute::DataLayoutDimension::HEIGHT</a></div><div class="ttdoc">height</div></div>
7302<div class="ttc" id="namespacearm__compute_xhtml_a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229"><div class="ttname"><a href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">arm_compute::DataLayoutDimension::CHANNEL</a></div><div class="ttdoc">channel</div></div>
7303<div class="ttc" id="namespacearm__compute_xhtml_a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a"><div class="ttname"><a href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a">arm_compute::DataLayoutDimension::BATCHES</a></div><div class="ttdoc">batches</div></div>
7304<div class="ttc" id="namespacearm__compute_xhtml_a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195"><div class="ttname"><a href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">arm_compute::DataLayoutDimension::WIDTH</a></div><div class="ttdoc">width</div></div>
Anthony Barbier06ea0482018-02-22 15:45:35 +00007305</div><!-- fragment -->
7306</div>
7307</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007308<a id="ad8ed01ff3ff33333d8e19db4d2818bb6"></a>
7309<h2 class="memtitle"><span class="permalink"><a href="#ad8ed01ff3ff33333d8e19db4d2818bb6">&#9670;&nbsp;</a></span>DataType</h2>
7310
Anthony Barbier871448e2017-03-24 14:54:29 +00007311<div class="memitem">
7312<div class="memproto">
7313<table class="mlabels">
7314 <tr>
7315 <td class="mlabels-left">
7316 <table class="memname">
7317 <tr>
7318 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a></td>
7319 </tr>
7320 </table>
7321 </td>
7322 <td class="mlabels-right">
7323<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7324 </tr>
7325</table>
7326</div><div class="memdoc">
7327
7328<p>Available data types. </p>
7329<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007330<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc"><p>Unknown data type. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007331</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007332<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a6669348b484e3008dca2bfa8e85e40b5"></a>U8&#160;</td><td class="fielddoc"><p>unsigned 8-bit number </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007333</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007334<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975"></a>S8&#160;</td><td class="fielddoc"><p>signed 8-bit number </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007335</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007336<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924"></a>QASYMM8&#160;</td><td class="fielddoc"><p>quantized, asymmetric fixed-point 8-bit number </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007337</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007338<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6aef9ef3ebca4d2b64b6ec83808bafa5f2"></a>U16&#160;</td><td class="fielddoc"><p>unsigned 16-bit number </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007339</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007340<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a6e0b0886efb94aec797f6b830329b72c"></a>S16&#160;</td><td class="fielddoc"><p>signed 16-bit number </p>
Anthony Barbierdbdab852017-06-23 15:42:00 +01007341</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007342<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6ac8bd5bedff8ef192d39a962afc0e19ee"></a>U32&#160;</td><td class="fielddoc"><p>unsigned 32-bit number </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007343</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007344<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6aa1e28eee0339658d39a8b4d325b56e9c"></a>S32&#160;</td><td class="fielddoc"><p>signed 32-bit number </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007345</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007346<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa"></a>U64&#160;</td><td class="fielddoc"><p>unsigned 64-bit number </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007347</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007348<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc"></a>S64&#160;</td><td class="fielddoc"><p>signed 64-bit number </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007349</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007350<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a56d8353718e6fdc78b8d69078a2cdb94"></a>F16&#160;</td><td class="fielddoc"><p>16-bit floating-point number </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007351</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007352<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a44ad4ef5a76e6aa6fb3e3fa079a54fda"></a>F32&#160;</td><td class="fielddoc"><p>32-bit floating-point number </p>
Kaizen8938bd32017-09-28 14:38:23 +01007353</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007354<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e"></a>F64&#160;</td><td class="fielddoc"><p>64-bit floating-point number </p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00007355</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007356<tr><td class="fieldname"><a id="ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1"></a>SIZET&#160;</td><td class="fielddoc"><p>size_t </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007357</td></tr>
7358</table>
7359
Jenkinsb9abeae2018-11-22 11:58:08 +00007360<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00074">74</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00007361<div class="fragment"><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;{</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, </div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, </div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, </div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, </div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, </div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, </div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, </div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, </div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, </div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, </div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, </div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, </div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">F64</a>, </div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">SIZET</a> </div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">arm_compute::Format::U8</a></div><div class="ttdoc">1 channel, 1 U8 per channel</div></div>
7362<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">arm_compute::Format::F32</a></div><div class="ttdoc">1 channel, 1 F32 per channel</div></div>
7363<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">arm_compute::Format::U16</a></div><div class="ttdoc">1 channel, 1 U16 per channel</div></div>
7364<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">arm_compute::Format::F16</a></div><div class="ttdoc">1 channel, 1 F16 per channel</div></div>
7365<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">arm_compute::Format::S32</a></div><div class="ttdoc">1 channel, 1 S32 per channel</div></div>
7366<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">arm_compute::DataType::S64</a></div><div class="ttdoc">signed 64-bit number</div></div>
7367<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">arm_compute::DataType::SIZET</a></div><div class="ttdoc">size_t</div></div>
7368<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">arm_compute::Format::U32</a></div><div class="ttdoc">1 channel, 1 U32 per channel</div></div>
7369<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">arm_compute::DataType::QASYMM8</a></div><div class="ttdoc">quantized, asymmetric fixed-point 8-bit number</div></div>
7370<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">arm_compute::Format::S16</a></div><div class="ttdoc">1 channel, 1 S16 per channel</div></div>
Kaizen8938bd32017-09-28 14:38:23 +01007371<div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">arm_compute::CLVersion::UNKNOWN</a></div></div>
Jenkins514be652019-02-28 12:25:18 +00007372<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">arm_compute::DataType::F64</a></div><div class="ttdoc">64-bit floating-point number</div></div>
7373<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">arm_compute::DataType::U64</a></div><div class="ttdoc">unsigned 64-bit number</div></div>
7374<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">arm_compute::DataType::S8</a></div><div class="ttdoc">signed 8-bit number</div></div>
7375</div><!-- fragment -->
7376</div>
7377</div>
7378<a id="ad818ba0ecd4a87d8f1bb0d5b17f07830"></a>
7379<h2 class="memtitle"><span class="permalink"><a href="#ad818ba0ecd4a87d8f1bb0d5b17f07830">&#9670;&nbsp;</a></span>DetectionOutputLayerCodeType</h2>
7380
7381<div class="memitem">
7382<div class="memproto">
7383<table class="mlabels">
7384 <tr>
7385 <td class="mlabels-left">
7386 <table class="memname">
7387 <tr>
7388 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830">DetectionOutputLayerCodeType</a></td>
7389 </tr>
7390 </table>
7391 </td>
7392 <td class="mlabels-right">
7393<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7394 </tr>
7395</table>
7396</div><div class="memdoc">
7397
7398<p>Available Detection Output code types. </p>
7399<table class="fieldtable">
7400<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ad818ba0ecd4a87d8f1bb0d5b17f07830ac411afd31d32cec664d372acc12f404a"></a>CORNER&#160;</td><td class="fielddoc"><p>Use box corners. </p>
7401</td></tr>
7402<tr><td class="fieldname"><a id="ad818ba0ecd4a87d8f1bb0d5b17f07830a1150a8d7752b01d30d91fe18fe9d8a54"></a>CENTER_SIZE&#160;</td><td class="fielddoc"><p>Use box centers and size. </p>
7403</td></tr>
7404<tr><td class="fieldname"><a id="ad818ba0ecd4a87d8f1bb0d5b17f07830afbc6c35854fe02eb9e792f897399c42a"></a>CORNER_SIZE&#160;</td><td class="fielddoc"><p>Use box centers and size. </p>
7405</td></tr>
7406<tr><td class="fieldname"><a id="ad818ba0ecd4a87d8f1bb0d5b17f07830ae65a115db9b4bcc4ae0aa0b989089d16"></a>TF_CENTER&#160;</td><td class="fielddoc"><p>Use box centers and size but flip x and y co-ordinates. </p>
7407</td></tr>
7408</table>
7409
7410<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00993">993</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
7411<div class="fragment"><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160;{</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830ac411afd31d32cec664d372acc12f404a">CORNER</a>, </div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830a1150a8d7752b01d30d91fe18fe9d8a54">CENTER_SIZE</a>, </div><div class="line"><a name="l00997"></a><span class="lineno"> 997</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830afbc6c35854fe02eb9e792f897399c42a">CORNER_SIZE</a>, </div><div class="line"><a name="l00998"></a><span class="lineno"> 998</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830ae65a115db9b4bcc4ae0aa0b989089d16">TF_CENTER</a> </div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ad818ba0ecd4a87d8f1bb0d5b17f07830a1150a8d7752b01d30d91fe18fe9d8a54"><div class="ttname"><a href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830a1150a8d7752b01d30d91fe18fe9d8a54">arm_compute::DetectionOutputLayerCodeType::CENTER_SIZE</a></div><div class="ttdoc">Use box centers and size.</div></div>
7412<div class="ttc" id="namespacearm__compute_xhtml_ad818ba0ecd4a87d8f1bb0d5b17f07830ac411afd31d32cec664d372acc12f404a"><div class="ttname"><a href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830ac411afd31d32cec664d372acc12f404a">arm_compute::DetectionOutputLayerCodeType::CORNER</a></div><div class="ttdoc">Use box corners.</div></div>
7413<div class="ttc" id="namespacearm__compute_xhtml_ad818ba0ecd4a87d8f1bb0d5b17f07830ae65a115db9b4bcc4ae0aa0b989089d16"><div class="ttname"><a href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830ae65a115db9b4bcc4ae0aa0b989089d16">arm_compute::DetectionOutputLayerCodeType::TF_CENTER</a></div><div class="ttdoc">Use box centers and size but flip x and y co-ordinates.</div></div>
7414<div class="ttc" id="namespacearm__compute_xhtml_ad818ba0ecd4a87d8f1bb0d5b17f07830afbc6c35854fe02eb9e792f897399c42a"><div class="ttname"><a href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830afbc6c35854fe02eb9e792f897399c42a">arm_compute::DetectionOutputLayerCodeType::CORNER_SIZE</a></div><div class="ttdoc">Use box centers and size.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00007415</div><!-- fragment -->
7416</div>
7417</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007418<a id="a1fece1bd804e64f39f602d1c3969849a"></a>
7419<h2 class="memtitle"><span class="permalink"><a href="#a1fece1bd804e64f39f602d1c3969849a">&#9670;&nbsp;</a></span>DimensionRoundingType</h2>
7420
Anthony Barbier871448e2017-03-24 14:54:29 +00007421<div class="memitem">
7422<div class="memproto">
7423<table class="mlabels">
7424 <tr>
7425 <td class="mlabels-left">
7426 <table class="memname">
7427 <tr>
7428 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849a">DimensionRoundingType</a></td>
7429 </tr>
7430 </table>
7431 </td>
7432 <td class="mlabels-right">
7433<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7434 </tr>
7435</table>
7436</div><div class="memdoc">
7437
7438<p>Dimension rounding type when down-scaling on CNNs. </p>
7439<dl class="section note"><dt>Note</dt><dd>Used in pooling and convolution layer </dd></dl>
7440<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007441<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a1fece1bd804e64f39f602d1c3969849aa56c1e354d36beb85b0d881c5b2e24cbe"></a>FLOOR&#160;</td><td class="fielddoc"><p>Floor rounding. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007442</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007443<tr><td class="fieldname"><a id="a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff"></a>CEIL&#160;</td><td class="fielddoc"><p>Ceil rounding. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007444</td></tr>
7445</table>
7446
Jenkins514be652019-02-28 12:25:18 +00007447<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00602">602</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
7448<div class="fragment"><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160;{</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa56c1e354d36beb85b0d881c5b2e24cbe">FLOOR</a>, </div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff">CEIL</a> </div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff"><div class="ttname"><a href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff">arm_compute::DimensionRoundingType::CEIL</a></div><div class="ttdoc">Ceil rounding.</div></div>
7449<div class="ttc" id="namespacearm__compute_xhtml_a1fece1bd804e64f39f602d1c3969849aa56c1e354d36beb85b0d881c5b2e24cbe"><div class="ttname"><a href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa56c1e354d36beb85b0d881c5b2e24cbe">arm_compute::DimensionRoundingType::FLOOR</a></div><div class="ttdoc">Floor rounding.</div></div>
7450</div><!-- fragment -->
7451</div>
7452</div>
7453<a id="a5dad01b7eab116403241313417e0936d"></a>
7454<h2 class="memtitle"><span class="permalink"><a href="#a5dad01b7eab116403241313417e0936d">&#9670;&nbsp;</a></span>ElementWiseUnary</h2>
7455
7456<div class="memitem">
7457<div class="memproto">
7458<table class="mlabels">
7459 <tr>
7460 <td class="mlabels-left">
7461 <table class="memname">
7462 <tr>
7463 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936d">ElementWiseUnary</a></td>
7464 </tr>
7465 </table>
7466 </td>
7467 <td class="mlabels-right">
7468<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7469 </tr>
7470</table>
7471</div><div class="memdoc">
7472
7473<p>Available element wise unary operations. </p>
7474<table class="fieldtable">
7475<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a5dad01b7eab116403241313417e0936da66bac724670f51e77f3688d33ca0d781"></a>RSQRT&#160;</td><td class="fielddoc"><p>Reverse square root. </p>
7476</td></tr>
7477<tr><td class="fieldname"><a id="a5dad01b7eab116403241313417e0936da8c670f8c37b95e1ed14a0ce414b049c7"></a>EXP&#160;</td><td class="fielddoc"><p>Exponential. </p>
7478</td></tr>
7479</table>
7480
7481<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00561">561</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
7482<div class="fragment"><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160;{</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936da66bac724670f51e77f3688d33ca0d781">RSQRT</a>, </div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936da8c670f8c37b95e1ed14a0ce414b049c7">EXP</a>, </div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a5dad01b7eab116403241313417e0936da8c670f8c37b95e1ed14a0ce414b049c7"><div class="ttname"><a href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936da8c670f8c37b95e1ed14a0ce414b049c7">arm_compute::ElementWiseUnary::EXP</a></div><div class="ttdoc">Exponential.</div></div>
7483<div class="ttc" id="namespacearm__compute_xhtml_a5dad01b7eab116403241313417e0936da66bac724670f51e77f3688d33ca0d781"><div class="ttname"><a href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936da66bac724670f51e77f3688d33ca0d781">arm_compute::ElementWiseUnary::RSQRT</a></div><div class="ttdoc">Reverse square root.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00007484</div><!-- fragment -->
7485</div>
7486</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007487<a id="a59e56af19e754a6aa26a612ebf91d05f"></a>
7488<h2 class="memtitle"><span class="permalink"><a href="#a59e56af19e754a6aa26a612ebf91d05f">&#9670;&nbsp;</a></span>ErrorCode</h2>
7489
Anthony Barbier8140e1e2017-12-14 23:48:46 +00007490<div class="memitem">
7491<div class="memproto">
7492<table class="mlabels">
7493 <tr>
7494 <td class="mlabels-left">
7495 <table class="memname">
7496 <tr>
7497 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05f">ErrorCode</a></td>
7498 </tr>
7499 </table>
7500 </td>
7501 <td class="mlabels-right">
7502<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7503 </tr>
7504</table>
7505</div><div class="memdoc">
Jenkinsb3a371b2018-05-23 11:36:53 +01007506
7507<p>Available error codes. </p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00007508<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007509<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a59e56af19e754a6aa26a612ebf91d05fae0aa021e21dddbd6d8cecec71e9cf564"></a>OK&#160;</td><td class="fielddoc"><p>No error. </p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00007510</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007511<tr><td class="fieldname"><a id="a59e56af19e754a6aa26a612ebf91d05fa62be47fdd89da032cf78dfce82239579"></a>RUNTIME_ERROR&#160;</td><td class="fielddoc"><p>Generic runtime error. </p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00007512</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007513<tr><td class="fieldname"><a id="a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7"></a>UNSUPPORTED_EXTENSION_USE&#160;</td><td class="fielddoc"><p>Unsupported extension used. </p>
Jenkins52ba29e2018-08-29 15:32:11 +00007514</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00007515</table>
7516
Jenkinsb9abeae2018-11-22 11:58:08 +00007517<p class="definition">Definition at line <a class="el" href="_error_8h_source.xhtml#l00044">44</a> of file <a class="el" href="_error_8h_source.xhtml">Error.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00007518<div class="fragment"><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;{</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fae0aa021e21dddbd6d8cecec71e9cf564">OK</a>, </div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa62be47fdd89da032cf78dfce82239579">RUNTIME_ERROR</a>, </div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7">UNSUPPORTED_EXTENSION_USE</a> </div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7"><div class="ttname"><a href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7">arm_compute::ErrorCode::UNSUPPORTED_EXTENSION_USE</a></div><div class="ttdoc">Unsupported extension used.</div></div>
7519<div class="ttc" id="namespacearm__compute_xhtml_a59e56af19e754a6aa26a612ebf91d05fae0aa021e21dddbd6d8cecec71e9cf564"><div class="ttname"><a href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fae0aa021e21dddbd6d8cecec71e9cf564">arm_compute::ErrorCode::OK</a></div><div class="ttdoc">No error.</div></div>
7520<div class="ttc" id="namespacearm__compute_xhtml_a59e56af19e754a6aa26a612ebf91d05fa62be47fdd89da032cf78dfce82239579"><div class="ttname"><a href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa62be47fdd89da032cf78dfce82239579">arm_compute::ErrorCode::RUNTIME_ERROR</a></div><div class="ttdoc">Generic runtime error.</div></div>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00007521</div><!-- fragment -->
7522</div>
7523</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007524<a id="ab4e88c89b3b7ea1735996cc4def22d58"></a>
7525<h2 class="memtitle"><span class="permalink"><a href="#ab4e88c89b3b7ea1735996cc4def22d58">&#9670;&nbsp;</a></span>Format</h2>
7526
Anthony Barbier871448e2017-03-24 14:54:29 +00007527<div class="memitem">
7528<div class="memproto">
7529<table class="mlabels">
7530 <tr>
7531 <td class="mlabels-left">
7532 <table class="memname">
7533 <tr>
7534 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a></td>
7535 </tr>
7536 </table>
7537 </td>
7538 <td class="mlabels-right">
7539<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7540 </tr>
7541</table>
7542</div><div class="memdoc">
7543
Jenkins514be652019-02-28 12:25:18 +00007544<p><a class="el" href="struct_image.xhtml" title="Structure to hold Image information.">Image</a> colour formats. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007545<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007546<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc"><p>Unknown image format. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007547</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007548<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5"></a>U8&#160;</td><td class="fielddoc"><p>1 channel, 1 U8 per channel </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007549</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007550<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c"></a>S16&#160;</td><td class="fielddoc"><p>1 channel, 1 S16 per channel </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007551</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007552<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2"></a>U16&#160;</td><td class="fielddoc"><p>1 channel, 1 U16 per channel </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007553</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007554<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c"></a>S32&#160;</td><td class="fielddoc"><p>1 channel, 1 S32 per channel </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007555</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007556<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee"></a>U32&#160;</td><td class="fielddoc"><p>1 channel, 1 U32 per channel </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007557</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007558<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94"></a>F16&#160;</td><td class="fielddoc"><p>1 channel, 1 F16 per channel </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007559</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007560<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda"></a>F32&#160;</td><td class="fielddoc"><p>1 channel, 1 F32 per channel </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007561</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007562<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825"></a>UV88&#160;</td><td class="fielddoc"><p>2 channel, 1 U8 per channel </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007563</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007564<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0"></a>RGB888&#160;</td><td class="fielddoc"><p>3 channels, 1 U8 per channel </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007565</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007566<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619"></a>RGBA8888&#160;</td><td class="fielddoc"><p>4 channels, 1 U8 per channel </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007567</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007568<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c"></a>YUV444&#160;</td><td class="fielddoc"><p>A 3 plane of 8 bit 4:4:4 sampled Y, U, V planes. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007569</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007570<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164"></a>YUYV422&#160;</td><td class="fielddoc"><p>A single plane of 32-bit macro pixel of Y0, U0, Y1, V0 bytes. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007571</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007572<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755"></a>NV12&#160;</td><td class="fielddoc"><p>A 2 plane YUV format of Luma (Y) and interleaved UV data at 4:2:0 sampling. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007573</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007574<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4"></a>NV21&#160;</td><td class="fielddoc"><p>A 2 plane YUV format of Luma (Y) and interleaved VU data at 4:2:0 sampling. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007575</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007576<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778"></a>IYUV&#160;</td><td class="fielddoc"><p>A 3 plane of 8-bit 4:2:0 sampled Y, U, V planes. </p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00007577</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007578<tr><td class="fieldname"><a id="ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa"></a>UYVY422&#160;</td><td class="fielddoc"><p>A single plane of 32-bit macro pixel of U0, Y0, V0, Y1 byte. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007579</td></tr>
7580</table>
7581
Jenkinsb9abeae2018-11-22 11:58:08 +00007582<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00052">52</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00007583<div class="fragment"><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;{</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, </div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, </div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, </div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, </div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, </div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, </div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, </div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, </div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, </div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, </div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, </div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, </div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>, </div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, </div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, </div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, </div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a> </div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">arm_compute::Format::UYVY422</a></div><div class="ttdoc">A single plane of 32-bit macro pixel of U0, Y0, V0, Y1 byte.</div></div>
7584<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">arm_compute::Format::U8</a></div><div class="ttdoc">1 channel, 1 U8 per channel</div></div>
7585<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">arm_compute::Format::F32</a></div><div class="ttdoc">1 channel, 1 F32 per channel</div></div>
7586<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">arm_compute::Format::NV12</a></div><div class="ttdoc">A 2 plane YUV format of Luma (Y) and interleaved UV data at 4:2:0 sampling.</div></div>
7587<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">arm_compute::Format::U16</a></div><div class="ttdoc">1 channel, 1 U16 per channel</div></div>
7588<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">arm_compute::Format::NV21</a></div><div class="ttdoc">A 2 plane YUV format of Luma (Y) and interleaved VU data at 4:2:0 sampling.</div></div>
7589<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">arm_compute::Format::F16</a></div><div class="ttdoc">1 channel, 1 F16 per channel</div></div>
7590<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">arm_compute::Format::S32</a></div><div class="ttdoc">1 channel, 1 S32 per channel</div></div>
7591<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">arm_compute::Format::RGB888</a></div><div class="ttdoc">3 channels, 1 U8 per channel</div></div>
7592<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">arm_compute::Format::U32</a></div><div class="ttdoc">1 channel, 1 U32 per channel</div></div>
7593<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">arm_compute::Format::YUV444</a></div><div class="ttdoc">A 3 plane of 8 bit 4:4:4 sampled Y, U, V planes.</div></div>
7594<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">arm_compute::Format::S16</a></div><div class="ttdoc">1 channel, 1 S16 per channel</div></div>
7595<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">arm_compute::Format::IYUV</a></div><div class="ttdoc">A 3 plane of 8-bit 4:2:0 sampled Y, U, V planes.</div></div>
7596<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">arm_compute::Format::RGBA8888</a></div><div class="ttdoc">4 channels, 1 U8 per channel</div></div>
Kaizen8938bd32017-09-28 14:38:23 +01007597<div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">arm_compute::CLVersion::UNKNOWN</a></div></div>
Jenkins514be652019-02-28 12:25:18 +00007598<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">arm_compute::Format::UV88</a></div><div class="ttdoc">2 channel, 1 U8 per channel</div></div>
7599<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">arm_compute::Format::YUYV422</a></div><div class="ttdoc">A single plane of 32-bit macro pixel of Y0, U0, Y1, V0 bytes.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00007600</div><!-- fragment -->
7601</div>
7602</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007603<a id="a5558e2cc22f7f4771653d992c8ad8864"></a>
7604<h2 class="memtitle"><span class="permalink"><a href="#a5558e2cc22f7f4771653d992c8ad8864">&#9670;&nbsp;</a></span>GEMMLowpOutputStageType</h2>
7605
7606<div class="memitem">
7607<div class="memproto">
7608<table class="mlabels">
7609 <tr>
7610 <td class="mlabels-left">
7611 <table class="memname">
7612 <tr>
7613 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864">GEMMLowpOutputStageType</a></td>
7614 </tr>
7615 </table>
7616 </td>
7617 <td class="mlabels-right">
7618<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7619 </tr>
7620</table>
7621</div><div class="memdoc">
7622
7623<p>GEMMLowp output stage type. </p>
7624<table class="fieldtable">
7625<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a5558e2cc22f7f4771653d992c8ad8864ab50339a10e1de285ac99d4c3990b8693"></a>NONE&#160;</td><td class="fielddoc"><p>No quantization to uint8. </p>
7626</td></tr>
7627<tr><td class="fieldname"><a id="a5558e2cc22f7f4771653d992c8ad8864a079e2ddc95b344b5cb0188bed9a80d8b"></a>QUANTIZE_DOWN&#160;</td><td class="fielddoc"><p>Quantize to uint8 using an integer multiplication. </p>
7628</td></tr>
7629<tr><td class="fieldname"><a id="a5558e2cc22f7f4771653d992c8ad8864ab300cae200f67712c1eb9234e28158ca"></a>QUANTIZE_DOWN_FIXEDPOINT&#160;</td><td class="fielddoc"><p>Quantize to uint8 using a fixed point multiplication. </p>
7630</td></tr>
7631<tr><td class="fieldname"><a id="a5558e2cc22f7f4771653d992c8ad8864aad664ac5008f135e38afeb391e524f9c"></a>QUANTIZE_DOWN_FLOAT&#160;</td><td class="fielddoc"><p>Quantize to uint8 using a floating point multiplication. </p>
7632</td></tr>
7633</table>
7634
Jenkins514be652019-02-28 12:25:18 +00007635<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01755">1755</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
7636<div class="fragment"><div class="line"><a name="l01756"></a><span class="lineno"> 1756</span>&#160;{</div><div class="line"><a name="l01757"></a><span class="lineno"> 1757</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab50339a10e1de285ac99d4c3990b8693">NONE</a>, </div><div class="line"><a name="l01758"></a><span class="lineno"> 1758</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864a079e2ddc95b344b5cb0188bed9a80d8b">QUANTIZE_DOWN</a>, </div><div class="line"><a name="l01759"></a><span class="lineno"> 1759</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab300cae200f67712c1eb9234e28158ca">QUANTIZE_DOWN_FIXEDPOINT</a>, </div><div class="line"><a name="l01760"></a><span class="lineno"> 1760</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864aad664ac5008f135e38afeb391e524f9c">QUANTIZE_DOWN_FLOAT</a> </div><div class="line"><a name="l01761"></a><span class="lineno"> 1761</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a5558e2cc22f7f4771653d992c8ad8864ab300cae200f67712c1eb9234e28158ca"><div class="ttname"><a href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab300cae200f67712c1eb9234e28158ca">arm_compute::GEMMLowpOutputStageType::QUANTIZE_DOWN_FIXEDPOINT</a></div><div class="ttdoc">Quantize to uint8 using a fixed point multiplication.</div></div>
7637<div class="ttc" id="namespacearm__compute_xhtml_a5558e2cc22f7f4771653d992c8ad8864ab50339a10e1de285ac99d4c3990b8693"><div class="ttname"><a href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab50339a10e1de285ac99d4c3990b8693">arm_compute::GEMMLowpOutputStageType::NONE</a></div><div class="ttdoc">No quantization to uint8.</div></div>
7638<div class="ttc" id="namespacearm__compute_xhtml_a5558e2cc22f7f4771653d992c8ad8864aad664ac5008f135e38afeb391e524f9c"><div class="ttname"><a href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864aad664ac5008f135e38afeb391e524f9c">arm_compute::GEMMLowpOutputStageType::QUANTIZE_DOWN_FLOAT</a></div><div class="ttdoc">Quantize to uint8 using a floating point multiplication.</div></div>
7639<div class="ttc" id="namespacearm__compute_xhtml_a5558e2cc22f7f4771653d992c8ad8864a079e2ddc95b344b5cb0188bed9a80d8b"><div class="ttname"><a href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864a079e2ddc95b344b5cb0188bed9a80d8b">arm_compute::GEMMLowpOutputStageType::QUANTIZE_DOWN</a></div><div class="ttdoc">Quantize to uint8 using an integer multiplication.</div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007640</div><!-- fragment -->
7641</div>
7642</div>
7643<a id="a735ac6c2a02e320969625308810444f3"></a>
7644<h2 class="memtitle"><span class="permalink"><a href="#a735ac6c2a02e320969625308810444f3">&#9670;&nbsp;</a></span>GPUTarget</h2>
7645
Anthony Barbierdbdab852017-06-23 15:42:00 +01007646<div class="memitem">
7647<div class="memproto">
7648<table class="mlabels">
7649 <tr>
7650 <td class="mlabels-left">
7651 <table class="memname">
7652 <tr>
7653 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a></td>
7654 </tr>
7655 </table>
7656 </td>
7657 <td class="mlabels-right">
7658<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7659 </tr>
7660</table>
7661</div><div class="memdoc">
7662
7663<p>Available GPU Targets. </p>
7664<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007665<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc"></td></tr>
7666<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a57a3b40730a5af7ea3e13eb4bba56d82"></a>GPU_ARCH_MASK&#160;</td><td class="fielddoc"></td></tr>
7667<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38"></a>MIDGARD&#160;</td><td class="fielddoc"></td></tr>
7668<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e"></a>BIFROST&#160;</td><td class="fielddoc"></td></tr>
7669<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a6855a4342969d2b58c96d95385d6e673"></a>T600&#160;</td><td class="fielddoc"></td></tr>
7670<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd"></a>T700&#160;</td><td class="fielddoc"></td></tr>
7671<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3aae926a8537ded0221329aa9a89b84048"></a>T800&#160;</td><td class="fielddoc"></td></tr>
7672<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6"></a>G71&#160;</td><td class="fielddoc"></td></tr>
7673<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3ab2ac2aea42c95ccc70260ceeb02ec4fc"></a>G72&#160;</td><td class="fielddoc"></td></tr>
7674<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0"></a>G51&#160;</td><td class="fielddoc"></td></tr>
7675<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988"></a>G51BIG&#160;</td><td class="fielddoc"></td></tr>
7676<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f"></a>G51LIT&#160;</td><td class="fielddoc"></td></tr>
7677<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a3731064380218cfc2b9613d2b6293cfb"></a>G52&#160;</td><td class="fielddoc"></td></tr>
7678<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a4b3e9b93a7e833f9d7ab01d4cf9f7837"></a>G52LIT&#160;</td><td class="fielddoc"></td></tr>
7679<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d"></a>G76&#160;</td><td class="fielddoc"></td></tr>
7680<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4"></a>TTRX&#160;</td><td class="fielddoc"></td></tr>
7681<tr><td class="fieldname"><a id="a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc"></a>TBOX&#160;</td><td class="fielddoc"></td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01007682</table>
7683
Jenkinsb9abeae2018-11-22 11:58:08 +00007684<p class="definition">Definition at line <a class="el" href="_g_p_u_target_8h_source.xhtml#l00034">34</a> of file <a class="el" href="_g_p_u_target_8h_source.xhtml">GPUTarget.h</a>.</p>
7685<div class="fragment"><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;{</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a> = 0x101,</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a57a3b40730a5af7ea3e13eb4bba56d82">GPU_ARCH_MASK</a> = 0xF00,</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38">MIDGARD</a> = 0x100,</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e">BIFROST</a> = 0x200,</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a6855a4342969d2b58c96d95385d6e673">T600</a> = 0x110,</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd">T700</a> = 0x120,</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aae926a8537ded0221329aa9a89b84048">T800</a> = 0x130,</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6">G71</a> = 0x210,</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab2ac2aea42c95ccc70260ceeb02ec4fc">G72</a> = 0x220,</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0">G51</a> = 0x230,</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988">G51BIG</a> = 0x231,</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f">G51LIT</a> = 0x232,</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a3731064380218cfc2b9613d2b6293cfb">G52</a> = 0x240,</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a4b3e9b93a7e833f9d7ab01d4cf9f7837">G52LIT</a> = 0x241,</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">G76</a> = 0x250,</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4">TTRX</a> = 0x260,</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc">TBOX</a> = 0x270</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">arm_compute::GPUTarget::G76</a></div></div>
7686<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a4b3e9b93a7e833f9d7ab01d4cf9f7837"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a4b3e9b93a7e833f9d7ab01d4cf9f7837">arm_compute::GPUTarget::G52LIT</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +00007687<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6">arm_compute::GPUTarget::G71</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +01007688<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd">arm_compute::GPUTarget::T700</a></div></div>
7689<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f">arm_compute::GPUTarget::G51LIT</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +01007690<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3aae926a8537ded0221329aa9a89b84048"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aae926a8537ded0221329aa9a89b84048">arm_compute::GPUTarget::T800</a></div></div>
7691<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a57a3b40730a5af7ea3e13eb4bba56d82"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a57a3b40730a5af7ea3e13eb4bba56d82">arm_compute::GPUTarget::GPU_ARCH_MASK</a></div></div>
7692<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a6855a4342969d2b58c96d95385d6e673"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a6855a4342969d2b58c96d95385d6e673">arm_compute::GPUTarget::T600</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +01007693<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3ab2ac2aea42c95ccc70260ceeb02ec4fc"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab2ac2aea42c95ccc70260ceeb02ec4fc">arm_compute::GPUTarget::G72</a></div></div>
7694<div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">arm_compute::CLVersion::UNKNOWN</a></div></div>
7695<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc">arm_compute::GPUTarget::TBOX</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +01007696<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38">arm_compute::GPUTarget::MIDGARD</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +01007697<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4">arm_compute::GPUTarget::TTRX</a></div></div>
7698<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988">arm_compute::GPUTarget::G51BIG</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +01007699<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e">arm_compute::GPUTarget::BIFROST</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007700<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a3731064380218cfc2b9613d2b6293cfb"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a3731064380218cfc2b9613d2b6293cfb">arm_compute::GPUTarget::G52</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +01007701<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0">arm_compute::GPUTarget::G51</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +01007702</div><!-- fragment -->
7703</div>
7704</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007705<a id="ae46abc5ecac309cbece5c06cb80daaf7"></a>
7706<h2 class="memtitle"><span class="permalink"><a href="#ae46abc5ecac309cbece5c06cb80daaf7">&#9670;&nbsp;</a></span>GradientDimension</h2>
7707
Anthony Barbier8140e1e2017-12-14 23:48:46 +00007708<div class="memitem">
7709<div class="memproto">
7710<table class="mlabels">
7711 <tr>
7712 <td class="mlabels-left">
7713 <table class="memname">
7714 <tr>
7715 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7">GradientDimension</a></td>
7716 </tr>
7717 </table>
7718 </td>
7719 <td class="mlabels-right">
7720<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7721 </tr>
7722</table>
7723</div><div class="memdoc">
7724
7725<p>Gradient dimension type. </p>
7726<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007727<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ae46abc5ecac309cbece5c06cb80daaf7a5515a637eda61b978e97adaa5d7629cc"></a>GRAD_XY&#160;</td><td class="fielddoc"><p>x and y gradient dimension </p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00007728</td></tr>
7729</table>
7730
Jenkinsb9abeae2018-11-22 11:58:08 +00007731<p class="definition">Definition at line <a class="el" href="tests_2_types_8h_source.xhtml#l00034">34</a> of file <a class="el" href="tests_2_types_8h_source.xhtml">Types.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00007732<div class="fragment"><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;{</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; GRAD_X, </div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; GRAD_Y, </div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7a5515a637eda61b978e97adaa5d7629cc">GRAD_XY</a>, </div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ae46abc5ecac309cbece5c06cb80daaf7a5515a637eda61b978e97adaa5d7629cc"><div class="ttname"><a href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7a5515a637eda61b978e97adaa5d7629cc">arm_compute::GradientDimension::GRAD_XY</a></div><div class="ttdoc">x and y gradient dimension</div></div>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00007733</div><!-- fragment -->
7734</div>
7735</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007736<a id="a673665b4587a2956fcbad5f0e9ba89d3"></a>
7737<h2 class="memtitle"><span class="permalink"><a href="#a673665b4587a2956fcbad5f0e9ba89d3">&#9670;&nbsp;</a></span>HOGNormType</h2>
7738
Anthony Barbier871448e2017-03-24 14:54:29 +00007739<div class="memitem">
7740<div class="memproto">
7741<table class="mlabels">
7742 <tr>
7743 <td class="mlabels-left">
7744 <table class="memname">
7745 <tr>
7746 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3">HOGNormType</a></td>
7747 </tr>
7748 </table>
7749 </td>
7750 <td class="mlabels-right">
7751<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7752 </tr>
7753</table>
7754</div><div class="memdoc">
7755
Jenkins514be652019-02-28 12:25:18 +00007756<p>Normalization type for Histogram of Oriented Gradients (<a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a>) </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007757<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007758<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a673665b4587a2956fcbad5f0e9ba89d3a80485e54c7a3c93a0f74637c6b918ce5"></a>L2_NORM&#160;</td><td class="fielddoc"><p>L2-norm. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007759</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007760<tr><td class="fieldname"><a id="a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2"></a>L2HYS_NORM&#160;</td><td class="fielddoc"><p>L2-norm followed by clipping. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007761</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007762<tr><td class="fieldname"><a id="a673665b4587a2956fcbad5f0e9ba89d3a68616ae21712c00705b962f4eff06eaa"></a>L1_NORM&#160;</td><td class="fielddoc"><p>L1 norm. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007763</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00007764</table>
7765
Jenkins514be652019-02-28 12:25:18 +00007766<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00576">576</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
7767<div class="fragment"><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160;{</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a80485e54c7a3c93a0f74637c6b918ce5">L2_NORM</a> = 1, </div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">L2HYS_NORM</a> = 2, </div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a68616ae21712c00705b962f4eff06eaa">L1_NORM</a> = 3 </div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2"><div class="ttname"><a href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">arm_compute::HOGNormType::L2HYS_NORM</a></div><div class="ttdoc">L2-norm followed by clipping.</div></div>
7768<div class="ttc" id="namespacearm__compute_xhtml_a673665b4587a2956fcbad5f0e9ba89d3a68616ae21712c00705b962f4eff06eaa"><div class="ttname"><a href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a68616ae21712c00705b962f4eff06eaa">arm_compute::HOGNormType::L1_NORM</a></div><div class="ttdoc">L1 norm.</div></div>
7769<div class="ttc" id="namespacearm__compute_xhtml_a673665b4587a2956fcbad5f0e9ba89d3a80485e54c7a3c93a0f74637c6b918ce5"><div class="ttname"><a href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a80485e54c7a3c93a0f74637c6b918ce5">arm_compute::HOGNormType::L2_NORM</a></div><div class="ttdoc">L2-norm.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00007770</div><!-- fragment -->
7771</div>
7772</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007773<a id="a966a9c417ce5e94dca08d9b5e745c0c9"></a>
7774<h2 class="memtitle"><span class="permalink"><a href="#a966a9c417ce5e94dca08d9b5e745c0c9">&#9670;&nbsp;</a></span>InterpolationPolicy</h2>
7775
Anthony Barbier871448e2017-03-24 14:54:29 +00007776<div class="memitem">
7777<div class="memproto">
7778<table class="mlabels">
7779 <tr>
7780 <td class="mlabels-left">
7781 <table class="memname">
7782 <tr>
7783 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a></td>
7784 </tr>
7785 </table>
7786 </td>
7787 <td class="mlabels-right">
7788<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7789 </tr>
7790</table>
7791</div><div class="memdoc">
7792
7793<p>Interpolation method. </p>
7794<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007795<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2"></a>NEAREST_NEIGHBOR&#160;</td><td class="fielddoc"><p>Output values are defined to match the source pixel whose center is nearest to the sample position. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007796</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007797<tr><td class="fieldname"><a id="a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65"></a>BILINEAR&#160;</td><td class="fielddoc"><p>Output values are defined by bilinear interpolation between the pixels. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007798</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007799<tr><td class="fieldname"><a id="a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4"></a>AREA&#160;</td><td class="fielddoc"><p>Output values are determined by averaging the source pixels whose areas fall under the area of the destination pixel, projected onto the source image. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007800</td></tr>
7801</table>
7802
Jenkins514be652019-02-28 12:25:18 +00007803<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00410">410</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
7804<div class="fragment"><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;{</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2">NEAREST_NEIGHBOR</a>, </div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65">BILINEAR</a>, </div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4">AREA</a>, </div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65"><div class="ttname"><a href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65">arm_compute::InterpolationPolicy::BILINEAR</a></div><div class="ttdoc">Output values are defined by bilinear interpolation between the pixels.</div></div>
7805<div class="ttc" id="namespacearm__compute_xhtml_a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2"><div class="ttname"><a href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2">arm_compute::InterpolationPolicy::NEAREST_NEIGHBOR</a></div><div class="ttdoc">Output values are defined to match the source pixel whose center is nearest to the sample position.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00007806<div class="ttc" id="namespacearm__compute_xhtml_a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4"><div class="ttname"><a href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4">arm_compute::InterpolationPolicy::AREA</a></div><div class="ttdoc">Output values are determined by averaging the source pixels whose areas fall under the area of the de...</div></div>
7807</div><!-- fragment -->
7808</div>
7809</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007810<a id="a7b3ec6413f000b02fdb4e39a951d9f8a"></a>
7811<h2 class="memtitle"><span class="permalink"><a href="#a7b3ec6413f000b02fdb4e39a951d9f8a">&#9670;&nbsp;</a></span>MagnitudeType</h2>
7812
Anthony Barbier871448e2017-03-24 14:54:29 +00007813<div class="memitem">
7814<div class="memproto">
7815<table class="mlabels">
7816 <tr>
7817 <td class="mlabels-left">
7818 <table class="memname">
7819 <tr>
7820 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8a">MagnitudeType</a></td>
7821 </tr>
7822 </table>
7823 </td>
7824 <td class="mlabels-right">
7825<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7826 </tr>
7827</table>
7828</div><div class="memdoc">
7829
7830<p>Magnitude calculation type. </p>
7831<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007832<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8"></a>L1NORM&#160;</td><td class="fielddoc"><p>L1 normalization type. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007833</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007834<tr><td class="fieldname"><a id="a7b3ec6413f000b02fdb4e39a951d9f8aad927ac799e8b24f80fc80d89b2eb7131"></a>L2NORM&#160;</td><td class="fielddoc"><p>L2 normalization type. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007835</td></tr>
7836</table>
7837
Jenkins514be652019-02-28 12:25:18 +00007838<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00440">440</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
7839<div class="fragment"><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160;{</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8">L1NORM</a>, </div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aad927ac799e8b24f80fc80d89b2eb7131">L2NORM</a> </div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8"><div class="ttname"><a href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8">arm_compute::MagnitudeType::L1NORM</a></div><div class="ttdoc">L1 normalization type.</div></div>
7840<div class="ttc" id="namespacearm__compute_xhtml_a7b3ec6413f000b02fdb4e39a951d9f8aad927ac799e8b24f80fc80d89b2eb7131"><div class="ttname"><a href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aad927ac799e8b24f80fc80d89b2eb7131">arm_compute::MagnitudeType::L2NORM</a></div><div class="ttdoc">L2 normalization type.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00007841</div><!-- fragment -->
7842</div>
7843</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007844<a id="af0a4d6be70322c742c12da1edccbb74d"></a>
7845<h2 class="memtitle"><span class="permalink"><a href="#af0a4d6be70322c742c12da1edccbb74d">&#9670;&nbsp;</a></span>MappingType</h2>
7846
Kaizen8938bd32017-09-28 14:38:23 +01007847<div class="memitem">
7848<div class="memproto">
7849<table class="mlabels">
7850 <tr>
7851 <td class="mlabels-left">
7852 <table class="memname">
7853 <tr>
7854 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74d">MappingType</a></td>
7855 </tr>
7856 </table>
7857 </td>
7858 <td class="mlabels-right">
7859<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7860 </tr>
7861</table>
7862</div><div class="memdoc">
7863
7864<p>Mapping type. </p>
7865<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007866<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="af0a4d6be70322c742c12da1edccbb74daac354f9e7a5097598cdd933b42fd190e"></a>BLOBS&#160;</td><td class="fielddoc"><p>Mappings are in blob granularity. </p>
Kaizen8938bd32017-09-28 14:38:23 +01007867</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007868<tr><td class="fieldname"><a id="af0a4d6be70322c742c12da1edccbb74da465202c26fd7181c6bc9a80648499073"></a>OFFSETS&#160;</td><td class="fielddoc"><p>Mappings are in offset granularity in the same blob. </p>
Kaizen8938bd32017-09-28 14:38:23 +01007869</td></tr>
7870</table>
7871
Jenkinsb9abeae2018-11-22 11:58:08 +00007872<p class="definition">Definition at line <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml#l00034">34</a> of file <a class="el" href="arm__compute_2runtime_2_types_8h_source.xhtml">Types.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00007873<div class="fragment"><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;{</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <a class="code" href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74daac354f9e7a5097598cdd933b42fd190e">BLOBS</a>, </div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <a class="code" href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74da465202c26fd7181c6bc9a80648499073">OFFSETS</a> </div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_af0a4d6be70322c742c12da1edccbb74daac354f9e7a5097598cdd933b42fd190e"><div class="ttname"><a href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74daac354f9e7a5097598cdd933b42fd190e">arm_compute::MappingType::BLOBS</a></div><div class="ttdoc">Mappings are in blob granularity.</div></div>
7874<div class="ttc" id="namespacearm__compute_xhtml_af0a4d6be70322c742c12da1edccbb74da465202c26fd7181c6bc9a80648499073"><div class="ttname"><a href="namespacearm__compute.xhtml#af0a4d6be70322c742c12da1edccbb74da465202c26fd7181c6bc9a80648499073">arm_compute::MappingType::OFFSETS</a></div><div class="ttdoc">Mappings are in offset granularity in the same blob.</div></div>
Kaizen8938bd32017-09-28 14:38:23 +01007875</div><!-- fragment -->
7876</div>
7877</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007878<a id="afdda916edc7502967bbec17ea3c06c02"></a>
7879<h2 class="memtitle"><span class="permalink"><a href="#afdda916edc7502967bbec17ea3c06c02">&#9670;&nbsp;</a></span>MatrixPattern</h2>
7880
Anthony Barbier871448e2017-03-24 14:54:29 +00007881<div class="memitem">
7882<div class="memproto">
7883<table class="mlabels">
7884 <tr>
7885 <td class="mlabels-left">
7886 <table class="memname">
7887 <tr>
7888 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a></td>
7889 </tr>
7890 </table>
7891 </td>
7892 <td class="mlabels-right">
7893<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7894 </tr>
7895</table>
7896</div><div class="memdoc">
7897
7898<p>Available matrix patterns. </p>
7899<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00007900<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5"></a>BOX&#160;</td><td class="fielddoc"><p>Box pattern matrix. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007901</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007902<tr><td class="fieldname"><a id="afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2"></a>CROSS&#160;</td><td class="fielddoc"><p>Cross pattern matrix. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007903</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007904<tr><td class="fieldname"><a id="afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7"></a>DISK&#160;</td><td class="fielddoc"><p>Disk pattern matrix. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007905</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00007906<tr><td class="fieldname"><a id="afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb"></a>OTHER&#160;</td><td class="fielddoc"><p>Any other matrix pattern. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00007907</td></tr>
7908</table>
7909
Jenkins514be652019-02-28 12:25:18 +00007910<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00522">522</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
7911<div class="fragment"><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; <a class="code" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5">BOX</a>, </div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; <a class="code" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2">CROSS</a>, </div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; <a class="code" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7">DISK</a>, </div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; <a class="code" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb">OTHER</a> </div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7"><div class="ttname"><a href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7">arm_compute::MatrixPattern::DISK</a></div><div class="ttdoc">Disk pattern matrix.</div></div>
7912<div class="ttc" id="namespacearm__compute_xhtml_afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5"><div class="ttname"><a href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5">arm_compute::MatrixPattern::BOX</a></div><div class="ttdoc">Box pattern matrix.</div></div>
7913<div class="ttc" id="namespacearm__compute_xhtml_afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2"><div class="ttname"><a href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2">arm_compute::MatrixPattern::CROSS</a></div><div class="ttdoc">Cross pattern matrix.</div></div>
7914<div class="ttc" id="namespacearm__compute_xhtml_afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb"><div class="ttname"><a href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb">arm_compute::MatrixPattern::OTHER</a></div><div class="ttdoc">Any other matrix pattern.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00007915</div><!-- fragment -->
7916</div>
7917</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007918<a id="a4c9101ca1a1f72f48efff28b4b9a6495"></a>
7919<h2 class="memtitle"><span class="permalink"><a href="#a4c9101ca1a1f72f48efff28b4b9a6495">&#9670;&nbsp;</a></span>MemoryPolicy</h2>
7920
7921<div class="memitem">
7922<div class="memproto">
7923<table class="mlabels">
7924 <tr>
7925 <td class="mlabels-left">
7926 <table class="memname">
7927 <tr>
7928 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495">MemoryPolicy</a></td>
7929 </tr>
7930 </table>
7931 </td>
7932 <td class="mlabels-right">
7933<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7934 </tr>
7935</table>
7936</div><div class="memdoc">
7937
7938<p>Global memory policy. </p>
7939<p>The functions in the runtime will use different strategies based on the policy currently set.</p>
7940<p>MINIMIZE will try to reduce the amount allocated by the functions at the expense of performance normally. NORMAL won't try to save any memory and will favor speed over memory consumption </p>
7941<table class="fieldtable">
7942<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a4c9101ca1a1f72f48efff28b4b9a6495a704bfa6c1ed5e479c8cfb5bdfc8cccda"></a>MINIMIZE&#160;</td><td class="fielddoc"></td></tr>
7943<tr><td class="fieldname"><a id="a4c9101ca1a1f72f48efff28b4b9a6495a1e23852820b9154316c7c06e2b7ba051"></a>NORMAL&#160;</td><td class="fielddoc"></td></tr>
7944</table>
7945
7946<p class="definition">Definition at line <a class="el" href="_c_p_p_types_8h_source.xhtml#l00057">57</a> of file <a class="el" href="_c_p_p_types_8h_source.xhtml">CPPTypes.h</a>.</p>
7947<div class="fragment"><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;{</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495a704bfa6c1ed5e479c8cfb5bdfc8cccda">MINIMIZE</a>,</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495a1e23852820b9154316c7c06e2b7ba051">NORMAL</a></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a4c9101ca1a1f72f48efff28b4b9a6495a704bfa6c1ed5e479c8cfb5bdfc8cccda"><div class="ttname"><a href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495a704bfa6c1ed5e479c8cfb5bdfc8cccda">arm_compute::MemoryPolicy::MINIMIZE</a></div></div>
7948<div class="ttc" id="namespacearm__compute_xhtml_a4c9101ca1a1f72f48efff28b4b9a6495a1e23852820b9154316c7c06e2b7ba051"><div class="ttname"><a href="namespacearm__compute.xhtml#a4c9101ca1a1f72f48efff28b4b9a6495a1e23852820b9154316c7c06e2b7ba051">arm_compute::MemoryPolicy::NORMAL</a></div></div>
7949</div><!-- fragment -->
7950</div>
7951</div>
7952<a id="a201391f6e13e2a1ac203256a77792718"></a>
7953<h2 class="memtitle"><span class="permalink"><a href="#a201391f6e13e2a1ac203256a77792718">&#9670;&nbsp;</a></span>NMSType</h2>
7954
7955<div class="memitem">
7956<div class="memproto">
7957<table class="mlabels">
7958 <tr>
7959 <td class="mlabels-left">
7960 <table class="memname">
7961 <tr>
7962 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718">NMSType</a></td>
7963 </tr>
7964 </table>
7965 </td>
7966 <td class="mlabels-right">
7967<span class="mlabels"><span class="mlabel">strong</span></span> </td>
7968 </tr>
7969</table>
7970</div><div class="memdoc">
7971
7972<p>Available non maxima suppression types. </p>
7973<table class="fieldtable">
7974<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a201391f6e13e2a1ac203256a77792718aaac544aacc3615aada24897a215f5046"></a>LINEAR&#160;</td><td class="fielddoc"><p>Linear NMS. </p>
7975</td></tr>
7976<tr><td class="fieldname"><a id="a201391f6e13e2a1ac203256a77792718a0fceff26ae86a047835cafbb6cadb1b9"></a>GAUSSIAN&#160;</td><td class="fielddoc"><p>Gaussian NMS. </p>
7977</td></tr>
7978<tr><td class="fieldname"><a id="a201391f6e13e2a1ac203256a77792718aa87d5006e1de1bfc07d5c56086ad20f1"></a>ORIGINAL&#160;</td><td class="fielddoc"><p>Original NMS. </p>
7979</td></tr>
7980</table>
7981
Jenkins514be652019-02-28 12:25:18 +00007982<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00617">617</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
7983<div class="fragment"><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160;{</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718aaac544aacc3615aada24897a215f5046">LINEAR</a>, </div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718a0fceff26ae86a047835cafbb6cadb1b9">GAUSSIAN</a>, </div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718aa87d5006e1de1bfc07d5c56086ad20f1">ORIGINAL</a> </div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a201391f6e13e2a1ac203256a77792718a0fceff26ae86a047835cafbb6cadb1b9"><div class="ttname"><a href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718a0fceff26ae86a047835cafbb6cadb1b9">arm_compute::NMSType::GAUSSIAN</a></div><div class="ttdoc">Gaussian NMS.</div></div>
7984<div class="ttc" id="namespacearm__compute_xhtml_a201391f6e13e2a1ac203256a77792718aa87d5006e1de1bfc07d5c56086ad20f1"><div class="ttname"><a href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718aa87d5006e1de1bfc07d5c56086ad20f1">arm_compute::NMSType::ORIGINAL</a></div><div class="ttdoc">Original NMS.</div></div>
7985<div class="ttc" id="namespacearm__compute_xhtml_a201391f6e13e2a1ac203256a77792718aaac544aacc3615aada24897a215f5046"><div class="ttname"><a href="namespacearm__compute.xhtml#a201391f6e13e2a1ac203256a77792718aaac544aacc3615aada24897a215f5046">arm_compute::NMSType::LINEAR</a></div><div class="ttdoc">Linear NMS.</div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00007986</div><!-- fragment -->
7987</div>
7988</div>
7989<a id="adf2ced65e536375a1c96425d9fced858"></a>
7990<h2 class="memtitle"><span class="permalink"><a href="#adf2ced65e536375a1c96425d9fced858">&#9670;&nbsp;</a></span>NonLinearFilterFunction</h2>
7991
Anthony Barbier871448e2017-03-24 14:54:29 +00007992<div class="memitem">
7993<div class="memproto">
7994<table class="mlabels">
7995 <tr>
7996 <td class="mlabels-left">
7997 <table class="memname">
7998 <tr>
7999 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a> : unsigned</td>
8000 </tr>
8001 </table>
8002 </td>
8003 <td class="mlabels-right">
8004<span class="mlabels"><span class="mlabel">strong</span></span> </td>
8005 </tr>
8006</table>
8007</div><div class="memdoc">
8008
8009<p>Available non linear functions. </p>
8010<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00008011<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074"></a>MEDIAN&#160;</td><td class="fielddoc"><p>Non linear median filter. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008012</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008013<tr><td class="fieldname"><a id="adf2ced65e536375a1c96425d9fced858ace31e2a082d17e038fcc6e3006166653"></a>MIN&#160;</td><td class="fielddoc"><p>Non linear erode. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008014</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008015<tr><td class="fieldname"><a id="adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5"></a>MAX&#160;</td><td class="fielddoc"><p>Non linear dilate. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008016</td></tr>
8017</table>
8018
Jenkins514be652019-02-28 12:25:18 +00008019<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00531">531</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
8020<div class="fragment"><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; : <span class="keywordtype">unsigned</span></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; <a class="code" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074">MEDIAN</a> = 0, </div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; <a class="code" href="elementwise__operation_8cl.xhtml#a74e75242132eaabbc1c512488a135926">MIN</a> = 1, </div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; <a class="code" href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">MAX</a> = 2, </div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;};</div><div class="ttc" id="elementwise__operation_8cl_xhtml_a74e75242132eaabbc1c512488a135926"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#a74e75242132eaabbc1c512488a135926">MIN</a></div><div class="ttdeci">#define MIN(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00037">elementwise_operation.cl:37</a></div></div>
8021<div class="ttc" id="elementwise__operation_8cl_xhtml_aacc3ee1a7f283f8ef65cea31f4436a95"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">MAX</a></div><div class="ttdeci">#define MAX(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00036">elementwise_operation.cl:36</a></div></div>
8022<div class="ttc" id="namespacearm__compute_xhtml_adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074"><div class="ttname"><a href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074">arm_compute::NonLinearFilterFunction::MEDIAN</a></div><div class="ttdoc">Non linear median filter.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00008023</div><!-- fragment -->
8024</div>
8025</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008026<a id="ad4bb8dabdbf8ad75e34220cc666b59ca"></a>
8027<h2 class="memtitle"><span class="permalink"><a href="#ad4bb8dabdbf8ad75e34220cc666b59ca">&#9670;&nbsp;</a></span>NormType</h2>
8028
Anthony Barbier871448e2017-03-24 14:54:29 +00008029<div class="memitem">
8030<div class="memproto">
8031<table class="mlabels">
8032 <tr>
8033 <td class="mlabels-left">
8034 <table class="memname">
8035 <tr>
8036 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">NormType</a></td>
8037 </tr>
8038 </table>
8039 </td>
8040 <td class="mlabels-right">
8041<span class="mlabels"><span class="mlabel">strong</span></span> </td>
8042 </tr>
8043</table>
8044</div><div class="memdoc">
8045
8046<p>The normalization type used for the normalization layer. </p>
8047<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00008048<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190"></a>IN_MAP_1D&#160;</td><td class="fielddoc"><p>Normalization applied within the same map in 1D region. </p>
Anthony Barbierdbdab852017-06-23 15:42:00 +01008049</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008050<tr><td class="fieldname"><a id="ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e"></a>IN_MAP_2D&#160;</td><td class="fielddoc"><p>Normalization applied within the same map in 2D region. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008051</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008052<tr><td class="fieldname"><a id="ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5"></a>CROSS_MAP&#160;</td><td class="fielddoc"><p>Normalization applied cross maps. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008053</td></tr>
8054</table>
8055
Jenkins514be652019-02-28 12:25:18 +00008056<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00568">568</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
8057<div class="fragment"><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; <a class="code" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190">IN_MAP_1D</a>, </div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e">IN_MAP_2D</a>, </div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5">CROSS_MAP</a> </div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190"><div class="ttname"><a href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190">arm_compute::NormType::IN_MAP_1D</a></div><div class="ttdoc">Normalization applied within the same map in 1D region.</div></div>
8058<div class="ttc" id="namespacearm__compute_xhtml_ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5"><div class="ttname"><a href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5">arm_compute::NormType::CROSS_MAP</a></div><div class="ttdoc">Normalization applied cross maps.</div></div>
8059<div class="ttc" id="namespacearm__compute_xhtml_ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e"><div class="ttname"><a href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e">arm_compute::NormType::IN_MAP_2D</a></div><div class="ttdoc">Normalization applied within the same map in 2D region.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00008060</div><!-- fragment -->
8061</div>
8062</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008063<a id="af00a42ecad444bbda75cde1b64bd7e72"></a>
8064<h2 class="memtitle"><span class="permalink"><a href="#af00a42ecad444bbda75cde1b64bd7e72">&#9670;&nbsp;</a></span>PhaseType</h2>
8065
Anthony Barbier871448e2017-03-24 14:54:29 +00008066<div class="memitem">
8067<div class="memproto">
8068<table class="mlabels">
8069 <tr>
8070 <td class="mlabels-left">
8071 <table class="memname">
8072 <tr>
8073 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72">PhaseType</a></td>
8074 </tr>
8075 </table>
8076 </td>
8077 <td class="mlabels-right">
8078<span class="mlabels"><span class="mlabel">strong</span></span> </td>
8079 </tr>
8080</table>
8081</div><div class="memdoc">
8082
8083<p>Phase calculation type. </p>
8084<dl class="section note"><dt>Note</dt><dd>When PhaseType == SIGNED, each angle is mapped to the range 0 to 255 inclusive otherwise angles between 0 and 180 </dd></dl>
8085<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00008086<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="af00a42ecad444bbda75cde1b64bd7e72a6898b46a1cde8a1572e2722c44c5ab07"></a>SIGNED&#160;</td><td class="fielddoc"><p>Angle range: [0, 360]. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008087</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008088<tr><td class="fieldname"><a id="af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054"></a>UNSIGNED&#160;</td><td class="fielddoc"><p>Angle range: [0, 180]. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008089</td></tr>
8090</table>
8091
Jenkins514be652019-02-28 12:25:18 +00008092<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00450">450</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
8093<div class="fragment"><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160;{</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <a class="code" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72a6898b46a1cde8a1572e2722c44c5ab07">SIGNED</a>, </div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <a class="code" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054">UNSIGNED</a> </div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054"><div class="ttname"><a href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054">arm_compute::PhaseType::UNSIGNED</a></div><div class="ttdoc">Angle range: [0, 180].</div></div>
8094<div class="ttc" id="namespacearm__compute_xhtml_af00a42ecad444bbda75cde1b64bd7e72a6898b46a1cde8a1572e2722c44c5ab07"><div class="ttname"><a href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72a6898b46a1cde8a1572e2722c44c5ab07">arm_compute::PhaseType::SIGNED</a></div><div class="ttdoc">Angle range: [0, 360].</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00008095</div><!-- fragment -->
8096</div>
8097</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008098<a id="a9172da722f0a434e5cc07c0a3c115d93"></a>
8099<h2 class="memtitle"><span class="permalink"><a href="#a9172da722f0a434e5cc07c0a3c115d93">&#9670;&nbsp;</a></span>PoolingType</h2>
8100
Anthony Barbier871448e2017-03-24 14:54:29 +00008101<div class="memitem">
8102<div class="memproto">
8103<table class="mlabels">
8104 <tr>
8105 <td class="mlabels-left">
8106 <table class="memname">
8107 <tr>
8108 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">PoolingType</a></td>
8109 </tr>
8110 </table>
8111 </td>
8112 <td class="mlabels-right">
8113<span class="mlabels"><span class="mlabel">strong</span></span> </td>
8114 </tr>
8115</table>
8116</div><div class="memdoc">
8117
8118<p>Available pooling types. </p>
8119<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00008120<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a9172da722f0a434e5cc07c0a3c115d93a26a4b44a837bf97b972628509912b4a5"></a>MAX&#160;</td><td class="fielddoc"><p>Max Pooling. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008121</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008122<tr><td class="fieldname"><a id="a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a"></a>AVG&#160;</td><td class="fielddoc"><p>Average Pooling. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008123</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008124<tr><td class="fieldname"><a id="a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76"></a>L2&#160;</td><td class="fielddoc"><p>L2 Pooling. </p>
Kaizen8938bd32017-09-28 14:38:23 +01008125</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00008126</table>
8127
Jenkins514be652019-02-28 12:25:18 +00008128<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00609">609</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
8129<div class="fragment"><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;{</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; <a class="code" href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">MAX</a>, </div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a">AVG</a>, </div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76">L2</a> </div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76"><div class="ttname"><a href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76">arm_compute::PoolingType::L2</a></div><div class="ttdoc">L2 Pooling.</div></div>
8130<div class="ttc" id="elementwise__operation_8cl_xhtml_aacc3ee1a7f283f8ef65cea31f4436a95"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">MAX</a></div><div class="ttdeci">#define MAX(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00036">elementwise_operation.cl:36</a></div></div>
8131<div class="ttc" id="namespacearm__compute_xhtml_a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a"><div class="ttname"><a href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a">arm_compute::PoolingType::AVG</a></div><div class="ttdoc">Average Pooling.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00008132</div><!-- fragment -->
8133</div>
8134</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008135<a id="a5827eb9cb394e74af87f74bd354fb45b"></a>
8136<h2 class="memtitle"><span class="permalink"><a href="#a5827eb9cb394e74af87f74bd354fb45b">&#9670;&nbsp;</a></span>ReductionOperation</h2>
8137
Kaizen8938bd32017-09-28 14:38:23 +01008138<div class="memitem">
8139<div class="memproto">
8140<table class="mlabels">
8141 <tr>
8142 <td class="mlabels-left">
8143 <table class="memname">
8144 <tr>
8145 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45b">ReductionOperation</a></td>
8146 </tr>
8147 </table>
8148 </td>
8149 <td class="mlabels-right">
8150<span class="mlabels"><span class="mlabel">strong</span></span> </td>
8151 </tr>
8152</table>
8153</div><div class="memdoc">
8154
8155<p>Available reduction operations. </p>
8156<table class="fieldtable">
Jenkins514be652019-02-28 12:25:18 +00008157<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a5827eb9cb394e74af87f74bd354fb45ba654fed6e9b6c154d04bcaa439e32d0d5"></a>ARG_IDX_MAX&#160;</td><td class="fielddoc"><p>Index of the max value. </p>
Kaizen8938bd32017-09-28 14:38:23 +01008158</td></tr>
Jenkins514be652019-02-28 12:25:18 +00008159<tr><td class="fieldname"><a id="a5827eb9cb394e74af87f74bd354fb45ba39102811589b9a0d7a6aa8721663b4d1"></a>ARG_IDX_MIN&#160;</td><td class="fielddoc"><p>Index of the min value. </p>
Jenkinsb9abeae2018-11-22 11:58:08 +00008160</td></tr>
8161<tr><td class="fieldname"><a id="a5827eb9cb394e74af87f74bd354fb45bafc54513dae613e117ffc4169e48bfce5"></a>MEAN_SUM&#160;</td><td class="fielddoc"><p>Mean of sum. </p>
Kaizen8938bd32017-09-28 14:38:23 +01008162</td></tr>
Jenkins514be652019-02-28 12:25:18 +00008163<tr><td class="fieldname"><a id="a5827eb9cb394e74af87f74bd354fb45bac8074bb318fb85693233e64acc64c1ed"></a>PROD&#160;</td><td class="fielddoc"><p>Product. </p>
8164</td></tr>
8165<tr><td class="fieldname"><a id="a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64"></a>SUM_SQUARE&#160;</td><td class="fielddoc"><p>Sum of squares. </p>
8166</td></tr>
8167<tr><td class="fieldname"><a id="a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a"></a>SUM&#160;</td><td class="fielddoc"><p>Sum. </p>
8168</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01008169</table>
8170
Jenkins514be652019-02-28 12:25:18 +00008171<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00539">539</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
8172<div class="fragment"><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; <a class="code" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba654fed6e9b6c154d04bcaa439e32d0d5">ARG_IDX_MAX</a>, </div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba39102811589b9a0d7a6aa8721663b4d1">ARG_IDX_MIN</a>, </div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45bafc54513dae613e117ffc4169e48bfce5">MEAN_SUM</a>, </div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45bac8074bb318fb85693233e64acc64c1ed">PROD</a>, </div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64">SUM_SQUARE</a>, </div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a">SUM</a> </div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64"><div class="ttname"><a href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64">arm_compute::ReductionOperation::SUM_SQUARE</a></div><div class="ttdoc">Sum of squares.</div></div>
8173<div class="ttc" id="namespacearm__compute_xhtml_a5827eb9cb394e74af87f74bd354fb45ba39102811589b9a0d7a6aa8721663b4d1"><div class="ttname"><a href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba39102811589b9a0d7a6aa8721663b4d1">arm_compute::ReductionOperation::ARG_IDX_MIN</a></div><div class="ttdoc">Index of the min value.</div></div>
8174<div class="ttc" id="namespacearm__compute_xhtml_a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a"><div class="ttname"><a href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a">arm_compute::ReductionOperation::SUM</a></div><div class="ttdoc">Sum.</div></div>
8175<div class="ttc" id="namespacearm__compute_xhtml_a5827eb9cb394e74af87f74bd354fb45ba654fed6e9b6c154d04bcaa439e32d0d5"><div class="ttname"><a href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba654fed6e9b6c154d04bcaa439e32d0d5">arm_compute::ReductionOperation::ARG_IDX_MAX</a></div><div class="ttdoc">Index of the max value.</div></div>
8176<div class="ttc" id="namespacearm__compute_xhtml_a5827eb9cb394e74af87f74bd354fb45bac8074bb318fb85693233e64acc64c1ed"><div class="ttname"><a href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45bac8074bb318fb85693233e64acc64c1ed">arm_compute::ReductionOperation::PROD</a></div><div class="ttdoc">Product.</div></div>
8177<div class="ttc" id="namespacearm__compute_xhtml_a5827eb9cb394e74af87f74bd354fb45bafc54513dae613e117ffc4169e48bfce5"><div class="ttname"><a href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45bafc54513dae613e117ffc4169e48bfce5">arm_compute::ReductionOperation::MEAN_SUM</a></div><div class="ttdoc">Mean of sum.</div></div>
Kaizen8938bd32017-09-28 14:38:23 +01008178</div><!-- fragment -->
8179</div>
8180</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008181<a id="add6426cbf2e057a195846d4ba09a50be"></a>
8182<h2 class="memtitle"><span class="permalink"><a href="#add6426cbf2e057a195846d4ba09a50be">&#9670;&nbsp;</a></span>RoundingPolicy</h2>
8183
Anthony Barbier871448e2017-03-24 14:54:29 +00008184<div class="memitem">
8185<div class="memproto">
8186<table class="mlabels">
8187 <tr>
8188 <td class="mlabels-left">
8189 <table class="memname">
8190 <tr>
8191 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a></td>
8192 </tr>
8193 </table>
8194 </td>
8195 <td class="mlabels-right">
8196<span class="mlabels"><span class="mlabel">strong</span></span> </td>
8197 </tr>
8198</table>
8199</div><div class="memdoc">
8200
8201<p>Rounding method. </p>
8202<table class="fieldtable">
Jenkins514be652019-02-28 12:25:18 +00008203<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06"></a>TO_ZERO&#160;</td><td class="fielddoc"><p>Truncates the least significant values that are lost in operations. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008204</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008205<tr><td class="fieldname"><a id="add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95"></a>TO_NEAREST_UP&#160;</td><td class="fielddoc"><p>Rounds to nearest value; half rounds away from zero. </p>
Anthony Barbierdbdab852017-06-23 15:42:00 +01008206</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008207<tr><td class="fieldname"><a id="add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150"></a>TO_NEAREST_EVEN&#160;</td><td class="fielddoc"><p>Rounds to nearest value; half rounds to nearest even. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008208</td></tr>
8209</table>
8210
Jenkinsb9abeae2018-11-22 11:58:08 +00008211<p class="definition">Definition at line <a class="el" href="_rounding_8h_source.xhtml#l00030">30</a> of file <a class="el" href="_rounding_8h_source.xhtml">Rounding.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00008212<div class="fragment"><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;{</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <a class="code" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06">TO_ZERO</a>, </div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <a class="code" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95">TO_NEAREST_UP</a>, </div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <a class="code" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150">TO_NEAREST_EVEN</a>, </div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95"><div class="ttname"><a href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95">arm_compute::RoundingPolicy::TO_NEAREST_UP</a></div><div class="ttdoc">Rounds to nearest value; half rounds away from zero.</div></div>
8213<div class="ttc" id="namespacearm__compute_xhtml_add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150"><div class="ttname"><a href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150">arm_compute::RoundingPolicy::TO_NEAREST_EVEN</a></div><div class="ttdoc">Rounds to nearest value; half rounds to nearest even.</div></div>
8214<div class="ttc" id="namespacearm__compute_xhtml_add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06"><div class="ttname"><a href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06">arm_compute::RoundingPolicy::TO_ZERO</a></div><div class="ttdoc">Truncates the least significant values that are lost in operations.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00008215</div><!-- fragment -->
8216</div>
8217</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008218<a id="a16a59381d4d74d17d86d69eb4d286d7b"></a>
8219<h2 class="memtitle"><span class="permalink"><a href="#a16a59381d4d74d17d86d69eb4d286d7b">&#9670;&nbsp;</a></span>SamplingPolicy</h2>
8220
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008221<div class="memitem">
8222<div class="memproto">
8223<table class="mlabels">
8224 <tr>
8225 <td class="mlabels-left">
8226 <table class="memname">
8227 <tr>
8228 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7b">SamplingPolicy</a></td>
8229 </tr>
8230 </table>
8231 </td>
8232 <td class="mlabels-right">
8233<span class="mlabels"><span class="mlabel">strong</span></span> </td>
8234 </tr>
8235</table>
8236</div><div class="memdoc">
8237
8238<p>Available Sampling Policies. </p>
8239<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00008240<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e"></a>CENTER&#160;</td><td class="fielddoc"><p>Samples are taken at pixel center. </p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008241</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008242<tr><td class="fieldname"><a id="a16a59381d4d74d17d86d69eb4d286d7ba747385047b85ae751f83adb36435a3c1"></a>TOP_LEFT&#160;</td><td class="fielddoc"><p>Samples are taken at pixel top left corner. </p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008243</td></tr>
8244</table>
8245
Jenkinsb9abeae2018-11-22 11:58:08 +00008246<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00093">93</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00008247<div class="fragment"><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;{</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e">CENTER</a>, </div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7ba747385047b85ae751f83adb36435a3c1">TOP_LEFT</a> </div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e"><div class="ttname"><a href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e">arm_compute::SamplingPolicy::CENTER</a></div><div class="ttdoc">Samples are taken at pixel center.</div></div>
8248<div class="ttc" id="namespacearm__compute_xhtml_a16a59381d4d74d17d86d69eb4d286d7ba747385047b85ae751f83adb36435a3c1"><div class="ttname"><a href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7ba747385047b85ae751f83adb36435a3c1">arm_compute::SamplingPolicy::TOP_LEFT</a></div><div class="ttdoc">Samples are taken at pixel top left corner.</div></div>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008249</div><!-- fragment -->
8250</div>
8251</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008252<a id="a08c1503414e23f5dd10ff83492685453"></a>
8253<h2 class="memtitle"><span class="permalink"><a href="#a08c1503414e23f5dd10ff83492685453">&#9670;&nbsp;</a></span>Termination</h2>
8254
Anthony Barbier871448e2017-03-24 14:54:29 +00008255<div class="memitem">
8256<div class="memproto">
8257<table class="mlabels">
8258 <tr>
8259 <td class="mlabels-left">
8260 <table class="memname">
8261 <tr>
8262 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453">Termination</a></td>
8263 </tr>
8264 </table>
8265 </td>
8266 <td class="mlabels-right">
8267<span class="mlabels"><span class="mlabel">strong</span></span> </td>
8268 </tr>
8269</table>
8270</div><div class="memdoc">
8271
8272<p>Termination criteria. </p>
8273<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00008274<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b"></a>TERM_CRITERIA_EPSILON&#160;</td><td class="fielddoc"><p>Terminate when within epsilon of a threshold. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008275</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008276<tr><td class="fieldname"><a id="a08c1503414e23f5dd10ff83492685453a43f2a8b688fb96e5ad8ba08308bbcdfd"></a>TERM_CRITERIA_ITERATIONS&#160;</td><td class="fielddoc"><p>Terminate after a maximum number of iterations. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008277</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008278<tr><td class="fieldname"><a id="a08c1503414e23f5dd10ff83492685453a788740b1ba2d6463dae318a332513b29"></a>TERM_CRITERIA_BOTH&#160;</td><td class="fielddoc"><p>Terminate on whichever of the other conditions occurs first. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008279</td></tr>
8280</table>
8281
Jenkins514be652019-02-28 12:25:18 +00008282<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00432">432</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
8283<div class="fragment"><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;{</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b">TERM_CRITERIA_EPSILON</a>, </div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a43f2a8b688fb96e5ad8ba08308bbcdfd">TERM_CRITERIA_ITERATIONS</a>, </div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a788740b1ba2d6463dae318a332513b29">TERM_CRITERIA_BOTH</a> </div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b"><div class="ttname"><a href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b">arm_compute::Termination::TERM_CRITERIA_EPSILON</a></div><div class="ttdoc">Terminate when within epsilon of a threshold.</div></div>
8284<div class="ttc" id="namespacearm__compute_xhtml_a08c1503414e23f5dd10ff83492685453a43f2a8b688fb96e5ad8ba08308bbcdfd"><div class="ttname"><a href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a43f2a8b688fb96e5ad8ba08308bbcdfd">arm_compute::Termination::TERM_CRITERIA_ITERATIONS</a></div><div class="ttdoc">Terminate after a maximum number of iterations.</div></div>
8285<div class="ttc" id="namespacearm__compute_xhtml_a08c1503414e23f5dd10ff83492685453a788740b1ba2d6463dae318a332513b29"><div class="ttname"><a href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a788740b1ba2d6463dae318a332513b29">arm_compute::Termination::TERM_CRITERIA_BOTH</a></div><div class="ttdoc">Terminate on whichever of the other conditions occurs first.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00008286</div><!-- fragment -->
8287</div>
8288</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008289<a id="a3e6b23e675649b83240691abbc42a649"></a>
8290<h2 class="memtitle"><span class="permalink"><a href="#a3e6b23e675649b83240691abbc42a649">&#9670;&nbsp;</a></span>ThresholdType</h2>
8291
Anthony Barbier871448e2017-03-24 14:54:29 +00008292<div class="memitem">
8293<div class="memproto">
8294<table class="mlabels">
8295 <tr>
8296 <td class="mlabels-left">
8297 <table class="memname">
8298 <tr>
8299 <td class="memname">enum <a class="el" href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649">ThresholdType</a></td>
8300 </tr>
8301 </table>
8302 </td>
8303 <td class="mlabels-right">
8304<span class="mlabels"><span class="mlabel">strong</span></span> </td>
8305 </tr>
8306</table>
8307</div><div class="memdoc">
8308
8309<p>Threshold mode. </p>
8310<table class="fieldtable">
Jenkinsb9abeae2018-11-22 11:58:08 +00008311<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a3e6b23e675649b83240691abbc42a649a98ad0e8750ae10ad556ed7a62affb452"></a>BINARY&#160;</td><td class="fielddoc"><p>Threshold with one value. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008312</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008313<tr><td class="fieldname"><a id="a3e6b23e675649b83240691abbc42a649a01036ddcc971d02f6c32c3da31a119f2"></a>RANGE&#160;</td><td class="fielddoc"><p>Threshold with two values. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008314</td></tr>
8315</table>
8316
Jenkins514be652019-02-28 12:25:18 +00008317<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00425">425</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
8318<div class="fragment"><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160;{</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649a98ad0e8750ae10ad556ed7a62affb452">BINARY</a>, </div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649a01036ddcc971d02f6c32c3da31a119f2">RANGE</a> </div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160;};</div><div class="ttc" id="namespacearm__compute_xhtml_a3e6b23e675649b83240691abbc42a649a01036ddcc971d02f6c32c3da31a119f2"><div class="ttname"><a href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649a01036ddcc971d02f6c32c3da31a119f2">arm_compute::ThresholdType::RANGE</a></div><div class="ttdoc">Threshold with two values.</div></div>
8319<div class="ttc" id="namespacearm__compute_xhtml_a3e6b23e675649b83240691abbc42a649a98ad0e8750ae10ad556ed7a62affb452"><div class="ttname"><a href="namespacearm__compute.xhtml#a3e6b23e675649b83240691abbc42a649a98ad0e8750ae10ad556ed7a62affb452">arm_compute::ThresholdType::BINARY</a></div><div class="ttdoc">Threshold with one value.</div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00008320</div><!-- fragment -->
8321</div>
8322</div>
8323<h2 class="groupheader">Function Documentation</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +00008324<a id="a41c1523098580451b378f76b8c37a0f0"></a>
8325<h2 class="memtitle"><span class="permalink"><a href="#a41c1523098580451b378f76b8c37a0f0">&#9670;&nbsp;</a></span>adjust_down()</h2>
8326
Anthony Barbier871448e2017-03-24 14:54:29 +00008327<div class="memitem">
8328<div class="memproto">
8329<table class="mlabels">
8330 <tr>
8331 <td class="mlabels-left">
8332 <table class="memname">
8333 <tr>
8334 <td class="memname">int arm_compute::adjust_down </td>
8335 <td>(</td>
8336 <td class="paramtype">int&#160;</td>
8337 <td class="paramname"><em>required</em>, </td>
8338 </tr>
8339 <tr>
8340 <td class="paramkey"></td>
8341 <td></td>
8342 <td class="paramtype">int&#160;</td>
8343 <td class="paramname"><em>available</em>, </td>
8344 </tr>
8345 <tr>
8346 <td class="paramkey"></td>
8347 <td></td>
8348 <td class="paramtype">int&#160;</td>
8349 <td class="paramname"><em>step</em>&#160;</td>
8350 </tr>
8351 <tr>
8352 <td></td>
8353 <td>)</td>
8354 <td></td><td></td>
8355 </tr>
8356 </table>
8357 </td>
8358 <td class="mlabels-right">
8359<span class="mlabels"><span class="mlabel">inline</span></span> </td>
8360 </tr>
8361</table>
8362</div><div class="memdoc">
8363
8364<p>Decrease <code>required</code> in steps of <code>step</code> until it's less than <code>available</code>. </p>
8365<dl class="params"><dt>Parameters</dt><dd>
8366 <table class="params">
8367 <tr><td class="paramdir">[in]</td><td class="paramname">required</td><td>Number of required bytes. </td></tr>
8368 <tr><td class="paramdir">[in]</td><td class="paramname">available</td><td>Number of available bytes. </td></tr>
8369 <tr><td class="paramdir">[in]</td><td class="paramname">step</td><td>Step size used to decrease required bytes.</td></tr>
8370 </table>
8371 </dd>
8372</dl>
8373<dl class="section return"><dt>Returns</dt><dd>Largest value smaller than <code>available</code> that is a multiple of <code>step</code> </dd></dl>
8374
Jenkinsb9abeae2018-11-22 11:58:08 +00008375<p class="definition">Definition at line <a class="el" href="_i_access_window_8h_source.xhtml#l00047">47</a> of file <a class="el" href="_i_access_window_8h_source.xhtml">IAccessWindow.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00008376<div class="fragment"><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;{</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a> &lt;= 0);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">return</span> required - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a> * ((required - available + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a> - 1) / <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a>);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
8377<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a75b73e17c4ebe901e44af3b2b9846ab3"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">arm_compute::test::validation::step</a></div><div class="ttdeci">const int step</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_select_8cpp_source.xhtml#l00172">Select.cpp:172</a></div></div>
8378</div><!-- fragment -->
8379<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, and <a class="el" href="_c_l_2_select_8cpp_source.xhtml#l00172">arm_compute::test::validation::step</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +00008380
8381<p class="reference">Referenced by <a class="el" href="_access_window_transpose_8cpp_source.xhtml#l00089">AccessWindowTranspose::update_window_if_needed()</a>, and <a class="el" href="_i_access_window_8cpp_source.xhtml#l00097">AccessWindowRectangle::update_window_if_needed()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00008382
Anthony Barbier871448e2017-03-24 14:54:29 +00008383</div>
8384</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008385<a id="add7f7487c235331a6518dd16ad1e3b38"></a>
8386<h2 class="memtitle"><span class="permalink"><a href="#add7f7487c235331a6518dd16ad1e3b38">&#9670;&nbsp;</a></span>adjust_odd_shape()</h2>
8387
Anthony Barbier06ea0482018-02-22 15:45:35 +00008388<div class="memitem">
8389<div class="memproto">
8390<table class="mlabels">
8391 <tr>
8392 <td class="mlabels-left">
8393 <table class="memname">
8394 <tr>
8395 <td class="memname"><a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> arm_compute::adjust_odd_shape </td>
8396 <td>(</td>
8397 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;&#160;</td>
8398 <td class="paramname"><em>shape</em>, </td>
8399 </tr>
8400 <tr>
8401 <td class="paramkey"></td>
8402 <td></td>
8403 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td>
8404 <td class="paramname"><em>format</em>&#160;</td>
8405 </tr>
8406 <tr>
8407 <td></td>
8408 <td>)</td>
8409 <td></td><td></td>
8410 </tr>
8411 </table>
8412 </td>
8413 <td class="mlabels-right">
8414<span class="mlabels"><span class="mlabel">inline</span></span> </td>
8415 </tr>
8416</table>
8417</div><div class="memdoc">
8418
8419<p>Adjust tensor shape size if width or height are odd for a given multi-planar format. </p>
8420<p>No modification is done for other formats.</p>
Jenkins514be652019-02-28 12:25:18 +00008421<dl class="section note"><dt>Note</dt><dd>Adding here a few links discussing the issue of odd size and sharing the same solution: <a href="https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/graphics/java/android/graphics/YuvImage.java">Android Source</a> <a href="https://groups.google.com/a/webmproject.org/forum/#!topic/webm-discuss/LaCKpqiDTXM">WebM</a> <a href="https://bugs.chromium.org/p/libyuv/issues/detail?id=198&amp;amp;can=1&amp;amp;q=odd%20width">libYUV</a> <a href="https://sourceforge.net/p/raw-yuvplayer/bugs/1/">YUVPlayer</a> *</dd></dl>
Anthony Barbier06ea0482018-02-22 15:45:35 +00008422<dl class="params"><dt>Parameters</dt><dd>
8423 <table class="params">
Jenkins514be652019-02-28 12:25:18 +00008424 <tr><td class="paramdir">[in,out]</td><td class="paramname">shape</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> shape of 2D size </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01008425 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>Format of the tensor</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00008426 </table>
8427 </dd>
8428</dl>
Jenkinsb3a371b2018-05-23 11:36:53 +01008429<dl class="section return"><dt>Returns</dt><dd>The adjusted tensor shape. </dd></dl>
Anthony Barbier06ea0482018-02-22 15:45:35 +00008430
Jenkinsb9abeae2018-11-22 11:58:08 +00008431<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00647">647</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00008432<div class="fragment"><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160;{</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; TensorShape output{ <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a> };</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160;</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; <span class="comment">// Force width to be even for formats which require subsampling of the U and V channels</span></div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute.xhtml#aa2f22cc01532e0236e438324310fdb94">has_format_horizontal_subsampling</a>(format))</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; {</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; output.set(0, output.x() &amp; ~1<a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">U</a>);</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; }</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160;</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; <span class="comment">// Force height to be even for formats which require subsampling of the U and V channels</span></div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute.xhtml#a95358b677c5c17f5cc1e369e4a27e2c2">has_format_vertical_subsampling</a>(format))</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; {</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; output.set(1, output.y() &amp; ~1<a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">U</a>);</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; }</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160;</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; <span class="keywordflow">return</span> output;</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">AbsoluteDifference.cpp:97</a></div></div>
8433<div class="ttc" id="namespacearm__compute_xhtml_a95358b677c5c17f5cc1e369e4a27e2c2"><div class="ttname"><a href="namespacearm__compute.xhtml#a95358b677c5c17f5cc1e369e4a27e2c2">arm_compute::has_format_vertical_subsampling</a></div><div class="ttdeci">bool has_format_vertical_subsampling(Format format)</div><div class="ttdoc">Return true if the given format has vertical subsampling.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00553">Utils.h:553</a></div></div>
8434<div class="ttc" id="namespacearm__compute_1_1utils_1_1cast_xhtml_a2ea3d1fc01a3a442900249ca182ffa5e"><div class="ttname"><a href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">arm_compute::utils::cast::U</a></div><div class="ttdeci">U</div><div class="ttdef"><b>Definition:</b> <a href="_saturate_cast_8h_source.xhtml#l00057">SaturateCast.h:57</a></div></div>
8435<div class="ttc" id="namespacearm__compute_xhtml_aa2f22cc01532e0236e438324310fdb94"><div class="ttname"><a href="namespacearm__compute.xhtml#aa2f22cc01532e0236e438324310fdb94">arm_compute::has_format_horizontal_subsampling</a></div><div class="ttdeci">bool has_format_horizontal_subsampling(Format format)</div><div class="ttdoc">Return true if the given format has horizontal subsampling.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00542">Utils.h:542</a></div></div>
Anthony Barbier06ea0482018-02-22 15:45:35 +00008436</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00008437<p class="reference">References <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00542">has_format_horizontal_subsampling()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00553">has_format_vertical_subsampling()</a>, and <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">arm_compute::test::validation::shape</a>.</p>
8438
8439<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00303">error_on_tensors_not_even()</a>.</p>
8440
Anthony Barbier06ea0482018-02-22 15:45:35 +00008441</div>
8442</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008443<a id="ab16fcfbfc3ee6dbc0c112f0bc9b3d9c2"></a>
8444<h2 class="memtitle"><span class="permalink"><a href="#ab16fcfbfc3ee6dbc0c112f0bc9b3d9c2">&#9670;&nbsp;</a></span>adjust_up()</h2>
8445
Anthony Barbier871448e2017-03-24 14:54:29 +00008446<div class="memitem">
8447<div class="memproto">
8448<table class="mlabels">
8449 <tr>
8450 <td class="mlabels-left">
8451 <table class="memname">
8452 <tr>
8453 <td class="memname">int arm_compute::adjust_up </td>
8454 <td>(</td>
8455 <td class="paramtype">int&#160;</td>
8456 <td class="paramname"><em>required</em>, </td>
8457 </tr>
8458 <tr>
8459 <td class="paramkey"></td>
8460 <td></td>
8461 <td class="paramtype">int&#160;</td>
8462 <td class="paramname"><em>available</em>, </td>
8463 </tr>
8464 <tr>
8465 <td class="paramkey"></td>
8466 <td></td>
8467 <td class="paramtype">int&#160;</td>
8468 <td class="paramname"><em>step</em>&#160;</td>
8469 </tr>
8470 <tr>
8471 <td></td>
8472 <td>)</td>
8473 <td></td><td></td>
8474 </tr>
8475 </table>
8476 </td>
8477 <td class="mlabels-right">
8478<span class="mlabels"><span class="mlabel">inline</span></span> </td>
8479 </tr>
8480</table>
8481</div><div class="memdoc">
8482
8483<p>Increase <code>required</code> in steps of <code>step</code> until it's greater than <code>available</code>. </p>
8484<dl class="params"><dt>Parameters</dt><dd>
8485 <table class="params">
8486 <tr><td class="paramdir">[in]</td><td class="paramname">required</td><td>Number of required bytes. </td></tr>
8487 <tr><td class="paramdir">[in]</td><td class="paramname">available</td><td>Number of available bytes. </td></tr>
8488 <tr><td class="paramdir">[in]</td><td class="paramname">step</td><td>Step size used to increase required bytes.</td></tr>
8489 </table>
8490 </dd>
8491</dl>
8492<dl class="section return"><dt>Returns</dt><dd>Largest value smaller than <code>available</code> that is a multiple of <code>step</code> </dd></dl>
8493
Jenkinsb9abeae2018-11-22 11:58:08 +00008494<p class="definition">Definition at line <a class="el" href="_i_access_window_8h_source.xhtml#l00063">63</a> of file <a class="el" href="_i_access_window_8h_source.xhtml">IAccessWindow.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00008495<div class="fragment"><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;{</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a> &lt;= 0);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">return</span> required + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a> * ((available - required + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a> - 1) / <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a>);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
8496<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a75b73e17c4ebe901e44af3b2b9846ab3"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">arm_compute::test::validation::step</a></div><div class="ttdeci">const int step</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_select_8cpp_source.xhtml#l00172">Select.cpp:172</a></div></div>
8497</div><!-- fragment -->
8498<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, and <a class="el" href="_c_l_2_select_8cpp_source.xhtml#l00172">arm_compute::test::validation::step</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +00008499
8500<p class="reference">Referenced by <a class="el" href="_access_window_transpose_8cpp_source.xhtml#l00089">AccessWindowTranspose::update_window_if_needed()</a>, and <a class="el" href="_i_access_window_8cpp_source.xhtml#l00097">AccessWindowRectangle::update_window_if_needed()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00008501
Jenkinsb3a371b2018-05-23 11:36:53 +01008502</div>
8503</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008504<a id="a0019d1de2500c73f16b673d8a883a767"></a>
8505<h2 class="memtitle"><span class="permalink"><a href="#a0019d1de2500c73f16b673d8a883a767">&#9670;&nbsp;</a></span>arm_non_uniform_workgroup_supported()</h2>
8506
Jenkinsb3a371b2018-05-23 11:36:53 +01008507<div class="memitem">
8508<div class="memproto">
8509 <table class="memname">
8510 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008511 <td class="memname">bool arm_non_uniform_workgroup_supported </td>
Jenkinsb3a371b2018-05-23 11:36:53 +01008512 <td>(</td>
8513 <td class="paramtype">const cl::Device &amp;&#160;</td>
8514 <td class="paramname"><em>device</em></td><td>)</td>
8515 <td></td>
8516 </tr>
8517 </table>
8518</div><div class="memdoc">
8519
8520<p>Helper function to check whether the arm_non_uniform_work_group_size extension is supported. </p>
8521<dl class="params"><dt>Parameters</dt><dd>
8522 <table class="params">
8523 <tr><td class="paramdir">[in]</td><td class="paramname">device</td><td>A CL device</td></tr>
8524 </table>
8525 </dd>
8526</dl>
8527<dl class="section return"><dt>Returns</dt><dd>True if the extension is supported </dd></dl>
8528
Jenkins514be652019-02-28 12:25:18 +00008529<p class="definition">Definition at line <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00135">135</a> of file <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
8530<div class="fragment"><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;{</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">device_supports_extension</a>(device, <span class="stringliteral">&quot;cl_arm_non_uniform_work_group_size&quot;</span>);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a6c4a5ca34ebb51d4e2e119a110e4c8f0"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">arm_compute::device_supports_extension</a></div><div class="ttdeci">bool device_supports_extension(const cl::Device &amp;device, const char *extension_name)</div><div class="ttdoc">Helper function to check whether a given extension is supported.</div><div class="ttdef"><b>Definition:</b> <a href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00183">CLHelpers.cpp:183</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008531</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00008532<p class="reference">References <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00183">device_supports_extension()</a>.</p>
8533
8534<p class="reference">Referenced by <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00964">CLKernelLibrary::create_kernel()</a>.</p>
8535
Jenkinsb3a371b2018-05-23 11:36:53 +01008536</div>
8537</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008538<a id="a47be6fa38308d0003c25b60b7dbc45ce"></a>
8539<h2 class="memtitle"><span class="permalink"><a href="#a47be6fa38308d0003c25b60b7dbc45ce">&#9670;&nbsp;</a></span>auto_init_if_empty() <span class="overload">[1/2]</span></h2>
8540
Anthony Barbierdbdab852017-06-23 15:42:00 +01008541<div class="memitem">
8542<div class="memproto">
8543<table class="mlabels">
8544 <tr>
8545 <td class="mlabels-left">
8546 <table class="memname">
8547 <tr>
8548 <td class="memname">bool auto_init_if_empty </td>
8549 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008550 <td class="paramtype"><a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +01008551 <td class="paramname"><em>info</em>, </td>
8552 </tr>
8553 <tr>
8554 <td class="paramkey"></td>
8555 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008556 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +01008557 <td class="paramname"><em>shape</em>, </td>
8558 </tr>
8559 <tr>
8560 <td class="paramkey"></td>
8561 <td></td>
8562 <td class="paramtype">int&#160;</td>
8563 <td class="paramname"><em>num_channels</em>, </td>
8564 </tr>
8565 <tr>
8566 <td class="paramkey"></td>
8567 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008568 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +01008569 <td class="paramname"><em>data_type</em>, </td>
8570 </tr>
8571 <tr>
8572 <td class="paramkey"></td>
8573 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008574 <td class="paramtype"><a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a>&#160;</td>
8575 <td class="paramname"><em>quantization_info</em> = <code><a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a>()</code>&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +01008576 </tr>
8577 <tr>
8578 <td></td>
8579 <td>)</td>
8580 <td></td><td></td>
8581 </tr>
8582 </table>
8583 </td>
8584 <td class="mlabels-right">
8585<span class="mlabels"><span class="mlabel">inline</span></span> </td>
8586 </tr>
8587</table>
8588</div><div class="memdoc">
8589
Jenkins52ba29e2018-08-29 15:32:11 +00008590<p>Auto initialize the tensor info (shape, number of channels and data type) if the current assignment is empty. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01008591<dl class="params"><dt>Parameters</dt><dd>
8592 <table class="params">
Jenkins514be652019-02-28 12:25:18 +00008593 <tr><td class="paramdir">[in,out]</td><td class="paramname">info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info used to check and assign. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01008594 <tr><td class="paramdir">[in]</td><td class="paramname">shape</td><td>New shape. </td></tr>
8595 <tr><td class="paramdir">[in]</td><td class="paramname">num_channels</td><td>New number of channels. </td></tr>
8596 <tr><td class="paramdir">[in]</td><td class="paramname">data_type</td><td>New data type </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01008597 <tr><td class="paramdir">[in]</td><td class="paramname">quantization_info</td><td>(Optional) New quantization info</td></tr>
8598 </table>
8599 </dd>
8600</dl>
8601<dl class="section return"><dt>Returns</dt><dd>True if the tensor info has been initialized </dd></dl>
8602
Jenkinsb9abeae2018-11-22 11:58:08 +00008603<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00201">201</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00008604<div class="fragment"><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;{</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.tensor_shape().total_size() == 0)</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; {</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.set_data_type(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.set_num_channels(num_channels);</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.set_tensor_shape(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.set_quantization_info(quantization_info);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; }</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">AbsoluteDifference.cpp:97</a></div></div>
8605<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
8606<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +01008607</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00008608<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::data_type</a>, <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>, and <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">arm_compute::test::validation::shape</a>.</p>
8609
8610<p class="reference">Referenced by <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00042">GCLogits1DMaxKernel::configure()</a>, <a class="el" href="_c_l_transpose_kernel_8cpp_source.xhtml#l00111">CLTransposeKernel::configure()</a>, <a class="el" href="_g_c_transpose_kernel_8cpp_source.xhtml#l00040">GCTransposeKernel::configure()</a>, <a class="el" href="_n_e_floor_kernel_8cpp_source.xhtml#l00074">NEFloorKernel::configure()</a>, <a class="el" href="_c_l_reduce_mean_8cpp_source.xhtml#l00039">CLReduceMean::configure()</a>, <a class="el" href="_c_l_floor_kernel_8cpp_source.xhtml#l00079">CLFloorKernel::configure()</a>, <a class="el" href="_n_e_reduce_mean_8cpp_source.xhtml#l00077">NEReduceMean::configure()</a>, <a class="el" href="_c_l_reverse_kernel_8cpp_source.xhtml#l00068">CLReverseKernel::configure()</a>, <a class="el" href="_c_l_permute_kernel_8cpp_source.xhtml#l00081">CLPermuteKernel::configure()</a>, <a class="el" href="_c_l_generate_proposals_layer_kernel_8cpp_source.xhtml#l00068">CLComputeAllAnchorsKernel::configure()</a>, <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00107">CLNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_n_e_pad_layer_8cpp_source.xhtml#l00071">NEPadLayer::configure()</a>, <a class="el" href="_c_l_tile_kernel_8cpp_source.xhtml#l00068">CLTileKernel::configure()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00066">CLUpsampleLayerKernel::configure()</a>, <a class="el" href="_n_e_tile_kernel_8cpp_source.xhtml#l00064">NETileKernel::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_g_c_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00051">GCDepthwiseConvolutionLayer3x3Kernel::configure()</a>, <a class="el" href="_n_e_width_concatenate_layer_8cpp_source.xhtml#l00064">NEWidthConcatenateLayer::configure()</a>, <a class="el" href="_g_c_activation_layer_kernel_8cpp_source.xhtml#l00047">GCActivationLayerKernel::configure()</a>, <a class="el" href="_n_e_reverse_kernel_8cpp_source.xhtml#l00078">NEReverseKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00098">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00064">CLDepthwiseVectorToTensorKernel::configure()</a>, <a class="el" href="_g_c_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00094">GCNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_n_e_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00144">NEChannelShuffleLayerKernel::configure()</a>, <a class="el" href="_c_l_bounding_box_transform_kernel_8cpp_source.xhtml#l00070">CLBoundingBoxTransformKernel::configure()</a>, <a class="el" href="_n_e_upsample_layer_kernel_8cpp_source.xhtml#l00295">NEUpsampleLayerKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00041">GCGEMMTranspose1xWKernel::configure()</a>, <a class="el" href="_n_e_reorg_layer_kernel_8cpp_source.xhtml#l00114">NEReorgLayerKernel::configure()</a>, <a class="el" href="_c_p_p_top_k_v_kernel_8cpp_source.xhtml#l00101">CPPTopKVKernel::configure()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00098">CLFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_c_l_width_concatenate_layer_8cpp_source.xhtml#l00084">CLWidthConcatenateLayer::configure()</a>, <a class="el" href="_n_e_depth_concatenate_layer_8cpp_source.xhtml#l00046">NEDepthConcatenateLayer::configure()</a>, <a class="el" href="_c_l_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00040">CLConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_n_e_normalization_layer_kernel_8cpp_source.xhtml#l00115">NENormalizationLayerKernel::configure()</a>, <a class="el" href="_c_p_p_permute_kernel_8cpp_source.xhtml#l00108">CPPPermuteKernel::configure()</a>, <a class="el" href="_n_e_transpose_kernel_8cpp_source.xhtml#l00500">NETransposeKernel::configure()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00107">CLBatchToSpaceLayerKernel::configure()</a>, <a class="el" href="_n_e_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00098">NEDepthwiseVectorToTensorKernel::configure()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00111">CLWinogradInputTransformKernel::configure()</a>, <a class="el" href="_n_e_permute_kernel_8cpp_source.xhtml#l00242">NEPermuteKernel::configure()</a>, <a class="el" href="_c_l_depth_concatenate_layer_8cpp_source.xhtml#l00046">CLDepthConcatenateLayer::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00107">GCLogits1DShiftExpSumKernel::configure()</a>, <a class="el" href="_n_e_direct_convolution_layer_output_stage_kernel_8cpp_source.xhtml#l00463">NEDirectConvolutionLayerOutputStageKernel::configure()</a>, <a class="el" href="_n_e_elementwise_unary_kernel_8cpp_source.xhtml#l00143">NEElementwiseUnaryKernel::configure()</a>, <a class="el" href="_n_e_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00205">NEFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00179">NEGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_c_l_winograd_filter_transform_kernel_8cpp_source.xhtml#l00102">CLWinogradFilterTransformKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_output_stage_kernel_8cpp_source.xhtml#l00129">CLDirectConvolutionLayerOutputStageKernel::configure()</a>, <a class="el" href="_n_e_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00036">NEConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00120">CLSpaceToBatchLayerKernel::configure()</a>, <a class="el" href="_n_e_gather_kernel_8cpp_source.xhtml#l00107">NEGatherKernel::configure()</a>, <a class="el" href="_n_e_select_kernel_8cpp_source.xhtml#l00167">NESelectKernel::configure()</a>, <a class="el" href="_n_e_direct_convolution_layer_kernel_8cpp_source.xhtml#l01155">NEDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00146">CLWinogradOutputTransformKernel::configure()</a>, <a class="el" href="_n_e_r_o_i_pooling_layer_kernel_8cpp_source.xhtml#l00046">NEROIPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00962">NEGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00044">GCGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_kernel_8cpp_source.xhtml#l00114">CLGEMMLowpQuantizeDownInt32ToUint8ScaleKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00119">CLGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_kernel_8cpp_source.xhtml#l00298">NEGEMMLowpQuantizeDownInt32ToUint8ScaleKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00092">CLGEMMTranspose1xWKernel::configure()</a>, <a class="el" href="_g_c_weights_reshape_kernel_8cpp_source.xhtml#l00046">GCWeightsReshapeKernel::configure()</a>, <a class="el" href="_g_c_col2_im_kernel_8cpp_source.xhtml#l00044">GCCol2ImKernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00100">NEGEMMTranspose1xWKernel::configure()</a>, <a class="el" href="_c_l_weights_reshape_kernel_8cpp_source.xhtml#l00078">CLWeightsReshapeKernel::configure()</a>, <a class="el" href="_n_e_weights_reshape_kernel_8cpp_source.xhtml#l00148">NEWeightsReshapeKernel::configure()</a>, <a class="el" href="_c_l_generate_proposals_layer_8cpp_source.xhtml#l00058">CLGenerateProposalsLayer::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00201">GCLogits1DNormKernel::configure()</a>, <a class="el" href="_c_l_deconvolution_layer_8cpp_source.xhtml#l00110">CLDeconvolutionLayer::configure()</a>, <a class="el" href="_n_e_deconvolution_layer_8cpp_source.xhtml#l00103">NEDeconvolutionLayer::configure()</a>, <a class="el" href="_c_p_p_detection_output_layer_8cpp_source.xhtml#l00480">CPPDetectionOutputLayer::configure()</a>, <a class="el" href="_n_e_g_e_m_m_interleaved_wrapper_8cpp_source.xhtml#l00337">NEGEMMInterleavedWrapper::configure()</a>, <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00219">CLLogits1DMaxShiftExpSumKernel::configure()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00268">NEDepthwiseConvolutionLayer::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00231">CLDepthwiseConvolutionLayer::configure()</a>, <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00335">CLLogits1DNormKernel::configure()</a>, <a class="el" href="_c_l_split_8cpp_source.xhtml#l00090">CLSplit::validate()</a>, <a class="el" href="_n_e_split_8cpp_source.xhtml#l00090">NESplit::validate()</a>, <a class="el" href="_n_e_width_concatenate_layer_8cpp_source.xhtml#l00043">NEWidthConcatenateLayer::validate()</a>, <a class="el" href="_c_l_width_concatenate_layer_8cpp_source.xhtml#l00045">CLWidthConcatenateLayer::validate()</a>, <a class="el" href="_n_e_depth_concatenate_layer_8cpp_source.xhtml#l00076">NEDepthConcatenateLayer::validate()</a>, <a class="el" href="_c_l_depth_concatenate_layer_8cpp_source.xhtml#l00078">CLDepthConcatenateLayer::validate()</a>, <a class="el" href="_n_e_g_e_m_m_8cpp_source.xhtml#l00137">NEGEMM::validate()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_core_8cpp_source.xhtml#l00221">CLGEMMLowpMatrixMultiplyCore::validate()</a>, <a class="el" href="_c_l_g_e_m_m_8cpp_source.xhtml#l00233">CLGEMM::validate()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00353">CLGEMMConvolutionLayer::validate()</a>, and <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00401">NEDepthwiseConvolutionLayer::validate()</a>.</p>
8611
Anthony Barbierdbdab852017-06-23 15:42:00 +01008612</div>
8613</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008614<a id="a5844c8e025388ddd8c3afc5c3f7a3256"></a>
8615<h2 class="memtitle"><span class="permalink"><a href="#a5844c8e025388ddd8c3afc5c3f7a3256">&#9670;&nbsp;</a></span>auto_init_if_empty() <span class="overload">[2/2]</span></h2>
8616
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008617<div class="memitem">
8618<div class="memproto">
8619<table class="mlabels">
8620 <tr>
8621 <td class="mlabels-left">
8622 <table class="memname">
8623 <tr>
8624 <td class="memname">bool auto_init_if_empty </td>
8625 <td>(</td>
8626 <td class="paramtype"><a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
8627 <td class="paramname"><em>info_sink</em>, </td>
8628 </tr>
8629 <tr>
8630 <td class="paramkey"></td>
8631 <td></td>
8632 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
8633 <td class="paramname"><em>info_source</em>&#160;</td>
8634 </tr>
8635 <tr>
8636 <td></td>
8637 <td>)</td>
8638 <td></td><td></td>
8639 </tr>
8640 </table>
8641 </td>
8642 <td class="mlabels-right">
8643<span class="mlabels"><span class="mlabel">inline</span></span> </td>
8644 </tr>
8645</table>
8646</div><div class="memdoc">
8647
8648<p>Auto initialize the tensor info using another tensor info. </p>
8649<dl class="params"><dt>Parameters</dt><dd>
8650 <table class="params">
Jenkins514be652019-02-28 12:25:18 +00008651 <tr><td class="paramname">info_sink</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info used to check and assign </td></tr>
8652 <tr><td class="paramname">info_source</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info used to assign</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008653 </table>
8654 </dd>
8655</dl>
8656<dl class="section return"><dt>Returns</dt><dd>True if the tensor info has been initialized </dd></dl>
8657
Jenkinsb9abeae2018-11-22 11:58:08 +00008658<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00219">219</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
Jenkins52ba29e2018-08-29 15:32:11 +00008659<div class="fragment"><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;{</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">if</span>(info_sink.tensor_shape().total_size() == 0)</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; {</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; info_sink.set_data_type(info_source.data_type());</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; info_sink.set_num_channels(info_source.num_channels());</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; info_sink.set_tensor_shape(info_source.tensor_shape());</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; info_sink.set_quantization_info(info_source.quantization_info());</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; info_sink.set_data_layout(info_source.data_layout());</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; }</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00008660<p class="reference">References <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">ITensorInfo::data_layout()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#ad7829ae79223ab87f9da4c0bd7d229ba">ITensorInfo::num_channels()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a3f3e1a3200223e6a304a533b1016e749">ITensorInfo::quantization_info()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#abb9481fe056b9749f9b4c08db101cc15">ITensorInfo::set_data_layout()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a9ebcdce876b4cd07736afa47d50154de">ITensorInfo::set_data_type()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#aaf74be25e2392705f29352ffaa4b1f9d">ITensorInfo::set_num_channels()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a575d37eaf8a905c8ca3c0250757c2b81">ITensorInfo::set_quantization_info()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a12a4f1190952613e36b44846962e26bb">ITensorInfo::set_tensor_shape()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">ITensorInfo::tensor_shape()</a>, and <a class="el" href="_tensor_shape_8h_source.xhtml#l00171">TensorShape::total_size()</a>.</p>
8661
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008662</div>
8663</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008664<a id="a64c17a5a42d2499a1626222ff9753b4d"></a>
8665<h2 class="memtitle"><span class="permalink"><a href="#a64c17a5a42d2499a1626222ff9753b4d">&#9670;&nbsp;</a></span>build_information()</h2>
8666
Anthony Barbier871448e2017-03-24 14:54:29 +00008667<div class="memitem">
8668<div class="memproto">
8669 <table class="memname">
8670 <tr>
8671 <td class="memname">std::string arm_compute::build_information </td>
8672 <td>(</td>
8673 <td class="paramname"></td><td>)</td>
8674 <td></td>
8675 </tr>
8676 </table>
8677</div><div class="memdoc">
8678
Jenkins514be652019-02-28 12:25:18 +00008679<p>Returns the <a class="el" href="namespacearm__compute.xhtml" title="Copyright (c) 2017-2018 ARM Limited.">arm_compute</a> library build information. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008680<p>Contains the version number and the build options used to build the library</p>
Jenkins514be652019-02-28 12:25:18 +00008681<dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="namespacearm__compute.xhtml" title="Copyright (c) 2017-2018 ARM Limited.">arm_compute</a> library build information </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008682
Jenkins514be652019-02-28 12:25:18 +00008683<p class="reference">Referenced by <a class="el" href="main_8cpp_source.xhtml#l00090">main()</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00008684
Anthony Barbier871448e2017-03-24 14:54:29 +00008685</div>
8686</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008687<a id="a0101a40c4a6acc2af3b55afa7632f16a"></a>
8688<h2 class="memtitle"><span class="permalink"><a href="#a0101a40c4a6acc2af3b55afa7632f16a">&#9670;&nbsp;</a></span>calculate_matrix_scale()</h2>
8689
Anthony Barbier871448e2017-03-24 14:54:29 +00008690<div class="memitem">
8691<div class="memproto">
8692<table class="mlabels">
8693 <tr>
8694 <td class="mlabels-left">
8695 <table class="memname">
8696 <tr>
8697 <td class="memname">uint32_t arm_compute::calculate_matrix_scale </td>
8698 <td>(</td>
8699 <td class="paramtype">const int16_t *&#160;</td>
8700 <td class="paramname"><em>matrix</em>, </td>
8701 </tr>
8702 <tr>
8703 <td class="paramkey"></td>
8704 <td></td>
8705 <td class="paramtype">unsigned int&#160;</td>
8706 <td class="paramname"><em>matrix_size</em>&#160;</td>
8707 </tr>
8708 <tr>
8709 <td></td>
8710 <td>)</td>
8711 <td></td><td></td>
8712 </tr>
8713 </table>
8714 </td>
8715 <td class="mlabels-right">
8716<span class="mlabels"><span class="mlabel">inline</span></span> </td>
8717 </tr>
8718</table>
8719</div><div class="memdoc">
8720
8721<p>Calculate the scale of the given square matrix. </p>
8722<p>The scale is the absolute value of the sum of all the coefficients in the matrix.</p>
8723<dl class="section note"><dt>Note</dt><dd>If the coefficients add up to 0 then the scale is set to 1.</dd></dl>
8724<dl class="params"><dt>Parameters</dt><dd>
8725 <table class="params">
8726 <tr><td class="paramdir">[in]</td><td class="paramname">matrix</td><td>Matrix coefficients </td></tr>
8727 <tr><td class="paramdir">[in]</td><td class="paramname">matrix_size</td><td>Number of elements per side of the square matrix. (Number of coefficients = matrix_size * matrix_size).</td></tr>
8728 </table>
8729 </dd>
8730</dl>
8731<dl class="section return"><dt>Returns</dt><dd>The absolute value of the sum of the coefficients if they don't add up to 0, otherwise 1. </dd></dl>
8732
Jenkinsb9abeae2018-11-22 11:58:08 +00008733<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00627">627</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00008734<div class="fragment"><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160;{</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <span class="keyword">const</span> <span class="keywordtype">size_t</span> size = matrix_size * matrix_size;</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; <span class="keywordflow">return</span> std::max(1, std::abs(<a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(matrix, matrix + size, 0)));</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160;}</div><div class="ttc" id="accumulate_8cl_xhtml_a00e540076dd545ad59ac7482f8cdf514"><div class="ttname"><a href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">accumulate</a></div><div class="ttdeci">__kernel void accumulate(__global uchar *input_ptr, uint input_stride_x, uint input_step_x, uint input_stride_y, uint input_step_y, uint input_offset_first_element_in_bytes, __global uchar *accu_ptr, uint accu_stride_x, uint accu_step_x, uint accu_stride_y, uint accu_step_y, uint accu_offset_first_element_in_bytes)</div><div class="ttdoc">This function accumulates an input image into output image.</div><div class="ttdef"><b>Definition:</b> <a href="accumulate_8cl_source.xhtml#l00041">accumulate.cl:41</a></div></div>
8735</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +00008736<p class="reference">References <a class="el" href="accumulate_8cl_source.xhtml#l00041">accumulate()</a>.</p>
8737
8738<p class="reference">Referenced by <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00057">CLConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00324">NEConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_convolution_8cpp_source.xhtml#l00056">CLConvolutionSquare&lt; matrix_size &gt;::configure()</a>, and <a class="el" href="_n_e_convolution_8cpp_source.xhtml#l00057">NEConvolutionSquare&lt; matrix_size &gt;::configure()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00008739
Anthony Barbier871448e2017-03-24 14:54:29 +00008740</div>
8741</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008742<a id="affc1f59e0b2c29bf81e8c95bf0fa8e76"></a>
8743<h2 class="memtitle"><span class="permalink"><a href="#affc1f59e0b2c29bf81e8c95bf0fa8e76">&#9670;&nbsp;</a></span>calculate_max_enlarged_window() <span class="overload">[1/2]</span></h2>
8744
Anthony Barbierdbdab852017-06-23 15:42:00 +01008745<div class="memitem">
8746<div class="memproto">
8747 <table class="memname">
8748 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008749 <td class="memname"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> calculate_max_enlarged_window </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +01008750 <td>(</td>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00008751 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;&#160;</td>
8752 <td class="paramname"><em>valid_region</em>, </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +01008753 </tr>
8754 <tr>
8755 <td class="paramkey"></td>
8756 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008757 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;&#160;</td>
8758 <td class="paramname"><em>steps</em> = <code><a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>()</code>, </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +01008759 </tr>
8760 <tr>
8761 <td class="paramkey"></td>
8762 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008763 <td class="paramtype"><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>&#160;</td>
8764 <td class="paramname"><em>border_size</em> = <code><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>()</code>&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +01008765 </tr>
8766 <tr>
8767 <td></td>
8768 <td>)</td>
8769 <td></td><td></td>
8770 </tr>
8771 </table>
8772</div><div class="memdoc">
8773
8774<p>Calculate the maximum window for a given tensor shape and border setting. </p>
8775<p>The window will also includes the border.</p>
8776<dl class="params"><dt>Parameters</dt><dd>
8777 <table class="params">
Anthony Barbierf45d5a92018-01-24 16:23:15 +00008778 <tr><td class="paramdir">[in]</td><td class="paramname">valid_region</td><td>Valid region object defining the shape of the tensor space for which the window is created. </td></tr>
8779 <tr><td class="paramdir">[in]</td><td class="paramname">steps</td><td>(Optional) Number of elements processed for each step. </td></tr>
8780 <tr><td class="paramdir">[in]</td><td class="paramname">border_size</td><td>(Optional) Border size. The border region will be included in the window.</td></tr>
8781 </table>
8782 </dd>
8783</dl>
8784<dl class="section return"><dt>Returns</dt><dd>The maximum window the kernel can be executed on. </dd></dl>
8785
Jenkinsb9abeae2018-11-22 11:58:08 +00008786<p class="definition">Definition at line <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00082">82</a> of file <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml">Helpers.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00008787<div class="fragment"><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;{</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keyword">const</span> <a class="code" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;anchor = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keyword">const</span> <a class="code" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a> = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="classarm__compute_1_1_window.xhtml">Window</a> window;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(0, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="comment">// move the anchor to the start from the border</span></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; anchor[0] - border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a>,</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="comment">// move the anchor to include the right end border</span></div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="comment">// Make sure the window width is a multiple of the step size</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; anchor[0] - border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a> + <a class="code" href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">ceil_to_multiple</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[0] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a> + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a78b0fed184c642b78f32fd34b228a5f9">right</a>, steps[0]),</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; steps[0]));</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordtype">size_t</span> n = 1;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">if</span>(anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>() &gt; 1)</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(1, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="comment">// Include the border above the image</span></div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; anchor[1] - border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a>,</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="comment">// Include the border below the image</span></div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; anchor[1] - border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a> + <a class="code" href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">ceil_to_multiple</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[1] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a> + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a802ffcf1b49237efe5be8a314d3f3869">bottom</a>, steps[1]),</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; steps[1]));</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; ++n;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">if</span>(anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>() &gt; 2)</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; {</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(2, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(0, std::max&lt;size_t&gt;(1, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[n]), steps[2]));</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; ++n;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">for</span>(; n &lt; anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>(); ++n)</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; {</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(n, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(anchor[n], std::max&lt;size_t&gt;(1, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[n])));</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; }</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">for</span>(; n &lt; Coordinates::num_max_dimensions; ++n)</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; {</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(n, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(0, 1));</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; }</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">return</span> window;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;}</div><div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a3fdd42ea34070a54e696b3adc28c4be3"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">arm_compute::BorderSize::top</a></div><div class="ttdeci">unsigned int top</div><div class="ttdoc">top of the border</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00393">Types.h:393</a></div></div>
8788<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">AbsoluteDifference.cpp:97</a></div></div>
8789<div class="ttc" id="classarm__compute_1_1_tensor_shape_xhtml"><div class="ttname"><a href="classarm__compute_1_1_tensor_shape.xhtml">arm_compute::TensorShape</a></div><div class="ttdoc">Shape of a tensor.</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_shape_8h_source.xhtml#l00039">TensorShape.h:39</a></div></div>
8790<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a1fcd64682b37ed3c2098d0094ce788d8"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">arm_compute::ValidRegion::shape</a></div><div class="ttdeci">TensorShape shape</div><div class="ttdoc">Shape of the valid region.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00301">Types.h:301</a></div></div>
8791<div class="ttc" id="classarm__compute_1_1_window_1_1_dimension_xhtml"><div class="ttname"><a href="classarm__compute_1_1_window_1_1_dimension.xhtml">arm_compute::Window::Dimension</a></div><div class="ttdoc">Describe one of the image's dimensions with a start, end and step.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00068">Window.h:68</a></div></div>
8792<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a802ffcf1b49237efe5be8a314d3f3869"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a802ffcf1b49237efe5be8a314d3f3869">arm_compute::BorderSize::bottom</a></div><div class="ttdeci">unsigned int bottom</div><div class="ttdoc">bottom of the border</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00395">Types.h:395</a></div></div>
8793<div class="ttc" id="namespacearm__compute_xhtml_ab237a0a375cf382d52b61653248d3d4a"><div class="ttname"><a href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">arm_compute::ceil_to_multiple</a></div><div class="ttdeci">auto ceil_to_multiple(S value, T divisor) -&gt; decltype(((value+divisor - 1)/divisor) *divisor)</div><div class="ttdoc">Computes the smallest number larger or equal to value that is a multiple of divisor.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">Utils.h:65</a></div></div>
8794<div class="ttc" id="classarm__compute_1_1_coordinates_xhtml"><div class="ttname"><a href="classarm__compute_1_1_coordinates.xhtml">arm_compute::Coordinates</a></div><div class="ttdoc">Coordinates of an item.</div><div class="ttdef"><b>Definition:</b> <a href="_coordinates_8h_source.xhtml#l00037">Coordinates.h:37</a></div></div>
8795<div class="ttc" id="classarm__compute_1_1_window_xhtml_acd3d2bba51cb84d34dd7656ad2375a6e"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">arm_compute::Window::set</a></div><div class="ttdeci">void set(size_t dimension, const Dimension &amp;dim)</div><div class="ttdoc">Set the values of a given dimension.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8inl_source.xhtml#l00041">Window.inl:41</a></div></div>
8796<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a7819bcbbf45c2e7c1396a137dce54422"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">arm_compute::test::validation::valid_region</a></div><div class="ttdeci">const ValidRegion valid_region</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00109">AbsoluteDifference.cpp:109</a></div></div>
8797<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a05374b750b0fc472c34ee61e6f028bba"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">arm_compute::BorderSize::left</a></div><div class="ttdeci">unsigned int left</div><div class="ttdoc">left of the border</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00396">Types.h:396</a></div></div>
8798<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a78b0fed184c642b78f32fd34b228a5f9"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a78b0fed184c642b78f32fd34b228a5f9">arm_compute::BorderSize::right</a></div><div class="ttdeci">unsigned int right</div><div class="ttdoc">right of the border</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00394">Types.h:394</a></div></div>
8799<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a80a5f2d6e3a697c9aad893a3b4242615"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">arm_compute::Dimensions::num_dimensions</a></div><div class="ttdeci">unsigned int num_dimensions() const</div><div class="ttdoc">Returns the effective dimensionality of the tensor.</div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00122">Dimensions.h:122</a></div></div>
8800<div class="ttc" id="classarm__compute_1_1_window_xhtml"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml">arm_compute::Window</a></div><div class="ttdoc">Describe a multidimensional execution window.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00039">Window.h:39</a></div></div>
8801<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a55a69b397082accd94221dd10b722cf7"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">arm_compute::ValidRegion::anchor</a></div><div class="ttdeci">Coordinates anchor</div><div class="ttdoc">Anchor for the start of the valid region.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00300">Types.h:300</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008802</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00008803<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00300">ValidRegion::anchor</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00395">BorderSize::bottom</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">ceil_to_multiple()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00396">BorderSize::left</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00394">BorderSize::right</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">arm_compute::test::validation::shape</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00301">ValidRegion::shape</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00393">BorderSize::top</a>, and <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00109">arm_compute::test::validation::valid_region</a>.</p>
8804
8805<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00491">calculate_max_enlarged_window()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00044">GCGEMMMatrixAccumulateBiasesKernel::configure()</a>, <a class="el" href="_g_c_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00051">GCDepthwiseConvolutionLayer3x3Kernel::configure()</a>, and <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>.</p>
8806
Anthony Barbierf45d5a92018-01-24 16:23:15 +00008807</div>
8808</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008809<a id="afcdda83b6a85d5798f08d92c0e235e2e"></a>
8810<h2 class="memtitle"><span class="permalink"><a href="#afcdda83b6a85d5798f08d92c0e235e2e">&#9670;&nbsp;</a></span>calculate_max_enlarged_window() <span class="overload">[2/2]</span></h2>
8811
Anthony Barbierf45d5a92018-01-24 16:23:15 +00008812<div class="memitem">
8813<div class="memproto">
8814<table class="mlabels">
8815 <tr>
8816 <td class="mlabels-left">
8817 <table class="memname">
8818 <tr>
8819 <td class="memname"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> arm_compute::calculate_max_enlarged_window </td>
8820 <td>(</td>
8821 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
8822 <td class="paramname"><em>info</em>, </td>
8823 </tr>
8824 <tr>
8825 <td class="paramkey"></td>
8826 <td></td>
8827 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;&#160;</td>
8828 <td class="paramname"><em>steps</em> = <code><a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>()</code>, </td>
8829 </tr>
8830 <tr>
8831 <td class="paramkey"></td>
8832 <td></td>
8833 <td class="paramtype"><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>&#160;</td>
8834 <td class="paramname"><em>border_size</em> = <code><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>()</code>&#160;</td>
8835 </tr>
8836 <tr>
8837 <td></td>
8838 <td>)</td>
8839 <td></td><td></td>
8840 </tr>
8841 </table>
8842 </td>
8843 <td class="mlabels-right">
8844<span class="mlabels"><span class="mlabel">inline</span></span> </td>
8845 </tr>
8846</table>
8847</div><div class="memdoc">
8848
8849<p>Calculate the maximum window for a given tensor shape and border setting. </p>
8850<p>The window will also includes the border.</p>
8851<dl class="params"><dt>Parameters</dt><dd>
8852 <table class="params">
Jenkins514be652019-02-28 12:25:18 +00008853 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info object defining the shape of the object for which the window is created. </td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +01008854 <tr><td class="paramdir">[in]</td><td class="paramname">steps</td><td>(Optional) Number of elements processed for each step. </td></tr>
8855 <tr><td class="paramdir">[in]</td><td class="paramname">border_size</td><td>(Optional) Border size. The border region will be included in the window.</td></tr>
8856 </table>
8857 </dd>
8858</dl>
8859<dl class="section return"><dt>Returns</dt><dd>The maximum window the kernel can be executed on. </dd></dl>
8860
Jenkins514be652019-02-28 12:25:18 +00008861<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00491">491</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
8862<div class="fragment"><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;{</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#afcdda83b6a85d5798f08d92c0e235e2e">calculate_max_enlarged_window</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.valid_region(), steps, border_size);</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_afcdda83b6a85d5798f08d92c0e235e2e"><div class="ttname"><a href="namespacearm__compute.xhtml#afcdda83b6a85d5798f08d92c0e235e2e">arm_compute::calculate_max_enlarged_window</a></div><div class="ttdeci">Window calculate_max_enlarged_window(const ITensorInfo &amp;info, const Steps &amp;steps=Steps(), BorderSize border_size=BorderSize())</div><div class="ttdoc">Calculate the maximum window for a given tensor shape and border setting.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00491">Helpers.h:491</a></div></div>
8863<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00008864</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00008865<p class="reference">References <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00082">calculate_max_enlarged_window()</a>, and <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
8866
Anthony Barbierf45d5a92018-01-24 16:23:15 +00008867</div>
8868</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008869<a id="ab7980fa5ee693e3282a76da047a1c3b5"></a>
8870<h2 class="memtitle"><span class="permalink"><a href="#ab7980fa5ee693e3282a76da047a1c3b5">&#9670;&nbsp;</a></span>calculate_max_window() <span class="overload">[1/2]</span></h2>
8871
Anthony Barbierf45d5a92018-01-24 16:23:15 +00008872<div class="memitem">
8873<div class="memproto">
8874 <table class="memname">
8875 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00008876 <td class="memname"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> calculate_max_window </td>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00008877 <td>(</td>
8878 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;&#160;</td>
8879 <td class="paramname"><em>valid_region</em>, </td>
8880 </tr>
8881 <tr>
8882 <td class="paramkey"></td>
8883 <td></td>
8884 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;&#160;</td>
8885 <td class="paramname"><em>steps</em> = <code><a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>()</code>, </td>
8886 </tr>
8887 <tr>
8888 <td class="paramkey"></td>
8889 <td></td>
8890 <td class="paramtype">bool&#160;</td>
8891 <td class="paramname"><em>skip_border</em> = <code>false</code>, </td>
8892 </tr>
8893 <tr>
8894 <td class="paramkey"></td>
8895 <td></td>
8896 <td class="paramtype"><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>&#160;</td>
8897 <td class="paramname"><em>border_size</em> = <code><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>()</code>&#160;</td>
8898 </tr>
8899 <tr>
8900 <td></td>
8901 <td>)</td>
8902 <td></td><td></td>
8903 </tr>
8904 </table>
8905</div><div class="memdoc">
8906
8907<p>Calculate the maximum window for a given tensor shape and border setting. </p>
8908<dl class="params"><dt>Parameters</dt><dd>
8909 <table class="params">
8910 <tr><td class="paramdir">[in]</td><td class="paramname">valid_region</td><td>Valid region object defining the shape of the tensor space for which the window is created. </td></tr>
8911 <tr><td class="paramdir">[in]</td><td class="paramname">steps</td><td>(Optional) Number of elements processed for each step. </td></tr>
8912 <tr><td class="paramdir">[in]</td><td class="paramname">skip_border</td><td>(Optional) If true exclude the border region from the window. </td></tr>
8913 <tr><td class="paramdir">[in]</td><td class="paramname">border_size</td><td>(Optional) Border size.</td></tr>
8914 </table>
8915 </dd>
8916</dl>
8917<dl class="section return"><dt>Returns</dt><dd>The maximum window the kernel can be executed on. </dd></dl>
8918
Jenkinsb9abeae2018-11-22 11:58:08 +00008919<p class="definition">Definition at line <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00028">28</a> of file <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml">Helpers.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00008920<div class="fragment"><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;{</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keywordflow">if</span>(!skip_border)</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; {</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; border_size = <a class="code" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>(0);</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; }</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="keyword">const</span> <a class="code" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;anchor = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keyword">const</span> <a class="code" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a> = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <a class="code" href="classarm__compute_1_1_window.xhtml">Window</a> window;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(0, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="comment">// Skip the border left of the image</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; anchor[0] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a>,</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="comment">// Skip the border right of the image</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="comment">// Make sure the window width is a multiple of the step size</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; anchor[0] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a> + <a class="code" href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">ceil_to_multiple</a>(std::max(0, static_cast&lt;int&gt;(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[0]) - static_cast&lt;int&gt;(border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a>) - static_cast&lt;int&gt;(border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a78b0fed184c642b78f32fd34b228a5f9">right</a>)), steps[0]),</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; steps[0]));</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordtype">size_t</span> n = 1;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordflow">if</span>(anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>() &gt; 1)</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; {</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(1, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="comment">// Skip the border above the image</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; anchor[1] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a>,</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="comment">// Skip the border below the image</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; anchor[1] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a> + <a class="code" href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">ceil_to_multiple</a>(std::max(0, static_cast&lt;int&gt;(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[1]) - static_cast&lt;int&gt;(border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a>) - static_cast&lt;int&gt;(border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a802ffcf1b49237efe5be8a314d3f3869">bottom</a>)), steps[1]),</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; steps[1]));</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; ++n;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; }</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">if</span>(anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>() &gt; 2)</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; {</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(2, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(anchor[2], std::max&lt;size_t&gt;(1, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[2]), steps[2]));</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; ++n;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; }</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">for</span>(; n &lt; anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>(); ++n)</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; {</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(n, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(anchor[n], std::max&lt;size_t&gt;(1, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[n])));</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; }</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">for</span>(; n &lt; Coordinates::num_max_dimensions; ++n)</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; {</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(n, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(0, 1));</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; }</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">return</span> window;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;}</div><div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a3fdd42ea34070a54e696b3adc28c4be3"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">arm_compute::BorderSize::top</a></div><div class="ttdeci">unsigned int top</div><div class="ttdoc">top of the border</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00393">Types.h:393</a></div></div>
8921<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">AbsoluteDifference.cpp:97</a></div></div>
8922<div class="ttc" id="classarm__compute_1_1_tensor_shape_xhtml"><div class="ttname"><a href="classarm__compute_1_1_tensor_shape.xhtml">arm_compute::TensorShape</a></div><div class="ttdoc">Shape of a tensor.</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_shape_8h_source.xhtml#l00039">TensorShape.h:39</a></div></div>
8923<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a1fcd64682b37ed3c2098d0094ce788d8"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">arm_compute::ValidRegion::shape</a></div><div class="ttdeci">TensorShape shape</div><div class="ttdoc">Shape of the valid region.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00301">Types.h:301</a></div></div>
8924<div class="ttc" id="structarm__compute_1_1_border_size_xhtml"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml">arm_compute::BorderSize</a></div><div class="ttdoc">Container for 2D border size.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00313">Types.h:313</a></div></div>
8925<div class="ttc" id="classarm__compute_1_1_window_1_1_dimension_xhtml"><div class="ttname"><a href="classarm__compute_1_1_window_1_1_dimension.xhtml">arm_compute::Window::Dimension</a></div><div class="ttdoc">Describe one of the image's dimensions with a start, end and step.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00068">Window.h:68</a></div></div>
8926<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a802ffcf1b49237efe5be8a314d3f3869"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a802ffcf1b49237efe5be8a314d3f3869">arm_compute::BorderSize::bottom</a></div><div class="ttdeci">unsigned int bottom</div><div class="ttdoc">bottom of the border</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00395">Types.h:395</a></div></div>
8927<div class="ttc" id="namespacearm__compute_xhtml_ab237a0a375cf382d52b61653248d3d4a"><div class="ttname"><a href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">arm_compute::ceil_to_multiple</a></div><div class="ttdeci">auto ceil_to_multiple(S value, T divisor) -&gt; decltype(((value+divisor - 1)/divisor) *divisor)</div><div class="ttdoc">Computes the smallest number larger or equal to value that is a multiple of divisor.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">Utils.h:65</a></div></div>
8928<div class="ttc" id="classarm__compute_1_1_coordinates_xhtml"><div class="ttname"><a href="classarm__compute_1_1_coordinates.xhtml">arm_compute::Coordinates</a></div><div class="ttdoc">Coordinates of an item.</div><div class="ttdef"><b>Definition:</b> <a href="_coordinates_8h_source.xhtml#l00037">Coordinates.h:37</a></div></div>
8929<div class="ttc" id="classarm__compute_1_1_window_xhtml_acd3d2bba51cb84d34dd7656ad2375a6e"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">arm_compute::Window::set</a></div><div class="ttdeci">void set(size_t dimension, const Dimension &amp;dim)</div><div class="ttdoc">Set the values of a given dimension.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8inl_source.xhtml#l00041">Window.inl:41</a></div></div>
8930<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a7819bcbbf45c2e7c1396a137dce54422"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">arm_compute::test::validation::valid_region</a></div><div class="ttdeci">const ValidRegion valid_region</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00109">AbsoluteDifference.cpp:109</a></div></div>
8931<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a05374b750b0fc472c34ee61e6f028bba"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">arm_compute::BorderSize::left</a></div><div class="ttdeci">unsigned int left</div><div class="ttdoc">left of the border</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00396">Types.h:396</a></div></div>
8932<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a78b0fed184c642b78f32fd34b228a5f9"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a78b0fed184c642b78f32fd34b228a5f9">arm_compute::BorderSize::right</a></div><div class="ttdeci">unsigned int right</div><div class="ttdoc">right of the border</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00394">Types.h:394</a></div></div>
8933<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a80a5f2d6e3a697c9aad893a3b4242615"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">arm_compute::Dimensions::num_dimensions</a></div><div class="ttdeci">unsigned int num_dimensions() const</div><div class="ttdoc">Returns the effective dimensionality of the tensor.</div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00122">Dimensions.h:122</a></div></div>
8934<div class="ttc" id="classarm__compute_1_1_window_xhtml"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml">arm_compute::Window</a></div><div class="ttdoc">Describe a multidimensional execution window.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00039">Window.h:39</a></div></div>
8935<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a55a69b397082accd94221dd10b722cf7"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">arm_compute::ValidRegion::anchor</a></div><div class="ttdeci">Coordinates anchor</div><div class="ttdoc">Anchor for the start of the valid region.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00300">Types.h:300</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008936</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00008937<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00300">ValidRegion::anchor</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00395">BorderSize::bottom</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">ceil_to_multiple()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00396">BorderSize::left</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00394">BorderSize::right</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">arm_compute::test::validation::shape</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00301">ValidRegion::shape</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00393">BorderSize::top</a>, and <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00109">arm_compute::test::validation::valid_region</a>.</p>
8938
8939<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00443">calculate_max_window()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00042">GCLogits1DMaxKernel::configure()</a>, <a class="el" href="_c_l_integral_image_kernel_8cpp_source.xhtml#l00039">CLIntegralImageHorKernel::configure()</a>, <a class="el" href="_c_l_warp_perspective_kernel_8cpp_source.xhtml#l00061">CLWarpPerspectiveKernel::configure()</a>, <a class="el" href="_c_l_box3x3_kernel_8cpp_source.xhtml#l00043">CLBox3x3Kernel::configure()</a>, <a class="el" href="_c_l_median3x3_kernel_8cpp_source.xhtml#l00039">CLMedian3x3Kernel::configure()</a>, <a class="el" href="_c_l_element_wise_unary_layer_kernel_8cpp_source.xhtml#l00052">CLElementWiseUnaryLayerKernel::configure()</a>, <a class="el" href="_c_l_erode_kernel_8cpp_source.xhtml#l00039">CLErodeKernel::configure()</a>, <a class="el" href="_c_l_dilate_kernel_8cpp_source.xhtml#l00039">CLDilateKernel::configure()</a>, <a class="el" href="_c_l_gaussian3x3_kernel_8cpp_source.xhtml#l00042">CLGaussian3x3Kernel::configure()</a>, <a class="el" href="_n_e_reshape_layer_kernel_8cpp_source.xhtml#l00075">NEReshapeLayerKernel::configure()</a>, <a class="el" href="_g_c_transpose_kernel_8cpp_source.xhtml#l00040">GCTransposeKernel::configure()</a>, <a class="el" href="_c_l_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00044">CLNonMaximaSuppression3x3Kernel::configure()</a>, <a class="el" href="_c_l_warp_affine_kernel_8cpp_source.xhtml#l00061">CLWarpAffineKernel::configure()</a>, <a class="el" href="_n_e_integral_image_kernel_8cpp_source.xhtml#l00038">NEIntegralImageKernel::configure()</a>, <a class="el" href="_g_c_scale_kernel_8cpp_source.xhtml#l00047">GCScaleKernel::configure()</a>, <a class="el" href="_n_e_box3x3_kernel_8cpp_source.xhtml#l00114">NEBox3x3Kernel::configure()</a>, <a class="el" href="_n_e_dilate_kernel_8cpp_source.xhtml#l00048">NEDilateKernel::configure()</a>, <a class="el" href="_n_e_erode_kernel_8cpp_source.xhtml#l00048">NEErodeKernel::configure()</a>, <a class="el" href="_n_e_gaussian3x3_kernel_8cpp_source.xhtml#l00041">NEGaussian3x3Kernel::configure()</a>, <a class="el" href="_n_e_median3x3_kernel_8cpp_source.xhtml#l00054">NEMedian3x3Kernel::configure()</a>, <a class="el" href="_c_l_non_linear_filter_kernel_8cpp_source.xhtml#l00056">CLNonLinearFilterKernel::configure()</a>, <a class="el" href="_c_l_reshape_layer_kernel_8cpp_source.xhtml#l00067">CLReshapeLayerKernel::configure()</a>, <a class="el" href="_c_l_reverse_kernel_8cpp_source.xhtml#l00068">CLReverseKernel::configure()</a>, <a class="el" href="_c_l_generate_proposals_layer_kernel_8cpp_source.xhtml#l00068">CLComputeAllAnchorsKernel::configure()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00084">CLBatchToSpaceLayerKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00040">CLGradientKernel::configure()</a>, <a class="el" href="_c_l_permute_kernel_8cpp_source.xhtml#l00081">CLPermuteKernel::configure()</a>, <a class="el" href="_n_e_tile_kernel_8cpp_source.xhtml#l00064">NETileKernel::configure()</a>, <a class="el" href="_c_l_bitwise_and_kernel_8cpp_source.xhtml#l00040">CLBitwiseAndKernel::configure()</a>, <a class="el" href="_c_l_memset_kernel_8cpp_source.xhtml#l00042">CLMemsetKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00062">CLMinMaxKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_c_l_remap_kernel_8cpp_source.xhtml#l00050">CLRemapKernel::configure()</a>, <a class="el" href="_n_e_copy_kernel_8cpp_source.xhtml#l00040">NECopyKernel::configure()</a>, <a class="el" href="_c_l_bitwise_or_kernel_8cpp_source.xhtml#l00041">CLBitwiseOrKernel::configure()</a>, <a class="el" href="_c_l_tile_kernel_8cpp_source.xhtml#l00068">CLTileKernel::configure()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00089">CLSpaceToBatchLayerKernel::configure()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00066">CLUpsampleLayerKernel::configure()</a>, <a class="el" href="_c_l_bitwise_xor_kernel_8cpp_source.xhtml#l00041">CLBitwiseXorKernel::configure()</a>, <a class="el" href="_i_g_c_simple_kernel_8cpp_source.xhtml#l00038">IGCSimpleKernel::configure()</a>, <a class="el" href="_g_c_activation_layer_kernel_8cpp_source.xhtml#l00047">GCActivationLayerKernel::configure()</a>, <a class="el" href="_i_c_l_simple_kernel_8cpp_source.xhtml#l00038">ICLSimpleKernel::configure()</a>, <a class="el" href="_g_c_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00047">GCPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_deconvolution_layer_upsample_kernel_8cpp_source.xhtml#l00073">CLDeconvolutionLayerUpsampleKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_reshape_weights_generic_kernel_8cpp_source.xhtml#l00070">CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::configure()</a>, <a class="el" href="_c_l_derivative_kernel_8cpp_source.xhtml#l00050">CLDerivativeKernel::configure()</a>, <a class="el" href="_c_l_sobel3x3_kernel_8cpp_source.xhtml#l00050">CLSobel3x3Kernel::configure()</a>, <a class="el" href="_c_p_p_flip_weights_kernel_8cpp_source.xhtml#l00069">CPPFlipWeightsKernel::configure()</a>, <a class="el" href="_n_e_reverse_kernel_8cpp_source.xhtml#l00078">NEReverseKernel::configure()</a>, <a class="el" href="_c_l_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00048">CLHOGOrientationBinningKernel::configure()</a>, <a class="el" href="_n_e_warp_kernel_8cpp_source.xhtml#l00067">INEWarpKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00043">GCGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_g_c_normalization_layer_kernel_8cpp_source.xhtml#l00049">GCNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_bounding_box_transform_kernel_8cpp_source.xhtml#l00070">CLBoundingBoxTransformKernel::configure()</a>, <a class="el" href="_g_c_absolute_difference_kernel_8cpp_source.xhtml#l00047">GCAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_bitwise_not_kernel_8cpp_source.xhtml#l00056">NEBitwiseNotKernel::configure()</a>, <a class="el" href="_c_l_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00064">CLDepthwiseVectorToTensorKernel::configure()</a>, <a class="el" href="_n_e_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00144">NEChannelShuffleLayerKernel::configure()</a>, <a class="el" href="_c_l_absolute_difference_kernel_8cpp_source.xhtml#l00047">CLAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_reorg_layer_kernel_8cpp_source.xhtml#l00114">NEReorgLayerKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00041">GCGEMMTranspose1xWKernel::configure()</a>, <a class="el" href="_c_l_magnitude_phase_kernel_8cpp_source.xhtml#l00046">CLMagnitudePhaseKernel::configure()</a>, <a class="el" href="_c_l_mean_std_dev_kernel_8cpp_source.xhtml#l00066">CLMeanStdDevKernel::configure()</a>, <a class="el" href="_n_e_bitwise_and_kernel_8cpp_source.xhtml#l00061">NEBitwiseAndKernel::configure()</a>, <a class="el" href="_n_e_bitwise_or_kernel_8cpp_source.xhtml#l00057">NEBitwiseOrKernel::configure()</a>, <a class="el" href="_n_e_bitwise_xor_kernel_8cpp_source.xhtml#l00057">NEBitwiseXorKernel::configure()</a>, <a class="el" href="_n_e_depthwise_weights_reshape_kernel_8cpp_source.xhtml#l00106">NEDepthwiseWeightsReshapeKernel::configure()</a>, <a class="el" href="_c_l_color_convert_kernel_8cpp_source.xhtml#l00048">CLColorConvertKernel::configure()</a>, <a class="el" href="_n_e_memset_kernel_8cpp_source.xhtml#l00040">NEMemsetKernel::configure()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00065">CLDepthwiseIm2ColKernel::configure()</a>, <a class="el" href="_c_l_channel_combine_kernel_8cpp_source.xhtml#l00049">CLChannelCombineKernel::configure()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00098">CLFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_n_e_derivative_kernel_8cpp_source.xhtml#l00054">NEDerivativeKernel::configure()</a>, <a class="el" href="_c_p_p_permute_kernel_8cpp_source.xhtml#l00108">CPPPermuteKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00057">CLConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00040">CLConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_n_e_remap_kernel_8cpp_source.xhtml#l00076">NERemapKernel::configure()</a>, <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00045">NEColorConvertKernel::configure()</a>, <a class="el" href="_n_e_fast_corners_kernel_8cpp_source.xhtml#l00361">NEFastCornersKernel::configure()</a>, <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00632">NEHOGOrientationBinningKernel::configure()</a>, <a class="el" href="_g_c_depth_concatenate_layer_kernel_8cpp_source.xhtml#l00050">GCDepthConcatenateLayerKernel::configure()</a>, <a class="el" href="_n_e_non_linear_filter_kernel_8cpp_source.xhtml#l00353">NENonLinearFilterKernel::configure()</a>, <a class="el" href="_n_e_threshold_kernel_8cpp_source.xhtml#l00045">NEThresholdKernel::configure()</a>, <a class="el" href="_c_p_p_upsample_kernel_8cpp_source.xhtml#l00049">CPPUpsampleKernel::configure()</a>, <a class="el" href="_c_l_integral_image_kernel_8cpp_source.xhtml#l00071">CLIntegralImageVertKernel::configure()</a>, <a class="el" href="_n_e_absolute_difference_kernel_8cpp_source.xhtml#l00133">NEAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00098">NEDepthwiseVectorToTensorKernel::configure()</a>, <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00052">NEChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_min_max_location_kernel_8cpp_source.xhtml#l00049">NEMinMaxKernel::configure()</a>, <a class="el" href="_n_e_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00462">NENonMaximaSuppression3x3Kernel::configure()</a>, <a class="el" href="_n_e_fill_array_kernel_8cpp_source.xhtml#l00039">NEFillArrayKernel::configure()</a>, <a class="el" href="_n_e_permute_kernel_8cpp_source.xhtml#l00242">NEPermuteKernel::configure()</a>, <a class="el" href="_n_e_magnitude_phase_kernel_8cpp_source.xhtml#l00250">NEMagnitudePhaseKernel&lt; mag_type, phase_type &gt;::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00877">NEGradientKernel::configure()</a>, <a class="el" href="_n_e_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00205">NEFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_g_c_dropout_layer_kernel_8cpp_source.xhtml#l00048">GCDropoutLayerKernel::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00107">GCLogits1DShiftExpSumKernel::configure()</a>, <a class="el" href="_n_e_depthwise_im2_col_kernel_8cpp_source.xhtml#l00137">NEDepthwiseIm2ColKernel::configure()</a>, <a class="el" href="_n_e_elementwise_unary_kernel_8cpp_source.xhtml#l00143">NEElementwiseUnaryKernel::configure()</a>, <a class="el" href="_n_e_mean_std_dev_kernel_8cpp_source.xhtml#l00097">NEMeanStdDevKernel::configure()</a>, <a class="el" href="_c_l_harris_corners_kernel_8cpp_source.xhtml#l00054">CLHarrisScoreKernel::configure()</a>, <a class="el" href="_n_e_select_kernel_8cpp_source.xhtml#l00167">NESelectKernel::configure()</a>, <a class="el" href="_n_e_channel_combine_kernel_8cpp_source.xhtml#l00052">NEChannelCombineKernel::configure()</a>, <a class="el" href="_c_p_p_corner_candidates_kernel_8cpp_source.xhtml#l00074">CPPCornerCandidatesKernel::configure()</a>, <a class="el" href="_n_e_gather_kernel_8cpp_source.xhtml#l00107">NEGatherKernel::configure()</a>, <a class="el" href="_n_e_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00036">NEConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_c_l_fast_corners_kernel_8cpp_source.xhtml#l00050">CLFastCornersKernel::configure()</a>, <a class="el" href="_c_p_p_box_with_non_maxima_suppression_limit_kernel_8cpp_source.xhtml#l00349">CPPBoxWithNonMaximaSuppressionLimitKernel::configure()</a>, <a class="el" href="_n_e_cumulative_distribution_kernel_8cpp_source.xhtml#l00050">NECumulativeDistributionKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00044">GCGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_n_e_sobel3x3_kernel_8cpp_source.xhtml#l00048">NESobel3x3Kernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00324">NEConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_scharr3x3_kernel_8cpp_source.xhtml#l00050">CLScharr3x3Kernel::configure()</a>, <a class="el" href="_n_e_scharr3x3_kernel_8cpp_source.xhtml#l00090">NEScharr3x3Kernel::configure()</a>, <a class="el" href="_n_e_histogram_kernel_8cpp_source.xhtml#l00195">NEHistogramKernel::configure()</a>, <a class="el" href="_n_e_gaussian5x5_kernel_8cpp_source.xhtml#l00118">NEGaussian5x5VertKernel::configure()</a>, <a class="el" href="_g_c_weights_reshape_kernel_8cpp_source.xhtml#l00046">GCWeightsReshapeKernel::configure()</a>, <a class="el" href="_g_c_col2_im_kernel_8cpp_source.xhtml#l00044">GCCol2ImKernel::configure()</a>, <a class="el" href="_g_c_im2_col_kernel_8cpp_source.xhtml#l00067">GCIm2ColKernel::configure()</a>, <a class="el" href="_c_l_weights_reshape_kernel_8cpp_source.xhtml#l00078">CLWeightsReshapeKernel::configure()</a>, <a class="el" href="_c_l_gaussian_pyramid_kernel_8cpp_source.xhtml#l00136">CLGaussianPyramidVertKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00111">CLEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00169">CLMinMaxLocationKernel::configure()</a>, <a class="el" href="_n_e_harris_corners_kernel_8cpp_source.xhtml#l00736">NEHarrisScoreKernel&lt; block_size &gt;::configure()</a>, <a class="el" href="_c_l_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00125">CLHOGBlockNormalizationKernel::configure()</a>, <a class="el" href="_n_e_gaussian_pyramid_kernel_8cpp_source.xhtml#l00161">NEGaussianPyramidVertKernel::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00201">GCLogits1DNormKernel::configure()</a>, <a class="el" href="_c_l_sobel7x7_kernel_8cpp_source.xhtml#l00147">CLSobel7x7VertKernel::configure()</a>, <a class="el" href="_c_l_sobel5x5_kernel_8cpp_source.xhtml#l00144">CLSobel5x5VertKernel::configure()</a>, <a class="el" href="_c_l_fast_corners_kernel_8cpp_source.xhtml#l00115">CLCopyToArrayKernel::configure()</a>, <a class="el" href="_n_e_sobel5x5_kernel_8cpp_source.xhtml#l00217">NESobel5x5VertKernel::configure()</a>, <a class="el" href="_n_e_sobel7x7_kernel_8cpp_source.xhtml#l00307">NESobel7x7VertKernel::configure()</a>, <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00714">NEHOGBlockNormalizationKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00970">NEEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00180">CLSeparableConvolutionVertKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00173">CLEdgeTraceKernel::configure()</a>, <a class="el" href="_n_e_min_max_location_kernel_8cpp_source.xhtml#l00335">NEMinMaxLocationKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l01103">NESeparableConvolutionVertKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00246">CLConvolutionRectangleKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l01059">NEEdgeTraceKernel::configure()</a>, and <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l01427">NEConvolutionRectangleKernel::configure()</a>.</p>
8940
Anthony Barbierdbdab852017-06-23 15:42:00 +01008941</div>
8942</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00008943<a id="aa2117aef4381edbdf81e17ec088df7f1"></a>
8944<h2 class="memtitle"><span class="permalink"><a href="#aa2117aef4381edbdf81e17ec088df7f1">&#9670;&nbsp;</a></span>calculate_max_window() <span class="overload">[2/2]</span></h2>
8945
Anthony Barbier871448e2017-03-24 14:54:29 +00008946<div class="memitem">
8947<div class="memproto">
Anthony Barbierf45d5a92018-01-24 16:23:15 +00008948<table class="mlabels">
8949 <tr>
8950 <td class="mlabels-left">
Anthony Barbier871448e2017-03-24 14:54:29 +00008951 <table class="memname">
8952 <tr>
8953 <td class="memname"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> arm_compute::calculate_max_window </td>
8954 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008955 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +00008956 <td class="paramname"><em>info</em>, </td>
8957 </tr>
8958 <tr>
8959 <td class="paramkey"></td>
8960 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008961 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;&#160;</td>
8962 <td class="paramname"><em>steps</em> = <code><a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>()</code>, </td>
Anthony Barbier871448e2017-03-24 14:54:29 +00008963 </tr>
8964 <tr>
8965 <td class="paramkey"></td>
8966 <td></td>
8967 <td class="paramtype">bool&#160;</td>
8968 <td class="paramname"><em>skip_border</em> = <code>false</code>, </td>
8969 </tr>
8970 <tr>
8971 <td class="paramkey"></td>
8972 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00008973 <td class="paramtype"><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>&#160;</td>
8974 <td class="paramname"><em>border_size</em> = <code><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>()</code>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +00008975 </tr>
8976 <tr>
8977 <td></td>
8978 <td>)</td>
8979 <td></td><td></td>
8980 </tr>
8981 </table>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00008982 </td>
8983 <td class="mlabels-right">
8984<span class="mlabels"><span class="mlabel">inline</span></span> </td>
8985 </tr>
8986</table>
Anthony Barbier871448e2017-03-24 14:54:29 +00008987</div><div class="memdoc">
8988
8989<p>Calculate the maximum window for a given tensor shape and border setting. </p>
8990<dl class="params"><dt>Parameters</dt><dd>
8991 <table class="params">
Jenkins514be652019-02-28 12:25:18 +00008992 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info object defining the shape of the object for which the window is created. </td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00008993 <tr><td class="paramdir">[in]</td><td class="paramname">steps</td><td>(Optional) Number of elements processed for each step. </td></tr>
8994 <tr><td class="paramdir">[in]</td><td class="paramname">skip_border</td><td>(Optional) If true exclude the border region from the window. </td></tr>
8995 <tr><td class="paramdir">[in]</td><td class="paramname">border_size</td><td>(Optional) Border size.</td></tr>
8996 </table>
8997 </dd>
8998</dl>
8999<dl class="section return"><dt>Returns</dt><dd>The maximum window the kernel can be executed on. </dd></dl>
9000
Jenkins514be652019-02-28 12:25:18 +00009001<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00443">443</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
9002<div class="fragment"><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160;{</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#aa2117aef4381edbdf81e17ec088df7f1">calculate_max_window</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.valid_region(), steps, skip_border, border_size);</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_aa2117aef4381edbdf81e17ec088df7f1"><div class="ttname"><a href="namespacearm__compute.xhtml#aa2117aef4381edbdf81e17ec088df7f1">arm_compute::calculate_max_window</a></div><div class="ttdeci">Window calculate_max_window(const ITensorInfo &amp;info, const Steps &amp;steps=Steps(), bool skip_border=false, BorderSize border_size=BorderSize())</div><div class="ttdoc">Calculate the maximum window for a given tensor shape and border setting.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00443">Helpers.h:443</a></div></div>
9003<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00009004</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009005<p class="reference">References <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00028">calculate_max_window()</a>, and <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
9006
Anthony Barbierf45d5a92018-01-24 16:23:15 +00009007</div>
9008</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009009<a id="a9047a414d692d8814181a667a7ee68c4"></a>
9010<h2 class="memtitle"><span class="permalink"><a href="#a9047a414d692d8814181a667a7ee68c4">&#9670;&nbsp;</a></span>calculate_max_window_horizontal() <span class="overload">[1/2]</span></h2>
9011
Anthony Barbierf45d5a92018-01-24 16:23:15 +00009012<div class="memitem">
9013<div class="memproto">
9014 <table class="memname">
9015 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00009016 <td class="memname"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> calculate_max_window_horizontal </td>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00009017 <td>(</td>
9018 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;&#160;</td>
9019 <td class="paramname"><em>valid_region</em>, </td>
9020 </tr>
9021 <tr>
9022 <td class="paramkey"></td>
9023 <td></td>
9024 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;&#160;</td>
9025 <td class="paramname"><em>steps</em> = <code><a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>()</code>, </td>
9026 </tr>
9027 <tr>
9028 <td class="paramkey"></td>
9029 <td></td>
9030 <td class="paramtype">bool&#160;</td>
9031 <td class="paramname"><em>skip_border</em> = <code>false</code>, </td>
9032 </tr>
9033 <tr>
9034 <td class="paramkey"></td>
9035 <td></td>
9036 <td class="paramtype"><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>&#160;</td>
9037 <td class="paramname"><em>border_size</em> = <code><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>()</code>&#160;</td>
9038 </tr>
9039 <tr>
9040 <td></td>
9041 <td>)</td>
9042 <td></td><td></td>
9043 </tr>
9044 </table>
9045</div><div class="memdoc">
9046
9047<p>Calculate the maximum window used by a horizontal kernel for a given tensor shape and border setting. </p>
9048<dl class="params"><dt>Parameters</dt><dd>
9049 <table class="params">
9050 <tr><td class="paramdir">[in]</td><td class="paramname">valid_region</td><td>Valid region object defining the shape of the tensor space for which the window is created. </td></tr>
9051 <tr><td class="paramdir">[in]</td><td class="paramname">steps</td><td>(Optional) Number of elements processed for each step. </td></tr>
9052 <tr><td class="paramdir">[in]</td><td class="paramname">skip_border</td><td>(Optional) If true exclude the border region from the window. </td></tr>
9053 <tr><td class="paramdir">[in]</td><td class="paramname">border_size</td><td>(Optional) Border size. The border region will be excluded from the window.</td></tr>
9054 </table>
9055 </dd>
9056</dl>
9057<dl class="section return"><dt>Returns</dt><dd>The maximum window the kernel can be executed on. </dd></dl>
9058
Jenkinsb9abeae2018-11-22 11:58:08 +00009059<p class="definition">Definition at line <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00131">131</a> of file <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml">Helpers.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009060<div class="fragment"><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;{</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">if</span>(skip_border)</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; {</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a> = 0;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a802ffcf1b49237efe5be8a314d3f3869">bottom</a> = 0;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; {</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a> = 0;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a78b0fed184c642b78f32fd34b228a5f9">right</a> = 0;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keyword">const</span> <a class="code" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;anchor = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keyword">const</span> <a class="code" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a> = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <a class="code" href="classarm__compute_1_1_window.xhtml">Window</a> window;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(0, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="comment">// Skip the border left of the image</span></div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; anchor[0] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a>,</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="comment">// Skip the border right of the image</span></div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="comment">// Make sure the window width is a multiple of the step size</span></div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; anchor[0] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a> + <a class="code" href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">ceil_to_multiple</a>(std::max(0, static_cast&lt;int&gt;(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[0]) - static_cast&lt;int&gt;(border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">left</a>) - static_cast&lt;int&gt;(border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a78b0fed184c642b78f32fd34b228a5f9">right</a>)), steps[0]),</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; steps[0]));</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordtype">size_t</span> n = 1;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">if</span>(anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>() &gt; 1)</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; {</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(1, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="comment">// Skip the border above the image</span></div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; anchor[1] - border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">top</a>,</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="comment">// Skip the border below the image</span></div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; anchor[1] + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[1] + border_size.<a class="code" href="structarm__compute_1_1_border_size.xhtml#a802ffcf1b49237efe5be8a314d3f3869">bottom</a>,</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; 1));</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; ++n;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; }</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">for</span>(; n &lt; anchor.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>(); ++n)</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; {</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(n, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(anchor[n], std::max&lt;size_t&gt;(1, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[n])));</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; }</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">for</span>(; n &lt; Coordinates::num_max_dimensions; ++n)</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; {</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; window.<a class="code" href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">set</a>(n, <a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a>(0, 1));</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; }</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">return</span> window;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;}</div><div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a3fdd42ea34070a54e696b3adc28c4be3"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a3fdd42ea34070a54e696b3adc28c4be3">arm_compute::BorderSize::top</a></div><div class="ttdeci">unsigned int top</div><div class="ttdoc">top of the border</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00393">Types.h:393</a></div></div>
9061<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">AbsoluteDifference.cpp:97</a></div></div>
9062<div class="ttc" id="classarm__compute_1_1_tensor_shape_xhtml"><div class="ttname"><a href="classarm__compute_1_1_tensor_shape.xhtml">arm_compute::TensorShape</a></div><div class="ttdoc">Shape of a tensor.</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_shape_8h_source.xhtml#l00039">TensorShape.h:39</a></div></div>
9063<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a1fcd64682b37ed3c2098d0094ce788d8"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">arm_compute::ValidRegion::shape</a></div><div class="ttdeci">TensorShape shape</div><div class="ttdoc">Shape of the valid region.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00301">Types.h:301</a></div></div>
9064<div class="ttc" id="classarm__compute_1_1_window_1_1_dimension_xhtml"><div class="ttname"><a href="classarm__compute_1_1_window_1_1_dimension.xhtml">arm_compute::Window::Dimension</a></div><div class="ttdoc">Describe one of the image's dimensions with a start, end and step.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00068">Window.h:68</a></div></div>
9065<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a802ffcf1b49237efe5be8a314d3f3869"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a802ffcf1b49237efe5be8a314d3f3869">arm_compute::BorderSize::bottom</a></div><div class="ttdeci">unsigned int bottom</div><div class="ttdoc">bottom of the border</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00395">Types.h:395</a></div></div>
9066<div class="ttc" id="namespacearm__compute_xhtml_ab237a0a375cf382d52b61653248d3d4a"><div class="ttname"><a href="namespacearm__compute.xhtml#ab237a0a375cf382d52b61653248d3d4a">arm_compute::ceil_to_multiple</a></div><div class="ttdeci">auto ceil_to_multiple(S value, T divisor) -&gt; decltype(((value+divisor - 1)/divisor) *divisor)</div><div class="ttdoc">Computes the smallest number larger or equal to value that is a multiple of divisor.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">Utils.h:65</a></div></div>
9067<div class="ttc" id="classarm__compute_1_1_coordinates_xhtml"><div class="ttname"><a href="classarm__compute_1_1_coordinates.xhtml">arm_compute::Coordinates</a></div><div class="ttdoc">Coordinates of an item.</div><div class="ttdef"><b>Definition:</b> <a href="_coordinates_8h_source.xhtml#l00037">Coordinates.h:37</a></div></div>
9068<div class="ttc" id="classarm__compute_1_1_window_xhtml_acd3d2bba51cb84d34dd7656ad2375a6e"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml#acd3d2bba51cb84d34dd7656ad2375a6e">arm_compute::Window::set</a></div><div class="ttdeci">void set(size_t dimension, const Dimension &amp;dim)</div><div class="ttdoc">Set the values of a given dimension.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8inl_source.xhtml#l00041">Window.inl:41</a></div></div>
9069<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a7819bcbbf45c2e7c1396a137dce54422"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">arm_compute::test::validation::valid_region</a></div><div class="ttdeci">const ValidRegion valid_region</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00109">AbsoluteDifference.cpp:109</a></div></div>
9070<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a05374b750b0fc472c34ee61e6f028bba"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a05374b750b0fc472c34ee61e6f028bba">arm_compute::BorderSize::left</a></div><div class="ttdeci">unsigned int left</div><div class="ttdoc">left of the border</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00396">Types.h:396</a></div></div>
9071<div class="ttc" id="structarm__compute_1_1_border_size_xhtml_a78b0fed184c642b78f32fd34b228a5f9"><div class="ttname"><a href="structarm__compute_1_1_border_size.xhtml#a78b0fed184c642b78f32fd34b228a5f9">arm_compute::BorderSize::right</a></div><div class="ttdeci">unsigned int right</div><div class="ttdoc">right of the border</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00394">Types.h:394</a></div></div>
9072<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a80a5f2d6e3a697c9aad893a3b4242615"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">arm_compute::Dimensions::num_dimensions</a></div><div class="ttdeci">unsigned int num_dimensions() const</div><div class="ttdoc">Returns the effective dimensionality of the tensor.</div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00122">Dimensions.h:122</a></div></div>
9073<div class="ttc" id="classarm__compute_1_1_window_xhtml"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml">arm_compute::Window</a></div><div class="ttdoc">Describe a multidimensional execution window.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00039">Window.h:39</a></div></div>
9074<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a55a69b397082accd94221dd10b722cf7"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">arm_compute::ValidRegion::anchor</a></div><div class="ttdeci">Coordinates anchor</div><div class="ttdoc">Anchor for the start of the valid region.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00300">Types.h:300</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009075</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009076<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00300">ValidRegion::anchor</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00395">BorderSize::bottom</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">ceil_to_multiple()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00396">BorderSize::left</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00394">BorderSize::right</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">arm_compute::test::validation::shape</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00301">ValidRegion::shape</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00393">BorderSize::top</a>, and <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00109">arm_compute::test::validation::valid_region</a>.</p>
9077
9078<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00468">calculate_max_window_horizontal()</a>, <a class="el" href="_n_e_gaussian5x5_kernel_8cpp_source.xhtml#l00050">NEGaussian5x5HorKernel::configure()</a>, <a class="el" href="_c_l_gaussian_pyramid_kernel_8cpp_source.xhtml#l00044">CLGaussianPyramidHorKernel::configure()</a>, <a class="el" href="_c_l_sobel5x5_kernel_8cpp_source.xhtml#l00050">CLSobel5x5HorKernel::configure()</a>, <a class="el" href="_n_e_gaussian_pyramid_kernel_8cpp_source.xhtml#l00053">NEGaussianPyramidHorKernel::configure()</a>, <a class="el" href="_c_l_sobel7x7_kernel_8cpp_source.xhtml#l00050">CLSobel7x7HorKernel::configure()</a>, <a class="el" href="_n_e_sobel7x7_kernel_8cpp_source.xhtml#l00153">NESobel7x7HorKernel::configure()</a>, <a class="el" href="_n_e_sobel5x5_kernel_8cpp_source.xhtml#l00050">NESobel5x5HorKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00127">CLSeparableConvolutionHorKernel&lt; matrix_size &gt;::configure()</a>, and <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00666">NESeparableConvolutionHorKernel&lt; matrix_size &gt;::configure()</a>.</p>
9079
Anthony Barbier871448e2017-03-24 14:54:29 +00009080</div>
9081</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009082<a id="a47456b4d520aee1cba80bf6e20f6685a"></a>
9083<h2 class="memtitle"><span class="permalink"><a href="#a47456b4d520aee1cba80bf6e20f6685a">&#9670;&nbsp;</a></span>calculate_max_window_horizontal() <span class="overload">[2/2]</span></h2>
9084
Anthony Barbier871448e2017-03-24 14:54:29 +00009085<div class="memitem">
9086<div class="memproto">
Anthony Barbierf45d5a92018-01-24 16:23:15 +00009087<table class="mlabels">
9088 <tr>
9089 <td class="mlabels-left">
Anthony Barbier871448e2017-03-24 14:54:29 +00009090 <table class="memname">
9091 <tr>
9092 <td class="memname"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> arm_compute::calculate_max_window_horizontal </td>
9093 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009094 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +00009095 <td class="paramname"><em>info</em>, </td>
9096 </tr>
9097 <tr>
9098 <td class="paramkey"></td>
9099 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009100 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a> &amp;&#160;</td>
9101 <td class="paramname"><em>steps</em> = <code><a class="el" href="classarm__compute_1_1_steps.xhtml">Steps</a>()</code>, </td>
Anthony Barbier871448e2017-03-24 14:54:29 +00009102 </tr>
9103 <tr>
9104 <td class="paramkey"></td>
9105 <td></td>
9106 <td class="paramtype">bool&#160;</td>
9107 <td class="paramname"><em>skip_border</em> = <code>false</code>, </td>
9108 </tr>
9109 <tr>
9110 <td class="paramkey"></td>
9111 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009112 <td class="paramtype"><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>&#160;</td>
9113 <td class="paramname"><em>border_size</em> = <code><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>()</code>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +00009114 </tr>
9115 <tr>
9116 <td></td>
9117 <td>)</td>
9118 <td></td><td></td>
9119 </tr>
9120 </table>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00009121 </td>
9122 <td class="mlabels-right">
9123<span class="mlabels"><span class="mlabel">inline</span></span> </td>
9124 </tr>
9125</table>
Anthony Barbier871448e2017-03-24 14:54:29 +00009126</div><div class="memdoc">
9127
9128<p>Calculate the maximum window used by a horizontal kernel for a given tensor shape and border setting. </p>
9129<dl class="params"><dt>Parameters</dt><dd>
9130 <table class="params">
Jenkins514be652019-02-28 12:25:18 +00009131 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info object defining the shape of the object for which the window is created. </td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00009132 <tr><td class="paramdir">[in]</td><td class="paramname">steps</td><td>(Optional) Number of elements processed for each step. </td></tr>
9133 <tr><td class="paramdir">[in]</td><td class="paramname">skip_border</td><td>(Optional) If true exclude the border region from the window. </td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00009134 <tr><td class="paramdir">[in]</td><td class="paramname">border_size</td><td>(Optional) Border size.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00009135 </table>
9136 </dd>
9137</dl>
9138<dl class="section return"><dt>Returns</dt><dd>The maximum window the kernel can be executed on. </dd></dl>
9139
Jenkins514be652019-02-28 12:25:18 +00009140<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00468">468</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
9141<div class="fragment"><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;{</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a47456b4d520aee1cba80bf6e20f6685a">calculate_max_window_horizontal</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.valid_region(), steps, skip_border, border_size);</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a47456b4d520aee1cba80bf6e20f6685a"><div class="ttname"><a href="namespacearm__compute.xhtml#a47456b4d520aee1cba80bf6e20f6685a">arm_compute::calculate_max_window_horizontal</a></div><div class="ttdeci">Window calculate_max_window_horizontal(const ITensorInfo &amp;info, const Steps &amp;steps=Steps(), bool skip_border=false, BorderSize border_size=BorderSize())</div><div class="ttdoc">Calculate the maximum window used by a horizontal kernel for a given tensor shape and border setting.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00468">Helpers.h:468</a></div></div>
9142<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00009143</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009144<p class="reference">References <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00131">calculate_max_window_horizontal()</a>, and <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
9145
Kaizen8938bd32017-09-28 14:38:23 +01009146</div>
9147</div>
Jenkins514be652019-02-28 12:25:18 +00009148<a id="a76d2c1e638da30c99ca2ff48051bcb04"></a>
9149<h2 class="memtitle"><span class="permalink"><a href="#a76d2c1e638da30c99ca2ff48051bcb04">&#9670;&nbsp;</a></span>calculate_same_pad()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +00009150
Anthony Barbier06ea0482018-02-22 15:45:35 +00009151<div class="memitem">
9152<div class="memproto">
9153 <table class="memname">
9154 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00009155 <td class="memname"><a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> calculate_same_pad </td>
Anthony Barbier06ea0482018-02-22 15:45:35 +00009156 <td>(</td>
9157 <td class="paramtype"><a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a>&#160;</td>
9158 <td class="paramname"><em>input_shape</em>, </td>
9159 </tr>
9160 <tr>
9161 <td class="paramkey"></td>
9162 <td></td>
9163 <td class="paramtype"><a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a>&#160;</td>
9164 <td class="paramname"><em>weights_shape</em>, </td>
9165 </tr>
9166 <tr>
9167 <td class="paramkey"></td>
9168 <td></td>
9169 <td class="paramtype"><a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a>&#160;</td>
Jenkins514be652019-02-28 12:25:18 +00009170 <td class="paramname"><em>conv_info</em>, </td>
9171 </tr>
9172 <tr>
9173 <td class="paramkey"></td>
9174 <td></td>
9175 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a>&#160;</td>
9176 <td class="paramname"><em>data_layout</em> = <code><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">DataLayout::NCHW</a></code>&#160;</td>
Anthony Barbier06ea0482018-02-22 15:45:35 +00009177 </tr>
9178 <tr>
9179 <td></td>
9180 <td>)</td>
9181 <td></td><td></td>
9182 </tr>
9183 </table>
9184</div><div class="memdoc">
9185
9186<p>Calculate padding requirements in case of SAME padding. </p>
9187<dl class="params"><dt>Parameters</dt><dd>
9188 <table class="params">
9189 <tr><td class="paramdir">[in]</td><td class="paramname">input_shape</td><td>Input shape </td></tr>
9190 <tr><td class="paramdir">[in]</td><td class="paramname">weights_shape</td><td>Weights shape </td></tr>
Jenkins514be652019-02-28 12:25:18 +00009191 <tr><td class="paramdir">[in]</td><td class="paramname">conv_info</td><td>Convolution information (containing strides) </td></tr>
9192 <tr><td class="paramdir">[in]</td><td class="paramname">data_layout</td><td>(Optional) Data layout of the input and weights tensor</td></tr>
Anthony Barbier06ea0482018-02-22 15:45:35 +00009193 </table>
9194 </dd>
9195</dl>
Jenkins514be652019-02-28 12:25:18 +00009196<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml" title="Padding and stride information class.">PadStrideInfo</a> for SAME padding </dd></dl>
Anthony Barbier06ea0482018-02-22 15:45:35 +00009197
Jenkins514be652019-02-28 12:25:18 +00009198<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00329">329</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
9199<div class="fragment"><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;{</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> width_idx = <a class="code" href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">arm_compute::get_data_layout_dimension_index</a>(data_layout, DataLayoutDimension::WIDTH);</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> height_idx = <a class="code" href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">arm_compute::get_data_layout_dimension_index</a>(data_layout, DataLayoutDimension::HEIGHT);</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> &amp;strides = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">conv_info</a>.stride();</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> out_width = std::ceil(<span class="keywordtype">float</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a865514e30baa11b11c8fa65f944532fb">input_shape</a>[width_idx]) / <span class="keywordtype">float</span>(strides.first));</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> out_height = std::ceil(<span class="keywordtype">float</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a865514e30baa11b11c8fa65f944532fb">input_shape</a>[height_idx]) / <span class="keywordtype">float</span>(strides.second));</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> pad_width = ((out_width - 1) * strides.first + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ae8f0126f051c787279a8c9ee3c3a5d55">weights_shape</a>[width_idx] - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a865514e30baa11b11c8fa65f944532fb">input_shape</a>[width_idx]);</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> pad_height = ((out_height - 1) * strides.second + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ae8f0126f051c787279a8c9ee3c3a5d55">weights_shape</a>[height_idx] - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a865514e30baa11b11c8fa65f944532fb">input_shape</a>[height_idx]);</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> same_pad_left = pad_width / 2;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> same_pad_top = pad_height / 2;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> same_pad_right = pad_width - same_pad_left;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> same_pad_bottom = pad_height - same_pad_top;</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a>(strides.first, strides.second, same_pad_left, same_pad_right, same_pad_top, same_pad_bottom, DimensionRoundingType::CEIL);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a865514e30baa11b11c8fa65f944532fb"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a865514e30baa11b11c8fa65f944532fb">arm_compute::test::validation::input_shape</a></div><div class="ttdeci">input_shape</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
9200<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ae8f0126f051c787279a8c9ee3c3a5d55"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ae8f0126f051c787279a8c9ee3c3a5d55">arm_compute::test::validation::weights_shape</a></div><div class="ttdeci">weights_shape</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
9201<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml">arm_compute::PadStrideInfo</a></div><div class="ttdoc">Padding and stride information class.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00721">Types.h:721</a></div></div>
9202<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_acbf8f8a6dd185de04c1981c57a8963cf"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">arm_compute::test::validation::conv_info</a></div><div class="ttdeci">conv_info</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00571">Winograd.cpp:571</a></div></div>
9203<div class="ttc" id="namespacearm__compute_xhtml_a46e938020a3ac8c926d0590b7fe957db"><div class="ttname"><a href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">arm_compute::get_data_layout_dimension_index</a></div><div class="ttdeci">size_t get_data_layout_dimension_index(const DataLayout data_layout, const DataLayoutDimension data_layout_dimension)</div><div class="ttdoc">Get the index of the given dimension.</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00326">Helpers.inl:326</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009204</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009205<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff">CEIL</a>, <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00571">arm_compute::test::validation::conv_info</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00326">get_data_layout_dimension_index()</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">HEIGHT</a>, <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::input_shape</a>, <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::weights_shape</a>, and <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>.</p>
9206
9207<p class="reference">Referenced by <a class="el" href="_n_e_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00319">NEDepthwiseConvolutionLayer3x3Kernel::is_optimized_execution_possible()</a>.</p>
9208
Anthony Barbier06ea0482018-02-22 15:45:35 +00009209</div>
9210</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009211<a id="a9d714e1b7d9d7818309138b7d830ebcb"></a>
9212<h2 class="memtitle"><span class="permalink"><a href="#a9d714e1b7d9d7818309138b7d830ebcb">&#9670;&nbsp;</a></span>calculate_subsampled_shape()</h2>
9213
Anthony Barbier06ea0482018-02-22 15:45:35 +00009214<div class="memitem">
9215<div class="memproto">
9216<table class="mlabels">
9217 <tr>
9218 <td class="mlabels-left">
9219 <table class="memname">
9220 <tr>
9221 <td class="memname"><a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> arm_compute::calculate_subsampled_shape </td>
9222 <td>(</td>
9223 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;&#160;</td>
9224 <td class="paramname"><em>shape</em>, </td>
9225 </tr>
9226 <tr>
9227 <td class="paramkey"></td>
9228 <td></td>
9229 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td>
9230 <td class="paramname"><em>format</em>, </td>
9231 </tr>
9232 <tr>
9233 <td class="paramkey"></td>
9234 <td></td>
9235 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a>&#160;</td>
9236 <td class="paramname"><em>channel</em> = <code><a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">Channel::UNKNOWN</a></code>&#160;</td>
9237 </tr>
9238 <tr>
9239 <td></td>
9240 <td>)</td>
9241 <td></td><td></td>
9242 </tr>
9243 </table>
9244 </td>
9245 <td class="mlabels-right">
9246<span class="mlabels"><span class="mlabel">inline</span></span> </td>
9247 </tr>
9248</table>
9249</div><div class="memdoc">
9250
9251<p>Calculate subsampled shape for a given format and channel. </p>
9252<dl class="params"><dt>Parameters</dt><dd>
9253 <table class="params">
9254 <tr><td class="paramdir">[in]</td><td class="paramname">shape</td><td>Shape of the tensor to calculate the extracted channel. </td></tr>
9255 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>Format of the tensor. </td></tr>
9256 <tr><td class="paramdir">[in]</td><td class="paramname">channel</td><td>Channel to create tensor shape to be extracted.</td></tr>
9257 </table>
9258 </dd>
9259</dl>
9260<dl class="section return"><dt>Returns</dt><dd>The subsampled tensor shape. </dd></dl>
9261
Jenkinsb9abeae2018-11-22 11:58:08 +00009262<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00674">674</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009263<div class="fragment"><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160;{</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; TensorShape output{ <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a> };</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160;</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; <span class="comment">// Subsample shape only for U or V channel</span></div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">Channel::U</a> == channel || Channel::V == channel || Channel::UNKNOWN == channel)</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; {</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; <span class="comment">// Subsample width for the tensor shape when channel is U or V</span></div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute.xhtml#aa2f22cc01532e0236e438324310fdb94">has_format_horizontal_subsampling</a>(format))</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; {</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; output.set(0, output.x() / 2<a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">U</a>);</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; }</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160;</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; <span class="comment">// Subsample height for the tensor shape when channel is U or V</span></div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute.xhtml#a95358b677c5c17f5cc1e369e4a27e2c2">has_format_vertical_subsampling</a>(format))</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; {</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; output.set(1, output.y() / 2<a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">U</a>);</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; }</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; }</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160;</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <span class="keywordflow">return</span> output;</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">AbsoluteDifference.cpp:97</a></div></div>
9264<div class="ttc" id="namespacearm__compute_xhtml_a95358b677c5c17f5cc1e369e4a27e2c2"><div class="ttname"><a href="namespacearm__compute.xhtml#a95358b677c5c17f5cc1e369e4a27e2c2">arm_compute::has_format_vertical_subsampling</a></div><div class="ttdeci">bool has_format_vertical_subsampling(Format format)</div><div class="ttdoc">Return true if the given format has vertical subsampling.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00553">Utils.h:553</a></div></div>
9265<div class="ttc" id="namespacearm__compute_1_1utils_1_1cast_xhtml_a2ea3d1fc01a3a442900249ca182ffa5e"><div class="ttname"><a href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">arm_compute::utils::cast::U</a></div><div class="ttdeci">U</div><div class="ttdef"><b>Definition:</b> <a href="_saturate_cast_8h_source.xhtml#l00057">SaturateCast.h:57</a></div></div>
9266<div class="ttc" id="namespacearm__compute_xhtml_aa2f22cc01532e0236e438324310fdb94"><div class="ttname"><a href="namespacearm__compute.xhtml#aa2f22cc01532e0236e438324310fdb94">arm_compute::has_format_horizontal_subsampling</a></div><div class="ttdeci">bool has_format_horizontal_subsampling(Format format)</div><div class="ttdoc">Return true if the given format has horizontal subsampling.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00542">Utils.h:542</a></div></div>
Anthony Barbier06ea0482018-02-22 15:45:35 +00009267</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009268<p class="reference">References <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00542">has_format_horizontal_subsampling()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00553">has_format_vertical_subsampling()</a>, <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">arm_compute::test::validation::shape</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, and <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>.</p>
9269
9270<p class="reference">Referenced by <a class="el" href="reference_2_channel_extract_8cpp_source.xhtml#l00038">arm_compute::test::validation::reference::channel_extract()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00052">NEChannelExtractKernel::configure()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00336">error_on_tensors_not_subsampled()</a>.</p>
9271
Anthony Barbier06ea0482018-02-22 15:45:35 +00009272</div>
9273</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009274<a id="a45509a321422cd1542958b5c33021bda"></a>
9275<h2 class="memtitle"><span class="permalink"><a href="#a45509a321422cd1542958b5c33021bda">&#9670;&nbsp;</a></span>calculate_valid_region_scale()</h2>
9276
Kaizen8938bd32017-09-28 14:38:23 +01009277<div class="memitem">
9278<div class="memproto">
Kaizen8938bd32017-09-28 14:38:23 +01009279 <table class="memname">
9280 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00009281 <td class="memname"><a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> calculate_valid_region_scale </td>
Kaizen8938bd32017-09-28 14:38:23 +01009282 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009283 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +01009284 <td class="paramname"><em>src_info</em>, </td>
9285 </tr>
9286 <tr>
9287 <td class="paramkey"></td>
9288 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009289 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +01009290 <td class="paramname"><em>dst_shape</em>, </td>
9291 </tr>
9292 <tr>
9293 <td class="paramkey"></td>
9294 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009295 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a>&#160;</td>
Jenkinsb3a371b2018-05-23 11:36:53 +01009296 <td class="paramname"><em>interpolate_policy</em>, </td>
Kaizen8938bd32017-09-28 14:38:23 +01009297 </tr>
9298 <tr>
9299 <td class="paramkey"></td>
9300 <td></td>
Jenkinsb3a371b2018-05-23 11:36:53 +01009301 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7b">SamplingPolicy</a>&#160;</td>
9302 <td class="paramname"><em>sampling_policy</em>, </td>
Kaizen8938bd32017-09-28 14:38:23 +01009303 </tr>
9304 <tr>
9305 <td class="paramkey"></td>
9306 <td></td>
9307 <td class="paramtype">bool&#160;</td>
9308 <td class="paramname"><em>border_undefined</em>&#160;</td>
9309 </tr>
9310 <tr>
9311 <td></td>
9312 <td>)</td>
9313 <td></td><td></td>
9314 </tr>
9315 </table>
Kaizen8938bd32017-09-28 14:38:23 +01009316</div><div class="memdoc">
Anthony Barbier871448e2017-03-24 14:54:29 +00009317
Kaizen8938bd32017-09-28 14:38:23 +01009318<p>Helper function to calculate the Valid Region for Scale. </p>
9319<dl class="params"><dt>Parameters</dt><dd>
9320 <table class="params">
9321 <tr><td class="paramdir">[in]</td><td class="paramname">src_info</td><td>Input tensor info used to check. </td></tr>
9322 <tr><td class="paramdir">[in]</td><td class="paramname">dst_shape</td><td>Shape of the output. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01009323 <tr><td class="paramdir">[in]</td><td class="paramname">interpolate_policy</td><td>Interpolation policy. </td></tr>
9324 <tr><td class="paramdir">[in]</td><td class="paramname">sampling_policy</td><td>Sampling policy. </td></tr>
Kaizen8938bd32017-09-28 14:38:23 +01009325 <tr><td class="paramdir">[in]</td><td class="paramname">border_undefined</td><td>True if the border is undefined.</td></tr>
9326 </table>
9327 </dd>
9328</dl>
Jenkinsb3a371b2018-05-23 11:36:53 +01009329<dl class="section return"><dt>Returns</dt><dd>The corresponding valid region </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +01009330
Jenkinsb9abeae2018-11-22 11:58:08 +00009331<p class="definition">Definition at line <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00184">184</a> of file <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml">Helpers.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009332<div class="fragment"><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;{</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> data_layout = src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">data_layout</a>();</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> idx_width = <a class="code" href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">get_data_layout_dimension_index</a>(data_layout, DataLayoutDimension::WIDTH);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> idx_height = <a class="code" href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">get_data_layout_dimension_index</a>(data_layout, DataLayoutDimension::HEIGHT);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> scale_x = static_cast&lt;float&gt;(dst_shape[idx_width]) / src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">tensor_shape</a>()[idx_width];</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> scale_y = static_cast&lt;float&gt;(dst_shape[idx_height]) / src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">tensor_shape</a>()[idx_height];</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> sampling_point = (sampling_policy == SamplingPolicy::CENTER) ? 0.5f : 0.0f;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="comment">// Get input&#39;s valid region start and end points</span></div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> valid_start_in_x = src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">valid_region</a>().<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>[idx_width];</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> valid_start_in_y = src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">valid_region</a>().<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>[idx_height];</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> valid_end_in_x = src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">valid_region</a>().<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>[idx_width] + src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">valid_region</a>().<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>[idx_width];</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> valid_end_in_y = src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">valid_region</a>().<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>[idx_height] + src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">valid_region</a>().<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>[idx_height];</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="comment">// Initialize output&#39;s valid region start and end points</span></div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keyword">auto</span> valid_start_out_x = static_cast&lt;int&gt;(valid_start_in_x * scale_x);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keyword">auto</span> valid_start_out_y = static_cast&lt;int&gt;(valid_start_in_y * scale_y);</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keyword">auto</span> valid_end_out_x = std::min&lt;int&gt;(std::ceil(valid_end_in_x * scale_x), dst_shape[idx_width]);</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keyword">auto</span> valid_end_out_y = std::min&lt;int&gt;(std::ceil(valid_end_in_y * scale_y), dst_shape[idx_height]);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="comment">// Handle valid points in case of the bi-linear interpolation</span></div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <span class="keywordflow">if</span>(border_undefined)</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; {</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">switch</span>(interpolate_policy)</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; {</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">case</span> InterpolationPolicy::NEAREST_NEIGHBOR:</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; {</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="comment">// (start_out + sampling_point) &gt;= (start_in * scale)</span></div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="comment">// start_out = ceil((start_in * scale) - sampling_point)</span></div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; valid_start_out_x = std::ceil(valid_start_in_x * scale_x - sampling_point);</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; valid_start_out_y = std::ceil(valid_start_in_y * scale_y - sampling_point);</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="comment">// (end_out - 1 + sampling_point) &lt; (end_in * scale)</span></div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="comment">// end_out = ceil((end_in * scale) - sampling_point); // &lt;-- ceil(x - 1) strictly less</span></div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; valid_end_out_x = std::ceil(valid_end_in_x * scale_x - sampling_point);</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; valid_end_out_y = std::ceil(valid_end_in_y * scale_y - sampling_point);</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; }</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keywordflow">case</span> InterpolationPolicy::BILINEAR:</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; {</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="comment">// (start_out + sampling_point) &gt;= ((start_in + sampling_point) * scale)</span></div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="comment">// start_out = ceil(((start_in + sampling_point) * scale) - sampling_point)</span></div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; valid_start_out_x = std::ceil((valid_start_in_x + sampling_point) * scale_x - sampling_point);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; valid_start_out_y = std::ceil((valid_start_in_y + sampling_point) * scale_y - sampling_point);</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="comment">// (end_out - 1 + sampling_point) &lt;= ((end_in - 1 + sampling_point) * scale)</span></div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="comment">// end_out = floor(((end_in - 1 + sampling_point) * scale) - sampling_point + 1)</span></div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; valid_end_out_x = std::floor((valid_end_in_x - 1.f + sampling_point) * scale_x - sampling_point + 1.f);</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; valid_end_out_y = std::floor((valid_end_in_y - 1.f + sampling_point) * scale_y - sampling_point + 1.f);</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; }</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keywordflow">case</span> InterpolationPolicy::AREA:</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; {</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Invalid InterpolationPolicy&quot;</span>);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; }</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; }</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; }</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="comment">// Setup output valid region</span></div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <a class="code" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>{ <a class="code" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a>(), dst_shape, src_info.<a class="code" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">tensor_shape</a>().<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">num_dimensions</a>() };</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a982730e6f0da5f9490f59bc5f6bb3f27">set</a>(idx_width, std::max(0, valid_start_out_x));</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>.<a class="code" href="classarm__compute_1_1_dimensions.xhtml#a982730e6f0da5f9490f59bc5f6bb3f27">set</a>(idx_height, std::max(0, valid_start_out_y));</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>.<a class="code" href="classarm__compute_1_1_tensor_shape.xhtml#a9c54fb6cea3557692fe7c00c40bb40ad">set</a>(idx_width, std::min&lt;size_t&gt;(valid_end_out_x - valid_start_out_x, dst_shape[idx_width]));</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>.<a class="code" href="classarm__compute_1_1_tensor_shape.xhtml#a9c54fb6cea3557692fe7c00c40bb40ad">set</a>(idx_height, std::min&lt;size_t&gt;(valid_end_out_y - valid_start_out_y, dst_shape[idx_height]));</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
9333<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a1fcd64682b37ed3c2098d0094ce788d8"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">arm_compute::ValidRegion::shape</a></div><div class="ttdeci">TensorShape shape</div><div class="ttdoc">Shape of the valid region.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00301">Types.h:301</a></div></div>
9334<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a982730e6f0da5f9490f59bc5f6bb3f27"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a982730e6f0da5f9490f59bc5f6bb3f27">arm_compute::Dimensions::set</a></div><div class="ttdeci">void set(size_t dimension, T value)</div><div class="ttdoc">Accessor to set the value of one of the dimensions.</div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00074">Dimensions.h:74</a></div></div>
9335<div class="ttc" id="classarm__compute_1_1_i_tensor_info_xhtml_a74dfd07380a290c34fe7c8e065029b95"><div class="ttname"><a href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">arm_compute::ITensorInfo::valid_region</a></div><div class="ttdeci">virtual ValidRegion valid_region() const =0</div><div class="ttdoc">Valid region of the tensor.</div></div>
9336<div class="ttc" id="classarm__compute_1_1_i_tensor_info_xhtml_a7c66505457d00ece3aa4b34cab80757d"><div class="ttname"><a href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">arm_compute::ITensorInfo::tensor_shape</a></div><div class="ttdeci">virtual const TensorShape &amp; tensor_shape() const =0</div><div class="ttdoc">Size for each dimension of the tensor.</div></div>
9337<div class="ttc" id="classarm__compute_1_1_coordinates_xhtml"><div class="ttname"><a href="classarm__compute_1_1_coordinates.xhtml">arm_compute::Coordinates</a></div><div class="ttdoc">Coordinates of an item.</div><div class="ttdef"><b>Definition:</b> <a href="_coordinates_8h_source.xhtml#l00037">Coordinates.h:37</a></div></div>
9338<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a7819bcbbf45c2e7c1396a137dce54422"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">arm_compute::test::validation::valid_region</a></div><div class="ttdeci">const ValidRegion valid_region</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00109">AbsoluteDifference.cpp:109</a></div></div>
9339<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a80a5f2d6e3a697c9aad893a3b4242615"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a80a5f2d6e3a697c9aad893a3b4242615">arm_compute::Dimensions::num_dimensions</a></div><div class="ttdeci">unsigned int num_dimensions() const</div><div class="ttdoc">Returns the effective dimensionality of the tensor.</div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00122">Dimensions.h:122</a></div></div>
9340<div class="ttc" id="classarm__compute_1_1_tensor_shape_xhtml_a9c54fb6cea3557692fe7c00c40bb40ad"><div class="ttname"><a href="classarm__compute_1_1_tensor_shape.xhtml#a9c54fb6cea3557692fe7c00c40bb40ad">arm_compute::TensorShape::set</a></div><div class="ttdeci">TensorShape &amp; set(size_t dimension, size_t value, bool apply_dim_correction=true)</div><div class="ttdoc">Accessor to set the value of one of the dimensions.</div><div class="ttdef"><b>Definition:</b> <a href="_tensor_shape_8h_source.xhtml#l00078">TensorShape.h:78</a></div></div>
9341<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml">arm_compute::ValidRegion</a></div><div class="ttdoc">Container for valid region of a window.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00228">Types.h:228</a></div></div>
9342<div class="ttc" id="namespacearm__compute_xhtml_a46e938020a3ac8c926d0590b7fe957db"><div class="ttname"><a href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">arm_compute::get_data_layout_dimension_index</a></div><div class="ttdeci">size_t get_data_layout_dimension_index(const DataLayout data_layout, const DataLayoutDimension data_layout_dimension)</div><div class="ttdoc">Get the index of the given dimension.</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00326">Helpers.inl:326</a></div></div>
9343<div class="ttc" id="namespacearm__compute_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0"><div class="ttname"><a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a></div><div class="ttdeci">DataLayout</div><div class="ttdoc">[DataLayout enum definition]</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00111">Types.h:111</a></div></div>
9344<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a55a69b397082accd94221dd10b722cf7"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">arm_compute::ValidRegion::anchor</a></div><div class="ttdeci">Coordinates anchor</div><div class="ttdoc">Anchor for the start of the valid region.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00300">Types.h:300</a></div></div>
9345<div class="ttc" id="classarm__compute_1_1_i_tensor_info_xhtml_a367b5090ab432bc7de2c32369e087ab1"><div class="ttname"><a href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">arm_compute::ITensorInfo::data_layout</a></div><div class="ttdeci">virtual DataLayout data_layout() const =0</div><div class="ttdoc">Get the data layout of the tensor.</div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009346</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009347<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00300">ValidRegion::anchor</a>, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4">AREA</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65">BILINEAR</a>, <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e">CENTER</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">ITensorInfo::data_layout()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00326">get_data_layout_dimension_index()</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">HEIGHT</a>, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2">NEAREST_NEIGHBOR</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00078">TensorShape::set()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00301">ValidRegion::shape</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">ITensorInfo::tensor_shape()</a>, <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00109">arm_compute::test::validation::valid_region</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a74dfd07380a290c34fe7c8e065029b95">ITensorInfo::valid_region()</a>, and <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>.</p>
9348
9349<p class="reference">Referenced by <a class="el" href="_g_c_scale_kernel_8cpp_source.xhtml#l00047">GCScaleKernel::configure()</a>.</p>
9350
Anthony Barbier871448e2017-03-24 14:54:29 +00009351</div>
9352</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009353<a id="ab237a0a375cf382d52b61653248d3d4a"></a>
9354<h2 class="memtitle"><span class="permalink"><a href="#ab237a0a375cf382d52b61653248d3d4a">&#9670;&nbsp;</a></span>ceil_to_multiple()</h2>
9355
Anthony Barbier871448e2017-03-24 14:54:29 +00009356<div class="memitem">
9357<div class="memproto">
9358<table class="mlabels">
9359 <tr>
9360 <td class="mlabels-left">
9361 <table class="memname">
9362 <tr>
9363 <td class="memname">auto arm_compute::ceil_to_multiple </td>
9364 <td>(</td>
9365 <td class="paramtype">S&#160;</td>
9366 <td class="paramname"><em>value</em>, </td>
9367 </tr>
9368 <tr>
9369 <td class="paramkey"></td>
9370 <td></td>
9371 <td class="paramtype">T&#160;</td>
9372 <td class="paramname"><em>divisor</em>&#160;</td>
9373 </tr>
9374 <tr>
9375 <td></td>
9376 <td>)</td>
Jenkinsb3a371b2018-05-23 11:36:53 +01009377 <td></td><td> -&gt; decltype(((value + divisor - 1) / divisor) * divisor)
Anthony Barbier871448e2017-03-24 14:54:29 +00009378</td>
9379 </tr>
9380 </table>
9381 </td>
9382 <td class="mlabels-right">
9383<span class="mlabels"><span class="mlabel">inline</span></span> </td>
9384 </tr>
9385</table>
9386</div><div class="memdoc">
9387
9388<p>Computes the smallest number larger or equal to value that is a multiple of divisor. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +01009389<dl class="params"><dt>Parameters</dt><dd>
9390 <table class="params">
9391 <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Lower bound value </td></tr>
9392 <tr><td class="paramdir">[in]</td><td class="paramname">divisor</td><td>Value to compute multiple of.</td></tr>
9393 </table>
9394 </dd>
9395</dl>
9396<dl class="section return"><dt>Returns</dt><dd>the result. </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +00009397
Jenkinsb9abeae2018-11-22 11:58:08 +00009398<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00065">65</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009399<div class="fragment"><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;{</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(value &lt; 0 || divisor &lt;= 0);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#acac1575c0edd329ceb4a54d9fe8dcb08">DIV_CEIL</a>(value, divisor) * divisor;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
9400<div class="ttc" id="namespacearm__compute_xhtml_acac1575c0edd329ceb4a54d9fe8dcb08"><div class="ttname"><a href="namespacearm__compute.xhtml#acac1575c0edd329ceb4a54d9fe8dcb08">arm_compute::DIV_CEIL</a></div><div class="ttdeci">constexpr auto DIV_CEIL(S val, T m) -&gt; decltype((val+m - 1)/m)</div><div class="ttdoc">Calculate the rounded up quotient of val / m.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00052">Utils.h:52</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00009401</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009402<p class="reference">Referenced by <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00082">calculate_max_enlarged_window()</a>, <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00028">calculate_max_window()</a>, <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00131">calculate_max_window_horizontal()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00042">GCLogits1DMaxKernel::configure()</a>, <a class="el" href="_c_l_integral_image_kernel_8cpp_source.xhtml#l00039">CLIntegralImageHorKernel::configure()</a>, <a class="el" href="_c_l_element_wise_unary_layer_kernel_8cpp_source.xhtml#l00052">CLElementWiseUnaryLayerKernel::configure()</a>, <a class="el" href="_g_c_transpose_kernel_8cpp_source.xhtml#l00040">GCTransposeKernel::configure()</a>, <a class="el" href="_c_l_warp_affine_kernel_8cpp_source.xhtml#l00061">CLWarpAffineKernel::configure()</a>, <a class="el" href="_g_c_scale_kernel_8cpp_source.xhtml#l00047">GCScaleKernel::configure()</a>, <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00437">NELogits1DMaxKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00044">GCGEMMMatrixAccumulateBiasesKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_vector_multiply_kernel_8cpp_source.xhtml#l00083">CLGEMMMatrixVectorMultiplyKernel::configure()</a>, <a class="el" href="_c_l_memset_kernel_8cpp_source.xhtml#l00042">CLMemsetKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00062">CLMinMaxKernel::configure()</a>, <a class="el" href="_c_l_remap_kernel_8cpp_source.xhtml#l00050">CLRemapKernel::configure()</a>, <a class="el" href="_c_l_tile_kernel_8cpp_source.xhtml#l00068">CLTileKernel::configure()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00066">CLUpsampleLayerKernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_matrix_vector_multiply_kernel_8cpp_source.xhtml#l00257">NEGEMMMatrixVectorMultiplyKernel::configure()</a>, <a class="el" href="_g_c_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00051">GCDepthwiseConvolutionLayer3x3Kernel::configure()</a>, <a class="el" href="_c_l_width_concatenate2_tensors_kernel_8cpp_source.xhtml#l00097">CLWidthConcatenate2TensorsKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate4_tensors_kernel_8cpp_source.xhtml#l00115">CLWidthConcatenate4TensorsKernel::configure()</a>, <a class="el" href="_c_l_mean_std_dev_kernel_8cpp_source.xhtml#l00066">CLMeanStdDevKernel::configure()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00098">CLFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_n_e_remap_kernel_8cpp_source.xhtml#l00076">NERemapKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00107">GCLogits1DShiftExpSumKernel::configure()</a>, <a class="el" href="_n_e_mean_std_dev_kernel_8cpp_source.xhtml#l00097">NEMeanStdDevKernel::configure()</a>, <a class="el" href="_c_l_strided_slice_kernel_8cpp_source.xhtml#l00106">CLStridedSliceKernel::configure()</a>, <a class="el" href="_g_c_col2_im_kernel_8cpp_source.xhtml#l00044">GCCol2ImKernel::configure()</a>, <a class="el" href="_g_c_im2_col_kernel_8cpp_source.xhtml#l00067">GCIm2ColKernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_interleaved_wrapper_8cpp_source.xhtml#l00337">NEGEMMInterleavedWrapper::configure()</a>, <a class="el" href="_n_e_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00829">NEGEMMLowpMatrixMultiplyKernel::run()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00352">CLIm2ColKernel::run()</a>, <a class="el" href="_n_e_g_e_m_m_lowp_reduction_kernel_8cpp_source.xhtml#l00279">NEGEMMLowpMatrixBReductionKernel::run()</a>, and <a class="el" href="_window_8inl_source.xhtml#l00134">Window::scale()</a>.</p>
9403
Anthony Barbier871448e2017-03-24 14:54:29 +00009404</div>
9405</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009406<a id="afab149f8d8b0f6405303ee8056fa77d3"></a>
9407<h2 class="memtitle"><span class="permalink"><a href="#afab149f8d8b0f6405303ee8056fa77d3">&#9670;&nbsp;</a></span>channel_idx_from_format()</h2>
9408
Anthony Barbier06ea0482018-02-22 15:45:35 +00009409<div class="memitem">
9410<div class="memproto">
9411<table class="mlabels">
9412 <tr>
9413 <td class="mlabels-left">
9414 <table class="memname">
9415 <tr>
9416 <td class="memname">int arm_compute::channel_idx_from_format </td>
9417 <td>(</td>
9418 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td>
9419 <td class="paramname"><em>format</em>, </td>
9420 </tr>
9421 <tr>
9422 <td class="paramkey"></td>
9423 <td></td>
9424 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a>&#160;</td>
9425 <td class="paramname"><em>channel</em>&#160;</td>
9426 </tr>
9427 <tr>
9428 <td></td>
9429 <td>)</td>
9430 <td></td><td></td>
9431 </tr>
9432 </table>
9433 </td>
9434 <td class="mlabels-right">
9435<span class="mlabels"><span class="mlabel">inline</span></span> </td>
9436 </tr>
9437</table>
9438</div><div class="memdoc">
9439
9440<p>Return the channel index of a given channel given an input format. </p>
9441<dl class="params"><dt>Parameters</dt><dd>
9442 <table class="params">
9443 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>Input format </td></tr>
9444 <tr><td class="paramdir">[in]</td><td class="paramname">channel</td><td>Input channel</td></tr>
9445 </table>
9446 </dd>
9447</dl>
9448<dl class="section return"><dt>Returns</dt><dd>The channel index of the specific channel of the specific format </dd></dl>
9449
Jenkinsb9abeae2018-11-22 11:58:08 +00009450<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00313">313</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009451<div class="fragment"><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;{</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; {</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; {</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; {</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keywordflow">case</span> Channel::R:</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="keywordflow">case</span> Channel::G:</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <span class="keywordflow">case</span> Channel::B:</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; }</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; }</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; {</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; {</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="keywordflow">case</span> Channel::R:</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keywordflow">case</span> Channel::G:</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">case</span> Channel::B:</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="keywordflow">case</span> Channel::A:</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; }</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; }</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; {</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; {</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">Channel::U</a>:</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; }</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; }</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; {</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; {</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">Channel::U</a>:</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; }</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; }</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; {</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; {</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">Channel::U</a>:</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; }</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; }</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; {</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; {</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">Channel::U</a>:</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; }</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; }</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; {</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; {</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">Channel::U</a>:</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; }</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; }</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported format&quot;</span>);</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; }</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
9452<div class="ttc" id="namespacearm__compute_1_1utils_1_1cast_xhtml_a2ea3d1fc01a3a442900249ca182ffa5e"><div class="ttname"><a href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">arm_compute::utils::cast::U</a></div><div class="ttdeci">U</div><div class="ttdef"><b>Definition:</b> <a href="_saturate_cast_8h_source.xhtml#l00057">SaturateCast.h:57</a></div></div>
9453</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +00009454<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">G</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">R</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
Anthony Barbier06ea0482018-02-22 15:45:35 +00009455
Jenkinsb9abeae2018-11-22 11:58:08 +00009456<p class="reference">Referenced by <a class="el" href="reference_2_channel_extract_8cpp_source.xhtml#l00038">arm_compute::test::validation::reference::channel_extract()</a>, and <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00052">NEChannelExtractKernel::configure()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009457
9458</div>
9459</div>
9460<a id="ad4fb37558f66dd33689292aebf4f843c"></a>
9461<h2 class="memtitle"><span class="permalink"><a href="#ad4fb37558f66dd33689292aebf4f843c">&#9670;&nbsp;</a></span>check_value_range()</h2>
9462
9463<div class="memitem">
9464<div class="memproto">
9465 <table class="memname">
9466 <tr>
9467 <td class="memname">bool arm_compute::check_value_range </td>
9468 <td>(</td>
9469 <td class="paramtype">T&#160;</td>
9470 <td class="paramname"><em>val</em>, </td>
9471 </tr>
9472 <tr>
9473 <td class="paramkey"></td>
9474 <td></td>
9475 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td>
9476 <td class="paramname"><em>dt</em>, </td>
9477 </tr>
9478 <tr>
9479 <td class="paramkey"></td>
9480 <td></td>
9481 <td class="paramtype"><a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a>&#160;</td>
9482 <td class="paramname"><em>quant_info</em> = <code><a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a>()</code>&#160;</td>
9483 </tr>
9484 <tr>
9485 <td></td>
9486 <td>)</td>
9487 <td></td><td></td>
9488 </tr>
9489 </table>
9490</div><div class="memdoc">
9491
9492<p>Returns true if the value can be represented by the given data type. </p>
9493<dl class="params"><dt>Parameters</dt><dd>
9494 <table class="params">
9495 <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>value to be checked </td></tr>
9496 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td>data type that is checked </td></tr>
9497 <tr><td class="paramdir">[in]</td><td class="paramname">quant_info</td><td>quantization info if the data type is QASYMM8</td></tr>
9498 </table>
9499 </dd>
9500</dl>
9501<dl class="section return"><dt>Returns</dt><dd>true if the data type can hold the value. </dd></dl>
9502
9503<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l01068">1068</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
9504<div class="fragment"><div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160;{</div><div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160; <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160; {</div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160; <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160; <span class="keywordflow">return</span> ((static_cast&lt;uint8_t&gt;(val) == val) &amp;&amp; val &gt;= <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a73e352c61baaf9c1178da2d30105b04e">std::numeric_limits&lt;uint8_t&gt;::lowest</a>() &amp;&amp; val &lt;= std::numeric_limits&lt;uint8_t&gt;::max());</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160; <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160; {</div><div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160; <span class="keywordtype">double</span> min = static_cast&lt;double&gt;(quant_info.dequantize(0));</div><div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160; <span class="keywordtype">double</span> max = static_cast&lt;double&gt;(quant_info.dequantize(std::numeric_limits&lt;uint8_t&gt;::max()));</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160; <span class="keywordflow">return</span> ((<span class="keywordtype">double</span>)val &gt;= min &amp;&amp; (double)val &lt;= max);</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160; }</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160; <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160; <span class="keywordflow">return</span> ((static_cast&lt;int8_t&gt;(val) == val) &amp;&amp; val &gt;= <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a73e352c61baaf9c1178da2d30105b04e">std::numeric_limits&lt;int8_t&gt;::lowest</a>() &amp;&amp; val &lt;= std::numeric_limits&lt;int8_t&gt;::max());</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160; <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160; <span class="keywordflow">return</span> ((static_cast&lt;uint16_t&gt;(val) == val) &amp;&amp; val &gt;= <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a73e352c61baaf9c1178da2d30105b04e">std::numeric_limits&lt;uint16_t&gt;::lowest</a>() &amp;&amp; val &lt;= std::numeric_limits&lt;uint16_t&gt;::max());</div><div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160; <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160; <span class="keywordflow">return</span> ((static_cast&lt;int16_t&gt;(val) == val) &amp;&amp; val &gt;= <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a73e352c61baaf9c1178da2d30105b04e">std::numeric_limits&lt;int16_t&gt;::lowest</a>() &amp;&amp; val &lt;= std::numeric_limits&lt;int16_t&gt;::max());</div><div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160; <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160; <span class="keywordflow">return</span> ((static_cast&lt;uint32_t&gt;(val) == val) &amp;&amp; val &gt;= <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a73e352c61baaf9c1178da2d30105b04e">std::numeric_limits&lt;uint32_t&gt;::lowest</a>() &amp;&amp; val &lt;= std::numeric_limits&lt;uint32_t&gt;::max());</div><div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160; <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160; <span class="keywordflow">return</span> ((static_cast&lt;int32_t&gt;(val) == val) &amp;&amp; val &gt;= <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a73e352c61baaf9c1178da2d30105b04e">std::numeric_limits&lt;int32_t&gt;::lowest</a>() &amp;&amp; val &lt;= std::numeric_limits&lt;int32_t&gt;::max());</div><div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160; <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160; <span class="keywordflow">return</span> (val &gt;= <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a73e352c61baaf9c1178da2d30105b04e">std::numeric_limits&lt;uint64_t&gt;::lowest</a>() &amp;&amp; val &lt;= std::numeric_limits&lt;uint64_t&gt;::max());</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160; <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160; <span class="keywordflow">return</span> (val &gt;= <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a73e352c61baaf9c1178da2d30105b04e">std::numeric_limits&lt;int64_t&gt;::lowest</a>() &amp;&amp; val &lt;= std::numeric_limits&lt;int64_t&gt;::max());</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160; <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160; <span class="keywordflow">return</span> (val &gt;= <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a73e352c61baaf9c1178da2d30105b04e">std::numeric_limits&lt;half&gt;::lowest</a>() &amp;&amp; val &lt;= std::numeric_limits&lt;half&gt;::max());</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160; <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160; <span class="keywordflow">return</span> (val &gt;= <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a73e352c61baaf9c1178da2d30105b04e">std::numeric_limits&lt;float&gt;::lowest</a>() &amp;&amp; val &lt;= std::numeric_limits&lt;float&gt;::max());</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160; <span class="keywordflow">case</span> DataType::F64:</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160; <span class="keywordflow">return</span> (val &gt;= <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a73e352c61baaf9c1178da2d30105b04e">std::numeric_limits&lt;double&gt;::lowest</a>() &amp;&amp; val &lt;= std::numeric_limits&lt;double&gt;::max());</div><div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160; <span class="keywordflow">case</span> DataType::SIZET:</div><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160; <span class="keywordflow">return</span> ((static_cast&lt;size_t&gt;(val) == val) &amp;&amp; val &gt;= <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a73e352c61baaf9c1178da2d30105b04e">std::numeric_limits&lt;size_t&gt;::lowest</a>() &amp;&amp; val &lt;= std::numeric_limits&lt;size_t&gt;::max());</div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Data type not supported&quot;</span>);</div><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160; }</div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
9505<div class="ttc" id="namespacearm__compute_1_1support_1_1cpp11_xhtml_a73e352c61baaf9c1178da2d30105b04e"><div class="ttname"><a href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a73e352c61baaf9c1178da2d30105b04e">arm_compute::support::cpp11::lowest</a></div><div class="ttdeci">T lowest()</div><div class="ttdef"><b>Definition:</b> <a href="_toolchain_support_8h_source.xhtml#l00320">ToolchainSupport.h:320</a></div></div>
Anthony Barbier06ea0482018-02-22 15:45:35 +00009506</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009507<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">F64</a>, <a class="el" href="_toolchain_support_8h_source.xhtml#l00320">arm_compute::support::cpp11::lowest()</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">SIZET</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
9508
Anthony Barbier06ea0482018-02-22 15:45:35 +00009509</div>
9510</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009511<a id="a7f5aff064f09dd7f355aaaf7641bf7d3"></a>
9512<h2 class="memtitle"><span class="permalink"><a href="#a7f5aff064f09dd7f355aaaf7641bf7d3">&#9670;&nbsp;</a></span>cl_winograd_convolution_layer_supported()</h2>
9513
Jenkins52ba29e2018-08-29 15:32:11 +00009514<div class="memitem">
9515<div class="memproto">
9516 <table class="memname">
9517 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +00009518 <td class="memname">bool cl_winograd_convolution_layer_supported </td>
Jenkins52ba29e2018-08-29 15:32:11 +00009519 <td>(</td>
9520 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;&#160;</td>
9521 <td class="paramname"><em>output_tile</em>, </td>
9522 </tr>
9523 <tr>
9524 <td class="paramkey"></td>
9525 <td></td>
9526 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;&#160;</td>
9527 <td class="paramname"><em>kernel_size</em>, </td>
9528 </tr>
9529 <tr>
9530 <td class="paramkey"></td>
9531 <td></td>
9532 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a>&#160;</td>
9533 <td class="paramname"><em>data_layout</em>&#160;</td>
9534 </tr>
9535 <tr>
9536 <td></td>
9537 <td>)</td>
9538 <td></td><td></td>
9539 </tr>
9540 </table>
9541</div><div class="memdoc">
9542
9543<p>This function checks if the Winograd configuration (defined through the output tile, kernel size and the data layout) is supported on OpenCL. </p>
9544<dl class="params"><dt>Parameters</dt><dd>
9545 <table class="params">
9546 <tr><td class="paramdir">[in]</td><td class="paramname">output_tile</td><td>Output tile for the Winograd filtering algorithm </td></tr>
Jenkins514be652019-02-28 12:25:18 +00009547 <tr><td class="paramdir">[in]</td><td class="paramname">kernel_size</td><td><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> size for the Winograd filtering algorithm </td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +00009548 <tr><td class="paramdir">[in]</td><td class="paramname">data_layout</td><td>Data layout of the input tensor</td></tr>
9549 </table>
9550 </dd>
9551</dl>
9552<dl class="section return"><dt>Returns</dt><dd>True if the configuration is supported </dd></dl>
9553
Jenkins514be652019-02-28 12:25:18 +00009554<p class="definition">Definition at line <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00190">190</a> of file <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
9555<div class="fragment"><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;{</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(data_layout == DataLayout::UNKNOWN);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keyword">using</span> WinogradConfiguration = std::pair&lt;std::pair&lt;int, int&gt;, std::pair&lt;int, int&gt;&gt;;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; std::vector&lt;WinogradConfiguration&gt; winograd_configs_nchw =</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; {</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(1, 2), std::pair&lt;int, int&gt;(1, 3)),</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(1, 4), std::pair&lt;int, int&gt;(1, 3)),</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(2, 1), std::pair&lt;int, int&gt;(3, 1)),</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(4, 1), std::pair&lt;int, int&gt;(3, 1)),</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(2, 2), std::pair&lt;int, int&gt;(3, 3)),</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(4, 4), std::pair&lt;int, int&gt;(3, 3)),</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(4, 4), std::pair&lt;int, int&gt;(5, 5)),</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(4, 1), std::pair&lt;int, int&gt;(5, 1)),</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(1, 4), std::pair&lt;int, int&gt;(1, 5))</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; };</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; std::vector&lt;WinogradConfiguration&gt; winograd_configs_nhwc =</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; {</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(2, 2), std::pair&lt;int, int&gt;(3, 3)),</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(1, 4), std::pair&lt;int, int&gt;(1, 3)),</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(4, 1), std::pair&lt;int, int&gt;(3, 1)),</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(4, 4), std::pair&lt;int, int&gt;(3, 3)),</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(4, 4), std::pair&lt;int, int&gt;(5, 5)),</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(4, 1), std::pair&lt;int, int&gt;(5, 1)),</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; WinogradConfiguration(std::pair&lt;int, int&gt;(1, 4), std::pair&lt;int, int&gt;(1, 5))</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; };</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keyword">auto</span> p = std::make_pair(std::pair&lt;int, int&gt;(output_tile.width, output_tile.height),</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; std::pair&lt;int, int&gt;(kernel_size.width, kernel_size.height));</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="comment">// Return true if supported</span></div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="keywordflow">if</span>(data_layout == DataLayout::NCHW)</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; {</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">return</span> (std::find(winograd_configs_nchw.begin(), winograd_configs_nchw.end(), p) != winograd_configs_nchw.end());</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; }</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; {</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">return</span> (std::find(winograd_configs_nhwc.begin(), winograd_configs_nhwc.end(), p) != winograd_configs_nhwc.end());</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; }</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009556</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009557<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_size2_d_8h_source.xhtml#l00093">Size2D::height</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, and <a class="el" href="_size2_d_8h_source.xhtml#l00092">Size2D::width</a>.</p>
9558
Jenkins52ba29e2018-08-29 15:32:11 +00009559</div>
9560</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009561<a id="af2be1325decaa34a8a1199af177148c6"></a>
9562<h2 class="memtitle"><span class="permalink"><a href="#af2be1325decaa34a8a1199af177148c6">&#9670;&nbsp;</a></span>colorconvert_iyuv_to_nv12()</h2>
9563
Anthony Barbier871448e2017-03-24 14:54:29 +00009564<div class="memitem">
9565<div class="memproto">
9566 <table class="memname">
9567 <tr>
9568 <td class="memname">void arm_compute::colorconvert_iyuv_to_nv12 </td>
9569 <td>(</td>
9570 <td class="paramtype">const void *__restrict&#160;</td>
9571 <td class="paramname"><em>input</em>, </td>
9572 </tr>
9573 <tr>
9574 <td class="paramkey"></td>
9575 <td></td>
9576 <td class="paramtype">void *__restrict&#160;</td>
9577 <td class="paramname"><em>output</em>, </td>
9578 </tr>
9579 <tr>
9580 <td class="paramkey"></td>
9581 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009582 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +00009583 <td class="paramname"><em>win</em>&#160;</td>
9584 </tr>
9585 <tr>
9586 <td></td>
9587 <td>)</td>
9588 <td></td><td></td>
9589 </tr>
9590 </table>
9591</div><div class="memdoc">
9592
Jenkinsb3a371b2018-05-23 11:36:53 +01009593<p>Convert IYUV to NV12. </p>
9594<dl class="params"><dt>Parameters</dt><dd>
9595 <table class="params">
9596 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input IYUV data buffer. </td></tr>
9597 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output NV12 buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +00009598 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01009599 </table>
9600 </dd>
9601</dl>
Anthony Barbier871448e2017-03-24 14:54:29 +00009602
Jenkinsb9abeae2018-11-22 11:58:08 +00009603<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00665">665</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009604<div class="fragment"><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160;{</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; win.validate();</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160;</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IMultiImage *__restrict&gt;(input);</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IMultiImage *__restrict&gt;(output);</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160;</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; Window win_uv(win);</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; win_uv.validate();</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160;</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; Iterator in_u(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; Iterator in_v(input_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; Iterator out_uv(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160;</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; {</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; uint8x16x2_t ta_uv;</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; ta_uv.val[0] = vld1q_u8(in_u.ptr());</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; ta_uv.val[1] = vld1q_u8(in_v.ptr());</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; <span class="comment">//ta_uv.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; <span class="comment">//ta_uv.val[1] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160;</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; vst2q_u8(out_y.ptr(), ta_y_top);</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), ta_y_bottom);</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; vst2q_u8(out_uv.ptr(), ta_uv);</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; },</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; in_y, in_u, in_v, out_y, out_uv);</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
9605<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
9606</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +00009607<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
9608
9609<p class="reference">Referenced by <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00426">NEColorConvertKernel::configure()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009610
Anthony Barbier871448e2017-03-24 14:54:29 +00009611</div>
9612</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009613<a id="a6e42fac1baa264b033ac430b63ebd145"></a>
9614<h2 class="memtitle"><span class="permalink"><a href="#a6e42fac1baa264b033ac430b63ebd145">&#9670;&nbsp;</a></span>colorconvert_iyuv_to_rgb()</h2>
9615
Anthony Barbier871448e2017-03-24 14:54:29 +00009616<div class="memitem">
9617<div class="memproto">
9618 <table class="memname">
9619 <tr>
9620 <td class="memname">void arm_compute::colorconvert_iyuv_to_rgb </td>
9621 <td>(</td>
9622 <td class="paramtype">const void *__restrict&#160;</td>
9623 <td class="paramname"><em>input</em>, </td>
9624 </tr>
9625 <tr>
9626 <td class="paramkey"></td>
9627 <td></td>
9628 <td class="paramtype">void *__restrict&#160;</td>
9629 <td class="paramname"><em>output</em>, </td>
9630 </tr>
9631 <tr>
9632 <td class="paramkey"></td>
9633 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009634 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +00009635 <td class="paramname"><em>win</em>&#160;</td>
9636 </tr>
9637 <tr>
9638 <td></td>
9639 <td>)</td>
9640 <td></td><td></td>
9641 </tr>
9642 </table>
9643</div><div class="memdoc">
9644
Jenkinsb3a371b2018-05-23 11:36:53 +01009645<p>Convert IYUV to RGB. </p>
9646<dl class="params"><dt>Parameters</dt><dd>
9647 <table class="params">
9648 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input IYUV data buffer. </td></tr>
9649 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output RGB buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +00009650 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01009651 </table>
9652 </dd>
9653</dl>
Anthony Barbier871448e2017-03-24 14:54:29 +00009654
Jenkinsb9abeae2018-11-22 11:58:08 +00009655<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00547">547</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009656<div class="fragment"><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; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; win.validate();</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="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IMultiImage *__restrict&gt;(input);</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IImage *__restrict&gt;(output);</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; constexpr <span class="keyword">auto</span> element_size = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a> ? 32 : 24;</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> out_stride = output_ptr-&gt;info()-&gt;strides_in_bytes().y();</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; Window win_uv(win);</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; win_uv.validate();</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; Iterator in_u(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; Iterator in_v(input_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; Iterator out(output_ptr, win);</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; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; {</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_u = vld1q_u8(in_u.ptr());</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_v = vld1q_u8(in_v.ptr());</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; <span class="comment">//ta_u.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; <span class="comment">//ta_v.val[0] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160;</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <span class="comment">// Convert the uint8x16x4_t to float32x4x4_t</span></div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; float32x4x4_t yvec_top = convert_uint8x16_to_float32x4x4(ta_y_top.val[0]);</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; float32x4x4_t yyvec_top = convert_uint8x16_to_float32x4x4(ta_y_top.val[1]);</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; float32x4x4_t yvec_bottom = convert_uint8x16_to_float32x4x4(ta_y_bottom.val[0]);</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; float32x4x4_t yyvec_bottom = convert_uint8x16_to_float32x4x4(ta_y_bottom.val[1]);</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; float32x4x4_t uvec = convert_uint8x16_to_float32x4x4(ta_u);</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; float32x4x4_t vvec = convert_uint8x16_to_float32x4x4(ta_v);</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160;</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[0], uvec.val[0], yyvec_top.val[0], vvec.val[0], out.ptr() + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[1], uvec.val[1], yyvec_top.val[1], vvec.val[1], out.ptr() + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[2], uvec.val[2], yyvec_top.val[2], vvec.val[2], out.ptr() + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[3], uvec.val[3], yyvec_top.val[3], vvec.val[3], out.ptr() + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160;</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[0], uvec.val[0], yyvec_bottom.val[0], vvec.val[0], out.ptr() + out_stride + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[1], uvec.val[1], yyvec_bottom.val[1], vvec.val[1], out.ptr() + out_stride + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[2], uvec.val[2], yyvec_bottom.val[2], vvec.val[2], out.ptr() + out_stride + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[3], uvec.val[3], yyvec_bottom.val[3], vvec.val[3], out.ptr() + out_stride + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; },</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; in_y, in_u, in_v, out);</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009657<div class="ttc" id="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail_xhtml_a2a36a93e164b484404fe908cefd6099a"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation</a></div><div class="ttdeci">void yuyv_to_rgb_calculation(const SimpleTensor&lt; T &gt; yvec, const SimpleTensor&lt; T &gt; vvec, const SimpleTensor&lt; T &gt; yyvec, const SimpleTensor&lt; T &gt; uvec, SimpleTensor&lt; T &gt; &amp;dst)</div><div class="ttdef"><b>Definition:</b> <a href="_color_convert_helper_8h_source.xhtml#l00159">ColorConvertHelper.h:159</a></div></div>
Jenkins514be652019-02-28 12:25:18 +00009658<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a3161c2c93c655dd30953372064ec627b"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">arm_compute::test::validation::alpha</a></div><div class="ttdeci">const float alpha</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_accumulate_8cpp_source.xhtml#l00103">Accumulate.cpp:103</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009659<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00009660</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009661<p class="reference">References <a class="el" href="_n_e_o_n_2_accumulate_8cpp_source.xhtml#l00103">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>, and <a class="el" href="_color_convert_helper_8h_source.xhtml#l00159">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation()</a>.</p>
9662
Anthony Barbier871448e2017-03-24 14:54:29 +00009663</div>
9664</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009665<a id="a08e9d88293a5cef787bb324c2dc0a6bf"></a>
9666<h2 class="memtitle"><span class="permalink"><a href="#a08e9d88293a5cef787bb324c2dc0a6bf">&#9670;&nbsp;</a></span>colorconvert_iyuv_to_yuv4()</h2>
9667
Anthony Barbier871448e2017-03-24 14:54:29 +00009668<div class="memitem">
9669<div class="memproto">
9670 <table class="memname">
9671 <tr>
9672 <td class="memname">void arm_compute::colorconvert_iyuv_to_yuv4 </td>
9673 <td>(</td>
9674 <td class="paramtype">const void *__restrict&#160;</td>
9675 <td class="paramname"><em>input</em>, </td>
9676 </tr>
9677 <tr>
9678 <td class="paramkey"></td>
9679 <td></td>
9680 <td class="paramtype">void *__restrict&#160;</td>
9681 <td class="paramname"><em>output</em>, </td>
9682 </tr>
9683 <tr>
9684 <td class="paramkey"></td>
9685 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009686 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +00009687 <td class="paramname"><em>win</em>&#160;</td>
9688 </tr>
9689 <tr>
9690 <td></td>
9691 <td>)</td>
9692 <td></td><td></td>
9693 </tr>
9694 </table>
9695</div><div class="memdoc">
9696
Jenkinsb3a371b2018-05-23 11:36:53 +01009697<p>Convert IYUV to YUV4. </p>
9698<dl class="params"><dt>Parameters</dt><dd>
9699 <table class="params">
9700 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input IYUV data buffer. </td></tr>
9701 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output YUV4 buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +00009702 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01009703 </table>
9704 </dd>
9705</dl>
Anthony Barbier871448e2017-03-24 14:54:29 +00009706
Jenkinsb9abeae2018-11-22 11:58:08 +00009707<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00880">880</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009708<div class="fragment"><div class="line"><a name="l00881"></a><span class="lineno"> 881</span>&#160;{</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160; win.validate();</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160;</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IMultiImage *__restrict&gt;(input);</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IMultiImage *__restrict&gt;(output);</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160;</div><div class="line"><a name="l00889"></a><span class="lineno"> 889</span>&#160; <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00890"></a><span class="lineno"> 890</span>&#160; Window win_uv(win);</div><div class="line"><a name="l00891"></a><span class="lineno"> 891</span>&#160; win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00892"></a><span class="lineno"> 892</span>&#160; win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160; win_uv.validate();</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160;</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160; Iterator in_u(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160; Iterator in_v(input_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160; Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; Iterator out_u(output_ptr-&gt;plane(1), win);</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160; Iterator out_v(output_ptr-&gt;plane(2), win);</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160;</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160; {</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_u = vld1q_u8(in_u.ptr());</div><div class="line"><a name="l00907"></a><span class="lineno"> 907</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_v = vld1q_u8(in_v.ptr());</div><div class="line"><a name="l00908"></a><span class="lineno"> 908</span>&#160; <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span>&#160; <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160; <span class="comment">//ta_u = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160; <span class="comment">//ta_v = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160;</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160; vst2q_u8(out_y.ptr(), ta_y_top);</div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160; vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), ta_y_bottom);</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160;</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160; uint8x16x2_t uvec;</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; uvec.val[0] = ta_u;</div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>&#160; uvec.val[1] = ta_u;</div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>&#160; vst2q_u8(out_u.ptr(), uvec);</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; vst2q_u8(out_u.ptr() + output_ptr-&gt;plane(1)-&gt;info()-&gt;strides_in_bytes().y(), uvec);</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160;</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; uint8x16x2_t vvec;</div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160; vvec.val[0] = ta_v;</div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; vvec.val[1] = ta_v;</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; vst2q_u8(out_v.ptr(), vvec);</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; vst2q_u8(out_v.ptr() + output_ptr-&gt;plane(2)-&gt;info()-&gt;strides_in_bytes().y(), vvec);</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; },</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; in_y, in_u, in_v, out_y, out_u, out_v);</div><div class="line"><a name="l00929"></a><span class="lineno"> 929</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
9709<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
9710</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +00009711<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
9712
9713<p class="reference">Referenced by <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00426">NEColorConvertKernel::configure()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009714
Anthony Barbier871448e2017-03-24 14:54:29 +00009715</div>
9716</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009717<a id="a199d36780fbb4a70168f290480673650"></a>
9718<h2 class="memtitle"><span class="permalink"><a href="#a199d36780fbb4a70168f290480673650">&#9670;&nbsp;</a></span>colorconvert_nv12_to_iyuv()</h2>
9719
Anthony Barbier871448e2017-03-24 14:54:29 +00009720<div class="memitem">
9721<div class="memproto">
9722 <table class="memname">
9723 <tr>
9724 <td class="memname">void arm_compute::colorconvert_nv12_to_iyuv </td>
9725 <td>(</td>
9726 <td class="paramtype">const void *__restrict&#160;</td>
9727 <td class="paramname"><em>input</em>, </td>
9728 </tr>
9729 <tr>
9730 <td class="paramkey"></td>
9731 <td></td>
9732 <td class="paramtype">void *__restrict&#160;</td>
9733 <td class="paramname"><em>output</em>, </td>
9734 </tr>
9735 <tr>
9736 <td class="paramkey"></td>
9737 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009738 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +00009739 <td class="paramname"><em>win</em>&#160;</td>
9740 </tr>
9741 <tr>
9742 <td></td>
9743 <td>)</td>
9744 <td></td><td></td>
9745 </tr>
9746 </table>
9747</div><div class="memdoc">
9748
Jenkinsb3a371b2018-05-23 11:36:53 +01009749<p>Convert NV12 to IYUV. </p>
9750<dl class="params"><dt>Parameters</dt><dd>
9751 <table class="params">
9752 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input NV12 data buffer. </td></tr>
9753 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output IYUV buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +00009754 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01009755 </table>
9756 </dd>
9757</dl>
Anthony Barbier871448e2017-03-24 14:54:29 +00009758
Jenkinsb9abeae2018-11-22 11:58:08 +00009759<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00713">713</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009760<div class="fragment"><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160;{</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; win.validate();</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160;</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IMultiImage *__restrict&gt;(input);</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IMultiImage *__restrict&gt;(output);</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; constexpr <span class="keyword">auto</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a> = uv ? 0 : 1;</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160;</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; Window win_uv(win);</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; win_uv.validate();</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160;</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; Iterator in_uv(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; Iterator out_u(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; Iterator out_v(output_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160;</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; {</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_uv = vld2q_u8(in_uv.ptr());</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; <span class="comment">//ta_uv.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; <span class="comment">//ta_uv.val[1] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160;</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; vst2q_u8(out_y.ptr(), ta_y_top);</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), ta_y_bottom);</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; vst1q_u8(out_u.ptr(), ta_uv.val[0 + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>]);</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; vst1q_u8(out_v.ptr(), ta_uv.val[1 - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>]);</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; },</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; in_y, in_uv, out_y, out_u, out_v);</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a979a54caef6e77ce0259e427136847e8"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">arm_compute::test::validation::shift</a></div><div class="ttdeci">shift</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_depth_convert_layer_8cpp_source.xhtml#l00155">DepthConvertLayer.cpp:155</a></div></div>
9761<div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009762<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00009763</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009764<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_c_l_2_depth_convert_layer_8cpp_source.xhtml#l00155">arm_compute::test::validation::shift</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
9765
Anthony Barbier871448e2017-03-24 14:54:29 +00009766</div>
9767</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009768<a id="ae6a44e412bccc0705a720708b0692218"></a>
9769<h2 class="memtitle"><span class="permalink"><a href="#ae6a44e412bccc0705a720708b0692218">&#9670;&nbsp;</a></span>colorconvert_nv12_to_rgb()</h2>
9770
Anthony Barbier871448e2017-03-24 14:54:29 +00009771<div class="memitem">
9772<div class="memproto">
9773 <table class="memname">
9774 <tr>
9775 <td class="memname">void arm_compute::colorconvert_nv12_to_rgb </td>
9776 <td>(</td>
9777 <td class="paramtype">const void *__restrict&#160;</td>
9778 <td class="paramname"><em>input</em>, </td>
9779 </tr>
9780 <tr>
9781 <td class="paramkey"></td>
9782 <td></td>
9783 <td class="paramtype">void *__restrict&#160;</td>
9784 <td class="paramname"><em>output</em>, </td>
9785 </tr>
9786 <tr>
9787 <td class="paramkey"></td>
9788 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009789 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +00009790 <td class="paramname"><em>win</em>&#160;</td>
9791 </tr>
9792 <tr>
9793 <td></td>
9794 <td>)</td>
9795 <td></td><td></td>
9796 </tr>
9797 </table>
9798</div><div class="memdoc">
9799
Jenkinsb3a371b2018-05-23 11:36:53 +01009800<p>Convert NV12 to RGB. </p>
9801<dl class="params"><dt>Parameters</dt><dd>
9802 <table class="params">
9803 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input NV12 data buffer. </td></tr>
9804 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output RGB buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +00009805 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01009806 </table>
9807 </dd>
9808</dl>
Anthony Barbier871448e2017-03-24 14:54:29 +00009809
Jenkinsb9abeae2018-11-22 11:58:08 +00009810<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00485">485</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009811<div class="fragment"><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;{</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; win.validate();</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160;</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IMultiImage *__restrict&gt;(input);</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IImage *__restrict&gt;(output);</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; constexpr <span class="keyword">auto</span> element_size = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a> ? 32 : 24;</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> out_stride = output_ptr-&gt;info()-&gt;strides_in_bytes().y();</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; constexpr <span class="keyword">auto</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a> = uv ? 0 : 1;</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160;</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; Window win_uv(win);</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win.x().step() / 2));</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; win_uv.validate();</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160;</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; Iterator in_uv(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; Iterator out(output_ptr, win);</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160;</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; {</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_uv = vld2q_u8(in_uv.ptr());</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; <span class="comment">//ta_uv.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; <span class="comment">//ta_uv.val[1] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160;</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; <span class="comment">// Convert the uint8x16x4_t to float32x4x4_t</span></div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; float32x4x4_t yvec_top = convert_uint8x16_to_float32x4x4(ta_y_top.val[0]);</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; float32x4x4_t yyvec_top = convert_uint8x16_to_float32x4x4(ta_y_top.val[1]);</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; float32x4x4_t yvec_bottom = convert_uint8x16_to_float32x4x4(ta_y_bottom.val[0]);</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; float32x4x4_t yyvec_bottom = convert_uint8x16_to_float32x4x4(ta_y_bottom.val[1]);</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; float32x4x4_t uvec = convert_uint8x16_to_float32x4x4(ta_uv.val[0 + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>]);</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; float32x4x4_t vvec = convert_uint8x16_to_float32x4x4(ta_uv.val[1 - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>]);</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; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[0], uvec.val[0], yyvec_top.val[0], vvec.val[0], out.ptr() + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[1], uvec.val[1], yyvec_top.val[1], vvec.val[1], out.ptr() + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[2], uvec.val[2], yyvec_top.val[2], vvec.val[2], out.ptr() + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_top.val[3], uvec.val[3], yyvec_top.val[3], vvec.val[3], out.ptr() + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160;</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[0], uvec.val[0], yyvec_bottom.val[0], vvec.val[0], out.ptr() + out_stride + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[1], uvec.val[1], yyvec_bottom.val[1], vvec.val[1], out.ptr() + out_stride + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[2], uvec.val[2], yyvec_bottom.val[2], vvec.val[2], out.ptr() + out_stride + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec_bottom.val[3], uvec.val[3], yyvec_bottom.val[3], vvec.val[3], out.ptr() + out_stride + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; },</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; in_y, in_uv, out);</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a979a54caef6e77ce0259e427136847e8"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">arm_compute::test::validation::shift</a></div><div class="ttdeci">shift</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_depth_convert_layer_8cpp_source.xhtml#l00155">DepthConvertLayer.cpp:155</a></div></div>
9812<div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009813<div class="ttc" id="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail_xhtml_a2a36a93e164b484404fe908cefd6099a"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation</a></div><div class="ttdeci">void yuyv_to_rgb_calculation(const SimpleTensor&lt; T &gt; yvec, const SimpleTensor&lt; T &gt; vvec, const SimpleTensor&lt; T &gt; yyvec, const SimpleTensor&lt; T &gt; uvec, SimpleTensor&lt; T &gt; &amp;dst)</div><div class="ttdef"><b>Definition:</b> <a href="_color_convert_helper_8h_source.xhtml#l00159">ColorConvertHelper.h:159</a></div></div>
Jenkins514be652019-02-28 12:25:18 +00009814<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a3161c2c93c655dd30953372064ec627b"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">arm_compute::test::validation::alpha</a></div><div class="ttdeci">const float alpha</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_accumulate_8cpp_source.xhtml#l00103">Accumulate.cpp:103</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009815<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00009816</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009817<p class="reference">References <a class="el" href="_n_e_o_n_2_accumulate_8cpp_source.xhtml#l00103">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_c_l_2_depth_convert_layer_8cpp_source.xhtml#l00155">arm_compute::test::validation::shift</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>, and <a class="el" href="_color_convert_helper_8h_source.xhtml#l00159">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation()</a>.</p>
9818
Anthony Barbier871448e2017-03-24 14:54:29 +00009819</div>
9820</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009821<a id="a587a54c85dcc72838b8f4b5575ebafe4"></a>
9822<h2 class="memtitle"><span class="permalink"><a href="#a587a54c85dcc72838b8f4b5575ebafe4">&#9670;&nbsp;</a></span>colorconvert_nv12_to_yuv4()</h2>
9823
Anthony Barbier871448e2017-03-24 14:54:29 +00009824<div class="memitem">
9825<div class="memproto">
9826 <table class="memname">
9827 <tr>
9828 <td class="memname">void arm_compute::colorconvert_nv12_to_yuv4 </td>
9829 <td>(</td>
9830 <td class="paramtype">const void *__restrict&#160;</td>
9831 <td class="paramname"><em>input</em>, </td>
9832 </tr>
9833 <tr>
9834 <td class="paramkey"></td>
9835 <td></td>
9836 <td class="paramtype">void *__restrict&#160;</td>
9837 <td class="paramname"><em>output</em>, </td>
9838 </tr>
9839 <tr>
9840 <td class="paramkey"></td>
9841 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009842 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +00009843 <td class="paramname"><em>win</em>&#160;</td>
9844 </tr>
9845 <tr>
9846 <td></td>
9847 <td>)</td>
9848 <td></td><td></td>
9849 </tr>
9850 </table>
9851</div><div class="memdoc">
9852
Jenkinsb3a371b2018-05-23 11:36:53 +01009853<p>Convert NV12 to YUV4. </p>
9854<dl class="params"><dt>Parameters</dt><dd>
9855 <table class="params">
9856 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input NV12 data buffer. </td></tr>
9857 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output YUV4 buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +00009858 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01009859 </table>
9860 </dd>
9861</dl>
Anthony Barbier871448e2017-03-24 14:54:29 +00009862
Jenkinsb9abeae2018-11-22 11:58:08 +00009863<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00822">822</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009864<div class="fragment"><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160;{</div><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; win.validate();</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160;</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IMultiImage *__restrict&gt;(input);</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IMultiImage *__restrict&gt;(output);</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160;</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; constexpr <span class="keyword">auto</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a> = uv ? 0 : 1;</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160;</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; Window win_uv(win);</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160; win_uv.validate();</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160;</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; Iterator in_y(input_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; Iterator in_uv(input_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; Iterator out_u(output_ptr-&gt;plane(1), win);</div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; Iterator out_v(output_ptr-&gt;plane(2), win);</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160;</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160; {</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_top = vld2q_u8(in_y.ptr());</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_uv = vld2q_u8(in_uv.ptr());</div><div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160; <span class="comment">//ta_y.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00851"></a><span class="lineno"> 851</span>&#160; <span class="comment">//ta_y.val[1] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160; <span class="comment">//ta_uv.val[0] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; <span class="comment">//ta_uv.val[1] = V0 V2 V4 V6 ...</span></div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160;</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; vst2q_u8(out_y.ptr(), ta_y_top);</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160; vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), ta_y_bottom);</div><div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160;</div><div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160; uint8x16x2_t uvec;</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; uvec.val[0] = ta_uv.val[0 + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>];</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160; uvec.val[1] = ta_uv.val[0 + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>];</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; vst2q_u8(out_u.ptr(), uvec);</div><div class="line"><a name="l00862"></a><span class="lineno"> 862</span>&#160; vst2q_u8(out_u.ptr() + output_ptr-&gt;plane(1)-&gt;info()-&gt;strides_in_bytes().y(), uvec);</div><div class="line"><a name="l00863"></a><span class="lineno"> 863</span>&#160;</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160; uint8x16x2_t vvec;</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160; vvec.val[0] = ta_uv.val[1 - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>];</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; vvec.val[1] = ta_uv.val[1 - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>];</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160; vst2q_u8(out_v.ptr(), vvec);</div><div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160; vst2q_u8(out_v.ptr() + output_ptr-&gt;plane(2)-&gt;info()-&gt;strides_in_bytes().y(), vvec);</div><div class="line"><a name="l00869"></a><span class="lineno"> 869</span>&#160; },</div><div class="line"><a name="l00870"></a><span class="lineno"> 870</span>&#160; in_y, in_uv, out_y, out_u, out_v);</div><div class="line"><a name="l00871"></a><span class="lineno"> 871</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a979a54caef6e77ce0259e427136847e8"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">arm_compute::test::validation::shift</a></div><div class="ttdeci">shift</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_depth_convert_layer_8cpp_source.xhtml#l00155">DepthConvertLayer.cpp:155</a></div></div>
9865<div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009866<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00009867</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009868<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_c_l_2_depth_convert_layer_8cpp_source.xhtml#l00155">arm_compute::test::validation::shift</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
9869
Anthony Barbier871448e2017-03-24 14:54:29 +00009870</div>
9871</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009872<a id="a49b7a8e217ba7aad821fdeaab86bad53"></a>
9873<h2 class="memtitle"><span class="permalink"><a href="#a49b7a8e217ba7aad821fdeaab86bad53">&#9670;&nbsp;</a></span>colorconvert_rgb_to_iyuv()</h2>
9874
Anthony Barbier871448e2017-03-24 14:54:29 +00009875<div class="memitem">
9876<div class="memproto">
9877 <table class="memname">
9878 <tr>
9879 <td class="memname">void arm_compute::colorconvert_rgb_to_iyuv </td>
9880 <td>(</td>
9881 <td class="paramtype">const void *__restrict&#160;</td>
9882 <td class="paramname"><em>input</em>, </td>
9883 </tr>
9884 <tr>
9885 <td class="paramkey"></td>
9886 <td></td>
9887 <td class="paramtype">void *__restrict&#160;</td>
9888 <td class="paramname"><em>output</em>, </td>
9889 </tr>
9890 <tr>
9891 <td class="paramkey"></td>
9892 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009893 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +00009894 <td class="paramname"><em>win</em>&#160;</td>
9895 </tr>
9896 <tr>
9897 <td></td>
9898 <td>)</td>
9899 <td></td><td></td>
9900 </tr>
9901 </table>
9902</div><div class="memdoc">
9903
Jenkinsb3a371b2018-05-23 11:36:53 +01009904<p>Convert RGB to IYUV. </p>
9905<dl class="params"><dt>Parameters</dt><dd>
9906 <table class="params">
9907 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input RGB data buffer. </td></tr>
9908 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output IYUV buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +00009909 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01009910 </table>
9911 </dd>
9912</dl>
Anthony Barbier871448e2017-03-24 14:54:29 +00009913
Jenkinsb9abeae2018-11-22 11:58:08 +00009914<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00982">982</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009915<div class="fragment"><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160;{</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>&#160; win.validate();</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</span>&#160;</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IImage *__restrict&gt;(input);</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IMultiImage *__restrict&gt;(output);</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160;</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160; <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00992"></a><span class="lineno"> 992</span>&#160; Window win_uv(win);</div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>&#160; win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160; win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160; win_uv.validate();</div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>&#160;</div><div class="line"><a name="l00997"></a><span class="lineno"> 997</span>&#160; Iterator in(input_ptr, win);</div><div class="line"><a name="l00998"></a><span class="lineno"> 998</span>&#160; Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160; Iterator out_u(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160; Iterator out_v(output_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160; {</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb_top = load_rgb(in.ptr(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb_bottom = load_rgb(in.ptr() + input_ptr-&gt;info()-&gt;strides_in_bytes().y(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160; <span class="comment">//ta_rgb.val[0] = R0 R1 R2 R3 ...</span></div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160; <span class="comment">//ta_rgb.val[1] = G0 G1 G2 G3 ...</span></div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160; <span class="comment">//ta_rgb.val[2] = B0 B1 B2 B3 ...</span></div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160;</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160; store_rgb_to_iyuv(ta_rgb_top.val[0], ta_rgb_top.val[1], ta_rgb_top.val[2],</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160; ta_rgb_bottom.val[0], ta_rgb_bottom.val[1], ta_rgb_bottom.val[2],</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160; out_y.ptr(), out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(),</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160; out_u.ptr(), out_v.ptr());</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160; },</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160; in, out_y, out_u, out_v);</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
9916<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a3161c2c93c655dd30953372064ec627b"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">arm_compute::test::validation::alpha</a></div><div class="ttdeci">const float alpha</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_accumulate_8cpp_source.xhtml#l00103">Accumulate.cpp:103</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009917<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00009918</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009919<p class="reference">References <a class="el" href="_n_e_o_n_2_accumulate_8cpp_source.xhtml#l00103">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
9920
Anthony Barbier871448e2017-03-24 14:54:29 +00009921</div>
9922</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009923<a id="a14fd899b732509e245976b9967b8931d"></a>
9924<h2 class="memtitle"><span class="permalink"><a href="#a14fd899b732509e245976b9967b8931d">&#9670;&nbsp;</a></span>colorconvert_rgb_to_nv12()</h2>
9925
Anthony Barbier871448e2017-03-24 14:54:29 +00009926<div class="memitem">
9927<div class="memproto">
9928 <table class="memname">
9929 <tr>
9930 <td class="memname">void arm_compute::colorconvert_rgb_to_nv12 </td>
9931 <td>(</td>
9932 <td class="paramtype">const void *__restrict&#160;</td>
9933 <td class="paramname"><em>input</em>, </td>
9934 </tr>
9935 <tr>
9936 <td class="paramkey"></td>
9937 <td></td>
9938 <td class="paramtype">void *__restrict&#160;</td>
9939 <td class="paramname"><em>output</em>, </td>
9940 </tr>
9941 <tr>
9942 <td class="paramkey"></td>
9943 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009944 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +00009945 <td class="paramname"><em>win</em>&#160;</td>
9946 </tr>
9947 <tr>
9948 <td></td>
9949 <td>)</td>
9950 <td></td><td></td>
9951 </tr>
9952 </table>
9953</div><div class="memdoc">
9954
Jenkinsb3a371b2018-05-23 11:36:53 +01009955<p>Convert RGB to NV12. </p>
9956<dl class="params"><dt>Parameters</dt><dd>
9957 <table class="params">
9958 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input RGB data buffer. </td></tr>
9959 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output NV12 buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +00009960 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +01009961 </table>
9962 </dd>
9963</dl>
Anthony Barbier871448e2017-03-24 14:54:29 +00009964
Jenkinsb9abeae2018-11-22 11:58:08 +00009965<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00939">939</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +00009966<div class="fragment"><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160;{</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; win.validate();</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160;</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IImage *__restrict&gt;(input);</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IMultiImage *__restrict&gt;(output);</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160;</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160; <span class="comment">// UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; Window win_uv(win);</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160; win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160; win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160; win_uv.validate();</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160;</div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160; Iterator in(input_ptr, win);</div><div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160; Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>&#160; Iterator out_uv(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160;</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160; {</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb_top = load_rgb(in.ptr(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb_bottom = load_rgb(in.ptr() + input_ptr-&gt;info()-&gt;strides_in_bytes().y(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160; <span class="comment">//ta_rgb.val[0] = R0 R1 R2 R3 ...</span></div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160; <span class="comment">//ta_rgb.val[1] = G0 G1 G2 G3 ...</span></div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160; <span class="comment">//ta_rgb.val[2] = B0 B1 B2 B3 ...</span></div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160;</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160; store_rgb_to_nv12(ta_rgb_top.val[0], ta_rgb_top.val[1], ta_rgb_top.val[2],</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160; ta_rgb_bottom.val[0], ta_rgb_bottom.val[1], ta_rgb_bottom.val[2],</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; out_y.ptr(), out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(),</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160; out_uv.ptr());</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160; },</div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>&#160; in, out_y, out_uv);</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
9967<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a3161c2c93c655dd30953372064ec627b"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">arm_compute::test::validation::alpha</a></div><div class="ttdeci">const float alpha</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_accumulate_8cpp_source.xhtml#l00103">Accumulate.cpp:103</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009968<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00009969</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +00009970<p class="reference">References <a class="el" href="_n_e_o_n_2_accumulate_8cpp_source.xhtml#l00103">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
9971
Anthony Barbier871448e2017-03-24 14:54:29 +00009972</div>
9973</div>
Jenkinsb9abeae2018-11-22 11:58:08 +00009974<a id="a93cc303c8ae098d264f07d37890412de"></a>
9975<h2 class="memtitle"><span class="permalink"><a href="#a93cc303c8ae098d264f07d37890412de">&#9670;&nbsp;</a></span>colorconvert_rgb_to_rgbx()</h2>
9976
Anthony Barbier871448e2017-03-24 14:54:29 +00009977<div class="memitem">
9978<div class="memproto">
9979 <table class="memname">
9980 <tr>
9981 <td class="memname">void arm_compute::colorconvert_rgb_to_rgbx </td>
9982 <td>(</td>
9983 <td class="paramtype">const void *__restrict&#160;</td>
9984 <td class="paramname"><em>input</em>, </td>
9985 </tr>
9986 <tr>
9987 <td class="paramkey"></td>
9988 <td></td>
9989 <td class="paramtype">void *__restrict&#160;</td>
9990 <td class="paramname"><em>output</em>, </td>
9991 </tr>
9992 <tr>
9993 <td class="paramkey"></td>
9994 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00009995 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +00009996 <td class="paramname"><em>win</em>&#160;</td>
9997 </tr>
9998 <tr>
9999 <td></td>
10000 <td>)</td>
10001 <td></td><td></td>
10002 </tr>
10003 </table>
10004</div><div class="memdoc">
10005
Jenkinsb3a371b2018-05-23 11:36:53 +010010006<p>Convert RGB to RGBX. </p>
10007<dl class="params"><dt>Parameters</dt><dd>
10008 <table class="params">
10009 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input RGB data buffer. </td></tr>
10010 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output RGBX buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000010011 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010010012 </table>
10013 </dd>
10014</dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000010015
Jenkinsb9abeae2018-11-22 11:58:08 +000010016<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00351">351</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000010017<div class="fragment"><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160;{</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IImage *__restrict&gt;(input);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IImage *__restrict&gt;(output);</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; Iterator in(input_ptr, win);</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; Iterator out(output_ptr, win);</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; {</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta1 = vld3q_u8(in.ptr());</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; uint8x16x4_t ta2;</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; ta2.val[0] = ta1.val[0];</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; ta2.val[1] = ta1.val[1];</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; ta2.val[2] = ta1.val[2];</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; ta2.val[3] = vdupq_n_u8(255);</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; vst4q_u8(out.ptr(), ta2);</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; },</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; in, out);</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010018<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +000010019</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010020<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, and <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>.</p>
10021
10022<p class="reference">Referenced by <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00045">NEColorConvertKernel::configure()</a>.</p>
10023
Anthony Barbier871448e2017-03-24 14:54:29 +000010024</div>
10025</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010026<a id="aa1d4cf707dec05e3ff1d63d4ce8065ca"></a>
10027<h2 class="memtitle"><span class="permalink"><a href="#aa1d4cf707dec05e3ff1d63d4ce8065ca">&#9670;&nbsp;</a></span>colorconvert_rgb_to_u8()</h2>
10028
10029<div class="memitem">
10030<div class="memproto">
10031 <table class="memname">
10032 <tr>
10033 <td class="memname">void arm_compute::colorconvert_rgb_to_u8 </td>
10034 <td>(</td>
10035 <td class="paramtype">const void *__restrict&#160;</td>
10036 <td class="paramname"><em>input</em>, </td>
10037 </tr>
10038 <tr>
10039 <td class="paramkey"></td>
10040 <td></td>
10041 <td class="paramtype">void *__restrict&#160;</td>
10042 <td class="paramname"><em>output</em>, </td>
10043 </tr>
10044 <tr>
10045 <td class="paramkey"></td>
10046 <td></td>
10047 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
10048 <td class="paramname"><em>win</em>&#160;</td>
10049 </tr>
10050 <tr>
10051 <td></td>
10052 <td>)</td>
10053 <td></td><td></td>
10054 </tr>
10055 </table>
10056</div><div class="memdoc">
10057
10058<p>Convert RGB to U8. </p>
10059<dl class="params"><dt>Parameters</dt><dd>
10060 <table class="params">
10061 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input RGB data buffer. </td></tr>
10062 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output U8 buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000010063 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000010064 </table>
10065 </dd>
10066</dl>
10067
10068<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00382">382</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000010069<div class="fragment"><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;{</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IImage *__restrict&gt;(input);</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IImage *__restrict&gt;(output);</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; Iterator in(input_ptr, win);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; Iterator out(output_ptr, win);</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; {</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta1 = vld3q_u8(in.ptr());</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; uint8x16_t ta2;</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; rgb_to_u8_conversion(ta1, ta2);</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; vst1q_u8(out.ptr(), ta2);</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; },</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; in, out);</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010070<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
10071</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010072<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, and <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>.</p>
10073
10074<p class="reference">Referenced by <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00045">NEColorConvertKernel::configure()</a>.</p>
10075
Jenkinsb9abeae2018-11-22 11:58:08 +000010076</div>
10077</div>
10078<a id="ad304c0b0a72ed3f65c24fa69ab3cd53e"></a>
10079<h2 class="memtitle"><span class="permalink"><a href="#ad304c0b0a72ed3f65c24fa69ab3cd53e">&#9670;&nbsp;</a></span>colorconvert_rgb_to_yuv4()</h2>
10080
Anthony Barbier871448e2017-03-24 14:54:29 +000010081<div class="memitem">
10082<div class="memproto">
10083 <table class="memname">
10084 <tr>
10085 <td class="memname">void arm_compute::colorconvert_rgb_to_yuv4 </td>
10086 <td>(</td>
10087 <td class="paramtype">const void *__restrict&#160;</td>
10088 <td class="paramname"><em>input</em>, </td>
10089 </tr>
10090 <tr>
10091 <td class="paramkey"></td>
10092 <td></td>
10093 <td class="paramtype">void *__restrict&#160;</td>
10094 <td class="paramname"><em>output</em>, </td>
10095 </tr>
10096 <tr>
10097 <td class="paramkey"></td>
10098 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010099 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000010100 <td class="paramname"><em>win</em>&#160;</td>
10101 </tr>
10102 <tr>
10103 <td></td>
10104 <td>)</td>
10105 <td></td><td></td>
10106 </tr>
10107 </table>
10108</div><div class="memdoc">
10109
Jenkinsb3a371b2018-05-23 11:36:53 +010010110<p>Convert RGB to YUV4. </p>
10111<dl class="params"><dt>Parameters</dt><dd>
10112 <table class="params">
10113 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input RGB data buffer. </td></tr>
10114 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output YUV4 buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000010115 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010010116 </table>
10117 </dd>
10118</dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000010119
Jenkinsb9abeae2018-11-22 11:58:08 +000010120<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l01026">1026</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000010121<div class="fragment"><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;{</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160; win.validate();</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160;</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IImage *__restrict&gt;(input);</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IMultiImage *__restrict&gt;(output);</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160;</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160; Iterator in(input_ptr, win);</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160; Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160; Iterator out_u(output_ptr-&gt;plane(1), win);</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160; Iterator out_v(output_ptr-&gt;plane(2), win);</div><div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160;</div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160; {</div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_rgb = load_rgb(in.ptr(), <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160; <span class="comment">//ta_rgb.val[0] = R0 R1 R2 R3 ...</span></div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160; <span class="comment">//ta_rgb.val[1] = G0 G1 G2 G3 ...</span></div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160; <span class="comment">//ta_rgb.val[2] = B0 B1 B2 B3 ...</span></div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160;</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160; store_rgb_to_yuv4(ta_rgb.val[0], ta_rgb.val[1], ta_rgb.val[2],</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160; out_y.ptr(), out_u.ptr(), out_v.ptr());</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160; },</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160; in, out_y, out_u, out_v);</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
10122<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a3161c2c93c655dd30953372064ec627b"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">arm_compute::test::validation::alpha</a></div><div class="ttdeci">const float alpha</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_accumulate_8cpp_source.xhtml#l00103">Accumulate.cpp:103</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010123<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +000010124</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010125<p class="reference">References <a class="el" href="_n_e_o_n_2_accumulate_8cpp_source.xhtml#l00103">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, and <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>.</p>
10126
Anthony Barbier871448e2017-03-24 14:54:29 +000010127</div>
10128</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010129<a id="acf7451c0d0f8a4b1cfbb60d7531a43aa"></a>
10130<h2 class="memtitle"><span class="permalink"><a href="#acf7451c0d0f8a4b1cfbb60d7531a43aa">&#9670;&nbsp;</a></span>colorconvert_rgbx_to_rgb()</h2>
10131
Anthony Barbier871448e2017-03-24 14:54:29 +000010132<div class="memitem">
10133<div class="memproto">
10134 <table class="memname">
10135 <tr>
10136 <td class="memname">void arm_compute::colorconvert_rgbx_to_rgb </td>
10137 <td>(</td>
10138 <td class="paramtype">const void *&#160;</td>
10139 <td class="paramname"><em>input</em>, </td>
10140 </tr>
10141 <tr>
10142 <td class="paramkey"></td>
10143 <td></td>
10144 <td class="paramtype">void *&#160;</td>
10145 <td class="paramname"><em>output</em>, </td>
10146 </tr>
10147 <tr>
10148 <td class="paramkey"></td>
10149 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010150 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000010151 <td class="paramname"><em>win</em>&#160;</td>
10152 </tr>
10153 <tr>
10154 <td></td>
10155 <td>)</td>
10156 <td></td><td></td>
10157 </tr>
10158 </table>
10159</div><div class="memdoc">
10160
Jenkinsb3a371b2018-05-23 11:36:53 +010010161<p>Convert RGBX to RGB. </p>
10162<dl class="params"><dt>Parameters</dt><dd>
10163 <table class="params">
10164 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input RGBX data buffer. </td></tr>
10165 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output RGB buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000010166 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010010167 </table>
10168 </dd>
10169</dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000010170
Jenkinsb9abeae2018-11-22 11:58:08 +000010171<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00410">410</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000010172<div class="fragment"><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;{</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IImage *__restrict&gt;(input);</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IImage *__restrict&gt;(output);</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; Iterator in(input_ptr, win);</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; Iterator out(output_ptr, win);</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; {</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta1 = vld4q_u8(in.ptr());</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; uint8x16x3_t ta2;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; ta2.val[0] = ta1.val[0];</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; ta2.val[1] = ta1.val[1];</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; ta2.val[2] = ta1.val[2];</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; vst3q_u8(out.ptr(), ta2);</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; },</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; in, out);</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010173<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +000010174</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010175<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, and <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>.</p>
10176
10177<p class="reference">Referenced by <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00045">NEColorConvertKernel::configure()</a>.</p>
10178
Anthony Barbier871448e2017-03-24 14:54:29 +000010179</div>
10180</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010181<a id="ae43e8f0463c0289169025c3041688d36"></a>
10182<h2 class="memtitle"><span class="permalink"><a href="#ae43e8f0463c0289169025c3041688d36">&#9670;&nbsp;</a></span>colorconvert_yuyv_to_iyuv()</h2>
10183
Anthony Barbier871448e2017-03-24 14:54:29 +000010184<div class="memitem">
10185<div class="memproto">
10186 <table class="memname">
10187 <tr>
10188 <td class="memname">void arm_compute::colorconvert_yuyv_to_iyuv </td>
10189 <td>(</td>
10190 <td class="paramtype">const void *__restrict&#160;</td>
10191 <td class="paramname"><em>input</em>, </td>
10192 </tr>
10193 <tr>
10194 <td class="paramkey"></td>
10195 <td></td>
10196 <td class="paramtype">void *__restrict&#160;</td>
10197 <td class="paramname"><em>output</em>, </td>
10198 </tr>
10199 <tr>
10200 <td class="paramkey"></td>
10201 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010202 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000010203 <td class="paramname"><em>win</em>&#160;</td>
10204 </tr>
10205 <tr>
10206 <td></td>
10207 <td>)</td>
10208 <td></td><td></td>
10209 </tr>
10210 </table>
10211</div><div class="memdoc">
10212
Jenkinsb3a371b2018-05-23 11:36:53 +010010213<p>Convert YUYV to IYUV. </p>
10214<dl class="params"><dt>Parameters</dt><dd>
10215 <table class="params">
10216 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input YUYV data buffer. </td></tr>
10217 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output IYUV buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000010218 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010010219 </table>
10220 </dd>
10221</dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000010222
Jenkinsb9abeae2018-11-22 11:58:08 +000010223<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00762">762</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000010224<div class="fragment"><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160;{</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; win.validate();</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160;</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IImage *__restrict&gt;(input);</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IMultiImage *__restrict&gt;(output);</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160;</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; constexpr <span class="keyword">auto</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a> = yuyv ? 0 : 1;</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160;</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; <span class="comment">// Destination&#39;s UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; Window win_uv(win);</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; win_uv.validate();</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160;</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; Iterator in(input_ptr, win);</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; Iterator out_u(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; Iterator out_v(output_ptr-&gt;plane(2), win_uv);</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160;</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; {</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_top = vld4q_u8(in.ptr());</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_bottom = vld4q_u8(in.ptr() + input_ptr-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; <span class="comment">//ta.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; <span class="comment">//ta.val[1] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; <span class="comment">//ta.val[2] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; <span class="comment">//ta.val[3] = V0 V2 V4 V7 ...</span></div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160;</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; uint8x16x2_t yvec;</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; yvec.val[0] = ta_top.val[0 + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>];</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; yvec.val[1] = ta_top.val[2 + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>];</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; vst2q_u8(out_y.ptr(), yvec);</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160;</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; uint8x16x2_t yyvec;</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; yyvec.val[0] = ta_bottom.val[0 + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>];</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; yyvec.val[1] = ta_bottom.val[2 + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>];</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), yyvec);</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160;</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; uint8x16_t uvec;</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160; uvec = vhaddq_u8(ta_top.val[1 - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>], ta_bottom.val[1 - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>]);</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; vst1q_u8(out_u.ptr(), uvec);</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160;</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160; uint8x16_t vvec;</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; vvec = vhaddq_u8(ta_top.val[3 - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>], ta_bottom.val[3 - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>]);</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; vst1q_u8(out_v.ptr(), vvec);</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; },</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; in, out_y, out_u, out_v);</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a979a54caef6e77ce0259e427136847e8"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">arm_compute::test::validation::shift</a></div><div class="ttdeci">shift</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_depth_convert_layer_8cpp_source.xhtml#l00155">DepthConvertLayer.cpp:155</a></div></div>
10225<div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010226<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +000010227</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010228<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_c_l_2_depth_convert_layer_8cpp_source.xhtml#l00155">arm_compute::test::validation::shift</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
10229
Anthony Barbier871448e2017-03-24 14:54:29 +000010230</div>
10231</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010232<a id="a8ee13904a3f5ba84b28cb53d956021d7"></a>
10233<h2 class="memtitle"><span class="permalink"><a href="#a8ee13904a3f5ba84b28cb53d956021d7">&#9670;&nbsp;</a></span>colorconvert_yuyv_to_nv12()</h2>
10234
Anthony Barbier871448e2017-03-24 14:54:29 +000010235<div class="memitem">
10236<div class="memproto">
10237 <table class="memname">
10238 <tr>
10239 <td class="memname">void arm_compute::colorconvert_yuyv_to_nv12 </td>
10240 <td>(</td>
10241 <td class="paramtype">const void *__restrict&#160;</td>
10242 <td class="paramname"><em>input</em>, </td>
10243 </tr>
10244 <tr>
10245 <td class="paramkey"></td>
10246 <td></td>
10247 <td class="paramtype">void *__restrict&#160;</td>
10248 <td class="paramname"><em>output</em>, </td>
10249 </tr>
10250 <tr>
10251 <td class="paramkey"></td>
10252 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010253 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000010254 <td class="paramname"><em>win</em>&#160;</td>
10255 </tr>
10256 <tr>
10257 <td></td>
10258 <td>)</td>
10259 <td></td><td></td>
10260 </tr>
10261 </table>
10262</div><div class="memdoc">
10263
Jenkinsb3a371b2018-05-23 11:36:53 +010010264<p>Convert YUYV to NV12. </p>
10265<dl class="params"><dt>Parameters</dt><dd>
10266 <table class="params">
10267 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input YUYV data buffer. </td></tr>
10268 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output NV12 buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000010269 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010010270 </table>
10271 </dd>
10272</dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000010273
Jenkinsb9abeae2018-11-22 11:58:08 +000010274<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00610">610</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000010275<div class="fragment"><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160;{</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; win.validate();</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160;</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IImage *__restrict&gt;(input);</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IMultiImage *__restrict&gt;(output);</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160;</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; constexpr <span class="keyword">auto</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a> = yuyv ? 0 : 1;</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160;</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; <span class="comment">// NV12&#39;s UV&#39;s width and height are subsampled</span></div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; Window win_uv(win);</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; win_uv.set(Window::DimX, Window::Dimension(win_uv.x().start() / 2, win_uv.x().end() / 2, win_uv.x().step() / 2));</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; win_uv.set(Window::DimY, Window::Dimension(win_uv.y().start() / 2, win_uv.y().end() / 2, 1));</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; win_uv.validate();</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160;</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; Iterator in(input_ptr, win);</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; Iterator out_y(output_ptr-&gt;plane(0), win);</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; Iterator out_uv(output_ptr-&gt;plane(1), win_uv);</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; {</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_top = vld4q_u8(in.ptr());</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta_bottom = vld4q_u8(in.ptr() + input_ptr-&gt;info()-&gt;strides_in_bytes().y());</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; <span class="comment">//ta.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; <span class="comment">//ta.val[1] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; <span class="comment">//ta.val[2] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; <span class="comment">//ta.val[3] = V0 V2 V4 V7 ...</span></div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160;</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; uint8x16x2_t yvec;</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; yvec.val[0] = ta_top.val[0 + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>];</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; yvec.val[1] = ta_top.val[2 + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>];</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; vst2q_u8(out_y.ptr(), yvec);</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160;</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; uint8x16x2_t yyvec;</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; yyvec.val[0] = ta_bottom.val[0 + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>];</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; yyvec.val[1] = ta_bottom.val[2 + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>];</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; vst2q_u8(out_y.ptr() + output_ptr-&gt;plane(0)-&gt;info()-&gt;strides_in_bytes().y(), yyvec);</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160;</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; uint8x16x2_t uvvec;</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; uvvec.val[0] = vhaddq_u8(ta_top.val[1 - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>], ta_bottom.val[1 - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>]);</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; uvvec.val[1] = vhaddq_u8(ta_top.val[3 - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>], ta_bottom.val[3 - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>]);</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; vst2q_u8(out_uv.ptr(), uvvec);</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; },</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; in, out_y, out_uv);</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a979a54caef6e77ce0259e427136847e8"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">arm_compute::test::validation::shift</a></div><div class="ttdeci">shift</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_depth_convert_layer_8cpp_source.xhtml#l00155">DepthConvertLayer.cpp:155</a></div></div>
10276<div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010277<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +000010278</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010279<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="_window_8h_source.xhtml#l00045">Window::DimY</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_window_8inl_source.xhtml#l00041">Window::set()</a>, <a class="el" href="_c_l_2_depth_convert_layer_8cpp_source.xhtml#l00155">arm_compute::test::validation::shift</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, and <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>.</p>
10280
Anthony Barbier871448e2017-03-24 14:54:29 +000010281</div>
10282</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010283<a id="a3c22c0d3494660b72b4fc04fec76f92d"></a>
10284<h2 class="memtitle"><span class="permalink"><a href="#a3c22c0d3494660b72b4fc04fec76f92d">&#9670;&nbsp;</a></span>colorconvert_yuyv_to_rgb()</h2>
10285
Anthony Barbier871448e2017-03-24 14:54:29 +000010286<div class="memitem">
10287<div class="memproto">
10288 <table class="memname">
10289 <tr>
10290 <td class="memname">void arm_compute::colorconvert_yuyv_to_rgb </td>
10291 <td>(</td>
10292 <td class="paramtype">const void *__restrict&#160;</td>
10293 <td class="paramname"><em>input</em>, </td>
10294 </tr>
10295 <tr>
10296 <td class="paramkey"></td>
10297 <td></td>
10298 <td class="paramtype">void *__restrict&#160;</td>
10299 <td class="paramname"><em>output</em>, </td>
10300 </tr>
10301 <tr>
10302 <td class="paramkey"></td>
10303 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010304 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000010305 <td class="paramname"><em>win</em>&#160;</td>
10306 </tr>
10307 <tr>
10308 <td></td>
10309 <td>)</td>
10310 <td></td><td></td>
10311 </tr>
10312 </table>
10313</div><div class="memdoc">
10314
Jenkinsb3a371b2018-05-23 11:36:53 +010010315<p>Convert YUYV to RGB. </p>
10316<dl class="params"><dt>Parameters</dt><dd>
10317 <table class="params">
10318 <tr><td class="paramdir">[in]</td><td class="paramname">input</td><td>Input YUYV data buffer. </td></tr>
10319 <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>Output RGB buffer. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000010320 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> for iterating the buffers. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010010321 </table>
10322 </dd>
10323</dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000010324
Jenkinsb9abeae2018-11-22 11:58:08 +000010325<p class="definition">Definition at line <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00441">441</a> of file <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml">NEColorConvertHelper.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000010326<div class="fragment"><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160;{</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == input);</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<span class="keyword">nullptr</span> == output);</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160;</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = static_cast&lt;const IImage *__restrict&gt;(input);</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> output_ptr = static_cast&lt;IImage *__restrict&gt;(output);</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; constexpr <span class="keyword">auto</span> element_size = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a> ? 32 : 24;</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; constexpr <span class="keyword">auto</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a> = yuyv ? 0 : 1;</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160;</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; Iterator in(input_ptr, win);</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; Iterator out(output_ptr, win);</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(win, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; {</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> ta = vld4q_u8(in.ptr());</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <span class="comment">//ta.val[0] = Y0 Y2 Y4 Y6 ...</span></div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <span class="comment">//ta.val[1] = U0 U2 U4 U6 ...</span></div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="comment">//ta.val[2] = Y1 Y3 Y5 Y7 ...</span></div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="comment">//ta.val[3] = V0 V2 V4 V7 ...</span></div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160;</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; <span class="comment">// Convert the uint8x16x4_t to float32x4x4_t</span></div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="keyword">const</span> float32x4x4_t yvec = convert_uint8x16_to_float32x4x4(ta.val[0 + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>]);</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <span class="keyword">const</span> float32x4x4_t uvec = convert_uint8x16_to_float32x4x4(ta.val[1 - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>]);</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <span class="keyword">const</span> float32x4x4_t yyvec = convert_uint8x16_to_float32x4x4(ta.val[2 + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>]);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <span class="keyword">const</span> float32x4x4_t vvec = convert_uint8x16_to_float32x4x4(ta.val[3 - <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">shift</a>]);</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec.val[0], uvec.val[0], yyvec.val[0], vvec.val[0], out.ptr() + 0 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec.val[1], uvec.val[1], yyvec.val[1], vvec.val[1], out.ptr() + 1 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec.val[2], uvec.val[2], yyvec.val[2], vvec.val[2], out.ptr() + 2 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">yuyv_to_rgb_calculation</a>(yvec.val[3], uvec.val[3], yyvec.val[3], vvec.val[3], out.ptr() + 3 * element_size, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">alpha</a>);</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; },</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; in, out);</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a979a54caef6e77ce0259e427136847e8"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a979a54caef6e77ce0259e427136847e8">arm_compute::test::validation::shift</a></div><div class="ttdeci">shift</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_depth_convert_layer_8cpp_source.xhtml#l00155">DepthConvertLayer.cpp:155</a></div></div>
10327<div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010328<div class="ttc" id="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail_xhtml_a2a36a93e164b484404fe908cefd6099a"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1colorconvert__helper_1_1detail.xhtml#a2a36a93e164b484404fe908cefd6099a">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation</a></div><div class="ttdeci">void yuyv_to_rgb_calculation(const SimpleTensor&lt; T &gt; yvec, const SimpleTensor&lt; T &gt; vvec, const SimpleTensor&lt; T &gt; yyvec, const SimpleTensor&lt; T &gt; uvec, SimpleTensor&lt; T &gt; &amp;dst)</div><div class="ttdef"><b>Definition:</b> <a href="_color_convert_helper_8h_source.xhtml#l00159">ColorConvertHelper.h:159</a></div></div>
Jenkins514be652019-02-28 12:25:18 +000010329<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a3161c2c93c655dd30953372064ec627b"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a3161c2c93c655dd30953372064ec627b">arm_compute::test::validation::alpha</a></div><div class="ttdeci">const float alpha</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_accumulate_8cpp_source.xhtml#l00103">Accumulate.cpp:103</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010330<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +000010331</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010332<p class="reference">References <a class="el" href="_n_e_o_n_2_accumulate_8cpp_source.xhtml#l00103">arm_compute::test::validation::alpha</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_c_l_2_depth_convert_layer_8cpp_source.xhtml#l00155">arm_compute::test::validation::shift</a>, and <a class="el" href="_color_convert_helper_8h_source.xhtml#l00159">arm_compute::test::colorconvert_helper::detail::yuyv_to_rgb_calculation()</a>.</p>
10333
Anthony Barbier871448e2017-03-24 14:54:29 +000010334</div>
10335</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010336<a id="ac56739a30823647f7d86a0380a2ff62e"></a>
10337<h2 class="memtitle"><span class="permalink"><a href="#ac56739a30823647f7d86a0380a2ff62e">&#9670;&nbsp;</a></span>compute_strides() <span class="overload">[1/2]</span></h2>
10338
Anthony Barbier871448e2017-03-24 14:54:29 +000010339<div class="memitem">
10340<div class="memproto">
10341<table class="mlabels">
10342 <tr>
10343 <td class="mlabels-left">
10344 <table class="memname">
10345 <tr>
10346 <td class="memname"><a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a> arm_compute::compute_strides </td>
10347 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010348 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000010349 <td class="paramname"><em>info</em>, </td>
10350 </tr>
10351 <tr>
10352 <td class="paramkey"></td>
10353 <td></td>
10354 <td class="paramtype">T&#160;</td>
10355 <td class="paramname"><em>stride_x</em>, </td>
10356 </tr>
10357 <tr>
10358 <td class="paramkey"></td>
10359 <td></td>
10360 <td class="paramtype">Ts &amp;&amp;...&#160;</td>
10361 <td class="paramname"><em>fixed_strides</em>&#160;</td>
10362 </tr>
10363 <tr>
10364 <td></td>
10365 <td>)</td>
10366 <td></td><td></td>
10367 </tr>
10368 </table>
10369 </td>
10370 <td class="mlabels-right">
10371<span class="mlabels"><span class="mlabel">inline</span></span> </td>
10372 </tr>
10373</table>
10374</div><div class="memdoc">
10375
10376<p>Create a strides object based on the provided strides and the tensor dimensions. </p>
10377<dl class="params"><dt>Parameters</dt><dd>
10378 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000010379 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info object providing the shape of the tensor for unspecified strides. </td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000010380 <tr><td class="paramdir">[in]</td><td class="paramname">stride_x</td><td>Stride to be used in X dimension (in bytes). </td></tr>
Jenkins514be652019-02-28 12:25:18 +000010381 <tr><td class="paramdir">[in]</td><td class="paramname">fixed_strides</td><td><a class="el" href="classarm__compute_1_1_strides.xhtml" title="Strides of an item in bytes.">Strides</a> to be used in higher dimensions starting at Y (in bytes).</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000010382 </table>
10383 </dd>
10384</dl>
Jenkins514be652019-02-28 12:25:18 +000010385<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_strides.xhtml" title="Strides of an item in bytes.">Strides</a> object based on the specified strides. Missing strides are calculated based on the tensor shape and the strides of lower dimensions. </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000010386
Jenkins514be652019-02-28 12:25:18 +000010387<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00535">535</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
10388<div class="fragment"><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;{</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <span class="keyword">const</span> TensorShape &amp;<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a> = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.tensor_shape();</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="comment">// Create strides object</span></div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; Strides strides(stride_x, fixed_strides...);</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160;</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> i = 1 + <span class="keyword">sizeof</span>...(Ts); i &lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.num_dimensions(); ++i)</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; {</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; strides.set(i, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[i - 1] * strides[i - 1]);</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; }</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">return</span> strides;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">AbsoluteDifference.cpp:97</a></div></div>
10389<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010010390</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010391<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>, and <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">arm_compute::test::validation::shape</a>.</p>
10392
10393<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00557">compute_strides()</a>, and <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00342">TensorInfo::set_tensor_shape()</a>.</p>
10394
Anthony Barbier871448e2017-03-24 14:54:29 +000010395</div>
10396</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010397<a id="a8c35748731709927597cb5a2c227e682"></a>
10398<h2 class="memtitle"><span class="permalink"><a href="#a8c35748731709927597cb5a2c227e682">&#9670;&nbsp;</a></span>compute_strides() <span class="overload">[2/2]</span></h2>
10399
Anthony Barbier871448e2017-03-24 14:54:29 +000010400<div class="memitem">
10401<div class="memproto">
10402<table class="mlabels">
10403 <tr>
10404 <td class="mlabels-left">
10405 <table class="memname">
10406 <tr>
10407 <td class="memname"><a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a> arm_compute::compute_strides </td>
10408 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010409 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000010410 <td class="paramname"><em>info</em></td><td>)</td>
10411 <td></td>
10412 </tr>
10413 </table>
10414 </td>
10415 <td class="mlabels-right">
10416<span class="mlabels"><span class="mlabel">inline</span></span> </td>
10417 </tr>
10418</table>
10419</div><div class="memdoc">
10420
10421<p>Create a strides object based on the tensor dimensions. </p>
10422<dl class="params"><dt>Parameters</dt><dd>
10423 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000010424 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info object used to compute the strides.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000010425 </table>
10426 </dd>
10427</dl>
Jenkins514be652019-02-28 12:25:18 +000010428<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_strides.xhtml" title="Strides of an item in bytes.">Strides</a> object based on element size and tensor shape. </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000010429
Jenkins514be652019-02-28 12:25:18 +000010430<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00557">557</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
10431<div class="fragment"><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;{</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a8c35748731709927597cb5a2c227e682">compute_strides</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.element_size());</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a8c35748731709927597cb5a2c227e682"><div class="ttname"><a href="namespacearm__compute.xhtml#a8c35748731709927597cb5a2c227e682">arm_compute::compute_strides</a></div><div class="ttdeci">Strides compute_strides(const ITensorInfo &amp;info)</div><div class="ttdoc">Create a strides object based on the tensor dimensions.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00557">Helpers.h:557</a></div></div>
10432<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010010433</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010434<p class="reference">References <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00535">compute_strides()</a>, and <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
10435
Kaizen8938bd32017-09-28 14:38:23 +010010436</div>
10437</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010438<a id="a3b0c016b53e97663b39c2f3875f46c24"></a>
10439<h2 class="memtitle"><span class="permalink"><a href="#a3b0c016b53e97663b39c2f3875f46c24">&#9670;&nbsp;</a></span>compute_winograd_convolution_tiles()</h2>
10440
Jenkins52ba29e2018-08-29 15:32:11 +000010441<div class="memitem">
10442<div class="memproto">
10443<table class="mlabels">
10444 <tr>
10445 <td class="mlabels-left">
10446 <table class="memname">
10447 <tr>
10448 <td class="memname"><a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> arm_compute::compute_winograd_convolution_tiles </td>
10449 <td>(</td>
10450 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;&#160;</td>
10451 <td class="paramname"><em>in_dims</em>, </td>
10452 </tr>
10453 <tr>
10454 <td class="paramkey"></td>
10455 <td></td>
10456 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;&#160;</td>
10457 <td class="paramname"><em>kernel_size</em>, </td>
10458 </tr>
10459 <tr>
10460 <td class="paramkey"></td>
10461 <td></td>
10462 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;&#160;</td>
10463 <td class="paramname"><em>output_tile_size</em>, </td>
10464 </tr>
10465 <tr>
10466 <td class="paramkey"></td>
10467 <td></td>
10468 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> &amp;&#160;</td>
10469 <td class="paramname"><em>conv_info</em>&#160;</td>
10470 </tr>
10471 <tr>
10472 <td></td>
10473 <td>)</td>
10474 <td></td><td></td>
10475 </tr>
10476 </table>
10477 </td>
10478 <td class="mlabels-right">
10479<span class="mlabels"><span class="mlabel">inline</span></span> </td>
10480 </tr>
10481</table>
10482</div><div class="memdoc">
10483
10484<p>Calculate the number of output tiles required by Winograd Convolution layer. </p>
10485<p>This utility function can be used by the Winograd input transform to know the number of tiles on the x and y direction</p>
10486<dl class="params"><dt>Parameters</dt><dd>
10487 <table class="params">
10488 <tr><td class="paramdir">[in]</td><td class="paramname">in_dims</td><td>Spatial dimensions of the input tensor of convolution layer </td></tr>
Jenkins514be652019-02-28 12:25:18 +000010489 <tr><td class="paramdir">[in]</td><td class="paramname">kernel_size</td><td><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> size </td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +000010490 <tr><td class="paramdir">[in]</td><td class="paramname">output_tile_size</td><td>Size of a single output tile </td></tr>
10491 <tr><td class="paramdir">[in]</td><td class="paramname">conv_info</td><td>Convolution info (i.e. pad, stride,...)</td></tr>
10492 </table>
10493 </dd>
10494</dl>
10495<dl class="section return"><dt>Returns</dt><dd>the number of output tiles along the x and y directions of size "output_tile_size" </dd></dl>
10496
Jenkins514be652019-02-28 12:25:18 +000010497<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00735">735</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
10498<div class="fragment"><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160;{</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <span class="keywordtype">int</span> num_tiles_x = std::ceil((in_dims.width - (kernel_size.width - 1) + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">conv_info</a>.pad_left() + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">conv_info</a>.pad_right()) / static_cast&lt;float&gt;(output_tile_size.width));</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; <span class="keywordtype">int</span> num_tiles_y = std::ceil((in_dims.height - (kernel_size.height - 1) + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">conv_info</a>.pad_top() + <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">conv_info</a>.pad_bottom()) / static_cast&lt;float&gt;(output_tile_size.height));</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160;</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; <span class="comment">// Clamp in case we provide paddings but we have 1D convolution</span></div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; num_tiles_x = std::min(num_tiles_x, static_cast&lt;int&gt;(in_dims.width));</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; num_tiles_y = std::min(num_tiles_y, static_cast&lt;int&gt;(in_dims.height));</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; <span class="keywordflow">return</span> Size2D(num_tiles_x, num_tiles_y);</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_acbf8f8a6dd185de04c1981c57a8963cf"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#acbf8f8a6dd185de04c1981c57a8963cf">arm_compute::test::validation::conv_info</a></div><div class="ttdeci">conv_info</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_winograd_8cpp_source.xhtml#l00571">Winograd.cpp:571</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000010499</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010500<p class="reference">References <a class="el" href="_c_l_2_winograd_8cpp_source.xhtml#l00571">arm_compute::test::validation::conv_info</a>, <a class="el" href="_size2_d_8h_source.xhtml#l00093">Size2D::height</a>, and <a class="el" href="_size2_d_8h_source.xhtml#l00092">Size2D::width</a>.</p>
10501
10502<p class="reference">Referenced by <a class="el" href="_shape_calculator_8h_source.xhtml#l00659">arm_compute::misc::shape_calculator::compute_winograd_input_transform_shape()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00111">CLWinogradInputTransformKernel::configure()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00146">CLWinogradOutputTransformKernel::configure()</a>, <a class="el" href="reference_2_winograd_8cpp_source.xhtml#l00233">arm_compute::test::validation::reference::winograd_input_transform()</a>, and <a class="el" href="reference_2_winograd_8cpp_source.xhtml#l00437">arm_compute::test::validation::reference::winograd_output_transform()</a>.</p>
10503
Jenkins52ba29e2018-08-29 15:32:11 +000010504</div>
10505</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010506<a id="afe3b7128bf77dd12c85eed944fe5b3d4"></a>
10507<h2 class="memtitle"><span class="permalink"><a href="#afe3b7128bf77dd12c85eed944fe5b3d4">&#9670;&nbsp;</a></span>convert_window_coord_to_position()</h2>
10508
Jenkins52ba29e2018-08-29 15:32:11 +000010509<div class="memitem">
10510<div class="memproto">
10511<table class="mlabels">
10512 <tr>
10513 <td class="mlabels-left">
10514 <table class="memname">
10515 <tr>
10516 <td class="memname"><a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> arm_compute::convert_window_coord_to_position </td>
10517 <td>(</td>
10518 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
10519 <td class="paramname"><em>w</em>, </td>
10520 </tr>
10521 <tr>
10522 <td class="paramkey"></td>
10523 <td></td>
10524 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;&#160;</td>
10525 <td class="paramname"><em>offset</em>&#160;</td>
10526 </tr>
10527 <tr>
10528 <td></td>
10529 <td>)</td>
10530 <td></td><td></td>
10531 </tr>
10532 </table>
10533 </td>
10534 <td class="mlabels-right">
10535<span class="mlabels"><span class="mlabel">inline</span></span> </td>
10536 </tr>
10537</table>
10538</div><div class="memdoc">
10539
10540<p>Convert an offset in window steps into absolute coordinates. </p>
10541<dl class="params"><dt>Parameters</dt><dd>
10542 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000010543 <tr><td class="paramdir">[in]</td><td class="paramname">w</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> <code>offset</code> is related to. </td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +000010544 <tr><td class="paramdir">[in]</td><td class="paramname">offset</td><td>Offset inside the window expressed in number of window steps.</td></tr>
10545 </table>
10546 </dd>
10547</dl>
10548<dl class="section return"><dt>Returns</dt><dd>Absolute coordinates. </dd></dl>
10549
Jenkinsb9abeae2018-11-22 11:58:08 +000010550<p class="definition">Definition at line <a class="el" href="_window_iterator_8h_source.xhtml#l00044">44</a> of file <a class="el" href="_window_iterator_8h_source.xhtml">WindowIterator.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000010551<div class="fragment"><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;{</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; Coordinates position;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; Coordinates::num_max_dimensions; ++i)</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; {</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; position.set(i, w[i].start() + <a class="code" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a>[i] * w[i].<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a>());</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; }</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">return</span> position;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;}</div><div class="ttc" id="src_2core_2_c_l_2cl__kernels_2_helpers_8h_xhtml_a009469e4d9b8fce3b6d5e97d2077827d"><div class="ttname"><a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a></div><div class="ttdeci">__global uchar * offset(const Image *img, int x, int y)</div><div class="ttdoc">Get the pointer position of a Image.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00312">helpers.h:312</a></div></div>
10552<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a75b73e17c4ebe901e44af3b2b9846ab3"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">arm_compute::test::validation::step</a></div><div class="ttdeci">const int step</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_select_8cpp_source.xhtml#l00172">Select.cpp:172</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000010553</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010554<p class="reference">References <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, <a class="el" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00312">offset()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>, and <a class="el" href="_c_l_2_select_8cpp_source.xhtml#l00172">arm_compute::test::validation::step</a>.</p>
10555
Jenkins52ba29e2018-08-29 15:32:11 +000010556</div>
10557</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010558<a id="ad95e1c14c3007ca18950bf8f4c5a5c93"></a>
10559<h2 class="memtitle"><span class="permalink"><a href="#ad95e1c14c3007ca18950bf8f4c5a5c93">&#9670;&nbsp;</a></span>coords2index()</h2>
10560
Kaizen8938bd32017-09-28 14:38:23 +010010561<div class="memitem">
10562<div class="memproto">
10563<table class="mlabels">
10564 <tr>
10565 <td class="mlabels-left">
10566 <table class="memname">
10567 <tr>
10568 <td class="memname">int coords2index </td>
10569 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010570 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010010571 <td class="paramname"><em>shape</em>, </td>
10572 </tr>
10573 <tr>
10574 <td class="paramkey"></td>
10575 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010576 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010010577 <td class="paramname"><em>coord</em>&#160;</td>
10578 </tr>
10579 <tr>
10580 <td></td>
10581 <td>)</td>
10582 <td></td><td></td>
10583 </tr>
10584 </table>
10585 </td>
10586 <td class="mlabels-right">
10587<span class="mlabels"><span class="mlabel">inline</span></span> </td>
10588 </tr>
10589</table>
10590</div><div class="memdoc">
10591
10592<p>Convert n-dimensional coordinates into a linear index. </p>
10593<dl class="params"><dt>Parameters</dt><dd>
10594 <table class="params">
10595 <tr><td class="paramdir">[in]</td><td class="paramname">shape</td><td>Shape of the n-dimensional tensor. </td></tr>
10596 <tr><td class="paramdir">[in]</td><td class="paramname">coord</td><td>N-dimensional coordinates.</td></tr>
10597 </table>
10598 </dd>
10599</dl>
10600<dl class="section return"><dt>Returns</dt><dd>linead index </dd></dl>
10601
Jenkinsb9abeae2018-11-22 11:58:08 +000010602<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00308">308</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000010603<div class="fragment"><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;{</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordtype">int</span> num_elements = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>.total_size();</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <a class="code" href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a>(num_elements);</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(num_elements == 0, <span class="stringliteral">&quot;Cannot create linear index from empty shape!&quot;</span>);</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordtype">int</span> index = 0;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordtype">int</span> stride = 1;</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> d = 0; d &lt; coord.num_dimensions(); ++d)</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; {</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; index += coord[d] * stride;</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; stride *= <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[d];</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; }</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="keywordflow">return</span> index;</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">AbsoluteDifference.cpp:97</a></div></div>
10604<div class="ttc" id="_error_8h_xhtml_a6dc630a6ae9cc063b3924bcea8dee9d6"><div class="ttname"><a href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a></div><div class="ttdeci">#define ARM_COMPUTE_UNUSED(...)</div><div class="ttdoc">To avoid unused variables warnings.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00160">Error.h:160</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000010605<div class="ttc" id="_error_8h_xhtml_a5bbdcf574d3f5e412fa6a1117911e67b"><div class="ttname"><a href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_MSG(cond,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00328">Error.h:328</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +000010606</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010607<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00160">ARM_COMPUTE_UNUSED</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, and <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">arm_compute::test::validation::shape</a>.</p>
10608
10609<p class="reference">Referenced by <a class="el" href="reference_2_convert_fully_connected_weights_8cpp_source.xhtml#l00035">arm_compute::test::validation::reference::convert_fully_connected_weights()</a>, and <a class="el" href="reference_2_winograd_8cpp_source.xhtml#l00233">arm_compute::test::validation::reference::winograd_input_transform()</a>.</p>
10610
Anthony Barbier871448e2017-03-24 14:54:29 +000010611</div>
10612</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010613<a id="a5516ba576a612c73954609522347b576"></a>
10614<h2 class="memtitle"><span class="permalink"><a href="#a5516ba576a612c73954609522347b576">&#9670;&nbsp;</a></span>cpu_model_to_string()</h2>
10615
10616<div class="memitem">
10617<div class="memproto">
10618<table class="mlabels">
10619 <tr>
10620 <td class="mlabels-left">
10621 <table class="memname">
10622 <tr>
10623 <td class="memname">std::string arm_compute::cpu_model_to_string </td>
10624 <td>(</td>
10625 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">CPUModel</a>&#160;</td>
10626 <td class="paramname"><em>val</em></td><td>)</td>
10627 <td></td>
10628 </tr>
10629 </table>
10630 </td>
10631 <td class="mlabels-right">
10632<span class="mlabels"><span class="mlabel">inline</span></span> </td>
10633 </tr>
10634</table>
10635</div><div class="memdoc">
10636
10637<p>Convert a cpumodel value to a string. </p>
10638<dl class="params"><dt>Parameters</dt><dd>
10639 <table class="params">
10640 <tr><td class="paramname">val</td><td>CPUModel value to be converted</td></tr>
10641 </table>
10642 </dd>
10643</dl>
10644<dl class="section return"><dt>Returns</dt><dd>String representing the corresponding CPUModel. </dd></dl>
10645
10646<p class="definition">Definition at line <a class="el" href="_c_p_p_types_8h_source.xhtml#l00069">69</a> of file <a class="el" href="_c_p_p_types_8h_source.xhtml">CPPTypes.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000010647<div class="fragment"><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;{</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">switch</span>(val)</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; {</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">case</span> CPUModel::GENERIC:</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; {</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">return</span> std::string(<span class="stringliteral">&quot;GENERIC&quot;</span>);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; }</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">case</span> CPUModel::GENERIC_FP16:</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; {</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">return</span> std::string(<span class="stringliteral">&quot;GENERIC_FP16&quot;</span>);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; }</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">case</span> CPUModel::GENERIC_FP16_DOT:</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; {</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">return</span> std::string(<span class="stringliteral">&quot;GENERIC_FP16_DOT&quot;</span>);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; }</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">case</span> CPUModel::A53:</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; {</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> std::string(<span class="stringliteral">&quot;A53&quot;</span>);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; }</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">case</span> CPUModel::A55r0:</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; {</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">return</span> std::string(<span class="stringliteral">&quot;A55r0&quot;</span>);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">case</span> CPUModel::A55r1:</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; {</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">return</span> std::string(<span class="stringliteral">&quot;A55r1&quot;</span>);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; }</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; {</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Invalid CPUModel.&quot;</span>);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">return</span> std::string(<span class="stringliteral">&quot;GENERIC&quot;</span>);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; }</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
10648</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000010649<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d">A53</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92">A55r0</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a2f2d74257db975404ff4ca97ce1e0bca">A55r1</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b">GENERIC</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8">GENERIC_FP16</a>, and <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7">GENERIC_FP16_DOT</a>.</p>
10650
Jenkins514be652019-02-28 12:25:18 +000010651<p class="reference">Referenced by <a class="el" href="main_8cpp_source.xhtml#l00090">main()</a>.</p>
10652
Jenkinsb9abeae2018-11-22 11:58:08 +000010653</div>
10654</div>
10655<a id="a6f698fa1629f7f800b3c8cd77a3d4b4a"></a>
10656<h2 class="memtitle"><span class="permalink"><a href="#a6f698fa1629f7f800b3c8cd77a3d4b4a">&#9670;&nbsp;</a></span>create_configure_kernel()</h2>
10657
Anthony Barbierdbdab852017-06-23 15:42:00 +010010658<div class="memitem">
10659<div class="memproto">
10660 <table class="memname">
10661 <tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +000010662 <td class="memname">std::unique_ptr&lt;<a class="el" href="classarm__compute_1_1_kernel.xhtml">Kernel</a>&gt; arm_compute::create_configure_kernel </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010010663 <td>(</td>
10664 <td class="paramtype">T &amp;&amp;...&#160;</td>
10665 <td class="paramname"><em>args</em></td><td>)</td>
10666 <td></td>
10667 </tr>
10668 </table>
10669</div><div class="memdoc">
10670
Jenkinsb3a371b2018-05-23 11:36:53 +010010671<p>Helper function to create and return a unique_ptr pointed to a CL/GLES kernel object It also calls the kernel's configuration. </p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010010672<dl class="params"><dt>Parameters</dt><dd>
10673 <table class="params">
10674 <tr><td class="paramdir">[in]</td><td class="paramname">args</td><td>All the arguments that need pass to kernel's configuration.</td></tr>
10675 </table>
10676 </dd>
10677</dl>
Jenkinsb3a371b2018-05-23 11:36:53 +010010678<dl class="section return"><dt>Returns</dt><dd>A unique pointer pointed to a CL/GLES kernel object </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010010679
Jenkinsb9abeae2018-11-22 11:58:08 +000010680<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00074">74</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
Jenkinsb3a371b2018-05-23 11:36:53 +010010681<div class="fragment"><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;{</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; std::unique_ptr&lt;Kernel&gt; k = arm_compute::support::cpp14::make_unique&lt;Kernel&gt;();</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; k-&gt;configure(std::forward&lt;T&gt;(args)...);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">return</span> k;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;}</div></div><!-- fragment -->
Anthony Barbierdbdab852017-06-23 15:42:00 +010010682</div>
10683</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010684<a id="a439338e8e5a7c76a079aca52e16cff79"></a>
10685<h2 class="memtitle"><span class="permalink"><a href="#a439338e8e5a7c76a079aca52e16cff79">&#9670;&nbsp;</a></span>create_error()</h2>
10686
Anthony Barbierdbdab852017-06-23 15:42:00 +010010687<div class="memitem">
10688<div class="memproto">
10689 <table class="memname">
10690 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000010691 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">Status</a> create_error </td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010692 <td>(</td>
10693 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05f">ErrorCode</a>&#160;</td>
10694 <td class="paramname"><em>error_code</em>, </td>
10695 </tr>
10696 <tr>
10697 <td class="paramkey"></td>
10698 <td></td>
10699 <td class="paramtype">const char *&#160;</td>
10700 <td class="paramname"><em>function</em>, </td>
10701 </tr>
10702 <tr>
10703 <td class="paramkey"></td>
10704 <td></td>
10705 <td class="paramtype">const char *&#160;</td>
10706 <td class="paramname"><em>file</em>, </td>
10707 </tr>
10708 <tr>
10709 <td class="paramkey"></td>
10710 <td></td>
10711 <td class="paramtype">const int&#160;</td>
10712 <td class="paramname"><em>line</em>, </td>
10713 </tr>
10714 <tr>
10715 <td class="paramkey"></td>
10716 <td></td>
10717 <td class="paramtype">const char *&#160;</td>
10718 <td class="paramname"><em>msg</em>, </td>
10719 </tr>
10720 <tr>
10721 <td class="paramkey"></td>
10722 <td></td>
10723 <td class="paramtype">&#160;</td>
10724 <td class="paramname"><em>...</em>&#160;</td>
10725 </tr>
10726 <tr>
10727 <td></td>
10728 <td>)</td>
10729 <td></td><td></td>
10730 </tr>
10731 </table>
10732</div><div class="memdoc">
10733
10734<p>Creates an error containing the error message. </p>
10735<dl class="params"><dt>Parameters</dt><dd>
10736 <table class="params">
10737 <tr><td class="paramdir">[in]</td><td class="paramname">error_code</td><td>Error code </td></tr>
10738 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
10739 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
10740 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
10741 <tr><td class="paramdir">[in]</td><td class="paramname">msg</td><td>Message to display before aborting. </td></tr>
10742 <tr><td class="paramdir">[in]</td><td class="paramname">...</td><td>Variable number of arguments of the message.</td></tr>
10743 </table>
10744 </dd>
10745</dl>
10746<dl class="section return"><dt>Returns</dt><dd>status containing the error </dd></dl>
10747
Jenkinsb9abeae2018-11-22 11:58:08 +000010748<p class="definition">Definition at line <a class="el" href="_error_8cpp_source.xhtml#l00042">42</a> of file <a class="el" href="_error_8cpp_source.xhtml">Error.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000010749<div class="fragment"><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;{</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; va_list args;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; va_start(args, msg);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keyword">auto</span> err = <a class="code" href="namespacearm__compute.xhtml#aee087c8a7edb0fb5b7e75b9037e34cf7">create_error_va_list</a>(error_code, <span class="keyword">function</span>, file, line, msg, args);</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; va_end(args);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">return</span> err;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_aee087c8a7edb0fb5b7e75b9037e34cf7"><div class="ttname"><a href="namespacearm__compute.xhtml#aee087c8a7edb0fb5b7e75b9037e34cf7">arm_compute::create_error_va_list</a></div><div class="ttdeci">Status create_error_va_list(ErrorCode error_code, const char *function, const char *file, const int line, const char *msg, va_list args)</div><div class="ttdoc">Creates an error containing the error message from variable argument list.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8cpp_source.xhtml#l00033">Error.cpp:33</a></div></div>
10750</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000010751<p class="reference">References <a class="el" href="_error_8cpp_source.xhtml#l00033">create_error_va_list()</a>.</p>
10752
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010753</div>
10754</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010755<a id="aee087c8a7edb0fb5b7e75b9037e34cf7"></a>
10756<h2 class="memtitle"><span class="permalink"><a href="#aee087c8a7edb0fb5b7e75b9037e34cf7">&#9670;&nbsp;</a></span>create_error_va_list()</h2>
10757
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010758<div class="memitem">
10759<div class="memproto">
10760 <table class="memname">
10761 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000010762 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">Status</a> create_error_va_list </td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010763 <td>(</td>
10764 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05f">ErrorCode</a>&#160;</td>
10765 <td class="paramname"><em>error_code</em>, </td>
10766 </tr>
10767 <tr>
10768 <td class="paramkey"></td>
10769 <td></td>
10770 <td class="paramtype">const char *&#160;</td>
10771 <td class="paramname"><em>function</em>, </td>
10772 </tr>
10773 <tr>
10774 <td class="paramkey"></td>
10775 <td></td>
10776 <td class="paramtype">const char *&#160;</td>
10777 <td class="paramname"><em>file</em>, </td>
10778 </tr>
10779 <tr>
10780 <td class="paramkey"></td>
10781 <td></td>
10782 <td class="paramtype">const int&#160;</td>
10783 <td class="paramname"><em>line</em>, </td>
10784 </tr>
10785 <tr>
10786 <td class="paramkey"></td>
10787 <td></td>
10788 <td class="paramtype">const char *&#160;</td>
10789 <td class="paramname"><em>msg</em>, </td>
10790 </tr>
10791 <tr>
10792 <td class="paramkey"></td>
10793 <td></td>
10794 <td class="paramtype">va_list&#160;</td>
10795 <td class="paramname"><em>args</em>&#160;</td>
10796 </tr>
10797 <tr>
10798 <td></td>
10799 <td>)</td>
10800 <td></td><td></td>
10801 </tr>
10802 </table>
10803</div><div class="memdoc">
10804
10805<p>Creates an error containing the error message from variable argument list. </p>
10806<dl class="params"><dt>Parameters</dt><dd>
10807 <table class="params">
10808 <tr><td class="paramdir">[in]</td><td class="paramname">error_code</td><td>Error code </td></tr>
10809 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
10810 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
10811 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
10812 <tr><td class="paramdir">[in]</td><td class="paramname">msg</td><td>Message to display before aborting. </td></tr>
10813 <tr><td class="paramdir">[in]</td><td class="paramname">args</td><td>Variable argument list of the message.</td></tr>
10814 </table>
10815 </dd>
10816</dl>
10817<dl class="section return"><dt>Returns</dt><dd>status containing the error </dd></dl>
10818
Jenkinsb9abeae2018-11-22 11:58:08 +000010819<p class="definition">Definition at line <a class="el" href="_error_8cpp_source.xhtml#l00033">33</a> of file <a class="el" href="_error_8cpp_source.xhtml">Error.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000010820<div class="fragment"><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;{</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="keywordtype">char</span> out[512];</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keywordtype">int</span> <a class="code" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a> = <a class="code" href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a9429515817425d10f4b662eaa069cc5c">snprintf</a>(out, <span class="keyword">sizeof</span>(out), <span class="stringliteral">&quot;in %s %s:%d: &quot;</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; vsnprintf(out + <a class="code" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a>, <span class="keyword">sizeof</span>(out) - <a class="code" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a>, msg, args);</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">Status</a>(error_code, std::string(out));</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;}</div><div class="ttc" id="src_2core_2_c_l_2cl__kernels_2_helpers_8h_xhtml_a009469e4d9b8fce3b6d5e97d2077827d"><div class="ttname"><a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a></div><div class="ttdeci">__global uchar * offset(const Image *img, int x, int y)</div><div class="ttdoc">Get the pointer position of a Image.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00312">helpers.h:312</a></div></div>
10821<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010822<div class="ttc" id="namespacearm__compute_1_1support_1_1cpp11_xhtml_a9429515817425d10f4b662eaa069cc5c"><div class="ttname"><a href="namespacearm__compute_1_1support_1_1cpp11.xhtml#a9429515817425d10f4b662eaa069cc5c">arm_compute::support::cpp11::snprintf</a></div><div class="ttdeci">int snprintf(char *s, std::size_t n, const char *fmt, Ts &amp;&amp;... args)</div><div class="ttdoc">Loads the data from the given location, converts them to character string equivalents and writes the ...</div><div class="ttdef"><b>Definition:</b> <a href="_toolchain_support_8h_source.xhtml#l00289">ToolchainSupport.h:289</a></div></div>
10823</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010824<p class="reference">References <a class="el" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00312">offset()</a>, and <a class="el" href="_toolchain_support_8h_source.xhtml#l00289">arm_compute::support::cpp11::snprintf()</a>.</p>
10825
10826<p class="reference">Referenced by <a class="el" href="_error_8cpp_source.xhtml#l00042">create_error()</a>, and <a class="el" href="_error_8cpp_source.xhtml#l00051">error()</a>.</p>
10827
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010828</div>
10829</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010830<a id="abc72c95941485d8a068fa38372308574"></a>
10831<h2 class="memtitle"><span class="permalink"><a href="#abc72c95941485d8a068fa38372308574">&#9670;&nbsp;</a></span>create_kernel()</h2>
10832
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010833<div class="memitem">
10834<div class="memproto">
10835 <table class="memname">
10836 <tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +000010837 <td class="memname">std::unique_ptr&lt;<a class="el" href="classarm__compute_1_1_kernel.xhtml">Kernel</a>&gt; arm_compute::create_kernel </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010010838 <td>(</td>
10839 <td class="paramname"></td><td>)</td>
10840 <td></td>
10841 </tr>
10842 </table>
10843</div><div class="memdoc">
10844
Jenkinsb3a371b2018-05-23 11:36:53 +010010845<p>Helper function to create and return a unique_ptr pointed to a CL/GLES kernel object. </p>
Jenkins514be652019-02-28 12:25:18 +000010846<dl class="section return"><dt>Returns</dt><dd>A unique pointer pointed to a <a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> kernel object </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010010847
Jenkinsb9abeae2018-11-22 11:58:08 +000010848<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00086">86</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
Jenkinsb3a371b2018-05-23 11:36:53 +010010849<div class="fragment"><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;{</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; std::unique_ptr&lt;Kernel&gt; k = arm_compute::support::cpp14::make_unique&lt;Kernel&gt;();</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">return</span> k;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010850<p class="reference">Referenced by <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00042">GCLogits1DMaxKernel::configure()</a>, <a class="el" href="_c_l_integral_image_kernel_8cpp_source.xhtml#l00039">CLIntegralImageHorKernel::configure()</a>, <a class="el" href="_c_l_warp_perspective_kernel_8cpp_source.xhtml#l00061">CLWarpPerspectiveKernel::configure()</a>, <a class="el" href="_c_l_table_lookup_kernel_8cpp_source.xhtml#l00039">CLTableLookupKernel::configure()</a>, <a class="el" href="_c_l_box3x3_kernel_8cpp_source.xhtml#l00043">CLBox3x3Kernel::configure()</a>, <a class="el" href="_c_l_dilate_kernel_8cpp_source.xhtml#l00039">CLDilateKernel::configure()</a>, <a class="el" href="_c_l_element_wise_unary_layer_kernel_8cpp_source.xhtml#l00052">CLElementWiseUnaryLayerKernel::configure()</a>, <a class="el" href="_c_l_erode_kernel_8cpp_source.xhtml#l00039">CLErodeKernel::configure()</a>, <a class="el" href="_c_l_median3x3_kernel_8cpp_source.xhtml#l00039">CLMedian3x3Kernel::configure()</a>, <a class="el" href="_c_l_gaussian3x3_kernel_8cpp_source.xhtml#l00042">CLGaussian3x3Kernel::configure()</a>, <a class="el" href="_c_l_transpose_kernel_8cpp_source.xhtml#l00111">CLTransposeKernel::configure()</a>, <a class="el" href="_c_l_warp_affine_kernel_8cpp_source.xhtml#l00061">CLWarpAffineKernel::configure()</a>, <a class="el" href="_g_c_transpose_kernel_8cpp_source.xhtml#l00040">GCTransposeKernel::configure()</a>, <a class="el" href="_c_l_bitwise_not_kernel_8cpp_source.xhtml#l00034">CLBitwiseNotKernel::configure()</a>, <a class="el" href="_c_l_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00044">CLNonMaximaSuppression3x3Kernel::configure()</a>, <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00161">CLScaleKernel::configure()</a>, <a class="el" href="_c_l_accumulate_kernel_8cpp_source.xhtml#l00036">CLAccumulateKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel_8cpp_source.xhtml#l00209">CLDepthwiseConvolutionLayer3x3NCHWKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00168">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00079">CLGEMMMatrixAccumulateBiasesKernel::configure()</a>, <a class="el" href="_c_l_non_linear_filter_kernel_8cpp_source.xhtml#l00056">CLNonLinearFilterKernel::configure()</a>, <a class="el" href="_c_l_threshold_kernel_8cpp_source.xhtml#l00037">CLThresholdKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_vector_multiply_kernel_8cpp_source.xhtml#l00083">CLGEMMMatrixVectorMultiplyKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_reshape_weights_kernel_8cpp_source.xhtml#l00087">CLDepthwiseConvolutionLayerReshapeWeightsKernel::configure()</a>, <a class="el" href="_c_l_min_max_layer_kernel_8cpp_source.xhtml#l00088">CLMinMaxLayerKernel::configure()</a>, <a class="el" href="_c_l_floor_kernel_8cpp_source.xhtml#l00079">CLFloorKernel::configure()</a>, <a class="el" href="_c_l_flatten_layer_kernel_8cpp_source.xhtml#l00086">CLFlattenLayerKernel::configure()</a>, <a class="el" href="_c_l_copy_kernel_8cpp_source.xhtml#l00138">CLCopyKernel::configure()</a>, <a class="el" href="_c_l_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00095">CLChannelShuffleLayerKernel::configure()</a>, <a class="el" href="_c_l_gaussian_pyramid_kernel_8cpp_source.xhtml#l00044">CLGaussianPyramidHorKernel::configure()</a>, <a class="el" href="_c_l_reshape_layer_kernel_8cpp_source.xhtml#l00067">CLReshapeLayerKernel::configure()</a>, <a class="el" href="_c_l_reverse_kernel_8cpp_source.xhtml#l00068">CLReverseKernel::configure()</a>, <a class="el" href="_c_l_histogram_kernel_8cpp_source.xhtml#l00053">CLHistogramKernel::configure()</a>, <a class="el" href="_c_l_generate_proposals_layer_kernel_8cpp_source.xhtml#l00068">CLComputeAllAnchorsKernel::configure()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00084">CLBatchToSpaceLayerKernel::configure()</a>, <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00107">CLNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_permute_kernel_8cpp_source.xhtml#l00081">CLPermuteKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00040">CLGradientKernel::configure()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00066">CLUpsampleLayerKernel::configure()</a>, <a class="el" href="_c_l_bitwise_and_kernel_8cpp_source.xhtml#l00040">CLBitwiseAndKernel::configure()</a>, <a class="el" href="_c_l_bitwise_or_kernel_8cpp_source.xhtml#l00041">CLBitwiseOrKernel::configure()</a>, <a class="el" href="_c_l_locally_connected_matrix_multiply_kernel_8cpp_source.xhtml#l00084">CLLocallyConnectedMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_bitwise_xor_kernel_8cpp_source.xhtml#l00041">CLBitwiseXorKernel::configure()</a>, <a class="el" href="_c_l_memset_kernel_8cpp_source.xhtml#l00042">CLMemsetKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00062">CLMinMaxKernel::configure()</a>, <a class="el" href="_c_l_gather_kernel_8cpp_source.xhtml#l00091">CLGatherKernel::configure()</a>, <a class="el" href="_c_l_remap_kernel_8cpp_source.xhtml#l00050">CLRemapKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00089">CLSpaceToBatchLayerKernel::configure()</a>, <a class="el" href="_c_l_depth_convert_layer_kernel_8cpp_source.xhtml#l00073">CLDepthConvertLayerKernel::configure()</a>, <a class="el" href="_c_l_tile_kernel_8cpp_source.xhtml#l00068">CLTileKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_reshape_weights_generic_kernel_8cpp_source.xhtml#l00070">CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::configure()</a>, <a class="el" href="_g_c_activation_layer_kernel_8cpp_source.xhtml#l00047">GCActivationLayerKernel::configure()</a>, <a class="el" href="_g_c_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00051">GCDepthwiseConvolutionLayer3x3Kernel::configure()</a>, <a class="el" href="_g_c_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00047">GCPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_g_c_pooling_layer_kernel_8cpp_source.xhtml#l00226">GCPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_c_l_derivative_kernel_8cpp_source.xhtml#l00050">CLDerivativeKernel::configure()</a>, <a class="el" href="_c_l_comparison_kernel_8cpp_source.xhtml#l00113">CLComparisonKernel::configure()</a>, <a class="el" href="_c_l_deconvolution_layer_upsample_kernel_8cpp_source.xhtml#l00073">CLDeconvolutionLayerUpsampleKernel::configure()</a>, <a class="el" href="_c_l_sobel3x3_kernel_8cpp_source.xhtml#l00050">CLSobel3x3Kernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00079">CLGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate2_tensors_kernel_8cpp_source.xhtml#l00097">CLWidthConcatenate2TensorsKernel::configure()</a>, <a class="el" href="_g_c_fill_border_kernel_8cpp_source.xhtml#l00060">GCFillBorderKernel::configure()</a>, <a class="el" href="_g_c_normalization_layer_kernel_8cpp_source.xhtml#l00049">GCNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00048">CLHOGOrientationBinningKernel::configure()</a>, <a class="el" href="_c_l_fill_border_kernel_8cpp_source.xhtml#l00062">CLFillBorderKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00098">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00185">CLPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_quantization_layer_kernel_8cpp_source.xhtml#l00082">CLQuantizationLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_reshaped_kernel_8cpp_source.xhtml#l00172">CLGEMMLowpMatrixMultiplyReshapedKernel::configure()</a>, <a class="el" href="_c_l_sobel5x5_kernel_8cpp_source.xhtml#l00050">CLSobel5x5HorKernel::configure()</a>, <a class="el" href="_c_l_sobel7x7_kernel_8cpp_source.xhtml#l00050">CLSobel7x7HorKernel::configure()</a>, <a class="el" href="_c_l_dequantization_layer_kernel_8cpp_source.xhtml#l00082">CLDequantizationLayerKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate_layer_kernel_8cpp_source.xhtml#l00092">CLWidthConcatenateLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_reshaped_kernel_8cpp_source.xhtml#l00175">CLGEMMMatrixMultiplyReshapedKernel::configure()</a>, <a class="el" href="_g_c_absolute_difference_kernel_8cpp_source.xhtml#l00047">GCAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>, <a class="el" href="_c_l_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00064">CLDepthwiseVectorToTensorKernel::configure()</a>, <a class="el" href="_c_l_absolute_difference_kernel_8cpp_source.xhtml#l00047">CLAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_g_c_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00094">GCNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00120">CLPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_prior_box_layer_kernel_8cpp_source.xhtml#l00103">CLPriorBoxLayerKernel::configure()</a>, <a class="el" href="_c_l_reduction_operation_kernel_8cpp_source.xhtml#l00139">CLReductionOperationKernel::configure()</a>, <a class="el" href="_c_l_bounding_box_transform_kernel_8cpp_source.xhtml#l00070">CLBoundingBoxTransformKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_reshape_r_h_s_matrix_kernel_8cpp_source.xhtml#l00103">CLGEMMReshapeRHSMatrixKernel::configure()</a>, <a class="el" href="_c_l_l2_normalize_layer_kernel_8cpp_source.xhtml#l00095">CLL2NormalizeLayerKernel::configure()</a>, <a class="el" href="_c_l_color_convert_kernel_8cpp_source.xhtml#l00048">CLColorConvertKernel::configure()</a>, <a class="el" href="_c_l_magnitude_phase_kernel_8cpp_source.xhtml#l00046">CLMagnitudePhaseKernel::configure()</a>, <a class="el" href="_c_l_mean_std_dev_kernel_8cpp_source.xhtml#l00066">CLMeanStdDevKernel::configure()</a>, <a class="el" href="_c_l_range_kernel_8cpp_source.xhtml#l00093">CLRangeKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate4_tensors_kernel_8cpp_source.xhtml#l00115">CLWidthConcatenate4TensorsKernel::configure()</a>, <a class="el" href="_g_c_arithmetic_addition_kernel_8cpp_source.xhtml#l00091">GCArithmeticAdditionKernel::configure()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00065">CLDepthwiseIm2ColKernel::configure()</a>, <a class="el" href="_c_l_channel_combine_kernel_8cpp_source.xhtml#l00049">CLChannelCombineKernel::configure()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00098">CLFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_c_l_select_kernel_8cpp_source.xhtml#l00109">CLSelectKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_g_c_batch_normalization_layer_kernel_8cpp_source.xhtml#l00139">GCBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_g_c_depth_concatenate_layer_kernel_8cpp_source.xhtml#l00050">GCDepthConcatenateLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_reshape_l_h_s_matrix_kernel_8cpp_source.xhtml#l00121">CLGEMMReshapeLHSMatrixKernel::configure()</a>, <a class="el" href="_c_l_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00040">CLConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00057">CLConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_stack_layer_kernel_8cpp_source.xhtml#l00084">CLStackLayerKernel::configure()</a>, <a class="el" href="_c_l_depth_concatenate_layer_kernel_8cpp_source.xhtml#l00101">CLDepthConcatenateLayerKernel::configure()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00111">CLWinogradInputTransformKernel::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, <a class="el" href="_c_l_integral_image_kernel_8cpp_source.xhtml#l00071">CLIntegralImageVertKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00234">CLGEMMLowpMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_r_o_i_align_layer_kernel_8cpp_source.xhtml#l00093">CLROIAlignLayerKernel::configure()</a>, <a class="el" href="_c_l_r_o_i_pooling_layer_kernel_8cpp_source.xhtml#l00073">CLROIPoolingLayerKernel::configure()</a>, <a class="el" href="_g_c_dropout_layer_kernel_8cpp_source.xhtml#l00048">GCDropoutLayerKernel::configure()</a>, <a class="el" href="_c_l_winograd_filter_transform_kernel_8cpp_source.xhtml#l00102">CLWinogradFilterTransformKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_output_stage_kernel_8cpp_source.xhtml#l00129">CLDirectConvolutionLayerOutputStageKernel::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00107">GCLogits1DShiftExpSumKernel::configure()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_offset_contribution_output_stage_kernel_8cpp_source.xhtml#l00161">CLGEMMLowpOffsetContributionOutputStageKernel::configure()</a>, <a class="el" href="_c_l_strided_slice_kernel_8cpp_source.xhtml#l00106">CLStridedSliceKernel::configure()</a>, <a class="el" href="_c_l_harris_corners_kernel_8cpp_source.xhtml#l00054">CLHarrisScoreKernel::configure()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00146">CLWinogradOutputTransformKernel::configure()</a>, <a class="el" href="_c_l_fast_corners_kernel_8cpp_source.xhtml#l00050">CLFastCornersKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00263">CLGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_h_o_g_detector_kernel_8cpp_source.xhtml#l00044">CLHOGDetectorKernel::configure()</a>, <a class="el" href="_c_l_accumulate_kernel_8cpp_source.xhtml#l00049">CLAccumulateWeightedKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00044">GCGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel_8cpp_source.xhtml#l00124">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float_kernel_8cpp_source.xhtml#l00123">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloatKernel::configure()</a>, <a class="el" href="_c_l_scharr3x3_kernel_8cpp_source.xhtml#l00050">CLScharr3x3Kernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_kernel_8cpp_source.xhtml#l00114">CLGEMMLowpQuantizeDownInt32ToUint8ScaleKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_offset_contribution_kernel_8cpp_source.xhtml#l00145">CLGEMMLowpOffsetContributionKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_reduction_kernel_8cpp_source.xhtml#l00106">CLGEMMLowpMatrixAReductionKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00119">CLGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_g_c_tensor_shift_kernel_8cpp_source.xhtml#l00045">GCTensorShiftKernel::configure()</a>, <a class="el" href="_c_l_col2_im_kernel_8cpp_source.xhtml#l00090">CLCol2ImKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00092">CLGEMMTranspose1xWKernel::configure()</a>, <a class="el" href="_g_c_weights_reshape_kernel_8cpp_source.xhtml#l00046">GCWeightsReshapeKernel::configure()</a>, <a class="el" href="_g_c_col2_im_kernel_8cpp_source.xhtml#l00044">GCCol2ImKernel::configure()</a>, <a class="el" href="_c_l_weights_reshape_kernel_8cpp_source.xhtml#l00078">CLWeightsReshapeKernel::configure()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00293">CLIm2ColKernel::configure()</a>, <a class="el" href="_g_c_im2_col_kernel_8cpp_source.xhtml#l00067">GCIm2ColKernel::configure()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00041">CLLKTrackerInitKernel::configure()</a>, <a class="el" href="_c_l_histogram_kernel_8cpp_source.xhtml#l00149">CLHistogramBorderKernel::configure()</a>, <a class="el" href="_c_l_gaussian_pyramid_kernel_8cpp_source.xhtml#l00136">CLGaussianPyramidVertKernel::configure()</a>, <a class="el" href="_c_l_accumulate_kernel_8cpp_source.xhtml#l00067">CLAccumulateSquaredKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00111">CLEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00169">CLMinMaxLocationKernel::configure()</a>, <a class="el" href="_c_l_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00125">CLHOGBlockNormalizationKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00127">CLSeparableConvolutionHorKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00201">GCLogits1DNormKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_reduction_kernel_8cpp_source.xhtml#l00164">CLGEMMLowpMatrixBReductionKernel::configure()</a>, <a class="el" href="_c_l_sobel5x5_kernel_8cpp_source.xhtml#l00144">CLSobel5x5VertKernel::configure()</a>, <a class="el" href="_c_l_sobel7x7_kernel_8cpp_source.xhtml#l00147">CLSobel7x7VertKernel::configure()</a>, <a class="el" href="_c_l_fast_corners_kernel_8cpp_source.xhtml#l00115">CLCopyToArrayKernel::configure()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00089">CLLKTrackerFinalizeKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00180">CLSeparableConvolutionVertKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00173">CLEdgeTraceKernel::configure()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00123">CLLKTrackerStage0Kernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00246">CLConvolutionRectangleKernel::configure()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00213">CLLKTrackerStage1Kernel::configure()</a>, and <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00335">CLLogits1DNormKernel::configure()</a>.</p>
10851
10852</div>
10853</div>
10854<a id="aca9062d049299f125a442eac466402fd"></a>
10855<h2 class="memtitle"><span class="permalink"><a href="#aca9062d049299f125a442eac466402fd">&#9670;&nbsp;</a></span>create_opencl_context_and_device()</h2>
10856
10857<div class="memitem">
10858<div class="memproto">
10859 <table class="memname">
10860 <tr>
10861 <td class="memname">std::tuple&lt; cl::Context, cl::Device, cl_int &gt; create_opencl_context_and_device </td>
10862 <td>(</td>
10863 <td class="paramname"></td><td>)</td>
10864 <td></td>
10865 </tr>
10866 </table>
10867</div><div class="memdoc">
10868
10869<p>This function creates an OpenCL context and a device. </p>
10870<dl class="section note"><dt>Note</dt><dd>In debug builds, the function will automatically enable cl_arm_printf if the driver/device supports it.</dd></dl>
10871<dl class="section return"><dt>Returns</dt><dd>A std::tuple where the first element is the opencl context, the second element is the opencl device and the third one an error code. The error code will be CL_SUCCESS upon successful creation, otherwise a value telling why the function failed. </dd></dl>
10872
10873<p class="definition">Definition at line <a class="el" href="runtime_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00086">86</a> of file <a class="el" href="runtime_2_c_l_2_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
10874<div class="fragment"><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;{</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(!<a class="code" href="namespacearm__compute.xhtml#a5f49decb4b0a74d5361686ab45db8961">opencl_is_available</a>());</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; std::vector&lt;cl::Platform&gt; platforms;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; cl::Platform::get(&amp;platforms);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(platforms.size() == 0, <span class="stringliteral">&quot;Couldn&#39;t find any OpenCL platform&quot;</span>);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; cl::Platform p = platforms[0];</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; cl::Device device;</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; std::vector&lt;cl::Device&gt; platform_devices;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; p.getDevices(CL_DEVICE_TYPE_DEFAULT, &amp;platform_devices);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(platform_devices.size() == 0, <span class="stringliteral">&quot;Couldn&#39;t find any OpenCL device&quot;</span>);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; device = platform_devices[0];</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; cl_int err = CL_SUCCESS;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; cl_context_properties properties[7] = { 0, 0, 0, 0, 0, 0, 0 };</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; initialise_context_properties(p, device, properties);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; cl::Context cl_context = cl::Context(device, properties, <span class="keyword">nullptr</span>, <span class="keyword">nullptr</span>, &amp;err);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(err != CL_SUCCESS, <span class="stringliteral">&quot;Failed to create OpenCL context&quot;</span>);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">return</span> std::make_tuple(cl_context, device, err);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
10875<div class="ttc" id="namespacearm__compute_xhtml_a5f49decb4b0a74d5361686ab45db8961"><div class="ttname"><a href="namespacearm__compute.xhtml#a5f49decb4b0a74d5361686ab45db8961">arm_compute::opencl_is_available</a></div><div class="ttdeci">bool opencl_is_available()</div><div class="ttdoc">Check if OpenCL is available.</div><div class="ttdef"><b>Definition:</b> <a href="_open_c_l_8cpp_source.xhtml#l00133">OpenCL.cpp:133</a></div></div>
10876<div class="ttc" id="_error_8h_xhtml_a5bbdcf574d3f5e412fa6a1117911e67b"><div class="ttname"><a href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_MSG(cond,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00328">Error.h:328</a></div></div>
10877</div><!-- fragment -->
10878<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, and <a class="el" href="_open_c_l_8cpp_source.xhtml#l00133">opencl_is_available()</a>.</p>
10879
10880<p class="reference">Referenced by <a class="el" href="_c_l_scheduler_8cpp_source.xhtml#l00060">CLScheduler::default_init()</a>, and <a class="el" href="main_8cpp_source.xhtml#l00090">main()</a>.</p>
10881
Anthony Barbierdbdab852017-06-23 15:42:00 +010010882</div>
10883</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010884<a id="aaf5f536bf7ec25ff83b912badcf61405"></a>
10885<h2 class="memtitle"><span class="permalink"><a href="#aaf5f536bf7ec25ff83b912badcf61405">&#9670;&nbsp;</a></span>create_window_iterator()</h2>
10886
Jenkins52ba29e2018-08-29 15:32:11 +000010887<div class="memitem">
10888<div class="memproto">
10889 <table class="memname">
10890 <tr>
10891 <td class="memname"><a class="el" href="classarm__compute_1_1_window_iterator.xhtml">WindowIterator</a>&lt;L&gt; arm_compute::create_window_iterator </td>
10892 <td>(</td>
10893 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
10894 <td class="paramname"><em>w</em>, </td>
10895 </tr>
10896 <tr>
10897 <td class="paramkey"></td>
10898 <td></td>
10899 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;&#160;</td>
10900 <td class="paramname"><em>start</em>, </td>
10901 </tr>
10902 <tr>
10903 <td class="paramkey"></td>
10904 <td></td>
10905 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;&#160;</td>
10906 <td class="paramname"><em>end</em>, </td>
10907 </tr>
10908 <tr>
10909 <td class="paramkey"></td>
10910 <td></td>
10911 <td class="paramtype">L &amp;&amp;&#160;</td>
10912 <td class="paramname"><em>lambda_function</em>&#160;</td>
10913 </tr>
10914 <tr>
10915 <td></td>
10916 <td>)</td>
10917 <td></td><td></td>
10918 </tr>
10919 </table>
10920</div><div class="memdoc">
10921
Jenkins514be652019-02-28 12:25:18 +000010922<p>Create a <a class="el" href="classarm__compute_1_1_window_iterator.xhtml" title="Iterate over a portion of a Window.">WindowIterator</a> object. </p>
Jenkins52ba29e2018-08-29 15:32:11 +000010923<dl class="params"><dt>Parameters</dt><dd>
10924 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000010925 <tr><td class="paramdir">[in]</td><td class="paramname">w</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> to use for the iteration </td></tr>
10926 <tr><td class="paramdir">[in]</td><td class="paramname">start</td><td>Where to start iterating from (In <a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> coordinates) </td></tr>
10927 <tr><td class="paramdir">[in]</td><td class="paramname">end</td><td>Where to stop iterating (In <a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> coordinates). </td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +000010928 <tr><td class="paramdir">[in]</td><td class="paramname">lambda_function</td><td>Lambda function to call for every iteration between start and end. (It will be called last for end - 1)</td></tr>
10929 </table>
10930 </dd>
10931</dl>
Jenkins514be652019-02-28 12:25:18 +000010932<dl class="section return"><dt>Returns</dt><dd>A <a class="el" href="classarm__compute_1_1_window_iterator.xhtml" title="Iterate over a portion of a Window.">WindowIterator</a> object. </dd></dl>
Jenkins52ba29e2018-08-29 15:32:11 +000010933
Jenkinsb9abeae2018-11-22 11:58:08 +000010934<p class="definition">Definition at line <a class="el" href="_window_iterator_8h_source.xhtml#l00317">317</a> of file <a class="el" href="_window_iterator_8h_source.xhtml">WindowIterator.h</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000010935<div class="fragment"><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;{</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">return</span> WindowIterator&lt;L&gt;(w, start, end, std::move(lambda_function));</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;}</div></div><!-- fragment -->
Jenkins52ba29e2018-08-29 15:32:11 +000010936</div>
10937</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010938<a id="a834b76c7d21af898f39def3b787d7530"></a>
10939<h2 class="memtitle"><span class="permalink"><a href="#a834b76c7d21af898f39def3b787d7530">&#9670;&nbsp;</a></span>data_layout_from_name()</h2>
10940
Jenkins52ba29e2018-08-29 15:32:11 +000010941<div class="memitem">
10942<div class="memproto">
10943 <table class="memname">
10944 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000010945 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a> data_layout_from_name </td>
Jenkins52ba29e2018-08-29 15:32:11 +000010946 <td>(</td>
10947 <td class="paramtype">const std::string &amp;&#160;</td>
10948 <td class="paramname"><em>name</em></td><td>)</td>
10949 <td></td>
10950 </tr>
10951 </table>
10952</div><div class="memdoc">
10953
10954<p>Converts a string to a strong types enumeration <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a>. </p>
10955<dl class="params"><dt>Parameters</dt><dd>
10956 <table class="params">
10957 <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>String to convert</td></tr>
10958 </table>
10959 </dd>
10960</dl>
10961<dl class="section return"><dt>Returns</dt><dd>Converted DataLayout enumeration </dd></dl>
10962
Jenkins514be652019-02-28 12:25:18 +000010963<p class="definition">Definition at line <a class="el" href="_type_loader_8cpp_source.xhtml#l00056">56</a> of file <a class="el" href="_type_loader_8cpp_source.xhtml">TypeLoader.cpp</a>.</p>
10964<div class="fragment"><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;{</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> std::map&lt;std::string, arm_compute::DataLayout&gt; data_layouts =</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; {</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; { <span class="stringliteral">&quot;nhwc&quot;</span>, DataLayout::NHWC },</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; { <span class="stringliteral">&quot;nchw&quot;</span>, DataLayout::NCHW },</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; };</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#ifndef ARM_COMPUTE_EXCEPTIONS_DISABLED</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">try</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; {</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* ARM_COMPUTE_EXCEPTIONS_DISABLED */</span><span class="preprocessor"></span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> data_layouts.at(<a class="code" href="namespacearm__compute_1_1utility.xhtml#abb96ad5c7071ec3a47ea5f07e817a636">arm_compute::utility::tolower</a>(name));</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor">#ifndef ARM_COMPUTE_EXCEPTIONS_DISABLED</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; }</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">catch</span>(<span class="keyword">const</span> std::out_of_range &amp;)</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">throw</span> std::invalid_argument(name);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; }</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* ARM_COMPUTE_EXCEPTIONS_DISABLED */</span><span class="preprocessor"></span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1utility_xhtml_abb96ad5c7071ec3a47ea5f07e817a636"><div class="ttname"><a href="namespacearm__compute_1_1utility.xhtml#abb96ad5c7071ec3a47ea5f07e817a636">arm_compute::utility::tolower</a></div><div class="ttdeci">std::string tolower(std::string string)</div><div class="ttdoc">Convert string to lower case.</div><div class="ttdef"><b>Definition:</b> <a href="_utility_8h_source.xhtml#l00188">Utility.h:188</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010965</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000010966<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">NHWC</a>, and <a class="el" href="_utility_8h_source.xhtml#l00188">arm_compute::utility::tolower()</a>.</p>
10967
Jenkins52ba29e2018-08-29 15:32:11 +000010968</div>
10969</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000010970<a id="abb7e0f23a4f2e63f39433f158dad47ab"></a>
10971<h2 class="memtitle"><span class="permalink"><a href="#abb7e0f23a4f2e63f39433f158dad47ab">&#9670;&nbsp;</a></span>data_size_from_type()</h2>
10972
Anthony Barbier871448e2017-03-24 14:54:29 +000010973<div class="memitem">
10974<div class="memproto">
10975<table class="mlabels">
10976 <tr>
10977 <td class="mlabels-left">
10978 <table class="memname">
10979 <tr>
10980 <td class="memname">size_t arm_compute::data_size_from_type </td>
10981 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000010982 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000010983 <td class="paramname"><em>data_type</em></td><td>)</td>
10984 <td></td>
10985 </tr>
10986 </table>
10987 </td>
10988 <td class="mlabels-right">
10989<span class="mlabels"><span class="mlabel">inline</span></span> </td>
10990 </tr>
10991</table>
10992</div><div class="memdoc">
10993
10994<p>The size in bytes of the data type. </p>
10995<dl class="params"><dt>Parameters</dt><dd>
10996 <table class="params">
10997 <tr><td class="paramdir">[in]</td><td class="paramname">data_type</td><td>Input data type</td></tr>
10998 </table>
10999 </dd>
11000</dl>
11001<dl class="section return"><dt>Returns</dt><dd>The size in bytes of the data type </dd></dl>
11002
Jenkinsb9abeae2018-11-22 11:58:08 +000011003<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00108">108</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000011004<div class="fragment"><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;{</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>)</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; {</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">case</span> DataType::F64:</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">return</span> 8;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">case</span> DataType::SIZET:</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">return</span> <span class="keyword">sizeof</span>(size_t);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Invalid data type&quot;</span>);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; }</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
11005<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +000011006</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000011007<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::data_type</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">F64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">SIZET</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
11008
11009<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00437">NELogits1DMaxKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00040">CLGradientKernel::configure()</a>, <a class="el" href="_c_l_depth_convert_layer_kernel_8cpp_source.xhtml#l00073">CLDepthConvertLayerKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00043">GCGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_n_e_reduction_operation_kernel_8cpp_source.xhtml#l00983">NEReductionOperationKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00044">GCGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_8cpp_source.xhtml#l00051">NEGEMM::configure()</a>, <a class="el" href="validation_2_n_e_o_n_2_softmax_layer_8cpp_source.xhtml#l00065">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="_tensor_info_8h_source.xhtml#l00240">TensorInfo::element_size()</a>, <a class="el" href="_n_e_h_o_g_detector_kernel_8cpp_source.xhtml#l00095">NEHOGDetectorKernel::run()</a>, <a class="el" href="_n_e_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00829">NEGEMMLowpMatrixMultiplyKernel::run()</a>, <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00772">NEHOGBlockNormalizationKernel::run()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l01024">NEEdgeNonMaxSuppressionKernel::run()</a>, and <a class="el" href="_i_lut_allocator_8cpp_source.xhtml#l00055">ILutAllocator::size()</a>.</p>
11010
Anthony Barbier871448e2017-03-24 14:54:29 +000011011</div>
11012</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011013<a id="a01adc12d8e07c06cdb0f03c56a455bf3"></a>
11014<h2 class="memtitle"><span class="permalink"><a href="#a01adc12d8e07c06cdb0f03c56a455bf3">&#9670;&nbsp;</a></span>data_type_for_convolution()</h2>
11015
Anthony Barbier871448e2017-03-24 14:54:29 +000011016<div class="memitem">
11017<div class="memproto">
11018<table class="mlabels">
11019 <tr>
11020 <td class="mlabels-left">
11021 <table class="memname">
11022 <tr>
11023 <td class="memname">std::pair&lt;<a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&gt; arm_compute::data_type_for_convolution </td>
11024 <td>(</td>
11025 <td class="paramtype">const int16_t *&#160;</td>
11026 <td class="paramname"><em>conv_col</em>, </td>
11027 </tr>
11028 <tr>
11029 <td class="paramkey"></td>
11030 <td></td>
11031 <td class="paramtype">const int16_t *&#160;</td>
11032 <td class="paramname"><em>conv_row</em>, </td>
11033 </tr>
11034 <tr>
11035 <td class="paramkey"></td>
11036 <td></td>
11037 <td class="paramtype">size_t&#160;</td>
11038 <td class="paramname"><em>size</em>&#160;</td>
11039 </tr>
11040 <tr>
11041 <td></td>
11042 <td>)</td>
11043 <td></td><td></td>
11044 </tr>
11045 </table>
11046 </td>
11047 <td class="mlabels-right">
11048<span class="mlabels"><span class="mlabel">inline</span></span> </td>
11049 </tr>
11050</table>
11051</div><div class="memdoc">
11052
11053<p>Calculate accurary required by the horizontal and vertical convolution computations. </p>
11054<dl class="params"><dt>Parameters</dt><dd>
11055 <table class="params">
11056 <tr><td class="paramdir">[in]</td><td class="paramname">conv_col</td><td>Pointer to the vertical vector of the separated convolution filter </td></tr>
11057 <tr><td class="paramdir">[in]</td><td class="paramname">conv_row</td><td>Pointer to the horizontal vector of the convolution filter </td></tr>
11058 <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>Number of elements per vector of the separated matrix</td></tr>
11059 </table>
11060 </dd>
11061</dl>
11062<dl class="section return"><dt>Returns</dt><dd>The return type is a pair. The first element of the pair is the biggest data type needed for the first stage. The second element of the pair is the biggest data type needed for the second stage. </dd></dl>
11063
Jenkinsb9abeae2018-11-22 11:58:08 +000011064<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00706">706</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000011065<div class="fragment"><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160;{</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> first_stage = DataType::UNKNOWN;</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> second_stage = DataType::UNKNOWN;</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160;</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; <span class="keyword">auto</span> gez = [](<span class="keyword">const</span> int16_t &amp;v)</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; {</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; <span class="keywordflow">return</span> v &gt;= 0;</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; };</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; <span class="keyword">auto</span> accu_neg = [](<span class="keyword">const</span> <span class="keywordtype">int</span> &amp;first, <span class="keyword">const</span> <span class="keywordtype">int</span> &amp;second)</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; {</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; <span class="keywordflow">return</span> first + (second &lt; 0 ? second : 0);</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; };</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160;</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; <span class="keyword">auto</span> accu_pos = [](<span class="keyword">const</span> <span class="keywordtype">int</span> &amp;first, <span class="keyword">const</span> <span class="keywordtype">int</span> &amp;second)</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; {</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; <span class="keywordflow">return</span> first + (second &gt; 0 ? second : 0);</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; };</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; <span class="keyword">const</span> <span class="keywordtype">bool</span> only_positive_coefficients = std::all_of(conv_row, conv_row + size, gez) &amp;&amp; std::all_of(conv_col, conv_col + size, gez);</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160;</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; <span class="keywordflow">if</span>(only_positive_coefficients)</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; {</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> max_row_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_row, conv_row + size, 0) * UINT8_MAX;</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> max_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_col, conv_col + size, 0) * max_row_value;</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160;</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; first_stage = (max_row_value &lt;= UINT16_MAX) ? DataType::U16 : DataType::S32;</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160;</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; second_stage = (max_value &lt;= UINT16_MAX) ? DataType::U16 : DataType::S32;</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; }</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; {</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> min_row_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_row, conv_row + size, 0, accu_neg) * UINT8_MAX;</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> max_row_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_row, conv_row + size, 0, accu_pos) * UINT8_MAX;</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> neg_coeffs_sum = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_col, conv_col + size, 0, accu_neg);</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> pos_coeffs_sum = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(conv_col, conv_col + size, 0, accu_pos);</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> min_value = neg_coeffs_sum * max_row_value + pos_coeffs_sum * min_row_value;</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> max_value = neg_coeffs_sum * min_row_value + pos_coeffs_sum * max_row_value;</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160;</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; first_stage = ((INT16_MIN &lt;= min_row_value) &amp;&amp; (max_row_value &lt;= INT16_MAX)) ? DataType::S16 : DataType::S32;</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160;</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; second_stage = ((INT16_MIN &lt;= min_value) &amp;&amp; (max_value &lt;= INT16_MAX)) ? DataType::S16 : DataType::S32;</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; }</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160;</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; <span class="keywordflow">return</span> std::make_pair(first_stage, second_stage);</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160;}</div><div class="ttc" id="accumulate_8cl_xhtml_a00e540076dd545ad59ac7482f8cdf514"><div class="ttname"><a href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">accumulate</a></div><div class="ttdeci">__kernel void accumulate(__global uchar *input_ptr, uint input_stride_x, uint input_step_x, uint input_stride_y, uint input_step_y, uint input_offset_first_element_in_bytes, __global uchar *accu_ptr, uint accu_stride_x, uint accu_step_x, uint accu_stride_y, uint accu_step_y, uint accu_offset_first_element_in_bytes)</div><div class="ttdoc">This function accumulates an input image into output image.</div><div class="ttdef"><b>Definition:</b> <a href="accumulate_8cl_source.xhtml#l00041">accumulate.cl:41</a></div></div>
11066<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Available data types.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00074">Types.h:74</a></div></div>
11067</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000011068<p class="reference">References <a class="el" href="accumulate_8cl_source.xhtml#l00041">accumulate()</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
11069
11070<p class="reference">Referenced by <a class="el" href="_c_l_convolution_8cpp_source.xhtml#l00056">CLConvolutionSquare&lt; matrix_size &gt;::configure()</a>, and <a class="el" href="_n_e_convolution_8cpp_source.xhtml#l00057">NEConvolutionSquare&lt; matrix_size &gt;::configure()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000011071
Anthony Barbier871448e2017-03-24 14:54:29 +000011072</div>
11073</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011074<a id="a3992df9e8723140a53e49dc194d89ef5"></a>
11075<h2 class="memtitle"><span class="permalink"><a href="#a3992df9e8723140a53e49dc194d89ef5">&#9670;&nbsp;</a></span>data_type_for_convolution_matrix()</h2>
11076
Anthony Barbier871448e2017-03-24 14:54:29 +000011077<div class="memitem">
11078<div class="memproto">
11079<table class="mlabels">
11080 <tr>
11081 <td class="mlabels-left">
11082 <table class="memname">
11083 <tr>
11084 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> arm_compute::data_type_for_convolution_matrix </td>
11085 <td>(</td>
11086 <td class="paramtype">const int16_t *&#160;</td>
11087 <td class="paramname"><em>conv</em>, </td>
11088 </tr>
11089 <tr>
11090 <td class="paramkey"></td>
11091 <td></td>
11092 <td class="paramtype">size_t&#160;</td>
11093 <td class="paramname"><em>size</em>&#160;</td>
11094 </tr>
11095 <tr>
11096 <td></td>
11097 <td>)</td>
11098 <td></td><td></td>
11099 </tr>
11100 </table>
11101 </td>
11102 <td class="mlabels-right">
11103<span class="mlabels"><span class="mlabel">inline</span></span> </td>
11104 </tr>
11105</table>
11106</div><div class="memdoc">
11107
11108<p>Calculate the accuracy required by the squared convolution calculation. </p>
11109<dl class="params"><dt>Parameters</dt><dd>
11110 <table class="params">
11111 <tr><td class="paramdir">[in]</td><td class="paramname">conv</td><td>Pointer to the squared convolution matrix </td></tr>
11112 <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>The total size of the convolution matrix</td></tr>
11113 </table>
11114 </dd>
11115</dl>
11116<dl class="section return"><dt>Returns</dt><dd>The return is the biggest data type needed to do the convolution </dd></dl>
11117
Jenkinsb9abeae2018-11-22 11:58:08 +000011118<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00762">762</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000011119<div class="fragment"><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160;{</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; <span class="keyword">auto</span> gez = [](<span class="keyword">const</span> int16_t v)</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; {</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; <span class="keywordflow">return</span> v &gt;= 0;</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; };</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160;</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; <span class="keyword">const</span> <span class="keywordtype">bool</span> only_positive_coefficients = std::all_of(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a> + size, gez);</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160;</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; <span class="keywordflow">if</span>(only_positive_coefficients)</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; {</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> max_conv_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a> + size, 0) * UINT8_MAX;</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; <span class="keywordflow">if</span>(max_conv_value &lt;= UINT16_MAX)</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; {</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; <span class="keywordflow">return</span> DataType::U16;</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; }</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; {</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; <span class="keywordflow">return</span> DataType::S32;</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; }</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; }</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; {</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> min_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a> + size, 0, [](<span class="keywordtype">int</span> a, <span class="keywordtype">int</span> b)</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; {</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; <span class="keywordflow">return</span> b &lt; 0 ? a + b : a;</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; })</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; * UINT8_MAX;</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160;</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> max_value = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a>, <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a> + size, 0, [](<span class="keywordtype">int</span> a, <span class="keywordtype">int</span> b)</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; {</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; <span class="keywordflow">return</span> b &gt; 0 ? a + b : a;</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; })</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; * UINT8_MAX;</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160;</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; <span class="keywordflow">if</span>((INT16_MIN &lt;= min_value) &amp;&amp; (INT16_MAX &gt;= max_value))</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; {</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; <span class="keywordflow">return</span> DataType::S16;</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; }</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; {</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; <span class="keywordflow">return</span> DataType::S32;</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160; }</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; }</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_adab2e84e4e20f041fdcd075e2864b132"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">arm_compute::test::validation::conv</a></div><div class="ttdeci">int16_t conv[25]</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_8cpp_source.xhtml#l00125">Convolution.cpp:125</a></div></div>
11120<div class="ttc" id="accumulate_8cl_xhtml_a00e540076dd545ad59ac7482f8cdf514"><div class="ttname"><a href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">accumulate</a></div><div class="ttdeci">__kernel void accumulate(__global uchar *input_ptr, uint input_stride_x, uint input_step_x, uint input_stride_y, uint input_step_y, uint input_offset_first_element_in_bytes, __global uchar *accu_ptr, uint accu_stride_x, uint accu_step_x, uint accu_stride_y, uint accu_step_y, uint accu_offset_first_element_in_bytes)</div><div class="ttdoc">This function accumulates an input image into output image.</div><div class="ttdef"><b>Definition:</b> <a href="accumulate_8cl_source.xhtml#l00041">accumulate.cl:41</a></div></div>
11121</div><!-- fragment -->
11122<p class="reference">References <a class="el" href="accumulate_8cl_source.xhtml#l00041">accumulate()</a>, <a class="el" href="validation_2_c_l_2_convolution_8cpp_source.xhtml#l00125">arm_compute::test::validation::conv</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000011123
11124<p class="reference">Referenced by <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00057">CLConvolutionKernel&lt; matrix_size &gt;::configure()</a>, and <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00246">CLConvolutionRectangleKernel::configure()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000011125
Anthony Barbier871448e2017-03-24 14:54:29 +000011126</div>
11127</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011128<a id="a59846ef5ca75cd81cdb7e8a1ce08f9db"></a>
11129<h2 class="memtitle"><span class="permalink"><a href="#a59846ef5ca75cd81cdb7e8a1ce08f9db">&#9670;&nbsp;</a></span>data_type_from_format()</h2>
11130
Anthony Barbier871448e2017-03-24 14:54:29 +000011131<div class="memitem">
11132<div class="memproto">
11133<table class="mlabels">
11134 <tr>
11135 <td class="mlabels-left">
11136 <table class="memname">
11137 <tr>
11138 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> arm_compute::data_type_from_format </td>
11139 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011140 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000011141 <td class="paramname"><em>format</em></td><td>)</td>
11142 <td></td>
11143 </tr>
11144 </table>
11145 </td>
11146 <td class="mlabels-right">
11147<span class="mlabels"><span class="mlabel">inline</span></span> </td>
11148 </tr>
11149</table>
11150</div><div class="memdoc">
11151
11152<p>Return the data type used by a given single-planar pixel format. </p>
11153<dl class="params"><dt>Parameters</dt><dd>
11154 <table class="params">
11155 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>Input format</td></tr>
11156 </table>
11157 </dd>
11158</dl>
11159<dl class="section return"><dt>Returns</dt><dd>The size in bytes of the pixel format </dd></dl>
11160
Jenkinsb9abeae2018-11-22 11:58:08 +000011161<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00208">208</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000011162<div class="fragment"><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;{</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; {</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keywordflow">return</span> DataType::U8;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordflow">return</span> DataType::U16;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">return</span> DataType::S16;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="keywordflow">return</span> DataType::U32;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">return</span> DataType::S32;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keywordflow">return</span> DataType::F16;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">return</span> DataType::F32;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="comment">//Doesn&#39;t make sense for planar formats:</span></div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported data_type for given format&quot;</span>);</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keywordflow">return</span> DataType::UNKNOWN;</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; }</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
11163</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000011164<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011165
Jenkinsb9abeae2018-11-22 11:58:08 +000011166<p class="reference">Referenced by <a class="el" href="validation_2_c_l_2_canny_edge_8cpp_source.xhtml#l00058">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="_simple_tensor_8h_source.xhtml#l00358">SimpleTensor&lt; uint8_t &gt;::data_type()</a>, <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00104">TensorInfo::init()</a>, <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00173">TensorInfo::init_auto_padding()</a>, and <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00325">TensorInfo::set_format()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000011167
Anthony Barbierdbdab852017-06-23 15:42:00 +010011168</div>
11169</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011170<a id="a307a55b07dc70dc9177ff26543b1c66f"></a>
11171<h2 class="memtitle"><span class="permalink"><a href="#a307a55b07dc70dc9177ff26543b1c66f">&#9670;&nbsp;</a></span>data_type_from_name()</h2>
11172
Jenkins52ba29e2018-08-29 15:32:11 +000011173<div class="memitem">
11174<div class="memproto">
11175 <table class="memname">
11176 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000011177 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a> data_type_from_name </td>
Jenkins52ba29e2018-08-29 15:32:11 +000011178 <td>(</td>
11179 <td class="paramtype">const std::string &amp;&#160;</td>
11180 <td class="paramname"><em>name</em></td><td>)</td>
11181 <td></td>
11182 </tr>
11183 </table>
11184</div><div class="memdoc">
11185
11186<p>Converts a string to a strong types enumeration <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>. </p>
11187<dl class="params"><dt>Parameters</dt><dd>
11188 <table class="params">
11189 <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>String to convert</td></tr>
11190 </table>
11191 </dd>
11192</dl>
11193<dl class="section return"><dt>Returns</dt><dd>Converted DataType enumeration </dd></dl>
11194
Jenkinsb9abeae2018-11-22 11:58:08 +000011195<p class="definition">Definition at line <a class="el" href="_type_loader_8cpp_source.xhtml#l00032">32</a> of file <a class="el" href="_type_loader_8cpp_source.xhtml">TypeLoader.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000011196<div class="fragment"><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;{</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> std::map&lt;std::string, arm_compute::DataType&gt; <a class="code" href="namespacearm__compute_1_1test_1_1benchmark.xhtml#aab9a2ff74a27ae837d32a79a38952228">data_types</a> =</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; {</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; { <span class="stringliteral">&quot;f16&quot;</span>, DataType::F16 },</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; { <span class="stringliteral">&quot;f32&quot;</span>, DataType::F32 },</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; { <span class="stringliteral">&quot;qasymm8&quot;</span>, DataType::QASYMM8 },</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; };</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#ifndef ARM_COMPUTE_EXCEPTIONS_DISABLED</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordflow">try</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; {</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* ARM_COMPUTE_EXCEPTIONS_DISABLED */</span><span class="preprocessor"></span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1test_1_1benchmark.xhtml#aab9a2ff74a27ae837d32a79a38952228">data_types</a>.at(<a class="code" href="namespacearm__compute_1_1utility.xhtml#abb96ad5c7071ec3a47ea5f07e817a636">arm_compute::utility::tolower</a>(name));</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#ifndef ARM_COMPUTE_EXCEPTIONS_DISABLED</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; }</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">catch</span>(<span class="keyword">const</span> std::out_of_range &amp;)</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; {</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">throw</span> std::invalid_argument(name);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; }</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* ARM_COMPUTE_EXCEPTIONS_DISABLED */</span><span class="preprocessor"></span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1benchmark_xhtml_aab9a2ff74a27ae837d32a79a38952228"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1benchmark.xhtml#aab9a2ff74a27ae837d32a79a38952228">arm_compute::test::benchmark::data_types</a></div><div class="ttdeci">const auto data_types</div><div class="ttdef"><b>Definition:</b> <a href="benchmark_2_c_l_2_depthwise_convolution_layer_8cpp_source.xhtml#l00042">DepthwiseConvolutionLayer.cpp:42</a></div></div>
11197<div class="ttc" id="namespacearm__compute_1_1utility_xhtml_abb96ad5c7071ec3a47ea5f07e817a636"><div class="ttname"><a href="namespacearm__compute_1_1utility.xhtml#abb96ad5c7071ec3a47ea5f07e817a636">arm_compute::utility::tolower</a></div><div class="ttdeci">std::string tolower(std::string string)</div><div class="ttdoc">Convert string to lower case.</div><div class="ttdef"><b>Definition:</b> <a href="_utility_8h_source.xhtml#l00188">Utility.h:188</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011198</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000011199<p class="reference">References <a class="el" href="benchmark_2_c_l_2_depthwise_convolution_layer_8cpp_source.xhtml#l00042">arm_compute::test::benchmark::data_types</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, and <a class="el" href="_utility_8h_source.xhtml#l00188">arm_compute::utility::tolower()</a>.</p>
11200
Jenkins52ba29e2018-08-29 15:32:11 +000011201</div>
11202</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011203<a id="a49d307dcc8f16084a061e1b6e8140eb7"></a>
11204<h2 class="memtitle"><span class="permalink"><a href="#a49d307dcc8f16084a061e1b6e8140eb7">&#9670;&nbsp;</a></span>deconvolution_output_dimensions()</h2>
11205
Anthony Barbierdbdab852017-06-23 15:42:00 +010011206<div class="memitem">
11207<div class="memproto">
11208 <table class="memname">
11209 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000011210 <td class="memname">const std::pair&lt; unsigned int, unsigned int &gt; deconvolution_output_dimensions </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011211 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011212 <td class="paramtype">unsigned int&#160;</td>
11213 <td class="paramname"><em>in_width</em>, </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011214 </tr>
11215 <tr>
11216 <td class="paramkey"></td>
11217 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011218 <td class="paramtype">unsigned int&#160;</td>
11219 <td class="paramname"><em>in_height</em>, </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011220 </tr>
11221 <tr>
11222 <td class="paramkey"></td>
11223 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011224 <td class="paramtype">unsigned int&#160;</td>
11225 <td class="paramname"><em>kernel_width</em>, </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011226 </tr>
11227 <tr>
11228 <td class="paramkey"></td>
11229 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011230 <td class="paramtype">unsigned int&#160;</td>
11231 <td class="paramname"><em>kernel_height</em>, </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011232 </tr>
11233 <tr>
11234 <td class="paramkey"></td>
11235 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011236 <td class="paramtype">unsigned int&#160;</td>
11237 <td class="paramname"><em>padx</em>, </td>
11238 </tr>
11239 <tr>
11240 <td class="paramkey"></td>
11241 <td></td>
11242 <td class="paramtype">unsigned int&#160;</td>
11243 <td class="paramname"><em>pady</em>, </td>
11244 </tr>
11245 <tr>
11246 <td class="paramkey"></td>
11247 <td></td>
11248 <td class="paramtype">unsigned int&#160;</td>
Anthony Barbierf45d5a92018-01-24 16:23:15 +000011249 <td class="paramname"><em>stride_x</em>, </td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011250 </tr>
11251 <tr>
11252 <td class="paramkey"></td>
11253 <td></td>
Anthony Barbierf45d5a92018-01-24 16:23:15 +000011254 <td class="paramtype">unsigned int&#160;</td>
11255 <td class="paramname"><em>stride_y</em>&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011256 </tr>
11257 <tr>
11258 <td></td>
11259 <td>)</td>
11260 <td></td><td></td>
11261 </tr>
11262 </table>
11263</div><div class="memdoc">
11264
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011265<p>Returns expected width and height of the deconvolution's output tensor. </p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011266<dl class="params"><dt>Parameters</dt><dd>
11267 <table class="params">
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011268 <tr><td class="paramdir">[in]</td><td class="paramname">in_width</td><td>Width of input tensor (Number of columns) </td></tr>
11269 <tr><td class="paramdir">[in]</td><td class="paramname">in_height</td><td>Height of input tensor (Number of rows) </td></tr>
Jenkins514be652019-02-28 12:25:18 +000011270 <tr><td class="paramdir">[in]</td><td class="paramname">kernel_width</td><td><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> width. </td></tr>
11271 <tr><td class="paramdir">[in]</td><td class="paramname">kernel_height</td><td><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> height. </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011272 <tr><td class="paramdir">[in]</td><td class="paramname">padx</td><td>X axis padding. </td></tr>
11273 <tr><td class="paramdir">[in]</td><td class="paramname">pady</td><td>Y axis padding. </td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +000011274 <tr><td class="paramdir">[in]</td><td class="paramname">stride_x</td><td>X axis input stride. </td></tr>
11275 <tr><td class="paramdir">[in]</td><td class="paramname">stride_y</td><td>Y axis input stride.</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011276 </table>
11277 </dd>
11278</dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011279<dl class="section return"><dt>Returns</dt><dd>A pair with the new width in the first position and the new height in the second. </dd></dl>
11280
Jenkins514be652019-02-28 12:25:18 +000011281<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00346">346</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
11282<div class="fragment"><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;{</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(in_width &lt; 1 || in_height &lt; 1);</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(((in_width - 1) * stride_x + kernel_width) &lt; 2 * padx);</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(((in_height - 1) * stride_y + kernel_height) &lt; 2 * pady);</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> w = stride_x * (in_width - 1) + kernel_width - 2 * padx;</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> h = stride_y * (in_height - 1) + kernel_height - 2 * pady;</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">return</span> std::make_pair&lt;unsigned int, unsigned int&gt;(w, h);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
11283</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000011284<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
11285
Jenkins514be652019-02-28 12:25:18 +000011286<p class="reference">Referenced by <a class="el" href="_deconvolution_layer_node_8cpp_source.xhtml#l00052">DeconvolutionLayerNode::compute_output_descriptor()</a>, <a class="el" href="_c_l_deconvolution_layer_8cpp_source.xhtml#l00110">CLDeconvolutionLayer::configure()</a>, <a class="el" href="_n_e_deconvolution_layer_8cpp_source.xhtml#l00103">NEDeconvolutionLayer::configure()</a>, <a class="el" href="_n_e_o_n_2_deconvolution_layer_8cpp_source.xhtml#l00066">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="_c_l_deconvolution_layer_8cpp_source.xhtml#l00051">CLDeconvolutionLayer::validate()</a>, and <a class="el" href="_n_e_deconvolution_layer_8cpp_source.xhtml#l00050">NEDeconvolutionLayer::validate()</a>.</p>
11287
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011288</div>
11289</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011290<a id="ad656a27ce8a507e31096ca45683ba9a5"></a>
11291<h2 class="memtitle"><span class="permalink"><a href="#ad656a27ce8a507e31096ca45683ba9a5">&#9670;&nbsp;</a></span>delta_bilinear_c1()</h2>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011292
Anthony Barbierdbdab852017-06-23 15:42:00 +010011293<div class="memitem">
11294<div class="memproto">
11295<table class="mlabels">
11296 <tr>
11297 <td class="mlabels-left">
11298 <table class="memname">
11299 <tr>
Kaizen8938bd32017-09-28 14:38:23 +010011300 <td class="memname">T arm_compute::delta_bilinear_c1 </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011301 <td>(</td>
Kaizen8938bd32017-09-28 14:38:23 +010011302 <td class="paramtype">const T *&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011303 <td class="paramname"><em>pixel_ptr</em>, </td>
11304 </tr>
11305 <tr>
11306 <td class="paramkey"></td>
11307 <td></td>
11308 <td class="paramtype">size_t&#160;</td>
11309 <td class="paramname"><em>stride</em>, </td>
11310 </tr>
11311 <tr>
11312 <td class="paramkey"></td>
11313 <td></td>
11314 <td class="paramtype">float&#160;</td>
11315 <td class="paramname"><em>dx</em>, </td>
11316 </tr>
11317 <tr>
11318 <td class="paramkey"></td>
11319 <td></td>
11320 <td class="paramtype">float&#160;</td>
11321 <td class="paramname"><em>dy</em>&#160;</td>
11322 </tr>
11323 <tr>
11324 <td></td>
11325 <td>)</td>
11326 <td></td><td></td>
11327 </tr>
11328 </table>
11329 </td>
11330 <td class="mlabels-right">
11331<span class="mlabels"><span class="mlabel">inline</span></span> </td>
11332 </tr>
11333</table>
11334</div><div class="memdoc">
11335
11336<p>Computes bilinear interpolation using the pointer to the top-left pixel and the pixel's distance between the real coordinates and the smallest following integer coordinates. </p>
Kaizen8938bd32017-09-28 14:38:23 +010011337<p>Input must be in single channel format.</p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011338<dl class="params"><dt>Parameters</dt><dd>
11339 <table class="params">
Kaizen8938bd32017-09-28 14:38:23 +010011340 <tr><td class="paramdir">[in]</td><td class="paramname">pixel_ptr</td><td>Pointer to the top-left pixel value of a single channel input. </td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011341 <tr><td class="paramdir">[in]</td><td class="paramname">stride</td><td>Stride to access the bottom-left and bottom-right pixel values </td></tr>
11342 <tr><td class="paramdir">[in]</td><td class="paramname">dx</td><td>Pixel's distance between the X real coordinate and the smallest X following integer </td></tr>
11343 <tr><td class="paramdir">[in]</td><td class="paramname">dy</td><td>Pixel's distance between the Y real coordinate and the smallest Y following integer</td></tr>
11344 </table>
11345 </dd>
11346</dl>
11347<dl class="section note"><dt>Note</dt><dd>dx and dy must be in the range [0, 1.0]</dd></dl>
11348<dl class="section return"><dt>Returns</dt><dd>The bilinear interpolated pixel value </dd></dl>
11349
Jenkinsb9abeae2018-11-22 11:58:08 +000011350<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00127">127</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000011351<div class="fragment"><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;{</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(pixel_ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> dx1 = 1.0f - dx;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> dy1 = 1.0f - dy;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keyword">const</span> T a00 = *pixel_ptr;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keyword">const</span> T a01 = *(pixel_ptr + 1);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keyword">const</span> T a10 = *(pixel_ptr + stride);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keyword">const</span> T a11 = *(pixel_ptr + stride + 1);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> w1 = dx1 * dy1;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> w2 = dx * dy1;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> w3 = dx1 * dy;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> w4 = dx * dy;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">return</span> static_cast&lt;T&gt;(a00 * w1 + a01 * w2 + a10 * w3 + a11 * w4);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
11352</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000011353<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011354
Jenkins514be652019-02-28 12:25:18 +000011355<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00244">pixel_bilinear_c1()</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00271">pixel_bilinear_c1_clamp()</a>.</p>
11356
11357</div>
11358</div>
11359<a id="ad863f23e0037a10bacad6c483ab4e663"></a>
11360<h2 class="memtitle"><span class="permalink"><a href="#ad863f23e0037a10bacad6c483ab4e663">&#9670;&nbsp;</a></span>delta_bilinear_c1_quantized()</h2>
11361
11362<div class="memitem">
11363<div class="memproto">
11364<table class="mlabels">
11365 <tr>
11366 <td class="mlabels-left">
11367 <table class="memname">
11368 <tr>
11369 <td class="memname">uint8_t arm_compute::delta_bilinear_c1_quantized </td>
11370 <td>(</td>
11371 <td class="paramtype">const uint8_t *&#160;</td>
11372 <td class="paramname"><em>pixel_ptr</em>, </td>
11373 </tr>
11374 <tr>
11375 <td class="paramkey"></td>
11376 <td></td>
11377 <td class="paramtype">size_t&#160;</td>
11378 <td class="paramname"><em>stride</em>, </td>
11379 </tr>
11380 <tr>
11381 <td class="paramkey"></td>
11382 <td></td>
11383 <td class="paramtype">float&#160;</td>
11384 <td class="paramname"><em>dx</em>, </td>
11385 </tr>
11386 <tr>
11387 <td class="paramkey"></td>
11388 <td></td>
11389 <td class="paramtype">float&#160;</td>
11390 <td class="paramname"><em>dy</em>, </td>
11391 </tr>
11392 <tr>
11393 <td class="paramkey"></td>
11394 <td></td>
11395 <td class="paramtype"><a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a>&#160;</td>
11396 <td class="paramname"><em>iq_info</em>, </td>
11397 </tr>
11398 <tr>
11399 <td class="paramkey"></td>
11400 <td></td>
11401 <td class="paramtype"><a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a>&#160;</td>
11402 <td class="paramname"><em>oq_info</em>&#160;</td>
11403 </tr>
11404 <tr>
11405 <td></td>
11406 <td>)</td>
11407 <td></td><td></td>
11408 </tr>
11409 </table>
11410 </td>
11411 <td class="mlabels-right">
11412<span class="mlabels"><span class="mlabel">inline</span></span> </td>
11413 </tr>
11414</table>
11415</div><div class="memdoc">
11416
11417<p>Computes bilinear interpolation for quantized input and output, using the pointer to the top-left pixel and the pixel's distance between the real coordinates and the smallest following integer coordinates. </p>
11418<p>Input must be quantized and in single channel format.</p>
11419<dl class="params"><dt>Parameters</dt><dd>
11420 <table class="params">
11421 <tr><td class="paramdir">[in]</td><td class="paramname">pixel_ptr</td><td>Pointer to the top-left pixel value of a single channel input. </td></tr>
11422 <tr><td class="paramdir">[in]</td><td class="paramname">stride</td><td>Stride to access the bottom-left and bottom-right pixel values </td></tr>
11423 <tr><td class="paramdir">[in]</td><td class="paramname">dx</td><td>Pixel's distance between the X real coordinate and the smallest X following integer </td></tr>
11424 <tr><td class="paramdir">[in]</td><td class="paramname">dy</td><td>Pixel's distance between the Y real coordinate and the smallest Y following integer </td></tr>
11425 <tr><td class="paramdir">[in]</td><td class="paramname">iq_info</td><td>Input <a class="el" href="structarm__compute_1_1_quantization_info.xhtml" title="Quantization settings (used for QASYMM8 data type)">QuantizationInfo</a> </td></tr>
11426 <tr><td class="paramdir">[in]</td><td class="paramname">oq_info</td><td>Output <a class="el" href="structarm__compute_1_1_quantization_info.xhtml" title="Quantization settings (used for QASYMM8 data type)">QuantizationInfo</a></td></tr>
11427 </table>
11428 </dd>
11429</dl>
11430<dl class="section note"><dt>Note</dt><dd>dx and dy must be in the range [0, 1.0]</dd></dl>
11431<dl class="section return"><dt>Returns</dt><dd>The bilinear interpolated pixel value </dd></dl>
11432
11433<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00161">161</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
11434<div class="fragment"><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;{</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(pixel_ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> dx1 = 1.0f - dx;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> dy1 = 1.0f - dy;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> a00 = iq_info.dequantize(*pixel_ptr);</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> a01 = iq_info.dequantize(*(pixel_ptr + 1));</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> a10 = iq_info.dequantize(*(pixel_ptr + stride));</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> a11 = iq_info.dequantize(*(pixel_ptr + stride + 1));</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> w1 = dx1 * dy1;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> w2 = dx * dy1;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> w3 = dx1 * dy;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> w4 = dx * dy;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordtype">float</span> res = a00 * w1 + a01 * w2 + a10 * w3 + a11 * w4;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">return</span> static_cast&lt;uint8_t&gt;(oq_info.quantize(res, RoundingPolicy::TO_NEAREST_UP));</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011435</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000011436<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00211">QuantizationInfo::dequantize()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00199">QuantizationInfo::quantize()</a>, and <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95">TO_NEAREST_UP</a>.</p>
11437
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011438</div>
11439</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011440<a id="a6174495b626531de015ae2b810859287"></a>
11441<h2 class="memtitle"><span class="permalink"><a href="#a6174495b626531de015ae2b810859287">&#9670;&nbsp;</a></span>delta_linear_c1_x()</h2>
11442
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011443<div class="memitem">
11444<div class="memproto">
11445<table class="mlabels">
11446 <tr>
11447 <td class="mlabels-left">
11448 <table class="memname">
11449 <tr>
11450 <td class="memname">T arm_compute::delta_linear_c1_x </td>
11451 <td>(</td>
11452 <td class="paramtype">const T *&#160;</td>
11453 <td class="paramname"><em>pixel_ptr</em>, </td>
11454 </tr>
11455 <tr>
11456 <td class="paramkey"></td>
11457 <td></td>
11458 <td class="paramtype">float&#160;</td>
11459 <td class="paramname"><em>dx</em>&#160;</td>
11460 </tr>
11461 <tr>
11462 <td></td>
11463 <td>)</td>
11464 <td></td><td></td>
11465 </tr>
11466 </table>
11467 </td>
11468 <td class="mlabels-right">
11469<span class="mlabels"><span class="mlabel">inline</span></span> </td>
11470 </tr>
11471</table>
11472</div><div class="memdoc">
11473
11474<p>Computes linear interpolation using the pointer to the left pixel and the pixel's distance between the real coordinates and the smallest following integer coordinates. </p>
11475<p>Input must be in single channel format.</p>
11476<dl class="params"><dt>Parameters</dt><dd>
11477 <table class="params">
11478 <tr><td class="paramdir">[in]</td><td class="paramname">pixel_ptr</td><td>Pointer to the left pixel value of a single channel input. </td></tr>
11479 <tr><td class="paramdir">[in]</td><td class="paramname">dx</td><td>Pixel's distance between the X real coordinate and the smallest X following integer</td></tr>
11480 </table>
11481 </dd>
11482</dl>
11483<dl class="section note"><dt>Note</dt><dd>dx must be in the range [0, 1.0]</dd></dl>
11484<dl class="section return"><dt>Returns</dt><dd>The linear interpolated pixel value </dd></dl>
11485
Jenkins514be652019-02-28 12:25:18 +000011486<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00218">218</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
11487<div class="fragment"><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;{</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(pixel_ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keyword">const</span> T a00 = *pixel_ptr;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keyword">const</span> T a01 = *(pixel_ptr + 1);</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> dx1 = 1.0f - dx;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> w1 = dx1;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> w2 = dx;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">return</span> static_cast&lt;T&gt;(a00 * w1 + a01 * w2);</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
11488</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000011489<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011490
Jenkins514be652019-02-28 12:25:18 +000011491<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00271">pixel_bilinear_c1_clamp()</a>.</p>
11492
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011493</div>
11494</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011495<a id="ad5fa8bacf824e9538014bfb0dcdaab52"></a>
11496<h2 class="memtitle"><span class="permalink"><a href="#ad5fa8bacf824e9538014bfb0dcdaab52">&#9670;&nbsp;</a></span>delta_linear_c1_y()</h2>
11497
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011498<div class="memitem">
11499<div class="memproto">
11500<table class="mlabels">
11501 <tr>
11502 <td class="mlabels-left">
11503 <table class="memname">
11504 <tr>
11505 <td class="memname">T arm_compute::delta_linear_c1_y </td>
11506 <td>(</td>
11507 <td class="paramtype">const T *&#160;</td>
11508 <td class="paramname"><em>pixel_ptr</em>, </td>
11509 </tr>
11510 <tr>
11511 <td class="paramkey"></td>
11512 <td></td>
11513 <td class="paramtype">size_t&#160;</td>
11514 <td class="paramname"><em>stride</em>, </td>
11515 </tr>
11516 <tr>
11517 <td class="paramkey"></td>
11518 <td></td>
11519 <td class="paramtype">float&#160;</td>
11520 <td class="paramname"><em>dy</em>&#160;</td>
11521 </tr>
11522 <tr>
11523 <td></td>
11524 <td>)</td>
11525 <td></td><td></td>
11526 </tr>
11527 </table>
11528 </td>
11529 <td class="mlabels-right">
11530<span class="mlabels"><span class="mlabel">inline</span></span> </td>
11531 </tr>
11532</table>
11533</div><div class="memdoc">
11534
11535<p>Computes linear interpolation using the pointer to the top pixel and the pixel's distance between the real coordinates and the smallest following integer coordinates. </p>
11536<p>Input must be in single channel format.</p>
11537<dl class="params"><dt>Parameters</dt><dd>
11538 <table class="params">
11539 <tr><td class="paramdir">[in]</td><td class="paramname">pixel_ptr</td><td>Pointer to the top pixel value of a single channel input. </td></tr>
11540 <tr><td class="paramdir">[in]</td><td class="paramname">stride</td><td>Stride to access the bottom pixel value </td></tr>
11541 <tr><td class="paramdir">[in]</td><td class="paramname">dy</td><td>Pixel's distance between the Y real coordinate and the smallest Y following integer</td></tr>
11542 </table>
11543 </dd>
11544</dl>
11545<dl class="section note"><dt>Note</dt><dd>dy must be in the range [0, 1.0]</dd></dl>
11546<dl class="section return"><dt>Returns</dt><dd>The linear interpolated pixel value </dd></dl>
11547
Jenkins514be652019-02-28 12:25:18 +000011548<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00193">193</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
11549<div class="fragment"><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;{</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(pixel_ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> dy1 = 1.0f - dy;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keyword">const</span> T a00 = *pixel_ptr;</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keyword">const</span> T a10 = *(pixel_ptr + stride);</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> w1 = dy1;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> w3 = dy;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordflow">return</span> static_cast&lt;T&gt;(a00 * w1 + a10 * w3);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
11550</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000011551<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011552
Jenkins514be652019-02-28 12:25:18 +000011553<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00271">pixel_bilinear_c1_clamp()</a>.</p>
11554
Anthony Barbier871448e2017-03-24 14:54:29 +000011555</div>
11556</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011557<a id="a6c4a5ca34ebb51d4e2e119a110e4c8f0"></a>
11558<h2 class="memtitle"><span class="permalink"><a href="#a6c4a5ca34ebb51d4e2e119a110e4c8f0">&#9670;&nbsp;</a></span>device_supports_extension()</h2>
11559
Jenkinsb3a371b2018-05-23 11:36:53 +010011560<div class="memitem">
11561<div class="memproto">
11562 <table class="memname">
11563 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000011564 <td class="memname">bool device_supports_extension </td>
Jenkinsb3a371b2018-05-23 11:36:53 +010011565 <td>(</td>
11566 <td class="paramtype">const cl::Device &amp;&#160;</td>
11567 <td class="paramname"><em>device</em>, </td>
11568 </tr>
11569 <tr>
11570 <td class="paramkey"></td>
11571 <td></td>
11572 <td class="paramtype">const char *&#160;</td>
11573 <td class="paramname"><em>extension_name</em>&#160;</td>
11574 </tr>
11575 <tr>
11576 <td></td>
11577 <td>)</td>
11578 <td></td><td></td>
11579 </tr>
11580 </table>
11581</div><div class="memdoc">
11582
11583<p>Helper function to check whether a given extension is supported. </p>
11584<dl class="params"><dt>Parameters</dt><dd>
11585 <table class="params">
11586 <tr><td class="paramdir">[in]</td><td class="paramname">device</td><td>A CL device </td></tr>
11587 <tr><td class="paramdir">[in]</td><td class="paramname">extension_name</td><td>Name of the extension to be checked</td></tr>
11588 </table>
11589 </dd>
11590</dl>
11591<dl class="section return"><dt>Returns</dt><dd>True if the extension is supported </dd></dl>
11592
Jenkins514be652019-02-28 12:25:18 +000011593<p class="definition">Definition at line <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00183">183</a> of file <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000011594<div class="fragment"><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;{</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; std::string extensions = device.getInfo&lt;CL_DEVICE_EXTENSIONS&gt;();</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keyword">auto</span> pos = extensions.find(extension_name);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">return</span> (pos != std::string::npos);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000011595<p class="reference">Referenced by <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00135">arm_non_uniform_workgroup_supported()</a>, <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00155">dot8_acc_supported()</a>, <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00145">dot8_supported()</a>, <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00140">fp16_supported()</a>, and <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l01048">CLKernelLibrary::int64_base_atomics_supported()</a>.</p>
11596
Jenkinsb3a371b2018-05-23 11:36:53 +010011597</div>
11598</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011599<a id="acac1575c0edd329ceb4a54d9fe8dcb08"></a>
11600<h2 class="memtitle"><span class="permalink"><a href="#acac1575c0edd329ceb4a54d9fe8dcb08">&#9670;&nbsp;</a></span>DIV_CEIL()</h2>
11601
Anthony Barbier871448e2017-03-24 14:54:29 +000011602<div class="memitem">
11603<div class="memproto">
11604 <table class="memname">
11605 <tr>
11606 <td class="memname">constexpr auto arm_compute::DIV_CEIL </td>
11607 <td>(</td>
11608 <td class="paramtype">S&#160;</td>
11609 <td class="paramname"><em>val</em>, </td>
11610 </tr>
11611 <tr>
11612 <td class="paramkey"></td>
11613 <td></td>
11614 <td class="paramtype">T&#160;</td>
11615 <td class="paramname"><em>m</em>&#160;</td>
11616 </tr>
11617 <tr>
11618 <td></td>
11619 <td>)</td>
11620 <td></td><td> -&gt; decltype((val + m - 1) / m)
11621</td>
11622 </tr>
11623 </table>
11624</div><div class="memdoc">
11625
11626<p>Calculate the rounded up quotient of val / m. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010011627<dl class="params"><dt>Parameters</dt><dd>
11628 <table class="params">
11629 <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>Value to divide and round up. </td></tr>
11630 <tr><td class="paramdir">[in]</td><td class="paramname">m</td><td>Value to divide by.</td></tr>
11631 </table>
11632 </dd>
11633</dl>
11634<dl class="section return"><dt>Returns</dt><dd>the result. </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000011635
Jenkinsb9abeae2018-11-22 11:58:08 +000011636<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00052">52</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
11637<div class="fragment"><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;{</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">return</span> (val + m - 1) / m;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000011638<p class="reference">Referenced by <a class="el" href="_shape_calculator_8h_source.xhtml#l00260">arm_compute::misc::shape_calculator::compute_reshaped_depthwise_weights_shape()</a>.</p>
11639
Jenkinsb9abeae2018-11-22 11:58:08 +000011640</div>
11641</div>
11642<a id="a4878daab91c6d7173de20283766e0c2c"></a>
11643<h2 class="memtitle"><span class="permalink"><a href="#a4878daab91c6d7173de20283766e0c2c">&#9670;&nbsp;</a></span>dot8_acc_supported()</h2>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011644
Jenkins52ba29e2018-08-29 15:32:11 +000011645<div class="memitem">
11646<div class="memproto">
11647 <table class="memname">
11648 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000011649 <td class="memname">bool dot8_acc_supported </td>
Jenkins52ba29e2018-08-29 15:32:11 +000011650 <td>(</td>
11651 <td class="paramtype">const cl::Device &amp;&#160;</td>
11652 <td class="paramname"><em>device</em></td><td>)</td>
11653 <td></td>
11654 </tr>
11655 </table>
11656</div><div class="memdoc">
11657
11658<p>Helper function to check whether the cl_arm_integer_dot_product_accumulate_int8 extension is supported. </p>
11659<dl class="params"><dt>Parameters</dt><dd>
11660 <table class="params">
11661 <tr><td class="paramdir">[in]</td><td class="paramname">device</td><td>A CL device</td></tr>
11662 </table>
11663 </dd>
11664</dl>
11665<dl class="section return"><dt>Returns</dt><dd>True if the extension is supported </dd></dl>
11666
Jenkins514be652019-02-28 12:25:18 +000011667<p class="definition">Definition at line <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00155">155</a> of file <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
11668<div class="fragment"><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;{</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">device_supports_extension</a>(device, <span class="stringliteral">&quot;cl_arm_integer_dot_product_accumulate_int8&quot;</span>);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a6c4a5ca34ebb51d4e2e119a110e4c8f0"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">arm_compute::device_supports_extension</a></div><div class="ttdeci">bool device_supports_extension(const cl::Device &amp;device, const char *extension_name)</div><div class="ttdoc">Helper function to check whether a given extension is supported.</div><div class="ttdef"><b>Definition:</b> <a href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00183">CLHelpers.cpp:183</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011669</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000011670<p class="reference">References <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00183">device_supports_extension()</a>.</p>
11671
11672<p class="reference">Referenced by <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00964">CLKernelLibrary::create_kernel()</a>.</p>
11673
Jenkins52ba29e2018-08-29 15:32:11 +000011674</div>
11675</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011676<a id="ac07e02c0066cf540a5a2665fa7d54934"></a>
11677<h2 class="memtitle"><span class="permalink"><a href="#ac07e02c0066cf540a5a2665fa7d54934">&#9670;&nbsp;</a></span>dot8_supported()</h2>
11678
Jenkins52ba29e2018-08-29 15:32:11 +000011679<div class="memitem">
11680<div class="memproto">
11681 <table class="memname">
11682 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000011683 <td class="memname">bool dot8_supported </td>
Jenkins52ba29e2018-08-29 15:32:11 +000011684 <td>(</td>
11685 <td class="paramtype">const cl::Device &amp;&#160;</td>
11686 <td class="paramname"><em>device</em></td><td>)</td>
11687 <td></td>
11688 </tr>
11689 </table>
11690</div><div class="memdoc">
11691
11692<p>Helper function to check whether the cl_arm_integer_dot_product_int8 extension is supported. </p>
11693<dl class="params"><dt>Parameters</dt><dd>
11694 <table class="params">
11695 <tr><td class="paramdir">[in]</td><td class="paramname">device</td><td>A CL device</td></tr>
11696 </table>
11697 </dd>
11698</dl>
11699<dl class="section return"><dt>Returns</dt><dd>True if the extension is supported </dd></dl>
11700
Jenkins514be652019-02-28 12:25:18 +000011701<p class="definition">Definition at line <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00145">145</a> of file <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
11702<div class="fragment"><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;{</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; std::string device_name = device.getInfo&lt;CL_DEVICE_NAME&gt;();</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> gpu_target = <a class="code" href="namespacearm__compute.xhtml#a0dc6fb54ac0bbc7bf512fe0ca7414076">get_target_from_name</a>(device_name);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="comment">// SW_WORKAROUND: Workaround for DDK revision r14p0.to enable cl_arm_integer_dot_product_int8</span></div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; std::set&lt;GPUTarget&gt; sw_workaround_issue = { GPUTarget::G76 };</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">device_supports_extension</a>(device, <span class="stringliteral">&quot;cl_arm_integer_dot_product_int8&quot;</span>) || sw_workaround_issue.count(gpu_target) != 0);</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a0dc6fb54ac0bbc7bf512fe0ca7414076"><div class="ttname"><a href="namespacearm__compute.xhtml#a0dc6fb54ac0bbc7bf512fe0ca7414076">arm_compute::get_target_from_name</a></div><div class="ttdeci">GPUTarget get_target_from_name(const std::string &amp;device_name)</div><div class="ttdoc">Helper function to get the GPU target from a device name.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00127">GPUTarget.cpp:127</a></div></div>
11703<div class="ttc" id="namespacearm__compute_xhtml_a6c4a5ca34ebb51d4e2e119a110e4c8f0"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">arm_compute::device_supports_extension</a></div><div class="ttdeci">bool device_supports_extension(const cl::Device &amp;device, const char *extension_name)</div><div class="ttdoc">Helper function to check whether a given extension is supported.</div><div class="ttdef"><b>Definition:</b> <a href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00183">CLHelpers.cpp:183</a></div></div>
11704<div class="ttc" id="namespacearm__compute_xhtml_a735ac6c2a02e320969625308810444f3"><div class="ttname"><a href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">arm_compute::GPUTarget</a></div><div class="ttdeci">GPUTarget</div><div class="ttdoc">Available GPU Targets.</div><div class="ttdef"><b>Definition:</b> <a href="_g_p_u_target_8h_source.xhtml#l00034">GPUTarget.h:34</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011705</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000011706<p class="reference">References <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00183">device_supports_extension()</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">G76</a>, and <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00127">get_target_from_name()</a>.</p>
11707
11708<p class="reference">Referenced by <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00168">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_reshaped_kernel_8cpp_source.xhtml#l00172">CLGEMMLowpMatrixMultiplyReshapedKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00234">CLGEMMLowpMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_reduction_kernel_8cpp_source.xhtml#l00106">CLGEMMLowpMatrixAReductionKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00047">CLDepthwiseConvolutionLayer3x3::configure()</a>, <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00964">CLKernelLibrary::create_kernel()</a>, and <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00128">CLDepthwiseConvolutionLayer3x3::validate()</a>.</p>
11709
Jenkins52ba29e2018-08-29 15:32:11 +000011710</div>
11711</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011712<a id="a34b06c0cd94808a77b697e79880b84b0"></a>
11713<h2 class="memtitle"><span class="permalink"><a href="#a34b06c0cd94808a77b697e79880b84b0">&#9670;&nbsp;</a></span>element_size_from_data_type()</h2>
11714
Anthony Barbier871448e2017-03-24 14:54:29 +000011715<div class="memitem">
11716<div class="memproto">
11717<table class="mlabels">
11718 <tr>
11719 <td class="mlabels-left">
11720 <table class="memname">
11721 <tr>
11722 <td class="memname">size_t arm_compute::element_size_from_data_type </td>
11723 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011724 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000011725 <td class="paramname"><em>dt</em></td><td>)</td>
11726 <td></td>
11727 </tr>
11728 </table>
11729 </td>
11730 <td class="mlabels-right">
11731<span class="mlabels"><span class="mlabel">inline</span></span> </td>
11732 </tr>
11733</table>
11734</div><div class="memdoc">
11735
11736<p>The size in bytes of the data type. </p>
11737<dl class="params"><dt>Parameters</dt><dd>
11738 <table class="params">
11739 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td>Input data type</td></tr>
11740 </table>
11741 </dd>
11742</dl>
11743<dl class="section return"><dt>Returns</dt><dd>The size in bytes of the data type </dd></dl>
11744
Jenkinsb9abeae2018-11-22 11:58:08 +000011745<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00180">180</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000011746<div class="fragment"><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;{</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; {</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Undefined element size for given data type&quot;</span>);</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; }</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
11747</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000011748<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010011749
Jenkins514be652019-02-28 12:25:18 +000011750<p class="reference">Referenced by <a class="el" href="_c_l_direct_convolution_output_stage_kernel_8cpp_source.xhtml#l00129">CLDirectConvolutionLayerOutputStageKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00877">NEGradientKernel::configure()</a>, <a class="el" href="reference_2_depth_convert_layer_8cpp_source.xhtml#l00042">arm_compute::test::validation::reference::depth_convert()</a>, <a class="el" href="_simple_tensor_8h_source.xhtml#l00327">SimpleTensor&lt; uint8_t &gt;::element_size()</a>, <a class="el" href="_n_e_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00498">NENonMaximaSuppression3x3Kernel::run()</a>, <a class="el" href="_n_e_harris_corners_kernel_8cpp_source.xhtml#l00709">NEHarrisScoreKernel&lt; block_size &gt;::run()</a>, and <a class="el" href="_validation_8cpp_source.xhtml#l00177">arm_compute::test::validation::validate()</a>.</p>
11751
Anthony Barbier871448e2017-03-24 14:54:29 +000011752</div>
11753</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011754<a id="a5c7c5fe99682f92e5e09cf62fb02ac91"></a>
11755<h2 class="memtitle"><span class="permalink"><a href="#a5c7c5fe99682f92e5e09cf62fb02ac91">&#9670;&nbsp;</a></span>enqueue() <span class="overload">[1/2]</span></h2>
11756
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011757<div class="memitem">
11758<div class="memproto">
11759 <table class="memname">
11760 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000011761 <td class="memname">void enqueue </td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011762 <td>(</td>
11763 <td class="paramtype"><a class="el" href="classarm__compute_1_1_i_g_c_kernel.xhtml">IGCKernel</a> &amp;&#160;</td>
11764 <td class="paramname"><em>kernel</em>, </td>
11765 </tr>
11766 <tr>
11767 <td class="paramkey"></td>
11768 <td></td>
11769 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
11770 <td class="paramname"><em>window</em>, </td>
11771 </tr>
11772 <tr>
11773 <td class="paramkey"></td>
11774 <td></td>
11775 <td class="paramtype">const <a class="el" href="classarm__compute_1_1gles_1_1_n_d_range.xhtml">gles::NDRange</a> &amp;&#160;</td>
11776 <td class="paramname"><em>lws</em> = <code><a class="el" href="classarm__compute_1_1gles_1_1_n_d_range.xhtml">gles::NDRange</a>(1U,&#160;1U,&#160;1U)</code>&#160;</td>
11777 </tr>
11778 <tr>
11779 <td></td>
11780 <td>)</td>
11781 <td></td><td></td>
11782 </tr>
11783 </table>
11784</div><div class="memdoc">
11785
11786<p>Add the kernel to the command queue with the given window. </p>
11787<dl class="section note"><dt>Note</dt><dd>Depending on the size of the window, this might translate into several jobs being enqueued.</dd>
11788<dd>
11789If kernel-&gt;kernel() is empty then the function will return without adding anything to the queue.</dd></dl>
11790<dl class="params"><dt>Parameters</dt><dd>
11791 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000011792 <tr><td class="paramdir">[in]</td><td class="paramname">kernel</td><td><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> to enqueue </td></tr>
11793 <tr><td class="paramdir">[in]</td><td class="paramname">window</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> the kernel has to process. </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011794 <tr><td class="paramdir">[in]</td><td class="paramname">lws</td><td>Local workgroup size requested, by default (1, 1, 1)</td></tr>
11795 </table>
11796 </dd>
11797</dl>
11798<dl class="section note"><dt>Note</dt><dd>If any dimension of the lws is greater than the global workgroup size then no lws will be passed. </dd></dl>
11799
Jenkinsb9abeae2018-11-22 11:58:08 +000011800<p class="definition">Definition at line <a class="el" href="_i_g_c_kernel_8cpp_source.xhtml#l00041">41</a> of file <a class="el" href="_i_g_c_kernel_8cpp_source.xhtml">IGCKernel.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000011801<div class="fragment"><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;{</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <a class="code" href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a>(kernel);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordflow">if</span>(kernel.<a class="code" href="classarm__compute_1_1_i_g_c_kernel.xhtml#a3b8f9d088e013cfbb039fd0ebbe42589">kernel</a>().<a class="code" href="classarm__compute_1_1_g_c_kernel.xhtml#af88e933209c9201dfdafa052d3181aac">get_program</a>() == 0)</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; {</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; }</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>((0 == (window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>())) || (0 == (window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>())));</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>((((window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>()) % (window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>() * lws[0])) != 0),</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="stringliteral">&quot;window x end =%d, start=%d, step=%d, lws x=%d&quot;</span>, window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>(), window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>(), window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>(), lws[0]);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>((((window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>()) % (window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>() * lws[1])) != 0),</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="stringliteral">&quot;window y end =%d, start=%d, step=%d, lws y=%d&quot;</span>, window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>(), window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>(), window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>(), lws[1]);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>((((window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>()) % (window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>() * lws[2])) != 0),</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="stringliteral">&quot;window z end =%d, start=%d, step=%d, lws z=%d&quot;</span>, window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>(), window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>(), window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>(), lws[2]);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#af7682f051486a2d562206f70b2c212ab">glDispatchCompute</a>(((window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>()) / window.<a class="code" href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">x</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>()) / lws[0],</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; ((window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>()) / window.<a class="code" href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">y</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>()) / lws[1],</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; ((window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">end</a>() - window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">start</a>()) / window.<a class="code" href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">z</a>().<a class="code" href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">step</a>()) / lws[2]));</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;}</div><div class="ttc" id="_open_g_l_e_s_8h_xhtml_a496c7b08ac063d996956854207366913"><div class="ttname"><a href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a></div><div class="ttdeci">#define ARM_COMPUTE_GL_CHECK(x)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8h_source.xhtml#l00045">OpenGLES.h:45</a></div></div>
Jenkins514be652019-02-28 12:25:18 +000011802<div class="ttc" id="classarm__compute_1_1_window_1_1_dimension_xhtml_a918580dc9188825d67dbb203a43d02fe"><div class="ttname"><a href="classarm__compute_1_1_window_1_1_dimension.xhtml#a918580dc9188825d67dbb203a43d02fe">arm_compute::Window::Dimension::step</a></div><div class="ttdeci">constexpr int step() const</div><div class="ttdoc">Return the step of the dimension.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00095">Window.h:95</a></div></div>
11803<div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
11804<div class="ttc" id="classarm__compute_1_1_window_xhtml_a51a8c7a9d2fa20943c213e85eb8d9caf"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml#a51a8c7a9d2fa20943c213e85eb8d9caf">arm_compute::Window::z</a></div><div class="ttdeci">constexpr const Dimension &amp; z() const</div><div class="ttdoc">Alias to access the third dimension of the window.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00154">Window.h:154</a></div></div>
11805<div class="ttc" id="classarm__compute_1_1_i_g_c_kernel_xhtml_a3b8f9d088e013cfbb039fd0ebbe42589"><div class="ttname"><a href="classarm__compute_1_1_i_g_c_kernel.xhtml#a3b8f9d088e013cfbb039fd0ebbe42589">arm_compute::IGCKernel::kernel</a></div><div class="ttdeci">GCKernel &amp; kernel()</div><div class="ttdoc">Returns a reference to the GLES kernel of this object.</div><div class="ttdef"><b>Definition:</b> <a href="_i_g_c_kernel_8cpp_source.xhtml#l00069">IGCKernel.cpp:69</a></div></div>
11806<div class="ttc" id="_error_8h_xhtml_a6dc630a6ae9cc063b3924bcea8dee9d6"><div class="ttname"><a href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a></div><div class="ttdeci">#define ARM_COMPUTE_UNUSED(...)</div><div class="ttdoc">To avoid unused variables warnings.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00160">Error.h:160</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011807<div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_af7682f051486a2d562206f70b2c212ab"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#af7682f051486a2d562206f70b2c212ab">glDispatchCompute</a></div><div class="ttdeci">void GL_APIENTRY glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00542">OpenGLES.cpp:542</a></div></div>
Jenkins514be652019-02-28 12:25:18 +000011808<div class="ttc" id="classarm__compute_1_1_g_c_kernel_xhtml_af88e933209c9201dfdafa052d3181aac"><div class="ttname"><a href="classarm__compute_1_1_g_c_kernel.xhtml#af88e933209c9201dfdafa052d3181aac">arm_compute::GCKernel::get_program</a></div><div class="ttdeci">GLuint get_program() const</div><div class="ttdoc">Get program id.</div><div class="ttdef"><b>Definition:</b> <a href="_g_c_kernel_library_8h_source.xhtml#l00121">GCKernelLibrary.h:121</a></div></div>
11809<div class="ttc" id="classarm__compute_1_1_window_xhtml_a1b522b073f3ca32d24eb4e03495ef8a6"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml#a1b522b073f3ca32d24eb4e03495ef8a6">arm_compute::Window::y</a></div><div class="ttdeci">constexpr const Dimension &amp; y() const</div><div class="ttdoc">Alias to access the second dimension of the window.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00145">Window.h:145</a></div></div>
11810<div class="ttc" id="classarm__compute_1_1_window_1_1_dimension_xhtml_a0f590bfcf19110f44efc502e7b5c1d9e"><div class="ttname"><a href="classarm__compute_1_1_window_1_1_dimension.xhtml#a0f590bfcf19110f44efc502e7b5c1d9e">arm_compute::Window::Dimension::end</a></div><div class="ttdeci">constexpr int end() const</div><div class="ttdoc">Return the end of the dimension.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00090">Window.h:90</a></div></div>
11811<div class="ttc" id="classarm__compute_1_1_window_1_1_dimension_xhtml_ab24e31d1a4830bf79564ee902ec6c060"><div class="ttname"><a href="classarm__compute_1_1_window_1_1_dimension.xhtml#ab24e31d1a4830bf79564ee902ec6c060">arm_compute::Window::Dimension::start</a></div><div class="ttdeci">constexpr int start() const</div><div class="ttdoc">Return the start of the dimension.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00085">Window.h:85</a></div></div>
11812<div class="ttc" id="classarm__compute_1_1_window_xhtml_a273fd2ecdd45169b2f702f01a7e5e382"><div class="ttname"><a href="classarm__compute_1_1_window.xhtml#a273fd2ecdd45169b2f702f01a7e5e382">arm_compute::Window::x</a></div><div class="ttdeci">constexpr const Dimension &amp; x() const</div><div class="ttdoc">Alias to access the first dimension of the window.</div><div class="ttdef"><b>Definition:</b> <a href="_window_8h_source.xhtml#l00136">Window.h:136</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011813<div class="ttc" id="_error_8h_xhtml_a5bbdcf574d3f5e412fa6a1117911e67b"><div class="ttname"><a href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_MSG(cond,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00328">Error.h:328</a></div></div>
11814</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000011815<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="_open_g_l_e_s_8h_source.xhtml#l00045">ARM_COMPUTE_GL_CHECK</a>, <a class="el" href="_error_8h_source.xhtml#l00160">ARM_COMPUTE_UNUSED</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_g_c_kernel_library_8h_source.xhtml#l00121">GCKernel::get_program()</a>, <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00542">glDispatchCompute()</a>, <a class="el" href="_i_g_c_kernel_8cpp_source.xhtml#l00069">IGCKernel::kernel()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>, <a class="el" href="_window_8h_source.xhtml#l00145">Window::y()</a>, and <a class="el" href="_window_8h_source.xhtml#l00154">Window::z()</a>.</p>
11816
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011817</div>
11818</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011819<a id="a1e48b7cf7de6a52575088cb7082d2b3e"></a>
11820<h2 class="memtitle"><span class="permalink"><a href="#a1e48b7cf7de6a52575088cb7082d2b3e">&#9670;&nbsp;</a></span>enqueue() <span class="overload">[2/2]</span></h2>
11821
Anthony Barbier871448e2017-03-24 14:54:29 +000011822<div class="memitem">
11823<div class="memproto">
11824 <table class="memname">
11825 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000011826 <td class="memname">void enqueue </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000011827 <td>(</td>
11828 <td class="paramtype">cl::CommandQueue &amp;&#160;</td>
11829 <td class="paramname"><em>queue</em>, </td>
11830 </tr>
11831 <tr>
11832 <td class="paramkey"></td>
11833 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011834 <td class="paramtype"><a class="el" href="classarm__compute_1_1_i_c_l_kernel.xhtml">ICLKernel</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000011835 <td class="paramname"><em>kernel</em>, </td>
11836 </tr>
11837 <tr>
11838 <td class="paramkey"></td>
11839 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011840 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000011841 <td class="paramname"><em>window</em>, </td>
11842 </tr>
11843 <tr>
11844 <td class="paramkey"></td>
11845 <td></td>
11846 <td class="paramtype">const cl::NDRange &amp;&#160;</td>
Jenkinsb9abeae2018-11-22 11:58:08 +000011847 <td class="paramname"><em>lws_hint</em> = <code><a class="el" href="classarm__compute_1_1_c_l_kernel_library.xhtml#acba005f5ce2c62cbf3f94d074d9007aa">CLKernelLibrary::get</a>().default_ndrange()</code>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000011848 </tr>
11849 <tr>
11850 <td></td>
11851 <td>)</td>
11852 <td></td><td></td>
11853 </tr>
11854 </table>
11855</div><div class="memdoc">
11856
11857<p>Add the kernel to the command queue with the given window. </p>
11858<dl class="section note"><dt>Note</dt><dd>Depending on the size of the window, this might translate into several jobs being enqueued.</dd>
11859<dd>
11860If kernel-&gt;kernel() is empty then the function will return without adding anything to the queue.</dd></dl>
11861<dl class="params"><dt>Parameters</dt><dd>
11862 <table class="params">
11863 <tr><td class="paramdir">[in,out]</td><td class="paramname">queue</td><td>OpenCL command queue. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000011864 <tr><td class="paramdir">[in]</td><td class="paramname">kernel</td><td><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> to enqueue </td></tr>
11865 <tr><td class="paramdir">[in]</td><td class="paramname">window</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> the kernel has to process. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010011866 <tr><td class="paramdir">[in]</td><td class="paramname">lws_hint</td><td>Local workgroup size requested. Default is based on the device target.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000011867 </table>
11868 </dd>
11869</dl>
11870<dl class="section note"><dt>Note</dt><dd>If any dimension of the lws is greater than the global workgroup size then no lws will be passed. </dd></dl>
11871
Jenkinsb9abeae2018-11-22 11:58:08 +000011872<p class="definition">Definition at line <a class="el" href="_i_c_l_kernel_8cpp_source.xhtml#l00039">39</a> of file <a class="el" href="_i_c_l_kernel_8cpp_source.xhtml">ICLKernel.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000011873<div class="fragment"><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;{</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">if</span>(kernel.<a class="code" href="classarm__compute_1_1_i_c_l_kernel.xhtml#ae5121015ab09ece4d470f50c7ffe198e">kernel</a>()() == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; {</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; }</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; Coordinates::num_max_dimensions; ++i)</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; {</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(window[i].<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a>() == 0);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="comment">// Make sure that dimensions &gt; Z are 1</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>((i &gt;= 3) &amp;&amp; ((window[i].end() - window[i].start()) != 1));</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; }</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; cl::NDRange gws = ICLKernel::gws_from_window(window);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="comment">// Check for empty NDRange</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">if</span>(gws.dimensions() == 0)</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; {</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; }</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; cl::NDRange valid_lws;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">if</span>(lws_hint[0] * lws_hint[1] * lws_hint[2] &gt; kernel.<a class="code" href="classarm__compute_1_1_i_c_l_kernel.xhtml#abca336f832d730e8494049bd714df60a">get_max_workgroup_size</a>())</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; {</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; valid_lws = cl::NullRange;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; }</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; {</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; valid_lws = lws_hint;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; }</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; cl::NDRange lws = cl::NullRange;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">if</span>((valid_lws[0] &lt;= gws[0]) &amp;&amp; (valid_lws[1] &lt;= gws[1]) &amp;&amp; (valid_lws[2] &lt;= gws[2]))</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; {</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; lws = valid_lws;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; }</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; queue.enqueueNDRangeKernel(kernel.<a class="code" href="classarm__compute_1_1_i_c_l_kernel.xhtml#ae5121015ab09ece4d470f50c7ffe198e">kernel</a>(), cl::NullRange, gws, lws);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;}</div><div class="ttc" id="classarm__compute_1_1_i_c_l_kernel_xhtml_ae5121015ab09ece4d470f50c7ffe198e"><div class="ttname"><a href="classarm__compute_1_1_i_c_l_kernel.xhtml#ae5121015ab09ece4d470f50c7ffe198e">arm_compute::ICLKernel::kernel</a></div><div class="ttdeci">cl::Kernel &amp; kernel()</div><div class="ttdoc">Returns a reference to the OpenCL kernel of this object.</div><div class="ttdef"><b>Definition:</b> <a href="_i_c_l_kernel_8h_source.xhtml#l00087">ICLKernel.h:87</a></div></div>
11874<div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
11875<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a75b73e17c4ebe901e44af3b2b9846ab3"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">arm_compute::test::validation::step</a></div><div class="ttdeci">const int step</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_select_8cpp_source.xhtml#l00172">Select.cpp:172</a></div></div>
11876<div class="ttc" id="classarm__compute_1_1_i_c_l_kernel_xhtml_abca336f832d730e8494049bd714df60a"><div class="ttname"><a href="classarm__compute_1_1_i_c_l_kernel.xhtml#abca336f832d730e8494049bd714df60a">arm_compute::ICLKernel::get_max_workgroup_size</a></div><div class="ttdeci">size_t get_max_workgroup_size()</div><div class="ttdoc">Get the maximum workgroup size for the device the CLKernelLibrary uses.</div><div class="ttdef"><b>Definition:</b> <a href="_i_c_l_kernel_8cpp_source.xhtml#l00125">ICLKernel.cpp:125</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011877</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000011878<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_i_c_l_kernel_8cpp_source.xhtml#l00125">ICLKernel::get_max_workgroup_size()</a>, <a class="el" href="_i_c_l_kernel_8cpp_source.xhtml#l00134">ICLKernel::gws_from_window()</a>, <a class="el" href="_i_c_l_kernel_8h_source.xhtml#l00087">ICLKernel::kernel()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, and <a class="el" href="_c_l_2_select_8cpp_source.xhtml#l00172">arm_compute::test::validation::step</a>.</p>
11879
11880<p class="reference">Referenced by <a class="el" href="_i_c_l_simple2_d_kernel_8cpp_source.xhtml#l00033">ICLSimple2DKernel::run()</a>, <a class="el" href="_i_g_c_simple2_d_kernel_8cpp_source.xhtml#l00033">IGCSimple2DKernel::run()</a>, <a class="el" href="_i_c_l_simple3_d_kernel_8cpp_source.xhtml#l00033">ICLSimple3DKernel::run()</a>, <a class="el" href="_i_g_c_simple3_d_kernel_8cpp_source.xhtml#l00033">IGCSimple3DKernel::run()</a>, <a class="el" href="_g_c_transpose_kernel_8cpp_source.xhtml#l00123">GCTransposeKernel::run()</a>, <a class="el" href="_g_c_scale_kernel_8cpp_source.xhtml#l00137">GCScaleKernel::run()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00103">GCGEMMMatrixAccumulateBiasesKernel::run()</a>, <a class="el" href="_c_l_elementwise_operation_kernel_8cpp_source.xhtml#l00234">CLElementwiseOperationKernel::run()</a>, <a class="el" href="_c_l_element_wise_unary_layer_kernel_8cpp_source.xhtml#l00104">CLElementWiseUnaryLayerKernel::run()</a>, <a class="el" href="_c_l_gaussian_pyramid_kernel_8cpp_source.xhtml#l00101">CLGaussianPyramidHorKernel::run()</a>, <a class="el" href="_c_l_histogram_kernel_8cpp_source.xhtml#l00113">CLHistogramKernel::run()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00083">CLGradientKernel::run()</a>, <a class="el" href="_c_l_bitwise_or_kernel_8cpp_source.xhtml#l00073">CLBitwiseOrKernel::run()</a>, <a class="el" href="_c_l_bitwise_xor_kernel_8cpp_source.xhtml#l00073">CLBitwiseXorKernel::run()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00124">CLMinMaxKernel::run()</a>, <a class="el" href="_c_l_remap_kernel_8cpp_source.xhtml#l00094">CLRemapKernel::run()</a>, <a class="el" href="_c_l_bitwise_and_kernel_8cpp_source.xhtml#l00072">CLBitwiseAndKernel::run()</a>, <a class="el" href="_g_c_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00205">GCDepthwiseConvolutionLayer3x3Kernel::run()</a>, <a class="el" href="_c_l_derivative_kernel_8cpp_source.xhtml#l00123">CLDerivativeKernel::run()</a>, <a class="el" href="_g_c_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00101">GCPixelWiseMultiplicationKernel::run()</a>, <a class="el" href="_c_l_sobel3x3_kernel_8cpp_source.xhtml#l00108">CLSobel3x3Kernel::run()</a>, <a class="el" href="_g_c_activation_layer_kernel_8cpp_source.xhtml#l00104">GCActivationLayerKernel::run()</a>, <a class="el" href="_c_l_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00097">CLHOGOrientationBinningKernel::run()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00080">GCGEMMMatrixAdditionKernel::run()</a>, <a class="el" href="_g_c_normalization_layer_kernel_8cpp_source.xhtml#l00098">GCNormalizationLayerKernel::run()</a>, <a class="el" href="_c_l_sobel5x5_kernel_8cpp_source.xhtml#l00108">CLSobel5x5HorKernel::run()</a>, <a class="el" href="_c_l_sobel7x7_kernel_8cpp_source.xhtml#l00111">CLSobel7x7HorKernel::run()</a>, <a class="el" href="_g_c_absolute_difference_kernel_8cpp_source.xhtml#l00086">GCAbsoluteDifferenceKernel::run()</a>, <a class="el" href="_c_l_absolute_difference_kernel_8cpp_source.xhtml#l00087">CLAbsoluteDifferenceKernel::run()</a>, <a class="el" href="_g_c_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00098">GCGEMMTranspose1xWKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00115">CLGEMMMatrixAccumulateBiasesKernel::run()</a>, <a class="el" href="_c_l_magnitude_phase_kernel_8cpp_source.xhtml#l00143">CLMagnitudePhaseKernel::run()</a>, <a class="el" href="_c_l_floor_kernel_8cpp_source.xhtml#l00114">CLFloorKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_vector_multiply_kernel_8cpp_source.xhtml#l00135">CLGEMMMatrixVectorMultiplyKernel::run()</a>, <a class="el" href="_g_c_depth_concatenate_layer_kernel_8cpp_source.xhtml#l00112">GCDepthConcatenateLayerKernel::run()</a>, <a class="el" href="_c_l_copy_kernel_8cpp_source.xhtml#l00204">CLCopyKernel::run()</a>, <a class="el" href="_c_l_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00170">CLChannelShuffleLayerKernel::run()</a>, <a class="el" href="_c_l_integral_image_kernel_8cpp_source.xhtml#l00095">CLIntegralImageVertKernel::run()</a>, <a class="el" href="_c_l_flatten_layer_kernel_8cpp_source.xhtml#l00132">CLFlattenLayerKernel::run()</a>, <a class="el" href="_c_l_reshape_layer_kernel_8cpp_source.xhtml#l00113">CLReshapeLayerKernel::run()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_reshape_weights_kernel_8cpp_source.xhtml#l00116">CLDepthwiseConvolutionLayerReshapeWeightsKernel::run()</a>, <a class="el" href="_c_l_memset_kernel_8cpp_source.xhtml#l00078">CLMemsetKernel::run()</a>, <a class="el" href="_c_l_permute_kernel_8cpp_source.xhtml#l00125">CLPermuteKernel::run()</a>, <a class="el" href="_c_l_r_o_i_pooling_layer_kernel_8cpp_source.xhtml#l00127">CLROIPoolingLayerKernel::run()</a>, <a class="el" href="_c_l_reverse_kernel_8cpp_source.xhtml#l00130">CLReverseKernel::run()</a>, <a class="el" href="_c_l_generate_proposals_layer_kernel_8cpp_source.xhtml#l00112">CLComputeAllAnchorsKernel::run()</a>, <a class="el" href="_g_c_dropout_layer_kernel_8cpp_source.xhtml#l00086">GCDropoutLayerKernel::run()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00171">GCLogits1DShiftExpSumKernel::run()</a>, <a class="el" href="_c_l_locally_connected_matrix_multiply_kernel_8cpp_source.xhtml#l00129">CLLocallyConnectedMatrixMultiplyKernel::run()</a>, <a class="el" href="_g_c_fill_border_kernel_8cpp_source.xhtml#l00141">GCFillBorderKernel::run()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00401">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::run()</a>, <a class="el" href="_c_l_fill_border_kernel_8cpp_source.xhtml#l00154">CLFillBorderKernel::run()</a>, <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00186">CLNormalizationLayerKernel::run()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel_8cpp_source.xhtml#l00313">CLDepthwiseConvolutionLayer3x3NCHWKernel::run()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00134">CLUpsampleLayerKernel::run()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00168">CLChannelExtractKernel::run()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00208">CLActivationLayerKernel::run()</a>, <a class="el" href="_g_c_pooling_layer_kernel_8cpp_source.xhtml#l00331">GCPoolingLayerKernel::run()</a>, <a class="el" href="_c_l_fast_corners_kernel_8cpp_source.xhtml#l00093">CLFastCornersKernel::run()</a>, <a class="el" href="_c_l_comparison_kernel_8cpp_source.xhtml#l00170">CLComparisonKernel::run()</a>, <a class="el" href="_c_l_gather_kernel_8cpp_source.xhtml#l00124">CLGatherKernel::run()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00312">CLPoolingLayerKernel::run()</a>, <a class="el" href="_c_l_deconvolution_layer_upsample_kernel_8cpp_source.xhtml#l00101">CLDeconvolutionLayerUpsampleKernel::run()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00301">CLDepthwiseConvolutionLayer3x3NHWCKernel::run()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_reshape_weights_generic_kernel_8cpp_source.xhtml#l00108">CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::run()</a>, <a class="el" href="_c_l_tile_kernel_8cpp_source.xhtml#l00135">CLTileKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00110">CLGEMMMatrixAdditionKernel::run()</a>, <a class="el" href="_c_l_width_concatenate2_tensors_kernel_8cpp_source.xhtml#l00154">CLWidthConcatenate2TensorsKernel::run()</a>, <a class="el" href="_c_l_min_max_layer_kernel_8cpp_source.xhtml#l00141">CLMinMaxLayerKernel::run()</a>, <a class="el" href="_c_l_quantization_layer_kernel_8cpp_source.xhtml#l00110">CLQuantizationLayerKernel::run()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00124">CLReorgLayerKernel::run()</a>, <a class="el" href="_c_l_width_concatenate_layer_kernel_8cpp_source.xhtml#l00127">CLWidthConcatenateLayerKernel::run()</a>, <a class="el" href="_c_l_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00100">CLDepthwiseVectorToTensorKernel::run()</a>, <a class="el" href="_c_l_harris_corners_kernel_8cpp_source.xhtml#l00112">CLHarrisScoreKernel::run()</a>, <a class="el" href="_g_c_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00090">GCGEMMInterleave4x4Kernel::run()</a>, <a class="el" href="_c_l_h_o_g_detector_kernel_8cpp_source.xhtml#l00116">CLHOGDetectorKernel::run()</a>, <a class="el" href="_c_l_prior_box_layer_kernel_8cpp_source.xhtml#l00200">CLPriorBoxLayerKernel::run()</a>, <a class="el" href="_c_l_channel_combine_kernel_8cpp_source.xhtml#l00238">CLChannelCombineKernel::run()</a>, <a class="el" href="_c_l_dequantization_layer_kernel_8cpp_source.xhtml#l00110">CLDequantizationLayerKernel::run()</a>, <a class="el" href="_c_l_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00102">CLConvertFullyConnectedWeightsKernel::run()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00161">CLNormalizePlanarYUVLayerKernel::run()</a>, <a class="el" href="_c_l_range_kernel_8cpp_source.xhtml#l00145">CLRangeKernel::run()</a>, <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00246">CLScaleKernel::run()</a>, <a class="el" href="_g_c_arithmetic_addition_kernel_8cpp_source.xhtml#l00131">GCArithmeticAdditionKernel::run()</a>, <a class="el" href="_g_c_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00132">GCNormalizePlanarYUVLayerKernel::run()</a>, <a class="el" href="_c_l_mean_std_dev_kernel_8cpp_source.xhtml#l00112">CLMeanStdDevKernel::run()</a>, <a class="el" href="_c_l_depth_concatenate_layer_kernel_8cpp_source.xhtml#l00147">CLDepthConcatenateLayerKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_reshaped_kernel_8cpp_source.xhtml#l00262">CLGEMMLowpMatrixMultiplyReshapedKernel::run()</a>, <a class="el" href="_c_l_scharr3x3_kernel_8cpp_source.xhtml#l00108">CLScharr3x3Kernel::run()</a>, <a class="el" href="_c_l_select_kernel_8cpp_source.xhtml#l00172">CLSelectKernel::run()</a>, <a class="el" href="_c_l_width_concatenate4_tensors_kernel_8cpp_source.xhtml#l00201">CLWidthConcatenate4TensorsKernel::run()</a>, <a class="el" href="_c_l_reduction_operation_kernel_8cpp_source.xhtml#l00247">CLReductionOperationKernel::run()</a>, <a class="el" href="_g_c_tensor_shift_kernel_8cpp_source.xhtml#l00077">GCTensorShiftKernel::run()</a>, <a class="el" href="_c_l_bounding_box_transform_kernel_8cpp_source.xhtml#l00116">CLBoundingBoxTransformKernel::run()</a>, <a class="el" href="_c_l_l2_normalize_layer_kernel_8cpp_source.xhtml#l00160">CLL2NormalizeLayerKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_reshaped_kernel_8cpp_source.xhtml#l00268">CLGEMMMatrixMultiplyReshapedKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00336">CLGEMMLowpMatrixMultiplyKernel::run()</a>, <a class="el" href="_c_l_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00230">CLPixelWiseMultiplicationKernel::run()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00161">CLYOLOLayerKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_reshape_r_h_s_matrix_kernel_8cpp_source.xhtml#l00157">CLGEMMReshapeRHSMatrixKernel::run()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00115">CLDepthwiseIm2ColKernel::run()</a>, <a class="el" href="_c_l_direct_convolution_output_stage_kernel_8cpp_source.xhtml#l00182">CLDirectConvolutionLayerOutputStageKernel::run()</a>, <a class="el" href="_c_l_stack_layer_kernel_8cpp_source.xhtml#l00119">CLStackLayerKernel::run()</a>, <a class="el" href="_c_l_color_convert_kernel_8cpp_source.xhtml#l00384">CLColorConvertKernel::run()</a>, <a class="el" href="_g_c_weights_reshape_kernel_8cpp_source.xhtml#l00101">GCWeightsReshapeKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_reshape_l_h_s_matrix_kernel_8cpp_source.xhtml#l00199">CLGEMMReshapeLHSMatrixKernel::run()</a>, <a class="el" href="_g_c_col2_im_kernel_8cpp_source.xhtml#l00097">GCCol2ImKernel::run()</a>, <a class="el" href="_c_l_r_o_i_align_layer_kernel_8cpp_source.xhtml#l00133">CLROIAlignLayerKernel::run()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00303">GCGEMMMatrixMultiplyKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_reduction_kernel_8cpp_source.xhtml#l00140">CLGEMMLowpMatrixAReductionKernel::run()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00182">CLFuseBatchNormalizationKernel::run()</a>, <a class="el" href="_g_c_batch_normalization_layer_kernel_8cpp_source.xhtml#l00205">GCBatchNormalizationLayerKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00186">CLGEMMInterleave4x4Kernel::run()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00149">CLBatchToSpaceLayerKernel::run()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00227">CLWinogradInputTransformKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float_kernel_8cpp_source.xhtml#l00152">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloatKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel_8cpp_source.xhtml#l00155">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_kernel_8cpp_source.xhtml#l00151">CLGEMMLowpQuantizeDownInt32ToUint8ScaleKernel::run()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00503">CLDirectConvolutionLayerKernel::run()</a>, <a class="el" href="_c_l_col2_im_kernel_8cpp_source.xhtml#l00141">CLCol2ImKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_offset_contribution_output_stage_kernel_8cpp_source.xhtml#l00258">CLGEMMLowpOffsetContributionOutputStageKernel::run()</a>, <a class="el" href="_c_l_winograd_filter_transform_kernel_8cpp_source.xhtml#l00141">CLWinogradFilterTransformKernel::run()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00223">CLBatchNormalizationLayerKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00142">CLGEMMTranspose1xWKernel::run()</a>, <a class="el" href="_c_l_histogram_kernel_8cpp_source.xhtml#l00204">CLHistogramBorderKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_offset_contribution_kernel_8cpp_source.xhtml#l00219">CLGEMMLowpOffsetContributionKernel::run()</a>, <a class="el" href="_c_l_strided_slice_kernel_8cpp_source.xhtml#l00194">CLStridedSliceKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00434">CLGEMMMatrixMultiplyKernel::run()</a>, <a class="el" href="_c_l_gaussian_pyramid_kernel_8cpp_source.xhtml#l00183">CLGaussianPyramidVertKernel::run()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00081">CLLKTrackerInitKernel::run()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00172">CLSpaceToBatchLayerKernel::run()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00231">CLWinogradOutputTransformKernel::run()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00151">CLEdgeNonMaxSuppressionKernel::run()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00215">CLMinMaxLocationKernel::run()</a>, <a class="el" href="_c_l_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00180">CLHOGBlockNormalizationKernel::run()</a>, <a class="el" href="_c_l_weights_reshape_kernel_8cpp_source.xhtml#l00118">CLWeightsReshapeKernel::run()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00352">CLIm2ColKernel::run()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00249">GCLogits1DNormKernel::run()</a>, <a class="el" href="_c_l_sobel5x5_kernel_8cpp_source.xhtml#l00207">CLSobel5x5VertKernel::run()</a>, <a class="el" href="_c_l_sobel7x7_kernel_8cpp_source.xhtml#l00210">CLSobel7x7VertKernel::run()</a>, <a class="el" href="_c_l_fast_corners_kernel_8cpp_source.xhtml#l00154">CLCopyToArrayKernel::run()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00110">CLLKTrackerFinalizeKernel::run()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_reduction_kernel_8cpp_source.xhtml#l00194">CLGEMMLowpMatrixBReductionKernel::run()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00236">CLEdgeTraceKernel::run()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00194">CLLKTrackerStage0Kernel::run()</a>, <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00298">CLLogits1DMaxShiftExpSumKernel::run()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00304">CLConvolutionRectangleKernel::run()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00278">CLLKTrackerStage1Kernel::run()</a>, and <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00379">CLLogits1DNormKernel::run()</a>.</p>
11881
Anthony Barbier871448e2017-03-24 14:54:29 +000011882</div>
11883</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011884<a id="a0768178b90a30994784fd28c5a89323f"></a>
11885<h2 class="memtitle"><span class="permalink"><a href="#a0768178b90a30994784fd28c5a89323f">&#9670;&nbsp;</a></span>error()</h2>
11886
Anthony Barbier871448e2017-03-24 14:54:29 +000011887<div class="memitem">
11888<div class="memproto">
11889 <table class="memname">
11890 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000011891 <td class="memname">void error </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000011892 <td>(</td>
11893 <td class="paramtype">const char *&#160;</td>
11894 <td class="paramname"><em>function</em>, </td>
11895 </tr>
11896 <tr>
11897 <td class="paramkey"></td>
11898 <td></td>
11899 <td class="paramtype">const char *&#160;</td>
11900 <td class="paramname"><em>file</em>, </td>
11901 </tr>
11902 <tr>
11903 <td class="paramkey"></td>
11904 <td></td>
11905 <td class="paramtype">const int&#160;</td>
11906 <td class="paramname"><em>line</em>, </td>
11907 </tr>
11908 <tr>
11909 <td class="paramkey"></td>
11910 <td></td>
11911 <td class="paramtype">const char *&#160;</td>
11912 <td class="paramname"><em>msg</em>, </td>
11913 </tr>
11914 <tr>
11915 <td class="paramkey"></td>
11916 <td></td>
11917 <td class="paramtype">&#160;</td>
11918 <td class="paramname"><em>...</em>&#160;</td>
11919 </tr>
11920 <tr>
11921 <td></td>
11922 <td>)</td>
11923 <td></td><td></td>
11924 </tr>
11925 </table>
11926</div><div class="memdoc">
11927
11928<p>Print an error message then throw an std::runtime_error. </p>
11929<dl class="params"><dt>Parameters</dt><dd>
11930 <table class="params">
11931 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
11932 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
11933 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
11934 <tr><td class="paramdir">[in]</td><td class="paramname">msg</td><td>Message to display before aborting. </td></tr>
11935 <tr><td class="paramdir">[in]</td><td class="paramname">...</td><td>Variable number of arguments of the message. </td></tr>
11936 </table>
11937 </dd>
11938</dl>
11939
Jenkinsb9abeae2018-11-22 11:58:08 +000011940<p class="definition">Definition at line <a class="el" href="_error_8cpp_source.xhtml#l00051">51</a> of file <a class="el" href="_error_8cpp_source.xhtml">Error.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000011941<div class="fragment"><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;{</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; va_list args;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; va_start(args, msg);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">auto</span> err = <a class="code" href="namespacearm__compute.xhtml#aee087c8a7edb0fb5b7e75b9037e34cf7">create_error_va_list</a>(ErrorCode::RUNTIME_ERROR, <span class="keyword">function</span>, file, line, msg, args);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; va_end(args);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="_error_8h.xhtml#ad5518fdae84a33ce6fbed540c6e89479">ARM_COMPUTE_THROW</a>(std::runtime_error(err.error_description()));</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ad5518fdae84a33ce6fbed540c6e89479"><div class="ttname"><a href="_error_8h.xhtml#ad5518fdae84a33ce6fbed540c6e89479">ARM_COMPUTE_THROW</a></div><div class="ttdeci">#define ARM_COMPUTE_THROW(ex)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00351">Error.h:351</a></div></div>
11942<div class="ttc" id="namespacearm__compute_xhtml_aee087c8a7edb0fb5b7e75b9037e34cf7"><div class="ttname"><a href="namespacearm__compute.xhtml#aee087c8a7edb0fb5b7e75b9037e34cf7">arm_compute::create_error_va_list</a></div><div class="ttdeci">Status create_error_va_list(ErrorCode error_code, const char *function, const char *file, const int line, const char *msg, va_list args)</div><div class="ttdoc">Creates an error containing the error message from variable argument list.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8cpp_source.xhtml#l00033">Error.cpp:33</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011943</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000011944<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00351">ARM_COMPUTE_THROW</a>, <a class="el" href="_error_8cpp_source.xhtml#l00033">create_error_va_list()</a>, and <a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa62be47fdd89da032cf78dfce82239579">RUNTIME_ERROR</a>.</p>
11945
11946<p class="reference">Referenced by <a class="el" href="_framework_8cpp_source.xhtml#l00212">Framework::log_failed_expectation()</a>, <a class="el" href="main_8cpp_source.xhtml#l00090">main()</a>, <a class="el" href="_j_s_o_n_printer_8cpp_source.xhtml#l00155">JSONPrinter::print_error()</a>, and <a class="el" href="_pretty_printer_8cpp_source.xhtml#l00106">PrettyPrinter::print_error()</a>.</p>
11947
Anthony Barbier871448e2017-03-24 14:54:29 +000011948</div>
11949</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000011950<a id="a89059fcfb27bba71edffcc22c6e1a1a2"></a>
11951<h2 class="memtitle"><span class="permalink"><a href="#a89059fcfb27bba71edffcc22c6e1a1a2">&#9670;&nbsp;</a></span>error_on_channel_not_in()</h2>
11952
Anthony Barbier871448e2017-03-24 14:54:29 +000011953<div class="memitem">
11954<div class="memproto">
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011955<table class="mlabels">
11956 <tr>
11957 <td class="mlabels-left">
Anthony Barbier871448e2017-03-24 14:54:29 +000011958 <table class="memname">
11959 <tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000011960 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_channel_not_in </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000011961 <td>(</td>
11962 <td class="paramtype">const char *&#160;</td>
11963 <td class="paramname"><em>function</em>, </td>
11964 </tr>
11965 <tr>
11966 <td class="paramkey"></td>
11967 <td></td>
11968 <td class="paramtype">const char *&#160;</td>
11969 <td class="paramname"><em>file</em>, </td>
11970 </tr>
11971 <tr>
11972 <td class="paramkey"></td>
11973 <td></td>
11974 <td class="paramtype">const int&#160;</td>
11975 <td class="paramname"><em>line</em>, </td>
11976 </tr>
11977 <tr>
11978 <td class="paramkey"></td>
11979 <td></td>
11980 <td class="paramtype">T&#160;</td>
11981 <td class="paramname"><em>cn</em>, </td>
11982 </tr>
11983 <tr>
11984 <td class="paramkey"></td>
11985 <td></td>
11986 <td class="paramtype">T &amp;&amp;&#160;</td>
11987 <td class="paramname"><em>channel</em>, </td>
11988 </tr>
11989 <tr>
11990 <td class="paramkey"></td>
11991 <td></td>
11992 <td class="paramtype">Ts &amp;&amp;...&#160;</td>
11993 <td class="paramname"><em>channels</em>&#160;</td>
11994 </tr>
11995 <tr>
11996 <td></td>
11997 <td>)</td>
11998 <td></td><td></td>
11999 </tr>
12000 </table>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012001 </td>
12002 <td class="mlabels-right">
12003<span class="mlabels"><span class="mlabel">inline</span></span> </td>
12004 </tr>
12005</table>
Anthony Barbier871448e2017-03-24 14:54:29 +000012006</div><div class="memdoc">
12007
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012008<p>Return an error if the channel is not in channels. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +000012009<dl class="params"><dt>Parameters</dt><dd>
12010 <table class="params">
12011 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
12012 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
12013 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
12014 <tr><td class="paramdir">[in]</td><td class="paramname">cn</td><td>Input channel </td></tr>
12015 <tr><td class="paramdir">[in]</td><td class="paramname">channel</td><td>First channel allowed. </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012016 <tr><td class="paramdir">[in]</td><td class="paramname">channels</td><td>(Optional) Further allowed channels.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000012017 </table>
12018 </dd>
12019</dl>
Jenkins514be652019-02-28 12:25:18 +000012020<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000012021
Jenkinsb9abeae2018-11-22 11:58:08 +000012022<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00872">872</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012023<div class="fragment"><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160;{</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(cn == Channel::UNKNOWN, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160;</div><div class="line"><a name="l00877"></a><span class="lineno"> 877</span>&#160; <span class="keyword">const</span> std::array&lt;T, <span class="keyword">sizeof</span>...(Ts)&gt; channels_array{ { std::forward&lt;Ts&gt;(channels)... } };</div><div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(channel != cn &amp;&amp; std::none_of(channels_array.begin(), channels_array.end(), [&amp;](<span class="keyword">const</span> T &amp; f)</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160; {</div><div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160; <span class="keywordflow">return</span> f == cn;</div><div class="line"><a name="l00881"></a><span class="lineno"> 881</span>&#160; }),</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160; <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
12024<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
12025</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000012026<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
12027
12028<p class="reference">Referenced by <a class="el" href="_validate_8cpp_source.xhtml#l00113">error_on_channel_not_in_known_format()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012029
Anthony Barbier871448e2017-03-24 14:54:29 +000012030</div>
12031</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012032<a id="a66876161b2add31c70efb9d1ba9423cb"></a>
12033<h2 class="memtitle"><span class="permalink"><a href="#a66876161b2add31c70efb9d1ba9423cb">&#9670;&nbsp;</a></span>error_on_channel_not_in_known_format()</h2>
12034
Anthony Barbier871448e2017-03-24 14:54:29 +000012035<div class="memitem">
12036<div class="memproto">
12037 <table class="memname">
12038 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000012039 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_channel_not_in_known_format </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000012040 <td>(</td>
12041 <td class="paramtype">const char *&#160;</td>
12042 <td class="paramname"><em>function</em>, </td>
12043 </tr>
12044 <tr>
12045 <td class="paramkey"></td>
12046 <td></td>
12047 <td class="paramtype">const char *&#160;</td>
12048 <td class="paramname"><em>file</em>, </td>
12049 </tr>
12050 <tr>
12051 <td class="paramkey"></td>
12052 <td></td>
12053 <td class="paramtype">const int&#160;</td>
12054 <td class="paramname"><em>line</em>, </td>
12055 </tr>
12056 <tr>
12057 <td class="paramkey"></td>
12058 <td></td>
Jenkinsb9abeae2018-11-22 11:58:08 +000012059 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">arm_compute::Format</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000012060 <td class="paramname"><em>fmt</em>, </td>
12061 </tr>
12062 <tr>
12063 <td class="paramkey"></td>
12064 <td></td>
Jenkinsb9abeae2018-11-22 11:58:08 +000012065 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">arm_compute::Channel</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000012066 <td class="paramname"><em>cn</em>&#160;</td>
12067 </tr>
12068 <tr>
12069 <td></td>
12070 <td>)</td>
12071 <td></td><td></td>
12072 </tr>
12073 </table>
12074</div><div class="memdoc">
12075
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012076<p>Return an error if the channel is not in format. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +000012077<dl class="params"><dt>Parameters</dt><dd>
12078 <table class="params">
12079 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
12080 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
12081 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
12082 <tr><td class="paramdir">[in]</td><td class="paramname">fmt</td><td>Input channel </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012083 <tr><td class="paramdir">[in]</td><td class="paramname">cn</td><td>First channel allowed.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000012084 </table>
12085 </dd>
12086</dl>
Jenkins514be652019-02-28 12:25:18 +000012087<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000012088
Jenkinsb9abeae2018-11-22 11:58:08 +000012089<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00113">113</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012090<div class="fragment"><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;{</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(fmt == <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">arm_compute::Format::UNKNOWN</a>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(cn == <a class="code" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">arm_compute::Channel::UNKNOWN</a>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">switch</span>(fmt)</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; {</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">arm_compute::Format::RGB888</a>:</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a89059fcfb27bba71edffcc22c6e1a1a2">arm_compute::error_on_channel_not_in</a>(<span class="keyword">function</span>, file, line, cn, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">arm_compute::Channel::R</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">arm_compute::Channel::G</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">arm_compute::Channel::B</a>);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">arm_compute::Format::RGBA8888</a>:</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a89059fcfb27bba71edffcc22c6e1a1a2">arm_compute::error_on_channel_not_in</a>(<span class="keyword">function</span>, file, line, cn, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">arm_compute::Channel::R</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">arm_compute::Channel::G</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">arm_compute::Channel::B</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">arm_compute::Channel::A</a>);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">arm_compute::Format::UV88</a>:</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a89059fcfb27bba71edffcc22c6e1a1a2">arm_compute::error_on_channel_not_in</a>(<span class="keyword">function</span>, file, line, cn, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">arm_compute::Channel::U</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">arm_compute::Channel::V</a>);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">arm_compute::Format::IYUV</a>:</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">arm_compute::Format::UYVY422</a>:</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">arm_compute::Format::YUYV422</a>:</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">arm_compute::Format::NV12</a>:</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">arm_compute::Format::NV21</a>:</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">arm_compute::Format::YUV444</a>:</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a89059fcfb27bba71edffcc22c6e1a1a2">arm_compute::error_on_channel_not_in</a>(<span class="keyword">function</span>, file, line, cn, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">arm_compute::Channel::Y</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">arm_compute::Channel::U</a>, <a class="code" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">arm_compute::Channel::V</a>);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="_error_8h.xhtml#af93757c5021d1802b094dfbead459391">ARM_COMPUTE_ERROR_LOC</a>(<span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Not supported format.&quot;</span>);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; }</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">arm_compute::Channel::A</a></div><div class="ttdoc">Alpha channel.</div></div>
12091<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">arm_compute::Format::UYVY422</a></div><div class="ttdoc">A single plane of 32-bit macro pixel of U0, Y0, V0, Y1 byte.</div></div>
12092<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">arm_compute::Channel::V</a></div><div class="ttdoc">Cr/V/Value channel.</div></div>
12093<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
12094<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">arm_compute::Channel::B</a></div><div class="ttdoc">Blue channel.</div></div>
12095<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">arm_compute::Format::NV12</a></div><div class="ttdoc">A 2 plane YUV format of Luma (Y) and interleaved UV data at 4:2:0 sampling.</div></div>
12096<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
12097<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">arm_compute::Channel::R</a></div><div class="ttdoc">Red channel.</div></div>
12098<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">arm_compute::Format::NV21</a></div><div class="ttdoc">A 2 plane YUV format of Luma (Y) and interleaved VU data at 4:2:0 sampling.</div></div>
12099<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">arm_compute::Format::RGB888</a></div><div class="ttdoc">3 channels, 1 U8 per channel</div></div>
12100<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">arm_compute::Channel::U</a></div><div class="ttdoc">Cb/U channel.</div></div>
12101<div class="ttc" id="namespacearm__compute_xhtml_a89059fcfb27bba71edffcc22c6e1a1a2"><div class="ttname"><a href="namespacearm__compute.xhtml#a89059fcfb27bba71edffcc22c6e1a1a2">arm_compute::error_on_channel_not_in</a></div><div class="ttdeci">arm_compute::Status error_on_channel_not_in(const char *function, const char *file, const int line, T cn, T &amp;&amp;channel, Ts &amp;&amp;... channels)</div><div class="ttdoc">Return an error if the channel is not in channels.</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00872">Validate.h:872</a></div></div>
12102<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">arm_compute::Format::YUV444</a></div><div class="ttdoc">A 3 plane of 8 bit 4:4:4 sampled Y, U, V planes.</div></div>
12103<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">arm_compute::Channel::Y</a></div><div class="ttdoc">Luma channel.</div></div>
12104<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">arm_compute::Format::IYUV</a></div><div class="ttdoc">A 3 plane of 8-bit 4:2:0 sampled Y, U, V planes.</div></div>
12105<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">arm_compute::Format::RGBA8888</a></div><div class="ttdoc">4 channels, 1 U8 per channel</div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012106<div class="ttc" id="namespacearm__compute_xhtml_a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3"><div class="ttname"><a href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">arm_compute::CLVersion::UNKNOWN</a></div></div>
Jenkins514be652019-02-28 12:25:18 +000012107<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">arm_compute::Format::UV88</a></div><div class="ttdoc">2 channel, 1 U8 per channel</div></div>
12108<div class="ttc" id="namespacearm__compute_xhtml_a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf"><div class="ttname"><a href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">arm_compute::Channel::G</a></div><div class="ttdoc">Green channel.</div></div>
12109<div class="ttc" id="_error_8h_xhtml_af93757c5021d1802b094dfbead459391"><div class="ttname"><a href="_error_8h.xhtml#af93757c5021d1802b094dfbead459391">ARM_COMPUTE_ERROR_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_LOC(func, file, line,...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00270">Error.h:270</a></div></div>
12110<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">arm_compute::Format::YUYV422</a></div><div class="ttdoc">A single plane of 32-bit macro pixel of Y0, U0, Y1, V0 bytes.</div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012111</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000012112<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a>, <a class="el" href="_error_8h_source.xhtml#l00270">ARM_COMPUTE_ERROR_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a>, <a class="el" href="_validate_8h_source.xhtml#l00872">error_on_channel_not_in()</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">G</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">R</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
12113
Anthony Barbier871448e2017-03-24 14:54:29 +000012114</div>
12115</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012116<a id="a3c62cc8d5ee934d42c115c9315d66c13"></a>
12117<h2 class="memtitle"><span class="permalink"><a href="#a3c62cc8d5ee934d42c115c9315d66c13">&#9670;&nbsp;</a></span>error_on_coordinates_dimensions_gte()</h2>
12118
Anthony Barbier871448e2017-03-24 14:54:29 +000012119<div class="memitem">
12120<div class="memproto">
12121 <table class="memname">
12122 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000012123 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_coordinates_dimensions_gte </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000012124 <td>(</td>
12125 <td class="paramtype">const char *&#160;</td>
12126 <td class="paramname"><em>function</em>, </td>
12127 </tr>
12128 <tr>
12129 <td class="paramkey"></td>
12130 <td></td>
12131 <td class="paramtype">const char *&#160;</td>
12132 <td class="paramname"><em>file</em>, </td>
12133 </tr>
12134 <tr>
12135 <td class="paramkey"></td>
12136 <td></td>
12137 <td class="paramtype">const int&#160;</td>
12138 <td class="paramname"><em>line</em>, </td>
12139 </tr>
12140 <tr>
12141 <td class="paramkey"></td>
12142 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012143 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000012144 <td class="paramname"><em>pos</em>, </td>
12145 </tr>
12146 <tr>
12147 <td class="paramkey"></td>
12148 <td></td>
12149 <td class="paramtype">unsigned int&#160;</td>
12150 <td class="paramname"><em>max_dim</em>&#160;</td>
12151 </tr>
12152 <tr>
12153 <td></td>
12154 <td>)</td>
12155 <td></td><td></td>
12156 </tr>
12157 </table>
12158</div><div class="memdoc">
12159
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012160<p>Return an error if the passed coordinates have too many dimensions. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +000012161<p>The coordinates have too many dimensions if any of the dimensions greater or equal to max_dim is different from 0.</p>
12162<dl class="params"><dt>Parameters</dt><dd>
12163 <table class="params">
12164 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
12165 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
12166 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000012167 <tr><td class="paramdir">[in]</td><td class="paramname">pos</td><td><a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a> to validate </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012168 <tr><td class="paramdir">[in]</td><td class="paramname">max_dim</td><td>Maximum number of dimensions allowed.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000012169 </table>
12170 </dd>
12171</dl>
Jenkins514be652019-02-28 12:25:18 +000012172<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000012173
Jenkinsb9abeae2018-11-22 11:58:08 +000012174<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00070">70</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012175<div class="fragment"><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;{</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = max_dim; i &lt; <a class="code" href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Coordinates::num_max_dimensions</a>; ++i)</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; {</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(pos[i] != 0, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; }</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
12176<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
12177<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a1b67d5b720119d50faa286c774579ecc"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Dimensions&lt; int &gt;::num_max_dimensions</a></div><div class="ttdeci">static constexpr size_t num_max_dimensions</div><div class="ttdoc">Number of dimensions the tensor has.</div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00045">Dimensions.h:45</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012178</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000012179<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>.</p>
12180
Anthony Barbier871448e2017-03-24 14:54:29 +000012181</div>
12182</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012183<a id="a4b97ba5512e8deb4a428515bc61c0c7a"></a>
12184<h2 class="memtitle"><span class="permalink"><a href="#a4b97ba5512e8deb4a428515bc61c0c7a">&#9670;&nbsp;</a></span>error_on_data_layout_not_in() <span class="overload">[1/2]</span></h2>
12185
12186<div class="memitem">
12187<div class="memproto">
12188<table class="mlabels">
12189 <tr>
12190 <td class="mlabels-left">
12191 <table class="memname">
12192 <tr>
12193 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_data_layout_not_in </td>
12194 <td>(</td>
12195 <td class="paramtype">const char *&#160;</td>
12196 <td class="paramname"><em>function</em>, </td>
12197 </tr>
12198 <tr>
12199 <td class="paramkey"></td>
12200 <td></td>
12201 <td class="paramtype">const char *&#160;</td>
12202 <td class="paramname"><em>file</em>, </td>
12203 </tr>
12204 <tr>
12205 <td class="paramkey"></td>
12206 <td></td>
12207 <td class="paramtype">const int&#160;</td>
12208 <td class="paramname"><em>line</em>, </td>
12209 </tr>
12210 <tr>
12211 <td class="paramkey"></td>
12212 <td></td>
12213 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
12214 <td class="paramname"><em>tensor_info</em>, </td>
12215 </tr>
12216 <tr>
12217 <td class="paramkey"></td>
12218 <td></td>
12219 <td class="paramtype">T &amp;&amp;&#160;</td>
12220 <td class="paramname"><em>dl</em>, </td>
12221 </tr>
12222 <tr>
12223 <td class="paramkey"></td>
12224 <td></td>
12225 <td class="paramtype">Ts &amp;&amp;...&#160;</td>
12226 <td class="paramname"><em>dls</em>&#160;</td>
12227 </tr>
12228 <tr>
12229 <td></td>
12230 <td>)</td>
12231 <td></td><td></td>
12232 </tr>
12233 </table>
12234 </td>
12235 <td class="mlabels-right">
12236<span class="mlabels"><span class="mlabel">inline</span></span> </td>
12237 </tr>
12238</table>
12239</div><div class="memdoc">
12240
12241<p>Return an error if the data layout of the passed tensor info does not match any of the data layouts provided. </p>
12242<dl class="params"><dt>Parameters</dt><dd>
12243 <table class="params">
12244 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
12245 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
12246 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000012247 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info to validate. </td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000012248 <tr><td class="paramdir">[in]</td><td class="paramname">dl</td><td>First data layout allowed. </td></tr>
12249 <tr><td class="paramdir">[in]</td><td class="paramname">dls</td><td>(Optional) Further allowed data layouts.</td></tr>
12250 </table>
12251 </dd>
12252</dl>
Jenkins514be652019-02-28 12:25:18 +000012253<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Jenkinsb9abeae2018-11-22 11:58:08 +000012254
12255<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00708">708</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012256<div class="fragment"><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160;{</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160;</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> &amp;tensor_dl = tensor_info-&gt;data_layout(); <span class="comment">//NOLINT</span></div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_dl == DataLayout::UNKNOWN, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; <span class="keyword">const</span> std::array&lt;T, <span class="keyword">sizeof</span>...(Ts)&gt; dls_array{ { std::forward&lt;Ts&gt;(dls)... } };</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(tensor_dl != dl &amp;&amp; std::none_of(dls_array.begin(), dls_array.end(), [&amp;](<span class="keyword">const</span> T &amp; l)</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; {</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; <span class="keywordflow">return</span> l == tensor_dl;</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; }),</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;ITensor data layout %s not supported by this kernel&quot;</span>, <a class="code" href="namespacearm__compute.xhtml#a56b9e25c2e8731ca5488e7b3ccd66f58">string_from_data_layout</a>(tensor_dl).c_str());</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
12257<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
12258<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
12259<div class="ttc" id="namespacearm__compute_xhtml_a56b9e25c2e8731ca5488e7b3ccd66f58"><div class="ttname"><a href="namespacearm__compute.xhtml#a56b9e25c2e8731ca5488e7b3ccd66f58">arm_compute::string_from_data_layout</a></div><div class="ttdeci">const std::string &amp; string_from_data_layout(DataLayout dl)</div><div class="ttdoc">Convert a data layout identity into a string.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_utils_8cpp_source.xhtml#l00132">Utils.cpp:132</a></div></div>
12260<div class="ttc" id="namespacearm__compute_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0"><div class="ttname"><a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a></div><div class="ttdeci">DataLayout</div><div class="ttdoc">[DataLayout enum definition]</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00111">Types.h:111</a></div></div>
12261</div><!-- fragment -->
12262<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">ITensorInfo::data_layout()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00132">string_from_data_layout()</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000012263
12264<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00736">error_on_data_layout_not_in()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012265
Jenkinsb9abeae2018-11-22 11:58:08 +000012266</div>
12267</div>
12268<a id="aba935fe0dd1a33ed2525ace5b21e1a8a"></a>
12269<h2 class="memtitle"><span class="permalink"><a href="#aba935fe0dd1a33ed2525ace5b21e1a8a">&#9670;&nbsp;</a></span>error_on_data_layout_not_in() <span class="overload">[2/2]</span></h2>
12270
12271<div class="memitem">
12272<div class="memproto">
12273<table class="mlabels">
12274 <tr>
12275 <td class="mlabels-left">
12276 <table class="memname">
12277 <tr>
12278 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_data_layout_not_in </td>
12279 <td>(</td>
12280 <td class="paramtype">const char *&#160;</td>
12281 <td class="paramname"><em>function</em>, </td>
12282 </tr>
12283 <tr>
12284 <td class="paramkey"></td>
12285 <td></td>
12286 <td class="paramtype">const char *&#160;</td>
12287 <td class="paramname"><em>file</em>, </td>
12288 </tr>
12289 <tr>
12290 <td class="paramkey"></td>
12291 <td></td>
12292 <td class="paramtype">const int&#160;</td>
12293 <td class="paramname"><em>line</em>, </td>
12294 </tr>
12295 <tr>
12296 <td class="paramkey"></td>
12297 <td></td>
12298 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
12299 <td class="paramname"><em>tensor</em>, </td>
12300 </tr>
12301 <tr>
12302 <td class="paramkey"></td>
12303 <td></td>
12304 <td class="paramtype">T &amp;&amp;&#160;</td>
12305 <td class="paramname"><em>dl</em>, </td>
12306 </tr>
12307 <tr>
12308 <td class="paramkey"></td>
12309 <td></td>
12310 <td class="paramtype">Ts &amp;&amp;...&#160;</td>
12311 <td class="paramname"><em>dls</em>&#160;</td>
12312 </tr>
12313 <tr>
12314 <td></td>
12315 <td>)</td>
12316 <td></td><td></td>
12317 </tr>
12318 </table>
12319 </td>
12320 <td class="mlabels-right">
12321<span class="mlabels"><span class="mlabel">inline</span></span> </td>
12322 </tr>
12323</table>
12324</div><div class="memdoc">
12325
12326<p>Return an error if the data layout of the passed tensor does not match any of the data layout provided. </p>
12327<dl class="params"><dt>Parameters</dt><dd>
12328 <table class="params">
12329 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
12330 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
12331 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000012332 <tr><td class="paramdir">[in]</td><td class="paramname">tensor</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> to validate. </td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000012333 <tr><td class="paramdir">[in]</td><td class="paramname">dl</td><td>First data layout allowed. </td></tr>
12334 <tr><td class="paramdir">[in]</td><td class="paramname">dls</td><td>(Optional) Further allowed data layouts.</td></tr>
12335 </table>
12336 </dd>
12337</dl>
Jenkins514be652019-02-28 12:25:18 +000012338<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Jenkinsb9abeae2018-11-22 11:58:08 +000012339
12340<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00736">736</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012341<div class="fragment"><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160;{</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a4b97ba5512e8deb4a428515bc61c0c7a">arm_compute::error_on_data_layout_not_in</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(), std::forward&lt;T&gt;(dl), std::forward&lt;Ts&gt;(dls)...));</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
12342<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
12343<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012344<div class="ttc" id="namespacearm__compute_xhtml_a4b97ba5512e8deb4a428515bc61c0c7a"><div class="ttname"><a href="namespacearm__compute.xhtml#a4b97ba5512e8deb4a428515bc61c0c7a">arm_compute::error_on_data_layout_not_in</a></div><div class="ttdeci">arm_compute::Status error_on_data_layout_not_in(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, T &amp;&amp;dl, Ts &amp;&amp;... dls)</div><div class="ttdoc">Return an error if the data layout of the passed tensor info does not match any of the data layouts p...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00708">Validate.h:708</a></div></div>
12345</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000012346<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00708">error_on_data_layout_not_in()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
12347
Jenkinsb9abeae2018-11-22 11:58:08 +000012348</div>
12349</div>
12350<a id="a2f061a50e9fd383396233a85234c1774"></a>
12351<h2 class="memtitle"><span class="permalink"><a href="#a2f061a50e9fd383396233a85234c1774">&#9670;&nbsp;</a></span>error_on_data_type_channel_not_in() <span class="overload">[1/2]</span></h2>
12352
Anthony Barbier871448e2017-03-24 14:54:29 +000012353<div class="memitem">
12354<div class="memproto">
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012355<table class="mlabels">
12356 <tr>
12357 <td class="mlabels-left">
Anthony Barbier871448e2017-03-24 14:54:29 +000012358 <table class="memname">
12359 <tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012360 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_data_type_channel_not_in </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000012361 <td>(</td>
12362 <td class="paramtype">const char *&#160;</td>
12363 <td class="paramname"><em>function</em>, </td>
12364 </tr>
12365 <tr>
12366 <td class="paramkey"></td>
12367 <td></td>
12368 <td class="paramtype">const char *&#160;</td>
12369 <td class="paramname"><em>file</em>, </td>
12370 </tr>
12371 <tr>
12372 <td class="paramkey"></td>
12373 <td></td>
12374 <td class="paramtype">const int&#160;</td>
12375 <td class="paramname"><em>line</em>, </td>
12376 </tr>
12377 <tr>
12378 <td class="paramkey"></td>
12379 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012380 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
12381 <td class="paramname"><em>tensor_info</em>, </td>
12382 </tr>
12383 <tr>
12384 <td class="paramkey"></td>
12385 <td></td>
12386 <td class="paramtype">size_t&#160;</td>
12387 <td class="paramname"><em>num_channels</em>, </td>
12388 </tr>
12389 <tr>
12390 <td class="paramkey"></td>
12391 <td></td>
12392 <td class="paramtype">T &amp;&amp;&#160;</td>
12393 <td class="paramname"><em>dt</em>, </td>
12394 </tr>
12395 <tr>
12396 <td class="paramkey"></td>
12397 <td></td>
12398 <td class="paramtype">Ts &amp;&amp;...&#160;</td>
12399 <td class="paramname"><em>dts</em>&#160;</td>
12400 </tr>
12401 <tr>
12402 <td></td>
12403 <td>)</td>
12404 <td></td><td></td>
12405 </tr>
12406 </table>
12407 </td>
12408 <td class="mlabels-right">
12409<span class="mlabels"><span class="mlabel">inline</span></span> </td>
12410 </tr>
12411</table>
12412</div><div class="memdoc">
12413
12414<p>Return an error if the data type or the number of channels of the passed tensor info does not match any of the data types and number of channels provided. </p>
12415<dl class="params"><dt>Parameters</dt><dd>
12416 <table class="params">
12417 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
12418 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
12419 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000012420 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info to validate. </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012421 <tr><td class="paramdir">[in]</td><td class="paramname">num_channels</td><td>Number of channels to check </td></tr>
12422 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td>First data type allowed. </td></tr>
12423 <tr><td class="paramdir">[in]</td><td class="paramname">dts</td><td>(Optional) Further allowed data types.</td></tr>
12424 </table>
12425 </dd>
12426</dl>
Jenkins514be652019-02-28 12:25:18 +000012427<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012428
Jenkinsb9abeae2018-11-22 11:58:08 +000012429<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00761">761</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012430<div class="fragment"><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160;{</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#abb2e6a7590121c1c9139bdb14558f20a">arm_compute::error_on_data_type_not_in</a>(<span class="keyword">function</span>, file, line, tensor_info, std::forward&lt;T&gt;(dt), std::forward&lt;Ts&gt;(dts)...));</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; <span class="keyword">const</span> <span class="keywordtype">size_t</span> tensor_nc = tensor_info-&gt;num_channels();</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(tensor_nc != num_channels, <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Number of channels %d. Required number of channels %d&quot;</span>, tensor_nc, num_channels);</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
12431<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
12432<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
12433<div class="ttc" id="namespacearm__compute_xhtml_abb2e6a7590121c1c9139bdb14558f20a"><div class="ttname"><a href="namespacearm__compute.xhtml#abb2e6a7590121c1c9139bdb14558f20a">arm_compute::error_on_data_type_not_in</a></div><div class="ttdeci">arm_compute::Status error_on_data_type_not_in(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, T &amp;&amp;dt, Ts &amp;&amp;... dts)</div><div class="ttdoc">Return an error if the data type of the passed tensor info does not match any of the data types provi...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00656">Validate.h:656</a></div></div>
12434</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000012435<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00656">error_on_data_type_not_in()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#ad7829ae79223ab87f9da4c0bd7d229ba">ITensorInfo::num_channels()</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012436
Jenkinsb9abeae2018-11-22 11:58:08 +000012437<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00782">error_on_data_type_channel_not_in()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012438
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012439</div>
12440</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012441<a id="aa87a2bd032fb1e4406506f5bb2da3225"></a>
12442<h2 class="memtitle"><span class="permalink"><a href="#aa87a2bd032fb1e4406506f5bb2da3225">&#9670;&nbsp;</a></span>error_on_data_type_channel_not_in() <span class="overload">[2/2]</span></h2>
12443
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012444<div class="memitem">
12445<div class="memproto">
12446<table class="mlabels">
12447 <tr>
12448 <td class="mlabels-left">
12449 <table class="memname">
12450 <tr>
12451 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_data_type_channel_not_in </td>
12452 <td>(</td>
12453 <td class="paramtype">const char *&#160;</td>
12454 <td class="paramname"><em>function</em>, </td>
12455 </tr>
12456 <tr>
12457 <td class="paramkey"></td>
12458 <td></td>
12459 <td class="paramtype">const char *&#160;</td>
12460 <td class="paramname"><em>file</em>, </td>
12461 </tr>
12462 <tr>
12463 <td class="paramkey"></td>
12464 <td></td>
12465 <td class="paramtype">const int&#160;</td>
12466 <td class="paramname"><em>line</em>, </td>
12467 </tr>
12468 <tr>
12469 <td class="paramkey"></td>
12470 <td></td>
12471 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000012472 <td class="paramname"><em>tensor</em>, </td>
12473 </tr>
12474 <tr>
12475 <td class="paramkey"></td>
12476 <td></td>
12477 <td class="paramtype">size_t&#160;</td>
12478 <td class="paramname"><em>num_channels</em>, </td>
12479 </tr>
12480 <tr>
12481 <td class="paramkey"></td>
12482 <td></td>
12483 <td class="paramtype">T &amp;&amp;&#160;</td>
12484 <td class="paramname"><em>dt</em>, </td>
12485 </tr>
12486 <tr>
12487 <td class="paramkey"></td>
12488 <td></td>
12489 <td class="paramtype">Ts &amp;&amp;...&#160;</td>
12490 <td class="paramname"><em>dts</em>&#160;</td>
12491 </tr>
12492 <tr>
12493 <td></td>
12494 <td>)</td>
12495 <td></td><td></td>
12496 </tr>
12497 </table>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012498 </td>
12499 <td class="mlabels-right">
12500<span class="mlabels"><span class="mlabel">inline</span></span> </td>
12501 </tr>
12502</table>
Anthony Barbier871448e2017-03-24 14:54:29 +000012503</div><div class="memdoc">
12504
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012505<p>Return an error if the data type or the number of channels of the passed tensor does not match any of the data types and number of channels provided. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +000012506<dl class="params"><dt>Parameters</dt><dd>
12507 <table class="params">
12508 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
12509 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
12510 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000012511 <tr><td class="paramdir">[in]</td><td class="paramname">tensor</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> to validate. </td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000012512 <tr><td class="paramdir">[in]</td><td class="paramname">num_channels</td><td>Number of channels to check </td></tr>
12513 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td>First data type allowed. </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012514 <tr><td class="paramdir">[in]</td><td class="paramname">dts</td><td>(Optional) Further allowed data types.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000012515 </table>
12516 </dd>
12517</dl>
Jenkins514be652019-02-28 12:25:18 +000012518<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000012519
Jenkinsb9abeae2018-11-22 11:58:08 +000012520<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00782">782</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012521<div class="fragment"><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160;{</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(<a class="code" href="namespacearm__compute.xhtml#aa87a2bd032fb1e4406506f5bb2da3225">error_on_data_type_channel_not_in</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(), num_channels, std::forward&lt;T&gt;(dt), std::forward&lt;Ts&gt;(dts)...));</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
12522<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012523<div class="ttc" id="namespacearm__compute_xhtml_aa87a2bd032fb1e4406506f5bb2da3225"><div class="ttname"><a href="namespacearm__compute.xhtml#aa87a2bd032fb1e4406506f5bb2da3225">arm_compute::error_on_data_type_channel_not_in</a></div><div class="ttdeci">arm_compute::Status error_on_data_type_channel_not_in(const char *function, const char *file, const int line, const ITensor *tensor, size_t num_channels, T &amp;&amp;dt, Ts &amp;&amp;... dts)</div><div class="ttdoc">Return an error if the data type or the number of channels of the passed tensor does not match any of...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00782">Validate.h:782</a></div></div>
Jenkins514be652019-02-28 12:25:18 +000012524<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +000012525</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000012526<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00761">error_on_data_type_channel_not_in()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
12527
Anthony Barbier871448e2017-03-24 14:54:29 +000012528</div>
12529</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012530<a id="abb2e6a7590121c1c9139bdb14558f20a"></a>
12531<h2 class="memtitle"><span class="permalink"><a href="#abb2e6a7590121c1c9139bdb14558f20a">&#9670;&nbsp;</a></span>error_on_data_type_not_in() <span class="overload">[1/2]</span></h2>
12532
Anthony Barbier871448e2017-03-24 14:54:29 +000012533<div class="memitem">
12534<div class="memproto">
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012535<table class="mlabels">
12536 <tr>
12537 <td class="mlabels-left">
Anthony Barbier871448e2017-03-24 14:54:29 +000012538 <table class="memname">
12539 <tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012540 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_data_type_not_in </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000012541 <td>(</td>
12542 <td class="paramtype">const char *&#160;</td>
12543 <td class="paramname"><em>function</em>, </td>
12544 </tr>
12545 <tr>
12546 <td class="paramkey"></td>
12547 <td></td>
12548 <td class="paramtype">const char *&#160;</td>
12549 <td class="paramname"><em>file</em>, </td>
12550 </tr>
12551 <tr>
12552 <td class="paramkey"></td>
12553 <td></td>
12554 <td class="paramtype">const int&#160;</td>
12555 <td class="paramname"><em>line</em>, </td>
12556 </tr>
12557 <tr>
12558 <td class="paramkey"></td>
12559 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012560 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
12561 <td class="paramname"><em>tensor_info</em>, </td>
12562 </tr>
12563 <tr>
12564 <td class="paramkey"></td>
12565 <td></td>
12566 <td class="paramtype">T &amp;&amp;&#160;</td>
12567 <td class="paramname"><em>dt</em>, </td>
12568 </tr>
12569 <tr>
12570 <td class="paramkey"></td>
12571 <td></td>
12572 <td class="paramtype">Ts &amp;&amp;...&#160;</td>
12573 <td class="paramname"><em>dts</em>&#160;</td>
12574 </tr>
12575 <tr>
12576 <td></td>
12577 <td>)</td>
12578 <td></td><td></td>
12579 </tr>
12580 </table>
12581 </td>
12582 <td class="mlabels-right">
12583<span class="mlabels"><span class="mlabel">inline</span></span> </td>
12584 </tr>
12585</table>
12586</div><div class="memdoc">
12587
12588<p>Return an error if the data type of the passed tensor info does not match any of the data types provided. </p>
12589<dl class="params"><dt>Parameters</dt><dd>
12590 <table class="params">
12591 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
12592 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
12593 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000012594 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info to validate. </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012595 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td>First data type allowed. </td></tr>
12596 <tr><td class="paramdir">[in]</td><td class="paramname">dts</td><td>(Optional) Further allowed data types.</td></tr>
12597 </table>
12598 </dd>
12599</dl>
Jenkins514be652019-02-28 12:25:18 +000012600<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012601
Jenkinsb9abeae2018-11-22 11:58:08 +000012602<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00656">656</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012603<div class="fragment"><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160;{</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160;</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;tensor_dt = tensor_info-&gt;data_type(); <span class="comment">//NOLINT</span></div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_dt == DataType::UNKNOWN, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160;</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; <span class="keyword">const</span> std::array&lt;T, <span class="keyword">sizeof</span>...(Ts)&gt; dts_array{ { std::forward&lt;Ts&gt;(dts)... } };</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(tensor_dt != dt &amp;&amp; std::none_of(dts_array.begin(), dts_array.end(), [&amp;](<span class="keyword">const</span> T &amp; d)</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; {</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; <span class="keywordflow">return</span> d == tensor_dt;</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; }),</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;ITensor data type %s not supported by this kernel&quot;</span>, <a class="code" href="namespacearm__compute.xhtml#a142b55a483cadf4e1068a1a09a55e8e9">string_from_data_type</a>(tensor_dt).c_str());</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
12604<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
12605<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
12606<div class="ttc" id="namespacearm__compute_xhtml_a142b55a483cadf4e1068a1a09a55e8e9"><div class="ttname"><a href="namespacearm__compute.xhtml#a142b55a483cadf4e1068a1a09a55e8e9">arm_compute::string_from_data_type</a></div><div class="ttdeci">const std::string &amp; string_from_data_type(DataType dt)</div><div class="ttdoc">Convert a data type identity into a string.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_utils_8cpp_source.xhtml#l00144">Utils.cpp:144</a></div></div>
12607<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Available data types.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00074">Types.h:74</a></div></div>
12608</div><!-- fragment -->
12609<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00144">string_from_data_type()</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012610
Jenkinsb9abeae2018-11-22 11:58:08 +000012611<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00761">error_on_data_type_channel_not_in()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00684">error_on_data_type_not_in()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012612
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012613</div>
12614</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012615<a id="ae8dfd7ddb80f1bd4042a0409d56cc72a"></a>
12616<h2 class="memtitle"><span class="permalink"><a href="#ae8dfd7ddb80f1bd4042a0409d56cc72a">&#9670;&nbsp;</a></span>error_on_data_type_not_in() <span class="overload">[2/2]</span></h2>
12617
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012618<div class="memitem">
12619<div class="memproto">
12620<table class="mlabels">
12621 <tr>
12622 <td class="mlabels-left">
12623 <table class="memname">
12624 <tr>
12625 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_data_type_not_in </td>
12626 <td>(</td>
12627 <td class="paramtype">const char *&#160;</td>
12628 <td class="paramname"><em>function</em>, </td>
12629 </tr>
12630 <tr>
12631 <td class="paramkey"></td>
12632 <td></td>
12633 <td class="paramtype">const char *&#160;</td>
12634 <td class="paramname"><em>file</em>, </td>
12635 </tr>
12636 <tr>
12637 <td class="paramkey"></td>
12638 <td></td>
12639 <td class="paramtype">const int&#160;</td>
12640 <td class="paramname"><em>line</em>, </td>
12641 </tr>
12642 <tr>
12643 <td class="paramkey"></td>
12644 <td></td>
12645 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000012646 <td class="paramname"><em>tensor</em>, </td>
12647 </tr>
12648 <tr>
12649 <td class="paramkey"></td>
12650 <td></td>
12651 <td class="paramtype">T &amp;&amp;&#160;</td>
12652 <td class="paramname"><em>dt</em>, </td>
12653 </tr>
12654 <tr>
12655 <td class="paramkey"></td>
12656 <td></td>
12657 <td class="paramtype">Ts &amp;&amp;...&#160;</td>
12658 <td class="paramname"><em>dts</em>&#160;</td>
12659 </tr>
12660 <tr>
12661 <td></td>
12662 <td>)</td>
12663 <td></td><td></td>
12664 </tr>
12665 </table>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012666 </td>
12667 <td class="mlabels-right">
12668<span class="mlabels"><span class="mlabel">inline</span></span> </td>
12669 </tr>
12670</table>
Anthony Barbier871448e2017-03-24 14:54:29 +000012671</div><div class="memdoc">
12672
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012673<p>Return an error if the data type of the passed tensor does not match any of the data types provided. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +000012674<dl class="params"><dt>Parameters</dt><dd>
12675 <table class="params">
12676 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
12677 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
12678 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000012679 <tr><td class="paramdir">[in]</td><td class="paramname">tensor</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> to validate. </td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000012680 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td>First data type allowed. </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012681 <tr><td class="paramdir">[in]</td><td class="paramname">dts</td><td>(Optional) Further allowed data types.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000012682 </table>
12683 </dd>
12684</dl>
Jenkins514be652019-02-28 12:25:18 +000012685<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000012686
Jenkinsb9abeae2018-11-22 11:58:08 +000012687<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00684">684</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012688<div class="fragment"><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160;{</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#abb2e6a7590121c1c9139bdb14558f20a">arm_compute::error_on_data_type_not_in</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(), std::forward&lt;T&gt;(dt), std::forward&lt;Ts&gt;(dts)...));</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
12689<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
12690<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012691<div class="ttc" id="namespacearm__compute_xhtml_abb2e6a7590121c1c9139bdb14558f20a"><div class="ttname"><a href="namespacearm__compute.xhtml#abb2e6a7590121c1c9139bdb14558f20a">arm_compute::error_on_data_type_not_in</a></div><div class="ttdeci">arm_compute::Status error_on_data_type_not_in(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, T &amp;&amp;dt, Ts &amp;&amp;... dts)</div><div class="ttdoc">Return an error if the data type of the passed tensor info does not match any of the data types provi...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00656">Validate.h:656</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +000012692</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000012693<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00656">error_on_data_type_not_in()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
12694
Anthony Barbier871448e2017-03-24 14:54:29 +000012695</div>
12696</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012697<a id="a8a09f045f83a973807cbfdd3083732ef"></a>
12698<h2 class="memtitle"><span class="permalink"><a href="#a8a09f045f83a973807cbfdd3083732ef">&#9670;&nbsp;</a></span>error_on_format_not_in()</h2>
12699
Anthony Barbier871448e2017-03-24 14:54:29 +000012700<div class="memitem">
12701<div class="memproto">
12702 <table class="memname">
12703 <tr>
12704 <td class="memname">void arm_compute::error_on_format_not_in </td>
12705 <td>(</td>
12706 <td class="paramtype">const char *&#160;</td>
12707 <td class="paramname"><em>function</em>, </td>
12708 </tr>
12709 <tr>
12710 <td class="paramkey"></td>
12711 <td></td>
12712 <td class="paramtype">const char *&#160;</td>
12713 <td class="paramname"><em>file</em>, </td>
12714 </tr>
12715 <tr>
12716 <td class="paramkey"></td>
12717 <td></td>
12718 <td class="paramtype">const int&#160;</td>
12719 <td class="paramname"><em>line</em>, </td>
12720 </tr>
12721 <tr>
12722 <td class="paramkey"></td>
12723 <td></td>
12724 <td class="paramtype">const T *&#160;</td>
12725 <td class="paramname"><em>object</em>, </td>
12726 </tr>
12727 <tr>
12728 <td class="paramkey"></td>
12729 <td></td>
12730 <td class="paramtype">F &amp;&amp;&#160;</td>
12731 <td class="paramname"><em>format</em>, </td>
12732 </tr>
12733 <tr>
12734 <td class="paramkey"></td>
12735 <td></td>
12736 <td class="paramtype">Fs &amp;&amp;...&#160;</td>
12737 <td class="paramname"><em>formats</em>&#160;</td>
12738 </tr>
12739 <tr>
12740 <td></td>
12741 <td>)</td>
12742 <td></td><td></td>
12743 </tr>
12744 </table>
12745</div><div class="memdoc">
12746
12747<p>Throw an error if the format of the passed tensor/multi-image does not match any of the formats provided. </p>
12748<dl class="params"><dt>Parameters</dt><dd>
12749 <table class="params">
12750 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
12751 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
12752 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
12753 <tr><td class="paramdir">[in]</td><td class="paramname">object</td><td>Tensor/multi-image to validate. </td></tr>
12754 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>First format allowed. </td></tr>
12755 <tr><td class="paramdir">[in]</td><td class="paramname">formats</td><td>(Optional) Further allowed formats. </td></tr>
12756 </table>
12757 </dd>
12758</dl>
12759
Jenkinsb9abeae2018-11-22 11:58:08 +000012760<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00623">623</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000012761<div class="fragment"><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160;{</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <a class="code" href="_error_8h.xhtml#ac90c3bce005225cbaa4a43740917bb58">ARM_COMPUTE_ERROR_ON_LOC</a>(<span class="keywordtype">object</span> == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160;</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;&amp;object_format = <span class="keywordtype">object</span>-&gt;info()-&gt;format();</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <a class="code" href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a>(object_format);</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; <a class="code" href="_error_8h.xhtml#ac90c3bce005225cbaa4a43740917bb58">ARM_COMPUTE_ERROR_ON_LOC</a>(object_format == Format::UNKNOWN, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160;</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <span class="keyword">const</span> std::array&lt;F, <span class="keyword">sizeof</span>...(Fs)&gt; formats_array{ { std::forward&lt;Fs&gt;(formats)... } };</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; <a class="code" href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a>(formats_array);</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160;</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; <a class="code" href="_error_8h.xhtml#a1b62e396a1789909dadda61ea4cda96f">ARM_COMPUTE_ERROR_ON_LOC_MSG</a>(object_format != format &amp;&amp; std::none_of(formats_array.begin(), formats_array.end(), [&amp;](<span class="keyword">const</span> F &amp; f)</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; {</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; <span class="keywordflow">return</span> f == object_format;</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; }),</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Format %s not supported by this kernel&quot;</span>, <a class="code" href="namespacearm__compute.xhtml#a8b82da7b5e0f6192f415ac347c9e0555">string_from_format</a>(object_format).c_str());</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a1b62e396a1789909dadda61ea4cda96f"><div class="ttname"><a href="_error_8h.xhtml#a1b62e396a1789909dadda61ea4cda96f">ARM_COMPUTE_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00329">Error.h:329</a></div></div>
Jenkins514be652019-02-28 12:25:18 +000012762<div class="ttc" id="_error_8h_xhtml_a6dc630a6ae9cc063b3924bcea8dee9d6"><div class="ttname"><a href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a></div><div class="ttdeci">#define ARM_COMPUTE_UNUSED(...)</div><div class="ttdoc">To avoid unused variables warnings.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00160">Error.h:160</a></div></div>
12763<div class="ttc" id="namespacearm__compute_xhtml_ab4e88c89b3b7ea1735996cc4def22d58"><div class="ttname"><a href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">arm_compute::Format</a></div><div class="ttdeci">Format</div><div class="ttdoc">Image colour formats.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00052">Types.h:52</a></div></div>
12764<div class="ttc" id="_error_8h_xhtml_ac90c3bce005225cbaa4a43740917bb58"><div class="ttname"><a href="_error_8h.xhtml#ac90c3bce005225cbaa4a43740917bb58">ARM_COMPUTE_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00347">Error.h:347</a></div></div>
12765<div class="ttc" id="namespacearm__compute_xhtml_a8b82da7b5e0f6192f415ac347c9e0555"><div class="ttname"><a href="namespacearm__compute.xhtml#a8b82da7b5e0f6192f415ac347c9e0555">arm_compute::string_from_format</a></div><div class="ttdeci">const std::string &amp; string_from_format(Format format)</div><div class="ttdoc">Convert a tensor format into a string.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_utils_8cpp_source.xhtml#l00085">Utils.cpp:85</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +000012766</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000012767<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00347">ARM_COMPUTE_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00329">ARM_COMPUTE_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00160">ARM_COMPUTE_UNUSED</a>, <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00085">string_from_format()</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
12768
Anthony Barbier871448e2017-03-24 14:54:29 +000012769</div>
12770</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012771<a id="a689cede2a5855c731f7d69b487f30aaa"></a>
12772<h2 class="memtitle"><span class="permalink"><a href="#a689cede2a5855c731f7d69b487f30aaa">&#9670;&nbsp;</a></span>error_on_invalid_multi_hog()</h2>
12773
Anthony Barbier871448e2017-03-24 14:54:29 +000012774<div class="memitem">
12775<div class="memproto">
12776 <table class="memname">
12777 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000012778 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_invalid_multi_hog </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000012779 <td>(</td>
12780 <td class="paramtype">const char *&#160;</td>
12781 <td class="paramname"><em>function</em>, </td>
12782 </tr>
12783 <tr>
12784 <td class="paramkey"></td>
12785 <td></td>
12786 <td class="paramtype">const char *&#160;</td>
12787 <td class="paramname"><em>file</em>, </td>
12788 </tr>
12789 <tr>
12790 <td class="paramkey"></td>
12791 <td></td>
12792 <td class="paramtype">const int&#160;</td>
12793 <td class="paramname"><em>line</em>, </td>
12794 </tr>
12795 <tr>
12796 <td class="paramkey"></td>
12797 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012798 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml">IMultiHOG</a> *&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000012799 <td class="paramname"><em>multi_hog</em>&#160;</td>
12800 </tr>
12801 <tr>
12802 <td></td>
12803 <td>)</td>
12804 <td></td><td></td>
12805 </tr>
12806 </table>
12807</div><div class="memdoc">
12808
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012809<p>Return an error if the <a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml">IMultiHOG</a> container is invalid. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +000012810<p>An <a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml">IMultiHOG</a> container is invalid if:</p>
12811<ol type="1">
12812<li>it is a nullptr</li>
12813<li>it doesn't contain models</li>
Jenkins514be652019-02-28 12:25:18 +000012814<li>it doesn't have the <a class="el" href="classarm__compute_1_1_h_o_g.xhtml" title="CPU implementation of HOG data-object.">HOG</a> data objects with the same phase_type, normalization_type and l2_hyst_threshold (if normalization_type == L2HYS_NORM)</li>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012815</ol>
Anthony Barbier871448e2017-03-24 14:54:29 +000012816<dl class="params"><dt>Parameters</dt><dd>
12817 <table class="params">
12818 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
12819 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
12820 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000012821 <tr><td class="paramdir">[in]</td><td class="paramname">multi_hog</td><td><a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml" title="Interface for storing multiple HOG data-objects.">IMultiHOG</a> container to validate</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000012822 </table>
12823 </dd>
12824</dl>
Jenkins514be652019-02-28 12:25:18 +000012825<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000012826
Jenkinsb9abeae2018-11-22 11:58:08 +000012827<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00144">144</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012828<div class="fragment"><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;{</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(<span class="keyword">nullptr</span> == multi_hog, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(0 == multi_hog-&gt;num_models(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> i = 1; i &lt; multi_hog-&gt;num_models(); ++i)</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; {</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(multi_hog-&gt;model(0)-&gt;info()-&gt;phase_type() != multi_hog-&gt;model(i)-&gt;info()-&gt;phase_type(),</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keyword">function</span>, file, line,</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="stringliteral">&quot;All HOG parameters must have the same phase type&quot;</span>);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(multi_hog-&gt;model(0)-&gt;info()-&gt;normalization_type() != multi_hog-&gt;model(i)-&gt;info()-&gt;normalization_type(),</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">function</span>, file, line,</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="stringliteral">&quot;All HOG parameters must have the same normalization type&quot;</span>);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>((multi_hog-&gt;model(0)-&gt;info()-&gt;l2_hyst_threshold() != multi_hog-&gt;model(i)-&gt;info()-&gt;l2_hyst_threshold())</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; &amp;&amp; (multi_hog-&gt;model(0)-&gt;info()-&gt;normalization_type() == <a class="code" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">arm_compute::HOGNormType::L2HYS_NORM</a>),</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keyword">function</span>, file, line,</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="stringliteral">&quot;All HOG parameters must have the same l2 hysteresis threshold if you use L2 hysteresis normalization type&quot;</span>);</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; }</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2"><div class="ttname"><a href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">arm_compute::HOGNormType::L2HYS_NORM</a></div><div class="ttdoc">L2-norm followed by clipping.</div></div>
12829<div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
12830<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
12831<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012832</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000012833<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_h_o_g.xhtml#a4e9b5d4ab15fd9009b463861c1a19dbd">IHOG::info()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00121">HOGInfo::l2_hyst_threshold()</a>, <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">L2HYS_NORM</a>, <a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml#a75e828c2dc5a300d224761a410c0925f">IMultiHOG::model()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00116">HOGInfo::normalization_type()</a>, <a class="el" href="classarm__compute_1_1_i_multi_h_o_g.xhtml#a36ab43f5c3606001dcd2468b955f3e02">IMultiHOG::num_models()</a>, and <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00126">HOGInfo::phase_type()</a>.</p>
12834
Anthony Barbier871448e2017-03-24 14:54:29 +000012835</div>
12836</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012837<a id="a9f83032f49a13db29baa1af1a62e5627"></a>
12838<h2 class="memtitle"><span class="permalink"><a href="#a9f83032f49a13db29baa1af1a62e5627">&#9670;&nbsp;</a></span>error_on_invalid_subtensor()</h2>
12839
Anthony Barbierdbdab852017-06-23 15:42:00 +010012840<div class="memitem">
12841<div class="memproto">
12842 <table class="memname">
12843 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000012844 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_invalid_subtensor </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010012845 <td>(</td>
12846 <td class="paramtype">const char *&#160;</td>
12847 <td class="paramname"><em>function</em>, </td>
12848 </tr>
12849 <tr>
12850 <td class="paramkey"></td>
12851 <td></td>
12852 <td class="paramtype">const char *&#160;</td>
12853 <td class="paramname"><em>file</em>, </td>
12854 </tr>
12855 <tr>
12856 <td class="paramkey"></td>
12857 <td></td>
12858 <td class="paramtype">const int&#160;</td>
12859 <td class="paramname"><em>line</em>, </td>
12860 </tr>
12861 <tr>
12862 <td class="paramkey"></td>
12863 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012864 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010012865 <td class="paramname"><em>parent_shape</em>, </td>
12866 </tr>
12867 <tr>
12868 <td class="paramkey"></td>
12869 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012870 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010012871 <td class="paramname"><em>coords</em>, </td>
12872 </tr>
12873 <tr>
12874 <td class="paramkey"></td>
12875 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012876 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010012877 <td class="paramname"><em>shape</em>&#160;</td>
12878 </tr>
12879 <tr>
12880 <td></td>
12881 <td>)</td>
12882 <td></td><td></td>
12883 </tr>
12884 </table>
12885</div><div class="memdoc">
12886
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012887<p>Return an error if if the coordinates and shape of the subtensor are within the parent tensor. </p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010012888<dl class="params"><dt>Parameters</dt><dd>
12889 <table class="params">
12890 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
12891 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
12892 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
12893 <tr><td class="paramdir">[in]</td><td class="paramname">parent_shape</td><td>Parent tensor shape </td></tr>
Jenkins514be652019-02-28 12:25:18 +000012894 <tr><td class="paramdir">[in]</td><td class="paramname">coords</td><td><a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a> inside the parent tensor where the first element of the subtensor is </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012895 <tr><td class="paramdir">[in]</td><td class="paramname">shape</td><td>Shape of the subtensor</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +010012896 </table>
12897 </dd>
12898</dl>
Jenkins514be652019-02-28 12:25:18 +000012899<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010012900
Jenkinsb9abeae2018-11-22 11:58:08 +000012901<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00176">176</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012902<div class="fragment"><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;{</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="comment">// Subtensor should not index in x, y dimensions.</span></div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(((coords.x() != 0) || (coords.y() != 0)), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="comment">// Subtensor shape should match parent tensor in x, y dimensions.</span></div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(((parent_shape.x() != <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>.x()) || (parent_shape.y() != <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>.y())), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="comment">// Check dimensions</span></div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; TensorShape::num_max_dimensions; ++i)</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; {</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(((coords[i] &gt;= static_cast&lt;int&gt;(parent_shape[i])) || (coords[i] + static_cast&lt;int&gt;(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[i]) &gt; static_cast&lt;int&gt;(parent_shape[i]))),</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; }</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">AbsoluteDifference.cpp:97</a></div></div>
12903<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
12904<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012905</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000012906<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">arm_compute::test::validation::shape</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00081">Dimensions&lt; T &gt;::x()</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00086">Dimensions&lt; T &gt;::y()</a>.</p>
12907
Anthony Barbierdbdab852017-06-23 15:42:00 +010012908</div>
12909</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012910<a id="ac2ab765daf6f586ceaa12575743361e7"></a>
12911<h2 class="memtitle"><span class="permalink"><a href="#ac2ab765daf6f586ceaa12575743361e7">&#9670;&nbsp;</a></span>error_on_invalid_subtensor_valid_region()</h2>
12912
Anthony Barbierdbdab852017-06-23 15:42:00 +010012913<div class="memitem">
12914<div class="memproto">
12915 <table class="memname">
12916 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000012917 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_invalid_subtensor_valid_region </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010012918 <td>(</td>
12919 <td class="paramtype">const char *&#160;</td>
12920 <td class="paramname"><em>function</em>, </td>
12921 </tr>
12922 <tr>
12923 <td class="paramkey"></td>
12924 <td></td>
12925 <td class="paramtype">const char *&#160;</td>
12926 <td class="paramname"><em>file</em>, </td>
12927 </tr>
12928 <tr>
12929 <td class="paramkey"></td>
12930 <td></td>
12931 <td class="paramtype">const int&#160;</td>
12932 <td class="paramname"><em>line</em>, </td>
12933 </tr>
12934 <tr>
12935 <td class="paramkey"></td>
12936 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012937 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010012938 <td class="paramname"><em>parent_valid_region</em>, </td>
12939 </tr>
12940 <tr>
12941 <td class="paramkey"></td>
12942 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012943 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010012944 <td class="paramname"><em>valid_region</em>&#160;</td>
12945 </tr>
12946 <tr>
12947 <td></td>
12948 <td>)</td>
12949 <td></td><td></td>
12950 </tr>
12951 </table>
12952</div><div class="memdoc">
12953
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012954<p>Return an error if the valid region of a subtensor is not inside the valid region of the parent tensor. </p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010012955<dl class="params"><dt>Parameters</dt><dd>
12956 <table class="params">
12957 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
12958 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
12959 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
12960 <tr><td class="paramdir">[in]</td><td class="paramname">parent_valid_region</td><td>Parent valid region. </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000012961 <tr><td class="paramdir">[in]</td><td class="paramname">valid_region</td><td>Valid region of subtensor.</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +010012962 </table>
12963 </dd>
12964</dl>
Jenkins514be652019-02-28 12:25:18 +000012965<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010012966
Jenkinsb9abeae2018-11-22 11:58:08 +000012967<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00193">193</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000012968<div class="fragment"><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;{</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="comment">// Check valid regions</span></div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> d = 0; d &lt; TensorShape::num_max_dimensions; ++d)</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; {</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>((parent_valid_region.anchor[d] &gt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>[d]), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>((parent_valid_region.anchor[d] + static_cast&lt;int&gt;(parent_valid_region.shape[d])) &lt; (<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">anchor</a>[d] + static_cast&lt;int&gt;(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">valid_region</a>.<a class="code" href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">shape</a>[d])),</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; }</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;}</div><div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a1fcd64682b37ed3c2098d0094ce788d8"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a1fcd64682b37ed3c2098d0094ce788d8">arm_compute::ValidRegion::shape</a></div><div class="ttdeci">TensorShape shape</div><div class="ttdoc">Shape of the valid region.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00301">Types.h:301</a></div></div>
12969<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
12970<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
12971<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a7819bcbbf45c2e7c1396a137dce54422"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a7819bcbbf45c2e7c1396a137dce54422">arm_compute::test::validation::valid_region</a></div><div class="ttdeci">const ValidRegion valid_region</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00109">AbsoluteDifference.cpp:109</a></div></div>
12972<div class="ttc" id="structarm__compute_1_1_valid_region_xhtml_a55a69b397082accd94221dd10b722cf7"><div class="ttname"><a href="structarm__compute_1_1_valid_region.xhtml#a55a69b397082accd94221dd10b722cf7">arm_compute::ValidRegion::anchor</a></div><div class="ttdeci">Coordinates anchor</div><div class="ttdoc">Anchor for the start of the valid region.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00300">Types.h:300</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012973</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000012974<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00300">ValidRegion::anchor</a>, <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00301">ValidRegion::shape</a>, and <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00109">arm_compute::test::validation::valid_region</a>.</p>
12975
Anthony Barbierdbdab852017-06-23 15:42:00 +010012976</div>
12977</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000012978<a id="ae93ff1ca47057b95d0c6fd0d287253a8"></a>
12979<h2 class="memtitle"><span class="permalink"><a href="#ae93ff1ca47057b95d0c6fd0d287253a8">&#9670;&nbsp;</a></span>error_on_invalid_subwindow()</h2>
12980
Anthony Barbier871448e2017-03-24 14:54:29 +000012981<div class="memitem">
12982<div class="memproto">
12983 <table class="memname">
12984 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000012985 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_invalid_subwindow </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000012986 <td>(</td>
12987 <td class="paramtype">const char *&#160;</td>
12988 <td class="paramname"><em>function</em>, </td>
12989 </tr>
12990 <tr>
12991 <td class="paramkey"></td>
12992 <td></td>
12993 <td class="paramtype">const char *&#160;</td>
12994 <td class="paramname"><em>file</em>, </td>
12995 </tr>
12996 <tr>
12997 <td class="paramkey"></td>
12998 <td></td>
12999 <td class="paramtype">const int&#160;</td>
13000 <td class="paramname"><em>line</em>, </td>
13001 </tr>
13002 <tr>
13003 <td class="paramkey"></td>
13004 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013005 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000013006 <td class="paramname"><em>full</em>, </td>
13007 </tr>
13008 <tr>
13009 <td class="paramkey"></td>
13010 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013011 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000013012 <td class="paramname"><em>sub</em>&#160;</td>
13013 </tr>
13014 <tr>
13015 <td></td>
13016 <td>)</td>
13017 <td></td><td></td>
13018 </tr>
13019 </table>
13020</div><div class="memdoc">
13021
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013022<p>Return an error if the passed subwindow is invalid. </p>
13023<p>The subwindow is invalid if:</p><ul>
Anthony Barbier871448e2017-03-24 14:54:29 +000013024<li>It is not a valid window.</li>
13025<li>It is not fully contained inside the full window</li>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013026<li>The step for each of its dimension is not identical to the corresponding one of the full window.</li>
13027</ul>
Anthony Barbier871448e2017-03-24 14:54:29 +000013028<dl class="params"><dt>Parameters</dt><dd>
13029 <table class="params">
13030 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
13031 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
13032 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
13033 <tr><td class="paramdir">[in]</td><td class="paramname">full</td><td>Full size window </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013034 <tr><td class="paramdir">[in]</td><td class="paramname">sub</td><td>Sub-window to validate.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000013035 </table>
13036 </dd>
13037</dl>
Jenkins514be652019-02-28 12:25:18 +000013038<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000013039
Jenkinsb9abeae2018-11-22 11:58:08 +000013040<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00041">41</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013041<div class="fragment"><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;{</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; full.validate();</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5cf018925dff7200819397bf8a295a0f">sub</a>.<a class="code" href="classarm__compute_1_1_n_e_arithmetic_subtraction.xhtml#a5e951bf3e414ddcd908245bcf284b08f">validate</a>();</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> i = 0; i &lt; <a class="code" href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Coordinates::num_max_dimensions</a>; ++i)</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; {</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(full[i].start() &gt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5cf018925dff7200819397bf8a295a0f">sub</a>[i].start(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(full[i].end() &lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5cf018925dff7200819397bf8a295a0f">sub</a>[i].end(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(full[i].<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a>() != <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5cf018925dff7200819397bf8a295a0f">sub</a>[i].<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a>(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>((<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5cf018925dff7200819397bf8a295a0f">sub</a>[i].start() - full[i].start()) % <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5cf018925dff7200819397bf8a295a0f">sub</a>[i].<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a>(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; }</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
13042<div class="ttc" id="classarm__compute_1_1_n_e_arithmetic_subtraction_xhtml_a5e951bf3e414ddcd908245bcf284b08f"><div class="ttname"><a href="classarm__compute_1_1_n_e_arithmetic_subtraction.xhtml#a5e951bf3e414ddcd908245bcf284b08f">arm_compute::NEArithmeticSubtraction::validate</a></div><div class="ttdeci">static Status validate(const ITensorInfo *input1, const ITensorInfo *input2, const ITensorInfo *output, ConvertPolicy policy)</div><div class="ttdoc">Static function to check if given info will lead to a valid configuration of NEArithmeticSubtraction.</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_arithmetic_subtraction_8cpp_source.xhtml#l00051">NEArithmeticSubtraction.cpp:51</a></div></div>
13043<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
13044<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a75b73e17c4ebe901e44af3b2b9846ab3"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">arm_compute::test::validation::step</a></div><div class="ttdeci">const int step</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_select_8cpp_source.xhtml#l00172">Select.cpp:172</a></div></div>
13045<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a5cf018925dff7200819397bf8a295a0f"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a5cf018925dff7200819397bf8a295a0f">arm_compute::test::validation::sub</a></div><div class="ttdeci">NEArithmeticSubtraction sub</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_arithmetic_subtraction_8cpp_source.xhtml#l00138">ArithmeticSubtraction.cpp:138</a></div></div>
13046<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a1b67d5b720119d50faa286c774579ecc"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Dimensions&lt; int &gt;::num_max_dimensions</a></div><div class="ttdeci">static constexpr size_t num_max_dimensions</div><div class="ttdoc">Number of dimensions the tensor has.</div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00045">Dimensions.h:45</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013047</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000013048<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, <a class="el" href="_c_l_2_select_8cpp_source.xhtml#l00172">arm_compute::test::validation::step</a>, <a class="el" href="_n_e_o_n_2_arithmetic_subtraction_8cpp_source.xhtml#l00138">arm_compute::test::validation::sub</a>, <a class="el" href="_n_e_arithmetic_subtraction_8cpp_source.xhtml#l00051">NEArithmeticSubtraction::validate()</a>, and <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>.</p>
13049
Anthony Barbier871448e2017-03-24 14:54:29 +000013050</div>
13051</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013052<a id="a8355d6db4cebee2724bf4463076526c6"></a>
13053<h2 class="memtitle"><span class="permalink"><a href="#a8355d6db4cebee2724bf4463076526c6">&#9670;&nbsp;</a></span>error_on_mismatching_data_layouts() <span class="overload">[1/2]</span></h2>
13054
Jenkinsb3a371b2018-05-23 11:36:53 +010013055<div class="memitem">
13056<div class="memproto">
13057<table class="mlabels">
13058 <tr>
13059 <td class="mlabels-left">
13060 <table class="memname">
13061 <tr>
13062 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_mismatching_data_layouts </td>
13063 <td>(</td>
13064 <td class="paramtype">const char *&#160;</td>
13065 <td class="paramname"><em>function</em>, </td>
13066 </tr>
13067 <tr>
13068 <td class="paramkey"></td>
13069 <td></td>
13070 <td class="paramtype">const char *&#160;</td>
13071 <td class="paramname"><em>file</em>, </td>
13072 </tr>
13073 <tr>
13074 <td class="paramkey"></td>
13075 <td></td>
13076 <td class="paramtype">const int&#160;</td>
13077 <td class="paramname"><em>line</em>, </td>
13078 </tr>
13079 <tr>
13080 <td class="paramkey"></td>
13081 <td></td>
13082 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
13083 <td class="paramname"><em>tensor_info</em>, </td>
13084 </tr>
13085 <tr>
13086 <td class="paramkey"></td>
13087 <td></td>
13088 <td class="paramtype">Ts...&#160;</td>
13089 <td class="paramname"><em>tensor_infos</em>&#160;</td>
13090 </tr>
13091 <tr>
13092 <td></td>
13093 <td>)</td>
13094 <td></td><td></td>
13095 </tr>
13096 </table>
13097 </td>
13098 <td class="mlabels-right">
13099<span class="mlabels"><span class="mlabel">inline</span></span> </td>
13100 </tr>
13101</table>
13102</div><div class="memdoc">
13103
13104<p>Return an error if the passed tensor infos have different data layouts. </p>
13105<dl class="params"><dt>Parameters</dt><dd>
13106 <table class="params">
13107 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
13108 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
13109 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
13110 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_info</td><td>The first tensor info to be compared. </td></tr>
13111 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_infos</td><td>(Optional) Further allowed tensor infos.</td></tr>
13112 </table>
13113 </dd>
13114</dl>
Jenkins514be652019-02-28 12:25:18 +000013115<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Jenkinsb3a371b2018-05-23 11:36:53 +010013116
Jenkinsb9abeae2018-11-22 11:58:08 +000013117<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00457">457</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013118<div class="fragment"><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;{</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensor_infos)...));</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160;</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> &amp;&amp;tensor_data_layout = tensor_info-&gt;data_layout();</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="keyword">const</span> std::array&lt;<span class="keyword">const</span> ITensorInfo *, <span class="keyword">sizeof</span>...(Ts)&gt; tensors_infos_array{ { std::forward&lt;Ts&gt;(tensor_infos)... } };</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensors_infos_array.begin(), tensors_infos_array.end(), [&amp;](<span class="keyword">const</span> ITensorInfo * tensor_info_obj)</div><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; <span class="keywordflow">return</span> tensor_info_obj-&gt;data_layout() != tensor_data_layout;</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; }),</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensors have different data layouts&quot;</span>);</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
13119<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
13120<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
13121<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr.</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
13122<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
13123<div class="ttc" id="namespacearm__compute_xhtml_ad1d5cce2d9e9a5d61c243e5c989112e0"><div class="ttname"><a href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a></div><div class="ttdeci">DataLayout</div><div class="ttdoc">[DataLayout enum definition]</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00111">Types.h:111</a></div></div>
13124</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000013125<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a367b5090ab432bc7de2c32369e087ab1">ITensorInfo::data_layout()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>.</p>
Jenkinsb3a371b2018-05-23 11:36:53 +010013126
Jenkinsb9abeae2018-11-22 11:58:08 +000013127<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00483">error_on_mismatching_data_layouts()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013128
Jenkinsb3a371b2018-05-23 11:36:53 +010013129</div>
13130</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013131<a id="ad6e5ea4c65e9a0e7853ce314024c955d"></a>
13132<h2 class="memtitle"><span class="permalink"><a href="#ad6e5ea4c65e9a0e7853ce314024c955d">&#9670;&nbsp;</a></span>error_on_mismatching_data_layouts() <span class="overload">[2/2]</span></h2>
13133
Jenkinsb3a371b2018-05-23 11:36:53 +010013134<div class="memitem">
13135<div class="memproto">
13136<table class="mlabels">
13137 <tr>
13138 <td class="mlabels-left">
13139 <table class="memname">
13140 <tr>
13141 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_mismatching_data_layouts </td>
13142 <td>(</td>
13143 <td class="paramtype">const char *&#160;</td>
13144 <td class="paramname"><em>function</em>, </td>
13145 </tr>
13146 <tr>
13147 <td class="paramkey"></td>
13148 <td></td>
13149 <td class="paramtype">const char *&#160;</td>
13150 <td class="paramname"><em>file</em>, </td>
13151 </tr>
13152 <tr>
13153 <td class="paramkey"></td>
13154 <td></td>
13155 <td class="paramtype">const int&#160;</td>
13156 <td class="paramname"><em>line</em>, </td>
13157 </tr>
13158 <tr>
13159 <td class="paramkey"></td>
13160 <td></td>
13161 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
13162 <td class="paramname"><em>tensor</em>, </td>
13163 </tr>
13164 <tr>
13165 <td class="paramkey"></td>
13166 <td></td>
13167 <td class="paramtype">Ts...&#160;</td>
13168 <td class="paramname"><em>tensors</em>&#160;</td>
13169 </tr>
13170 <tr>
13171 <td></td>
13172 <td>)</td>
13173 <td></td><td></td>
13174 </tr>
13175 </table>
13176 </td>
13177 <td class="mlabels-right">
13178<span class="mlabels"><span class="mlabel">inline</span></span> </td>
13179 </tr>
13180</table>
13181</div><div class="memdoc">
13182
13183<p>Return an error if the passed tensors have different data layouts. </p>
13184<dl class="params"><dt>Parameters</dt><dd>
13185 <table class="params">
13186 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
13187 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
13188 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
13189 <tr><td class="paramdir">[in]</td><td class="paramname">tensor</td><td>The first tensor to be compared. </td></tr>
13190 <tr><td class="paramdir">[in]</td><td class="paramname">tensors</td><td>(Optional) Further allowed tensors.</td></tr>
13191 </table>
13192 </dd>
13193</dl>
Jenkins514be652019-02-28 12:25:18 +000013194<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Jenkinsb3a371b2018-05-23 11:36:53 +010013195
Jenkinsb9abeae2018-11-22 11:58:08 +000013196<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00483">483</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013197<div class="fragment"><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160;{</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a8355d6db4cebee2724bf4463076526c6">arm_compute::error_on_mismatching_data_layouts</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(),</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; detail::get_tensor_info_t&lt;ITensorInfo *&gt;()(tensors)...));</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
13198<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
13199<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr.</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
13200<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
13201<div class="ttc" id="namespacearm__compute_xhtml_a8355d6db4cebee2724bf4463076526c6"><div class="ttname"><a href="namespacearm__compute.xhtml#a8355d6db4cebee2724bf4463076526c6">arm_compute::error_on_mismatching_data_layouts</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_data_layouts(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, Ts... tensor_infos)</div><div class="ttdoc">Return an error if the passed tensor infos have different data layouts.</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00457">Validate.h:457</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +010013202</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000013203<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00457">error_on_mismatching_data_layouts()</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
13204
Jenkinsb3a371b2018-05-23 11:36:53 +010013205</div>
13206</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013207<a id="a85c38583df1a7998d58c51f7c3d4b354"></a>
13208<h2 class="memtitle"><span class="permalink"><a href="#a85c38583df1a7998d58c51f7c3d4b354">&#9670;&nbsp;</a></span>error_on_mismatching_data_types() <span class="overload">[1/2]</span></h2>
13209
Anthony Barbier871448e2017-03-24 14:54:29 +000013210<div class="memitem">
13211<div class="memproto">
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013212<table class="mlabels">
13213 <tr>
13214 <td class="mlabels-left">
Anthony Barbier871448e2017-03-24 14:54:29 +000013215 <table class="memname">
13216 <tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013217 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_mismatching_data_types </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000013218 <td>(</td>
13219 <td class="paramtype">const char *&#160;</td>
13220 <td class="paramname"><em>function</em>, </td>
13221 </tr>
13222 <tr>
13223 <td class="paramkey"></td>
13224 <td></td>
13225 <td class="paramtype">const char *&#160;</td>
13226 <td class="paramname"><em>file</em>, </td>
13227 </tr>
13228 <tr>
13229 <td class="paramkey"></td>
13230 <td></td>
13231 <td class="paramtype">const int&#160;</td>
13232 <td class="paramname"><em>line</em>, </td>
13233 </tr>
13234 <tr>
13235 <td class="paramkey"></td>
13236 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013237 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
13238 <td class="paramname"><em>tensor_info</em>, </td>
13239 </tr>
13240 <tr>
13241 <td class="paramkey"></td>
13242 <td></td>
13243 <td class="paramtype">Ts...&#160;</td>
13244 <td class="paramname"><em>tensor_infos</em>&#160;</td>
13245 </tr>
13246 <tr>
13247 <td></td>
13248 <td>)</td>
13249 <td></td><td></td>
13250 </tr>
13251 </table>
13252 </td>
13253 <td class="mlabels-right">
13254<span class="mlabels"><span class="mlabel">inline</span></span> </td>
13255 </tr>
13256</table>
13257</div><div class="memdoc">
13258
13259<p>Return an error if the passed two tensor infos have different data types. </p>
13260<dl class="params"><dt>Parameters</dt><dd>
13261 <table class="params">
13262 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
13263 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
13264 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
13265 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_info</td><td>The first tensor info to be compared. </td></tr>
13266 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_infos</td><td>(Optional) Further allowed tensor infos.</td></tr>
13267 </table>
13268 </dd>
13269</dl>
Jenkins514be652019-02-28 12:25:18 +000013270<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013271
Jenkinsb9abeae2018-11-22 11:58:08 +000013272<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00508">508</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013273<div class="fragment"><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;{</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensor_infos)...));</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;&amp;tensor_data_type = tensor_info-&gt;data_type();</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; <span class="keyword">const</span> std::array&lt;<span class="keyword">const</span> ITensorInfo *, <span class="keyword">sizeof</span>...(Ts)&gt; tensors_infos_array{ { std::forward&lt;Ts&gt;(tensor_infos)... } };</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensors_infos_array.begin(), tensors_infos_array.end(), [&amp;](<span class="keyword">const</span> ITensorInfo * tensor_info_obj)</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; {</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; <span class="keywordflow">return</span> tensor_info_obj-&gt;data_type() != tensor_data_type;</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; }),</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensors have different data types&quot;</span>);</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
13274<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
13275<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
13276<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr.</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
13277<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
13278<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Available data types.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00074">Types.h:74</a></div></div>
13279</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000013280<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013281
Jenkinsb9abeae2018-11-22 11:58:08 +000013282<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00534">error_on_mismatching_data_types()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013283
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013284</div>
13285</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013286<a id="aa8b68ddd24c352a4cdd4fb1eea263429"></a>
13287<h2 class="memtitle"><span class="permalink"><a href="#aa8b68ddd24c352a4cdd4fb1eea263429">&#9670;&nbsp;</a></span>error_on_mismatching_data_types() <span class="overload">[2/2]</span></h2>
13288
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013289<div class="memitem">
13290<div class="memproto">
13291<table class="mlabels">
13292 <tr>
13293 <td class="mlabels-left">
13294 <table class="memname">
13295 <tr>
13296 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_mismatching_data_types </td>
13297 <td>(</td>
13298 <td class="paramtype">const char *&#160;</td>
13299 <td class="paramname"><em>function</em>, </td>
13300 </tr>
13301 <tr>
13302 <td class="paramkey"></td>
13303 <td></td>
13304 <td class="paramtype">const char *&#160;</td>
13305 <td class="paramname"><em>file</em>, </td>
13306 </tr>
13307 <tr>
13308 <td class="paramkey"></td>
13309 <td></td>
13310 <td class="paramtype">const int&#160;</td>
13311 <td class="paramname"><em>line</em>, </td>
13312 </tr>
13313 <tr>
13314 <td class="paramkey"></td>
13315 <td></td>
13316 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010013317 <td class="paramname"><em>tensor</em>, </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000013318 </tr>
13319 <tr>
13320 <td class="paramkey"></td>
13321 <td></td>
13322 <td class="paramtype">Ts...&#160;</td>
13323 <td class="paramname"><em>tensors</em>&#160;</td>
13324 </tr>
13325 <tr>
13326 <td></td>
13327 <td>)</td>
13328 <td></td><td></td>
13329 </tr>
13330 </table>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013331 </td>
13332 <td class="mlabels-right">
13333<span class="mlabels"><span class="mlabel">inline</span></span> </td>
13334 </tr>
13335</table>
Anthony Barbier871448e2017-03-24 14:54:29 +000013336</div><div class="memdoc">
13337
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013338<p>Return an error if the passed two tensors have different data types. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +000013339<dl class="params"><dt>Parameters</dt><dd>
13340 <table class="params">
13341 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
13342 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
13343 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Kaizen8938bd32017-09-28 14:38:23 +010013344 <tr><td class="paramdir">[in]</td><td class="paramname">tensor</td><td>The first tensor to be compared. </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013345 <tr><td class="paramdir">[in]</td><td class="paramname">tensors</td><td>(Optional) Further allowed tensors.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000013346 </table>
13347 </dd>
13348</dl>
Jenkins514be652019-02-28 12:25:18 +000013349<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000013350
Jenkinsb9abeae2018-11-22 11:58:08 +000013351<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00534">534</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013352<div class="fragment"><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;{</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a85c38583df1a7998d58c51f7c3d4b354">arm_compute::error_on_mismatching_data_types</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(),</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; detail::get_tensor_info_t&lt;ITensorInfo *&gt;()(tensors)...));</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
13353<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
13354<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr.</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
13355<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
13356<div class="ttc" id="namespacearm__compute_xhtml_a85c38583df1a7998d58c51f7c3d4b354"><div class="ttname"><a href="namespacearm__compute.xhtml#a85c38583df1a7998d58c51f7c3d4b354">arm_compute::error_on_mismatching_data_types</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_data_types(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, Ts... tensor_infos)</div><div class="ttdoc">Return an error if the passed two tensor infos have different data types.</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00508">Validate.h:508</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013357</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000013358<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00508">error_on_mismatching_data_types()</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
13359
Anthony Barbierdbdab852017-06-23 15:42:00 +010013360</div>
13361</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013362<a id="a632c1b33a482f7126de4aca221542b64"></a>
13363<h2 class="memtitle"><span class="permalink"><a href="#a632c1b33a482f7126de4aca221542b64">&#9670;&nbsp;</a></span>error_on_mismatching_dimensions()</h2>
13364
Anthony Barbierdbdab852017-06-23 15:42:00 +010013365<div class="memitem">
13366<div class="memproto">
13367 <table class="memname">
13368 <tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013369 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_mismatching_dimensions </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013370 <td>(</td>
13371 <td class="paramtype">const char *&#160;</td>
13372 <td class="paramname"><em>function</em>, </td>
13373 </tr>
13374 <tr>
13375 <td class="paramkey"></td>
13376 <td></td>
13377 <td class="paramtype">const char *&#160;</td>
13378 <td class="paramname"><em>file</em>, </td>
13379 </tr>
13380 <tr>
13381 <td class="paramkey"></td>
13382 <td></td>
13383 <td class="paramtype">int&#160;</td>
13384 <td class="paramname"><em>line</em>, </td>
13385 </tr>
13386 <tr>
13387 <td class="paramkey"></td>
13388 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013389 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013390 <td class="paramname"><em>dim1</em>, </td>
13391 </tr>
13392 <tr>
13393 <td class="paramkey"></td>
13394 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013395 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013396 <td class="paramname"><em>dim2</em>, </td>
13397 </tr>
13398 <tr>
13399 <td class="paramkey"></td>
13400 <td></td>
13401 <td class="paramtype">Ts &amp;&amp;...&#160;</td>
13402 <td class="paramname"><em>dims</em>&#160;</td>
13403 </tr>
13404 <tr>
13405 <td></td>
13406 <td>)</td>
13407 <td></td><td></td>
13408 </tr>
13409 </table>
13410</div><div class="memdoc">
13411
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013412<p>Return an error if the passed dimension objects differ. </p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013413<dl class="params"><dt>Parameters</dt><dd>
13414 <table class="params">
13415 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
13416 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
13417 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
13418 <tr><td class="paramdir">[in]</td><td class="paramname">dim1</td><td>The first object to be compared. </td></tr>
13419 <tr><td class="paramdir">[in]</td><td class="paramname">dim2</td><td>The second object to be compared. </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013420 <tr><td class="paramdir">[in]</td><td class="paramname">dims</td><td>(Optional) Further allowed objects.</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013421 </table>
13422 </dd>
13423</dl>
Jenkins514be652019-02-28 12:25:18 +000013424<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013425
Jenkinsb9abeae2018-11-22 11:58:08 +000013426<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00280">280</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013427<div class="fragment"><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;{</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(<a class="code" href="namespacearm__compute_1_1detail.xhtml#a7955712fcb1027a92679cf656e9394cb">detail::for_each_error</a>(detail::compare_dimension&lt;T&gt;(dim1, <span class="keyword">function</span>, file, line), dim2, std::forward&lt;Ts&gt;(dims)...));</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
13428<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013429<div class="ttc" id="namespacearm__compute_1_1detail_xhtml_a7955712fcb1027a92679cf656e9394cb"><div class="ttname"><a href="namespacearm__compute_1_1detail.xhtml#a7955712fcb1027a92679cf656e9394cb">arm_compute::detail::for_each_error</a></div><div class="ttdeci">arm_compute::Status for_each_error(F &amp;&amp;func, T &amp;&amp;arg, Ts &amp;&amp;... args)</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00114">Validate.h:114</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013430</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000013431<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, and <a class="el" href="_validate_8h_source.xhtml#l00108">arm_compute::detail::for_each_error()</a>.</p>
13432
Anthony Barbierdbdab852017-06-23 15:42:00 +010013433</div>
13434</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013435<a id="a49e1fb8719a6e3b4db298796bdeac758"></a>
13436<h2 class="memtitle"><span class="permalink"><a href="#a49e1fb8719a6e3b4db298796bdeac758">&#9670;&nbsp;</a></span>error_on_mismatching_quantization_info() <span class="overload">[1/2]</span></h2>
13437
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013438<div class="memitem">
13439<div class="memproto">
13440<table class="mlabels">
13441 <tr>
13442 <td class="mlabels-left">
13443 <table class="memname">
13444 <tr>
13445 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_mismatching_quantization_info </td>
13446 <td>(</td>
13447 <td class="paramtype">const char *&#160;</td>
13448 <td class="paramname"><em>function</em>, </td>
13449 </tr>
13450 <tr>
13451 <td class="paramkey"></td>
13452 <td></td>
13453 <td class="paramtype">const char *&#160;</td>
13454 <td class="paramname"><em>file</em>, </td>
13455 </tr>
13456 <tr>
13457 <td class="paramkey"></td>
13458 <td></td>
13459 <td class="paramtype">const int&#160;</td>
13460 <td class="paramname"><em>line</em>, </td>
13461 </tr>
13462 <tr>
13463 <td class="paramkey"></td>
13464 <td></td>
13465 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
13466 <td class="paramname"><em>tensor_info_1</em>, </td>
13467 </tr>
13468 <tr>
13469 <td class="paramkey"></td>
13470 <td></td>
13471 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
13472 <td class="paramname"><em>tensor_info_2</em>, </td>
13473 </tr>
13474 <tr>
13475 <td class="paramkey"></td>
13476 <td></td>
13477 <td class="paramtype">Ts...&#160;</td>
13478 <td class="paramname"><em>tensor_infos</em>&#160;</td>
13479 </tr>
13480 <tr>
13481 <td></td>
13482 <td>)</td>
13483 <td></td><td></td>
13484 </tr>
13485 </table>
13486 </td>
13487 <td class="mlabels-right">
13488<span class="mlabels"><span class="mlabel">inline</span></span> </td>
13489 </tr>
13490</table>
13491</div><div class="memdoc">
13492
13493<p>Return an error if the passed tensor infos have different asymmetric quantized data types or different quantization info. </p>
13494<dl class="section note"><dt>Note</dt><dd>: If the first tensor info doesn't have asymmetric quantized data type, the function returns without throwing an error</dd></dl>
13495<dl class="params"><dt>Parameters</dt><dd>
13496 <table class="params">
13497 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
13498 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
13499 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
13500 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_info_1</td><td>The first tensor info to be compared. </td></tr>
13501 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_info_2</td><td>The second tensor info to be compared. </td></tr>
13502 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_infos</td><td>(Optional) Further allowed tensor infos.</td></tr>
13503 </table>
13504 </dd>
13505</dl>
Jenkins514be652019-02-28 12:25:18 +000013506<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013507
Jenkinsb9abeae2018-11-22 11:58:08 +000013508<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00562">562</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013509<div class="fragment"><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;{</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;&amp;first_data_type = tensor_info_1-&gt;data_type();</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <span class="keyword">const</span> QuantizationInfo first_quantization_info = tensor_info_1-&gt;quantization_info();</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; <span class="keywordflow">if</span>(!<a class="code" href="namespacearm__compute.xhtml#a14f46283f316e7f0fad301d5c1507e9f">is_data_type_quantized_asymmetric</a>(first_data_type))</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; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; }</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; <span class="keyword">const</span> std::array &lt; <span class="keyword">const</span> ITensorInfo *, 1 + <span class="keyword">sizeof</span>...(Ts) &gt; tensor_infos_array{ { tensor_info_2, std::forward&lt;Ts&gt;(tensor_infos)... } };</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensor_infos_array.begin(), tensor_infos_array.end(), [&amp;](<span class="keyword">const</span> ITensorInfo * tensor_info)</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; {</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; <span class="keywordflow">return</span> tensor_info-&gt;data_type() != first_data_type;</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; }),</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensors have different asymmetric quantized data types&quot;</span>);</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensor_infos_array.begin(), tensor_infos_array.end(), [&amp;](<span class="keyword">const</span> ITensorInfo * tensor_info)</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; {</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <span class="keywordflow">return</span> tensor_info-&gt;quantization_info() != first_quantization_info;</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; }),</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensors have different quantization information&quot;</span>);</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160;</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
13510<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
13511<div class="ttc" id="namespacearm__compute_xhtml_a14f46283f316e7f0fad301d5c1507e9f"><div class="ttname"><a href="namespacearm__compute.xhtml#a14f46283f316e7f0fad301d5c1507e9f">arm_compute::is_data_type_quantized_asymmetric</a></div><div class="ttdeci">bool is_data_type_quantized_asymmetric(DataType dt)</div><div class="ttdoc">Check if a given data type is of asymmetric quantized type.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l01014">Utils.h:1014</a></div></div>
13512<div class="ttc" id="namespacearm__compute_xhtml_ad8ed01ff3ff33333d8e19db4d2818bb6"><div class="ttname"><a href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Available data types.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00074">Types.h:74</a></div></div>
13513</div><!-- fragment -->
13514<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l01014">is_data_type_quantized_asymmetric()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a3f3e1a3200223e6a304a533b1016e749">ITensorInfo::quantization_info()</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013515
Jenkinsb9abeae2018-11-22 11:58:08 +000013516<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00601">error_on_mismatching_quantization_info()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013517
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013518</div>
13519</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013520<a id="a3ba911901c6a47649cba6884e0f43a18"></a>
13521<h2 class="memtitle"><span class="permalink"><a href="#a3ba911901c6a47649cba6884e0f43a18">&#9670;&nbsp;</a></span>error_on_mismatching_quantization_info() <span class="overload">[2/2]</span></h2>
13522
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013523<div class="memitem">
13524<div class="memproto">
13525<table class="mlabels">
13526 <tr>
13527 <td class="mlabels-left">
13528 <table class="memname">
13529 <tr>
13530 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_mismatching_quantization_info </td>
13531 <td>(</td>
13532 <td class="paramtype">const char *&#160;</td>
13533 <td class="paramname"><em>function</em>, </td>
13534 </tr>
13535 <tr>
13536 <td class="paramkey"></td>
13537 <td></td>
13538 <td class="paramtype">const char *&#160;</td>
13539 <td class="paramname"><em>file</em>, </td>
13540 </tr>
13541 <tr>
13542 <td class="paramkey"></td>
13543 <td></td>
13544 <td class="paramtype">const int&#160;</td>
13545 <td class="paramname"><em>line</em>, </td>
13546 </tr>
13547 <tr>
13548 <td class="paramkey"></td>
13549 <td></td>
13550 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
13551 <td class="paramname"><em>tensor_1</em>, </td>
13552 </tr>
13553 <tr>
13554 <td class="paramkey"></td>
13555 <td></td>
13556 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
13557 <td class="paramname"><em>tensor_2</em>, </td>
13558 </tr>
13559 <tr>
13560 <td class="paramkey"></td>
13561 <td></td>
13562 <td class="paramtype">Ts...&#160;</td>
13563 <td class="paramname"><em>tensors</em>&#160;</td>
13564 </tr>
13565 <tr>
13566 <td></td>
13567 <td>)</td>
13568 <td></td><td></td>
13569 </tr>
13570 </table>
13571 </td>
13572 <td class="mlabels-right">
13573<span class="mlabels"><span class="mlabel">inline</span></span> </td>
13574 </tr>
13575</table>
13576</div><div class="memdoc">
13577
13578<p>Return an error if the passed tensor have different asymmetric quantized data types or different quantization info. </p>
13579<dl class="section note"><dt>Note</dt><dd>: If the first tensor doesn't have asymmetric quantized data type, the function returns without throwing an error</dd></dl>
13580<dl class="params"><dt>Parameters</dt><dd>
13581 <table class="params">
13582 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
13583 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
13584 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
13585 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_1</td><td>The first tensor to be compared. </td></tr>
13586 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_2</td><td>The second tensor to be compared. </td></tr>
13587 <tr><td class="paramdir">[in]</td><td class="paramname">tensors</td><td>(Optional) Further allowed tensors.</td></tr>
13588 </table>
13589 </dd>
13590</dl>
Jenkins514be652019-02-28 12:25:18 +000013591<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013592
Jenkinsb9abeae2018-11-22 11:58:08 +000013593<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00601">601</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013594<div class="fragment"><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160;{</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a49e1fb8719a6e3b4db298796bdeac758">arm_compute::error_on_mismatching_quantization_info</a>(<span class="keyword">function</span>, file, line, tensor_1-&gt;info(), tensor_2-&gt;info(),</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; detail::get_tensor_info_t&lt;ITensorInfo *&gt;()(tensors)...));</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
13595<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013596<div class="ttc" id="namespacearm__compute_xhtml_a49e1fb8719a6e3b4db298796bdeac758"><div class="ttname"><a href="namespacearm__compute.xhtml#a49e1fb8719a6e3b4db298796bdeac758">arm_compute::error_on_mismatching_quantization_info</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_quantization_info(const char *function, const char *file, const int line, const ITensorInfo *tensor_info_1, const ITensorInfo *tensor_info_2, Ts... tensor_infos)</div><div class="ttdoc">Return an error if the passed tensor infos have different asymmetric quantized data types or differen...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00562">Validate.h:562</a></div></div>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013597</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000013598<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00562">error_on_mismatching_quantization_info()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
13599
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013600</div>
13601</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013602<a id="a900072ec18ac254db40901425e2b35b2"></a>
13603<h2 class="memtitle"><span class="permalink"><a href="#a900072ec18ac254db40901425e2b35b2">&#9670;&nbsp;</a></span>error_on_mismatching_shapes() <span class="overload">[1/4]</span></h2>
13604
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013605<div class="memitem">
13606<div class="memproto">
13607<table class="mlabels">
13608 <tr>
13609 <td class="mlabels-left">
13610 <table class="memname">
13611 <tr>
13612 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_mismatching_shapes </td>
13613 <td>(</td>
13614 <td class="paramtype">const char *&#160;</td>
13615 <td class="paramname"><em>function</em>, </td>
13616 </tr>
13617 <tr>
13618 <td class="paramkey"></td>
13619 <td></td>
13620 <td class="paramtype">const char *&#160;</td>
13621 <td class="paramname"><em>file</em>, </td>
13622 </tr>
13623 <tr>
13624 <td class="paramkey"></td>
13625 <td></td>
13626 <td class="paramtype">const int&#160;</td>
13627 <td class="paramname"><em>line</em>, </td>
13628 </tr>
13629 <tr>
13630 <td class="paramkey"></td>
13631 <td></td>
13632 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
13633 <td class="paramname"><em>tensor_info_1</em>, </td>
13634 </tr>
13635 <tr>
13636 <td class="paramkey"></td>
13637 <td></td>
13638 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
13639 <td class="paramname"><em>tensor_info_2</em>, </td>
13640 </tr>
13641 <tr>
13642 <td class="paramkey"></td>
13643 <td></td>
13644 <td class="paramtype">Ts...&#160;</td>
13645 <td class="paramname"><em>tensor_infos</em>&#160;</td>
13646 </tr>
13647 <tr>
13648 <td></td>
13649 <td>)</td>
13650 <td></td><td></td>
13651 </tr>
13652 </table>
13653 </td>
13654 <td class="mlabels-right">
13655<span class="mlabels"><span class="mlabel">inline</span></span> </td>
13656 </tr>
13657</table>
13658</div><div class="memdoc">
13659
13660<p>Return an error if the passed two tensor infos have different shapes from the given dimension. </p>
13661<dl class="params"><dt>Parameters</dt><dd>
13662 <table class="params">
13663 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
13664 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
13665 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
13666 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_info_1</td><td>The first tensor info to be compared. </td></tr>
13667 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_info_2</td><td>The second tensor info to be compared. </td></tr>
13668 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_infos</td><td>(Optional) Further allowed tensor infos.</td></tr>
13669 </table>
13670 </dd>
13671</dl>
Jenkins514be652019-02-28 12:25:18 +000013672<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013673
Jenkinsb9abeae2018-11-22 11:58:08 +000013674<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00368">368</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013675<div class="fragment"><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;{</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a7a314d37a14fb002f52a148122238499">error_on_mismatching_shapes</a>(<span class="keyword">function</span>, file, line, 0<a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">U</a>, tensor_info_1, tensor_info_2, std::forward&lt;Ts&gt;(tensor_infos)...);</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1utils_1_1cast_xhtml_a2ea3d1fc01a3a442900249ca182ffa5e"><div class="ttname"><a href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">arm_compute::utils::cast::U</a></div><div class="ttdeci">U</div><div class="ttdef"><b>Definition:</b> <a href="_saturate_cast_8h_source.xhtml#l00057">SaturateCast.h:57</a></div></div>
13676<div class="ttc" id="namespacearm__compute_xhtml_a7a314d37a14fb002f52a148122238499"><div class="ttname"><a href="namespacearm__compute.xhtml#a7a314d37a14fb002f52a148122238499">arm_compute::error_on_mismatching_shapes</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_shapes(const char *function, const char *file, const int line, unsigned int upper_dim, const ITensor *tensor_1, const ITensor *tensor_2, Ts... tensors)</div><div class="ttdoc">Return an error if the passed two tensors have different shapes from the given dimension.</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00431">Validate.h:431</a></div></div>
13677</div><!-- fragment -->
13678<p class="reference">References <a class="el" href="_saturate_cast_8h_source.xhtml#l00057">arm_compute::utils::cast::U</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013679
Jenkinsb9abeae2018-11-22 11:58:08 +000013680<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00385">error_on_mismatching_shapes()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013681
Anthony Barbierdbdab852017-06-23 15:42:00 +010013682</div>
13683</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013684<a id="a196a1a4faf1a8893963fd89d7efaf5d9"></a>
13685<h2 class="memtitle"><span class="permalink"><a href="#a196a1a4faf1a8893963fd89d7efaf5d9">&#9670;&nbsp;</a></span>error_on_mismatching_shapes() <span class="overload">[2/4]</span></h2>
13686
Anthony Barbierdbdab852017-06-23 15:42:00 +010013687<div class="memitem">
13688<div class="memproto">
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013689<table class="mlabels">
13690 <tr>
13691 <td class="mlabels-left">
Anthony Barbierdbdab852017-06-23 15:42:00 +010013692 <table class="memname">
13693 <tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013694 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_mismatching_shapes </td>
13695 <td>(</td>
13696 <td class="paramtype">const char *&#160;</td>
13697 <td class="paramname"><em>function</em>, </td>
13698 </tr>
13699 <tr>
13700 <td class="paramkey"></td>
13701 <td></td>
13702 <td class="paramtype">const char *&#160;</td>
13703 <td class="paramname"><em>file</em>, </td>
13704 </tr>
13705 <tr>
13706 <td class="paramkey"></td>
13707 <td></td>
13708 <td class="paramtype">const int&#160;</td>
13709 <td class="paramname"><em>line</em>, </td>
13710 </tr>
13711 <tr>
13712 <td class="paramkey"></td>
13713 <td></td>
13714 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
13715 <td class="paramname"><em>tensor_1</em>, </td>
13716 </tr>
13717 <tr>
13718 <td class="paramkey"></td>
13719 <td></td>
13720 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
13721 <td class="paramname"><em>tensor_2</em>, </td>
13722 </tr>
13723 <tr>
13724 <td class="paramkey"></td>
13725 <td></td>
13726 <td class="paramtype">Ts...&#160;</td>
13727 <td class="paramname"><em>tensors</em>&#160;</td>
13728 </tr>
13729 <tr>
13730 <td></td>
13731 <td>)</td>
13732 <td></td><td></td>
13733 </tr>
13734 </table>
13735 </td>
13736 <td class="mlabels-right">
13737<span class="mlabels"><span class="mlabel">inline</span></span> </td>
13738 </tr>
13739</table>
13740</div><div class="memdoc">
13741
13742<p>Return an error if the passed two tensors have different shapes from the given dimension. </p>
13743<dl class="params"><dt>Parameters</dt><dd>
13744 <table class="params">
13745 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
13746 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
13747 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
13748 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_1</td><td>The first tensor to be compared. </td></tr>
13749 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_2</td><td>The second tensor to be compared. </td></tr>
13750 <tr><td class="paramdir">[in]</td><td class="paramname">tensors</td><td>(Optional) Further allowed tensors.</td></tr>
13751 </table>
13752 </dd>
13753</dl>
Jenkins514be652019-02-28 12:25:18 +000013754<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013755
Jenkinsb9abeae2018-11-22 11:58:08 +000013756<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00385">385</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013757<div class="fragment"><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;{</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a7a314d37a14fb002f52a148122238499">error_on_mismatching_shapes</a>(<span class="keyword">function</span>, file, line, 0<a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">U</a>, tensor_1, tensor_2, std::forward&lt;Ts&gt;(tensors)...);</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1utils_1_1cast_xhtml_a2ea3d1fc01a3a442900249ca182ffa5e"><div class="ttname"><a href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">arm_compute::utils::cast::U</a></div><div class="ttdeci">U</div><div class="ttdef"><b>Definition:</b> <a href="_saturate_cast_8h_source.xhtml#l00057">SaturateCast.h:57</a></div></div>
13758<div class="ttc" id="namespacearm__compute_xhtml_a7a314d37a14fb002f52a148122238499"><div class="ttname"><a href="namespacearm__compute.xhtml#a7a314d37a14fb002f52a148122238499">arm_compute::error_on_mismatching_shapes</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_shapes(const char *function, const char *file, const int line, unsigned int upper_dim, const ITensor *tensor_1, const ITensor *tensor_2, Ts... tensors)</div><div class="ttdoc">Return an error if the passed two tensors have different shapes from the given dimension.</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00431">Validate.h:431</a></div></div>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013759</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000013760<p class="reference">References <a class="el" href="_validate_8h_source.xhtml#l00368">error_on_mismatching_shapes()</a>, and <a class="el" href="_saturate_cast_8h_source.xhtml#l00057">arm_compute::utils::cast::U</a>.</p>
13761
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013762</div>
13763</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013764<a id="a8f08e05970c101f7a9c852dc036f5ffb"></a>
13765<h2 class="memtitle"><span class="permalink"><a href="#a8f08e05970c101f7a9c852dc036f5ffb">&#9670;&nbsp;</a></span>error_on_mismatching_shapes() <span class="overload">[3/4]</span></h2>
13766
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013767<div class="memitem">
13768<div class="memproto">
13769<table class="mlabels">
13770 <tr>
13771 <td class="mlabels-left">
13772 <table class="memname">
13773 <tr>
13774 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_mismatching_shapes </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013775 <td>(</td>
13776 <td class="paramtype">const char *&#160;</td>
13777 <td class="paramname"><em>function</em>, </td>
13778 </tr>
13779 <tr>
13780 <td class="paramkey"></td>
13781 <td></td>
13782 <td class="paramtype">const char *&#160;</td>
13783 <td class="paramname"><em>file</em>, </td>
13784 </tr>
13785 <tr>
13786 <td class="paramkey"></td>
13787 <td></td>
13788 <td class="paramtype">const int&#160;</td>
13789 <td class="paramname"><em>line</em>, </td>
13790 </tr>
13791 <tr>
13792 <td class="paramkey"></td>
13793 <td></td>
13794 <td class="paramtype">unsigned int&#160;</td>
13795 <td class="paramname"><em>upper_dim</em>, </td>
13796 </tr>
13797 <tr>
13798 <td class="paramkey"></td>
13799 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013800 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
13801 <td class="paramname"><em>tensor_info_1</em>, </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013802 </tr>
13803 <tr>
13804 <td class="paramkey"></td>
13805 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013806 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
13807 <td class="paramname"><em>tensor_info_2</em>, </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013808 </tr>
13809 <tr>
13810 <td class="paramkey"></td>
13811 <td></td>
13812 <td class="paramtype">Ts...&#160;</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013813 <td class="paramname"><em>tensor_infos</em>&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013814 </tr>
13815 <tr>
13816 <td></td>
13817 <td>)</td>
13818 <td></td><td></td>
13819 </tr>
13820 </table>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013821 </td>
13822 <td class="mlabels-right">
13823<span class="mlabels"><span class="mlabel">inline</span></span> </td>
13824 </tr>
13825</table>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013826</div><div class="memdoc">
13827
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013828<p>Return an error if the passed two tensors have different shapes from the given dimension. </p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013829<dl class="params"><dt>Parameters</dt><dd>
13830 <table class="params">
13831 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
13832 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
13833 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
13834 <tr><td class="paramdir">[in]</td><td class="paramname">upper_dim</td><td>The dimension from which to check. </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013835 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_info_1</td><td>The first tensor info to be compared. </td></tr>
13836 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_info_2</td><td>The second tensor info to be compared. </td></tr>
13837 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_infos</td><td>(Optional) Further allowed tensor infos.</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013838 </table>
13839 </dd>
13840</dl>
Jenkins514be652019-02-28 12:25:18 +000013841<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013842
Jenkinsb9abeae2018-11-22 11:58:08 +000013843<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00403">403</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013844<div class="fragment"><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;{</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info_1 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info_2 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensor_infos)...));</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keyword">const</span> std::array &lt; <span class="keyword">const</span> ITensorInfo *, 2 + <span class="keyword">sizeof</span>...(Ts) &gt; tensors_info_array{ { tensor_info_1, tensor_info_2, std::forward&lt;Ts&gt;(tensor_infos)... } };</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(std::next(tensors_info_array.cbegin()), tensors_info_array.cend(), [&amp;](<span class="keyword">const</span> ITensorInfo * tensor_info)</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; {</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">detail::have_different_dimensions</a>((*tensors_info_array.cbegin())-&gt;tensor_shape(), tensor_info-&gt;tensor_shape(), upper_dim);</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; }),</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensors have different shapes&quot;</span>);</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
13845<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
13846<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
13847<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr.</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
13848<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +010013849<div class="ttc" id="namespacearm__compute_1_1detail_xhtml_a45d610a8bc262f7007c934293361e888"><div class="ttname"><a href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">arm_compute::detail::have_different_dimensions</a></div><div class="ttdeci">bool have_different_dimensions(const Dimensions&lt; T &gt; &amp;dim1, const Dimensions&lt; T &gt; &amp;dim2, unsigned int upper_dim)</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00051">Validate.h:51</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +000013850</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000013851<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00051">arm_compute::detail::have_different_dimensions()</a>.</p>
13852
Anthony Barbier871448e2017-03-24 14:54:29 +000013853</div>
13854</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013855<a id="a7a314d37a14fb002f52a148122238499"></a>
13856<h2 class="memtitle"><span class="permalink"><a href="#a7a314d37a14fb002f52a148122238499">&#9670;&nbsp;</a></span>error_on_mismatching_shapes() <span class="overload">[4/4]</span></h2>
13857
Anthony Barbier871448e2017-03-24 14:54:29 +000013858<div class="memitem">
13859<div class="memproto">
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013860<table class="mlabels">
13861 <tr>
13862 <td class="mlabels-left">
Anthony Barbier871448e2017-03-24 14:54:29 +000013863 <table class="memname">
13864 <tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013865 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_mismatching_shapes </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000013866 <td>(</td>
13867 <td class="paramtype">const char *&#160;</td>
13868 <td class="paramname"><em>function</em>, </td>
13869 </tr>
13870 <tr>
13871 <td class="paramkey"></td>
13872 <td></td>
13873 <td class="paramtype">const char *&#160;</td>
13874 <td class="paramname"><em>file</em>, </td>
13875 </tr>
13876 <tr>
13877 <td class="paramkey"></td>
13878 <td></td>
13879 <td class="paramtype">const int&#160;</td>
13880 <td class="paramname"><em>line</em>, </td>
13881 </tr>
13882 <tr>
13883 <td class="paramkey"></td>
13884 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013885 <td class="paramtype">unsigned int&#160;</td>
13886 <td class="paramname"><em>upper_dim</em>, </td>
13887 </tr>
13888 <tr>
13889 <td class="paramkey"></td>
13890 <td></td>
13891 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
13892 <td class="paramname"><em>tensor_1</em>, </td>
13893 </tr>
13894 <tr>
13895 <td class="paramkey"></td>
13896 <td></td>
13897 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
13898 <td class="paramname"><em>tensor_2</em>, </td>
13899 </tr>
13900 <tr>
13901 <td class="paramkey"></td>
13902 <td></td>
13903 <td class="paramtype">Ts...&#160;</td>
13904 <td class="paramname"><em>tensors</em>&#160;</td>
13905 </tr>
13906 <tr>
13907 <td></td>
13908 <td>)</td>
13909 <td></td><td></td>
13910 </tr>
13911 </table>
13912 </td>
13913 <td class="mlabels-right">
13914<span class="mlabels"><span class="mlabel">inline</span></span> </td>
13915 </tr>
13916</table>
13917</div><div class="memdoc">
13918
13919<p>Return an error if the passed two tensors have different shapes from the given dimension. </p>
13920<dl class="params"><dt>Parameters</dt><dd>
13921 <table class="params">
13922 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
13923 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
13924 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
13925 <tr><td class="paramdir">[in]</td><td class="paramname">upper_dim</td><td>The dimension from which to check. </td></tr>
13926 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_1</td><td>The first tensor to be compared. </td></tr>
13927 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_2</td><td>The second tensor to be compared. </td></tr>
13928 <tr><td class="paramdir">[in]</td><td class="paramname">tensors</td><td>(Optional) Further allowed tensors.</td></tr>
13929 </table>
13930 </dd>
13931</dl>
Jenkins514be652019-02-28 12:25:18 +000013932<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013933
Jenkinsb9abeae2018-11-22 11:58:08 +000013934<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00431">431</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000013935<div class="fragment"><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;{</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_1 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_2 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a900072ec18ac254db40901425e2b35b2">arm_compute::error_on_mismatching_shapes</a>(<span class="keyword">function</span>, file, line, upper_dim, tensor_1-&gt;info(), tensor_2-&gt;info(),</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; detail::get_tensor_info_t&lt;ITensorInfo *&gt;()(tensors)...));</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
13936<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
13937<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr.</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
13938<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
13939<div class="ttc" id="namespacearm__compute_xhtml_a900072ec18ac254db40901425e2b35b2"><div class="ttname"><a href="namespacearm__compute.xhtml#a900072ec18ac254db40901425e2b35b2">arm_compute::error_on_mismatching_shapes</a></div><div class="ttdeci">arm_compute::Status error_on_mismatching_shapes(const char *function, const char *file, const int line, const ITensorInfo *tensor_info_1, const ITensorInfo *tensor_info_2, Ts... tensor_infos)</div><div class="ttdoc">Return an error if the passed two tensor infos have different shapes from the given dimension.</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00368">Validate.h:368</a></div></div>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013940</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000013941<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00368">error_on_mismatching_shapes()</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
13942
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013943</div>
13944</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000013945<a id="ad7f5b38e9d5391afc4a5ce5702e7379b"></a>
13946<h2 class="memtitle"><span class="permalink"><a href="#ad7f5b38e9d5391afc4a5ce5702e7379b">&#9670;&nbsp;</a></span>error_on_mismatching_windows()</h2>
13947
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013948<div class="memitem">
13949<div class="memproto">
13950 <table class="memname">
13951 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000013952 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_mismatching_windows </td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013953 <td>(</td>
13954 <td class="paramtype">const char *&#160;</td>
13955 <td class="paramname"><em>function</em>, </td>
13956 </tr>
13957 <tr>
13958 <td class="paramkey"></td>
13959 <td></td>
13960 <td class="paramtype">const char *&#160;</td>
13961 <td class="paramname"><em>file</em>, </td>
13962 </tr>
13963 <tr>
13964 <td class="paramkey"></td>
13965 <td></td>
13966 <td class="paramtype">const int&#160;</td>
13967 <td class="paramname"><em>line</em>, </td>
13968 </tr>
13969 <tr>
13970 <td class="paramkey"></td>
13971 <td></td>
13972 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000013973 <td class="paramname"><em>full</em>, </td>
13974 </tr>
13975 <tr>
13976 <td class="paramkey"></td>
13977 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013978 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000013979 <td class="paramname"><em>win</em>&#160;</td>
13980 </tr>
13981 <tr>
13982 <td></td>
13983 <td>)</td>
13984 <td></td><td></td>
13985 </tr>
13986 </table>
13987</div><div class="memdoc">
13988
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013989<p>Return an error if the passed window is invalid. </p>
13990<p>The subwindow is invalid if:</p><ul>
Anthony Barbier871448e2017-03-24 14:54:29 +000013991<li>It is not a valid window.</li>
13992<li>Its dimensions don't match the full window's ones</li>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000013993<li>The step for each of its dimension is not identical to the corresponding one of the full window.</li>
13994</ul>
Anthony Barbier871448e2017-03-24 14:54:29 +000013995<dl class="params"><dt>Parameters</dt><dd>
13996 <table class="params">
13997 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
13998 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
13999 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
14000 <tr><td class="paramdir">[in]</td><td class="paramname">full</td><td>Full size window </td></tr>
Jenkins514be652019-02-28 12:25:18 +000014001 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> to validate.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000014002 </table>
14003 </dd>
14004</dl>
Jenkins514be652019-02-28 12:25:18 +000014005<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000014006
Jenkinsb9abeae2018-11-22 11:58:08 +000014007<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00026">26</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014008<div class="fragment"><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;{</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; full.validate();</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; win.validate();</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> i = 0; i &lt; <a class="code" href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Coordinates::num_max_dimensions</a>; ++i)</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; {</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(full[i].start() != win[i].start(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(full[i].end() != win[i].end(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(full[i].<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a>() != win[i].<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a>(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; }</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
14009<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
14010<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a75b73e17c4ebe901e44af3b2b9846ab3"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">arm_compute::test::validation::step</a></div><div class="ttdeci">const int step</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_select_8cpp_source.xhtml#l00172">Select.cpp:172</a></div></div>
14011<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a1b67d5b720119d50faa286c774579ecc"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Dimensions&lt; int &gt;::num_max_dimensions</a></div><div class="ttdeci">static constexpr size_t num_max_dimensions</div><div class="ttdoc">Number of dimensions the tensor has.</div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00045">Dimensions.h:45</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014012</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000014013<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, <a class="el" href="_c_l_2_select_8cpp_source.xhtml#l00172">arm_compute::test::validation::step</a>, and <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>.</p>
14014
Anthony Barbier871448e2017-03-24 14:54:29 +000014015</div>
14016</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014017<a id="a069d7a20d1a7d62042f23039b356113b"></a>
14018<h2 class="memtitle"><span class="permalink"><a href="#a069d7a20d1a7d62042f23039b356113b">&#9670;&nbsp;</a></span>error_on_nullptr()</h2>
14019
Anthony Barbierdbdab852017-06-23 15:42:00 +010014020<div class="memitem">
14021<div class="memproto">
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014022<table class="mlabels">
14023 <tr>
14024 <td class="mlabels-left">
Anthony Barbierdbdab852017-06-23 15:42:00 +010014025 <table class="memname">
14026 <tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014027 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_nullptr </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010014028 <td>(</td>
14029 <td class="paramtype">const char *&#160;</td>
14030 <td class="paramname"><em>function</em>, </td>
14031 </tr>
14032 <tr>
14033 <td class="paramkey"></td>
14034 <td></td>
14035 <td class="paramtype">const char *&#160;</td>
14036 <td class="paramname"><em>file</em>, </td>
14037 </tr>
14038 <tr>
14039 <td class="paramkey"></td>
14040 <td></td>
14041 <td class="paramtype">const int&#160;</td>
14042 <td class="paramname"><em>line</em>, </td>
14043 </tr>
14044 <tr>
14045 <td class="paramkey"></td>
14046 <td></td>
14047 <td class="paramtype">Ts &amp;&amp;...&#160;</td>
14048 <td class="paramname"><em>pointers</em>&#160;</td>
14049 </tr>
14050 <tr>
14051 <td></td>
14052 <td>)</td>
14053 <td></td><td></td>
14054 </tr>
14055 </table>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014056 </td>
14057 <td class="mlabels-right">
14058<span class="mlabels"><span class="mlabel">inline</span></span> </td>
14059 </tr>
14060</table>
Anthony Barbierdbdab852017-06-23 15:42:00 +010014061</div><div class="memdoc">
14062
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014063<p>Create an error if one of the pointers is a nullptr. </p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010014064<dl class="params"><dt>Parameters</dt><dd>
14065 <table class="params">
14066 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
14067 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
14068 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014069 <tr><td class="paramdir">[in]</td><td class="paramname">pointers</td><td>Pointers to check against nullptr.</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +010014070 </table>
14071 </dd>
14072</dl>
Jenkins514be652019-02-28 12:25:18 +000014073<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010014074
Jenkinsb9abeae2018-11-22 11:58:08 +000014075<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00151">151</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014076<div class="fragment"><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;{</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keyword">const</span> std::array&lt;<span class="keyword">const</span> <span class="keywordtype">void</span> *, <span class="keyword">sizeof</span>...(Ts)&gt; pointers_array{ { std::forward&lt;Ts&gt;(pointers)... } };</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordtype">bool</span> has_nullptr = std::any_of(pointers_array.begin(), pointers_array.end(), [&amp;](<span class="keyword">const</span> <span class="keywordtype">void</span> *ptr)</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; {</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">return</span> (ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; });</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(has_nullptr, <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Nullptr object!&quot;</span>);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
14077<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
14078</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000014079<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014080
Jenkinsb9abeae2018-11-22 11:58:08 +000014081<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00457">error_on_mismatching_data_layouts()</a>, <a class="el" href="_validate_8h_source.xhtml#l00508">error_on_mismatching_data_types()</a>, <a class="el" href="_validate_8h_source.xhtml#l00403">error_on_mismatching_shapes()</a>, <a class="el" href="_validate_8h_source.xhtml#l00303">error_on_tensors_not_even()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00336">error_on_tensors_not_subsampled()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014082
Anthony Barbierdbdab852017-06-23 15:42:00 +010014083</div>
14084</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014085<a id="a398f32595ee55b858853d5bcdcacfef5"></a>
14086<h2 class="memtitle"><span class="permalink"><a href="#a398f32595ee55b858853d5bcdcacfef5">&#9670;&nbsp;</a></span>error_on_tensor_not_2d() <span class="overload">[1/2]</span></h2>
14087
Anthony Barbier871448e2017-03-24 14:54:29 +000014088<div class="memitem">
14089<div class="memproto">
14090 <table class="memname">
14091 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000014092 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_tensor_not_2d </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000014093 <td>(</td>
14094 <td class="paramtype">const char *&#160;</td>
14095 <td class="paramname"><em>function</em>, </td>
14096 </tr>
14097 <tr>
14098 <td class="paramkey"></td>
14099 <td></td>
14100 <td class="paramtype">const char *&#160;</td>
14101 <td class="paramname"><em>file</em>, </td>
14102 </tr>
14103 <tr>
14104 <td class="paramkey"></td>
14105 <td></td>
14106 <td class="paramtype">const int&#160;</td>
14107 <td class="paramname"><em>line</em>, </td>
14108 </tr>
14109 <tr>
14110 <td class="paramkey"></td>
14111 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014112 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000014113 <td class="paramname"><em>tensor</em>&#160;</td>
14114 </tr>
14115 <tr>
14116 <td></td>
14117 <td>)</td>
14118 <td></td><td></td>
14119 </tr>
14120 </table>
14121</div><div class="memdoc">
14122
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014123<p>Return an error if the tensor is not 2D. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +000014124<dl class="params"><dt>Parameters</dt><dd>
14125 <table class="params">
14126 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
14127 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
14128 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000014129 <tr><td class="paramdir">[in]</td><td class="paramname">tensor</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> to validate.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000014130 </table>
14131 </dd>
14132</dl>
Jenkins514be652019-02-28 12:25:18 +000014133<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000014134
Jenkinsb9abeae2018-11-22 11:58:08 +000014135<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00092">92</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014136<div class="fragment"><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;{</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor-&gt;info() == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(tensor-&gt;info()-&gt;num_dimensions() != 2,</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keyword">function</span>, file, line,</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="stringliteral">&quot;Only 2D Tensors are supported by this kernel (%d passed)&quot;</span>, tensor-&gt;info()-&gt;num_dimensions());</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
14137<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
14138<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
14139</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000014140<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a1f4e725b8e1ea36b30e09dc08ae6961d">ITensorInfo::num_dimensions()</a>.</p>
14141
Jenkins52ba29e2018-08-29 15:32:11 +000014142</div>
14143</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014144<a id="aa394a6ffa74616f886c889f04883663d"></a>
14145<h2 class="memtitle"><span class="permalink"><a href="#aa394a6ffa74616f886c889f04883663d">&#9670;&nbsp;</a></span>error_on_tensor_not_2d() <span class="overload">[2/2]</span></h2>
14146
Jenkins52ba29e2018-08-29 15:32:11 +000014147<div class="memitem">
14148<div class="memproto">
14149 <table class="memname">
14150 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000014151 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_tensor_not_2d </td>
Jenkins52ba29e2018-08-29 15:32:11 +000014152 <td>(</td>
14153 <td class="paramtype">const char *&#160;</td>
14154 <td class="paramname"><em>function</em>, </td>
14155 </tr>
14156 <tr>
14157 <td class="paramkey"></td>
14158 <td></td>
14159 <td class="paramtype">const char *&#160;</td>
14160 <td class="paramname"><em>file</em>, </td>
14161 </tr>
14162 <tr>
14163 <td class="paramkey"></td>
14164 <td></td>
14165 <td class="paramtype">const int&#160;</td>
14166 <td class="paramname"><em>line</em>, </td>
14167 </tr>
14168 <tr>
14169 <td class="paramkey"></td>
14170 <td></td>
14171 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
14172 <td class="paramname"><em>tensor</em>&#160;</td>
14173 </tr>
14174 <tr>
14175 <td></td>
14176 <td>)</td>
14177 <td></td><td></td>
14178 </tr>
14179 </table>
14180</div><div class="memdoc">
14181
14182<p>Return an error if the tensor info is not 2D. </p>
14183<dl class="params"><dt>Parameters</dt><dd>
14184 <table class="params">
14185 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
14186 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
14187 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000014188 <tr><td class="paramdir">[in]</td><td class="paramname">tensor</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info to validate.</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +000014189 </table>
14190 </dd>
14191</dl>
Jenkins514be652019-02-28 12:25:18 +000014192<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Jenkins52ba29e2018-08-29 15:32:11 +000014193
Jenkinsb9abeae2018-11-22 11:58:08 +000014194<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00103">103</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014195<div class="fragment"><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;{</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(tensor-&gt;num_dimensions() != 2,</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keyword">function</span>, file, line,</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="stringliteral">&quot;Only 2D Tensors are supported by this kernel (%d passed)&quot;</span>, tensor-&gt;num_dimensions());</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
14196<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
14197<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014198</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000014199<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, and <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a1f4e725b8e1ea36b30e09dc08ae6961d">ITensorInfo::num_dimensions()</a>.</p>
14200
Anthony Barbier871448e2017-03-24 14:54:29 +000014201</div>
14202</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014203<a id="aa8bcb895249c9b0207df5d6512433aab"></a>
14204<h2 class="memtitle"><span class="permalink"><a href="#aa8bcb895249c9b0207df5d6512433aab">&#9670;&nbsp;</a></span>error_on_tensors_not_even()</h2>
14205
Anthony Barbier06ea0482018-02-22 15:45:35 +000014206<div class="memitem">
14207<div class="memproto">
14208 <table class="memname">
14209 <tr>
14210 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_tensors_not_even </td>
14211 <td>(</td>
14212 <td class="paramtype">const char *&#160;</td>
14213 <td class="paramname"><em>function</em>, </td>
14214 </tr>
14215 <tr>
14216 <td class="paramkey"></td>
14217 <td></td>
14218 <td class="paramtype">const char *&#160;</td>
14219 <td class="paramname"><em>file</em>, </td>
14220 </tr>
14221 <tr>
14222 <td class="paramkey"></td>
14223 <td></td>
14224 <td class="paramtype">int&#160;</td>
14225 <td class="paramname"><em>line</em>, </td>
14226 </tr>
14227 <tr>
14228 <td class="paramkey"></td>
14229 <td></td>
14230 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;&#160;</td>
14231 <td class="paramname"><em>format</em>, </td>
14232 </tr>
14233 <tr>
14234 <td class="paramkey"></td>
14235 <td></td>
14236 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
14237 <td class="paramname"><em>tensor1</em>, </td>
14238 </tr>
14239 <tr>
14240 <td class="paramkey"></td>
14241 <td></td>
14242 <td class="paramtype">Ts...&#160;</td>
14243 <td class="paramname"><em>tensors</em>&#160;</td>
14244 </tr>
14245 <tr>
14246 <td></td>
14247 <td>)</td>
14248 <td></td><td></td>
14249 </tr>
14250 </table>
14251</div><div class="memdoc">
14252
14253<p>Return an error if the passed tensor objects are not even. </p>
14254<dl class="params"><dt>Parameters</dt><dd>
14255 <table class="params">
14256 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
14257 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
14258 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
14259 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>Format to check if odd shape is allowed </td></tr>
14260 <tr><td class="paramdir">[in]</td><td class="paramname">tensor1</td><td>The first object to be compared for odd shape. </td></tr>
14261 <tr><td class="paramdir">[in]</td><td class="paramname">tensors</td><td>(Optional) Further allowed objects.</td></tr>
14262 </table>
14263 </dd>
14264</dl>
Jenkins514be652019-02-28 12:25:18 +000014265<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier06ea0482018-02-22 15:45:35 +000014266
Jenkinsb9abeae2018-11-22 11:58:08 +000014267<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00303">303</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014268<div class="fragment"><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;{</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor1 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <span class="keyword">const</span> std::array &lt; <span class="keyword">const</span> ITensor *, 1 + <span class="keyword">sizeof</span>...(Ts) &gt; tensors_info_array{ { tensor1, std::forward&lt;Ts&gt;(tensors)... } };</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensors_info_array.cbegin(), tensors_info_array.cend(), [&amp;](<span class="keyword">const</span> ITensor * tensor)</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; {</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keyword">const</span> TensorShape correct_shape = <a class="code" href="namespacearm__compute.xhtml#add7f7487c235331a6518dd16ad1e3b38">adjust_odd_shape</a>(tensor-&gt;info()-&gt;tensor_shape(), format);</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">detail::have_different_dimensions</a>(tensor-&gt;info()-&gt;tensor_shape(), correct_shape, 2);</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; }),</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensor shape has odd dimensions&quot;</span>);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
14269<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
14270<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
14271<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr.</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
14272<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Anthony Barbier06ea0482018-02-22 15:45:35 +000014273<div class="ttc" id="namespacearm__compute_1_1detail_xhtml_a45d610a8bc262f7007c934293361e888"><div class="ttname"><a href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">arm_compute::detail::have_different_dimensions</a></div><div class="ttdeci">bool have_different_dimensions(const Dimensions&lt; T &gt; &amp;dim1, const Dimensions&lt; T &gt; &amp;dim2, unsigned int upper_dim)</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00051">Validate.h:51</a></div></div>
Jenkins514be652019-02-28 12:25:18 +000014274<div class="ttc" id="namespacearm__compute_xhtml_add7f7487c235331a6518dd16ad1e3b38"><div class="ttname"><a href="namespacearm__compute.xhtml#add7f7487c235331a6518dd16ad1e3b38">arm_compute::adjust_odd_shape</a></div><div class="ttdeci">TensorShape adjust_odd_shape(const TensorShape &amp;shape, Format format)</div><div class="ttdoc">Adjust tensor shape size if width or height are odd for a given multi-planar format.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00647">Utils.h:647</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +010014275</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000014276<p class="reference">References <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00647">adjust_odd_shape()</a>, <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00051">arm_compute::detail::have_different_dimensions()</a>.</p>
14277
Jenkinsb3a371b2018-05-23 11:36:53 +010014278</div>
14279</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014280<a id="a5865def3a35885dda73dd5f4d555d11c"></a>
14281<h2 class="memtitle"><span class="permalink"><a href="#a5865def3a35885dda73dd5f4d555d11c">&#9670;&nbsp;</a></span>error_on_tensors_not_subsampled()</h2>
14282
Jenkinsb3a371b2018-05-23 11:36:53 +010014283<div class="memitem">
14284<div class="memproto">
14285 <table class="memname">
14286 <tr>
14287 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_tensors_not_subsampled </td>
14288 <td>(</td>
14289 <td class="paramtype">const char *&#160;</td>
14290 <td class="paramname"><em>function</em>, </td>
14291 </tr>
14292 <tr>
14293 <td class="paramkey"></td>
14294 <td></td>
14295 <td class="paramtype">const char *&#160;</td>
14296 <td class="paramname"><em>file</em>, </td>
14297 </tr>
14298 <tr>
14299 <td class="paramkey"></td>
14300 <td></td>
14301 <td class="paramtype">int&#160;</td>
14302 <td class="paramname"><em>line</em>, </td>
14303 </tr>
14304 <tr>
14305 <td class="paramkey"></td>
14306 <td></td>
14307 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;&#160;</td>
14308 <td class="paramname"><em>format</em>, </td>
14309 </tr>
14310 <tr>
14311 <td class="paramkey"></td>
14312 <td></td>
14313 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;&#160;</td>
14314 <td class="paramname"><em>shape</em>, </td>
14315 </tr>
14316 <tr>
14317 <td class="paramkey"></td>
14318 <td></td>
14319 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
14320 <td class="paramname"><em>tensor1</em>, </td>
14321 </tr>
14322 <tr>
14323 <td class="paramkey"></td>
14324 <td></td>
14325 <td class="paramtype">Ts...&#160;</td>
14326 <td class="paramname"><em>tensors</em>&#160;</td>
14327 </tr>
14328 <tr>
14329 <td></td>
14330 <td>)</td>
14331 <td></td><td></td>
14332 </tr>
14333 </table>
14334</div><div class="memdoc">
14335
14336<p>Return an error if the passed tensor objects are not sub-sampled. </p>
14337<dl class="params"><dt>Parameters</dt><dd>
14338 <table class="params">
14339 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
14340 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
14341 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
14342 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>Format to check if sub-sampling allowed. </td></tr>
14343 <tr><td class="paramdir">[in]</td><td class="paramname">shape</td><td>The tensor shape to calculate sub-sampling from. </td></tr>
14344 <tr><td class="paramdir">[in]</td><td class="paramname">tensor1</td><td>The first object to be compared. </td></tr>
14345 <tr><td class="paramdir">[in]</td><td class="paramname">tensors</td><td>(Optional) Further allowed objects.</td></tr>
14346 </table>
14347 </dd>
14348</dl>
Jenkins514be652019-02-28 12:25:18 +000014349<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Jenkinsb3a371b2018-05-23 11:36:53 +010014350
Jenkinsb9abeae2018-11-22 11:58:08 +000014351<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00336">336</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014352<div class="fragment"><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160;{</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor1 == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a>(<span class="keyword">function</span>, file, line, std::forward&lt;Ts&gt;(tensors)...));</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keyword">const</span> TensorShape sub2_shape = <a class="code" href="namespacearm__compute.xhtml#a9d714e1b7d9d7818309138b7d830ebcb">calculate_subsampled_shape</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>, format);</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="keyword">const</span> std::array &lt; <span class="keyword">const</span> ITensor *, 1 + <span class="keyword">sizeof</span>...(Ts) &gt; tensors_info_array{ { tensor1, std::forward&lt;Ts&gt;(tensors)... } };</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(std::any_of(tensors_info_array.cbegin(), tensors_info_array.cend(), [&amp;](<span class="keyword">const</span> ITensor * tensor)</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; {</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">detail::have_different_dimensions</a>(tensor-&gt;info()-&gt;tensor_shape(), sub2_shape, 2);</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; }),</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Tensor shape has mismatch dimensions for sub-sampling&quot;</span>);</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">AbsoluteDifference.cpp:97</a></div></div>
14353<div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
14354<div class="ttc" id="namespacearm__compute_xhtml_a9d714e1b7d9d7818309138b7d830ebcb"><div class="ttname"><a href="namespacearm__compute.xhtml#a9d714e1b7d9d7818309138b7d830ebcb">arm_compute::calculate_subsampled_shape</a></div><div class="ttdeci">TensorShape calculate_subsampled_shape(const TensorShape &amp;shape, Format format, Channel channel=Channel::UNKNOWN)</div><div class="ttdoc">Calculate subsampled shape for a given format and channel.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l00674">Utils.h:674</a></div></div>
14355<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
14356<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
14357<div class="ttc" id="namespacearm__compute_xhtml_a069d7a20d1a7d62042f23039b356113b"><div class="ttname"><a href="namespacearm__compute.xhtml#a069d7a20d1a7d62042f23039b356113b">arm_compute::error_on_nullptr</a></div><div class="ttdeci">arm_compute::Status error_on_nullptr(const char *function, const char *file, const int line, Ts &amp;&amp;... pointers)</div><div class="ttdoc">Create an error if one of the pointers is a nullptr.</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00151">Validate.h:151</a></div></div>
14358<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +010014359<div class="ttc" id="namespacearm__compute_1_1detail_xhtml_a45d610a8bc262f7007c934293361e888"><div class="ttname"><a href="namespacearm__compute_1_1detail.xhtml#a45d610a8bc262f7007c934293361e888">arm_compute::detail::have_different_dimensions</a></div><div class="ttdeci">bool have_different_dimensions(const Dimensions&lt; T &gt; &amp;dim1, const Dimensions&lt; T &gt; &amp;dim2, unsigned int upper_dim)</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00051">Validate.h:51</a></div></div>
Anthony Barbier06ea0482018-02-22 15:45:35 +000014360</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000014361<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00674">calculate_subsampled_shape()</a>, <a class="el" href="_validate_8h_source.xhtml#l00151">error_on_nullptr()</a>, <a class="el" href="_validate_8h_source.xhtml#l00051">arm_compute::detail::have_different_dimensions()</a>, and <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">arm_compute::test::validation::shape</a>.</p>
14362
Anthony Barbier06ea0482018-02-22 15:45:35 +000014363</div>
14364</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014365<a id="acd11fc94aa2828fee0715de0297eb306"></a>
14366<h2 class="memtitle"><span class="permalink"><a href="#acd11fc94aa2828fee0715de0297eb306">&#9670;&nbsp;</a></span>error_on_unconfigured_kernel()</h2>
14367
Anthony Barbier871448e2017-03-24 14:54:29 +000014368<div class="memitem">
14369<div class="memproto">
14370 <table class="memname">
14371 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000014372 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_unconfigured_kernel </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000014373 <td>(</td>
14374 <td class="paramtype">const char *&#160;</td>
14375 <td class="paramname"><em>function</em>, </td>
14376 </tr>
14377 <tr>
14378 <td class="paramkey"></td>
14379 <td></td>
14380 <td class="paramtype">const char *&#160;</td>
14381 <td class="paramname"><em>file</em>, </td>
14382 </tr>
14383 <tr>
14384 <td class="paramkey"></td>
14385 <td></td>
14386 <td class="paramtype">const int&#160;</td>
14387 <td class="paramname"><em>line</em>, </td>
14388 </tr>
14389 <tr>
14390 <td class="paramkey"></td>
14391 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014392 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_kernel.xhtml">IKernel</a> *&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000014393 <td class="paramname"><em>kernel</em>&#160;</td>
14394 </tr>
14395 <tr>
14396 <td></td>
14397 <td>)</td>
14398 <td></td><td></td>
14399 </tr>
14400 </table>
14401</div><div class="memdoc">
14402
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014403<p>Return an error if the kernel is not configured. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +000014404<dl class="params"><dt>Parameters</dt><dd>
14405 <table class="params">
14406 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
14407 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
14408 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000014409 <tr><td class="paramdir">[in]</td><td class="paramname">kernel</td><td><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> to validate.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000014410 </table>
14411 </dd>
14412</dl>
Jenkins514be652019-02-28 12:25:18 +000014413<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000014414
Jenkinsb9abeae2018-11-22 11:58:08 +000014415<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00166">166</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014416<div class="fragment"><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;{</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(kernel == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>((kernel-&gt;window().x().start() == kernel-&gt;window().x().end()) &amp;&amp; (kernel-&gt;window().x().end() == 0) &amp;&amp; (kernel-&gt;window().x().step() == 0),</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keyword">function</span>, file, line,</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="stringliteral">&quot;This kernel hasn&#39;t been configured.&quot;</span>);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
14417<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
14418<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014419</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000014420<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>, <a class="el" href="_i_kernel_8cpp_source.xhtml#l00028">IKernel::window()</a>, and <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>.</p>
14421
Anthony Barbier871448e2017-03-24 14:54:29 +000014422</div>
14423</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014424<a id="a8e79316e933e15539e39cace39ba0e35"></a>
14425<h2 class="memtitle"><span class="permalink"><a href="#a8e79316e933e15539e39cace39ba0e35">&#9670;&nbsp;</a></span>error_on_unsupported_cpu_fp16() <span class="overload">[1/2]</span></h2>
14426
Anthony Barbierdbdab852017-06-23 15:42:00 +010014427<div class="memitem">
14428<div class="memproto">
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014429<table class="mlabels">
14430 <tr>
14431 <td class="mlabels-left">
Anthony Barbierdbdab852017-06-23 15:42:00 +010014432 <table class="memname">
14433 <tr>
Jenkins52ba29e2018-08-29 15:32:11 +000014434 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_unsupported_cpu_fp16 </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010014435 <td>(</td>
14436 <td class="paramtype">const char *&#160;</td>
14437 <td class="paramname"><em>function</em>, </td>
14438 </tr>
14439 <tr>
14440 <td class="paramkey"></td>
14441 <td></td>
14442 <td class="paramtype">const char *&#160;</td>
14443 <td class="paramname"><em>file</em>, </td>
14444 </tr>
14445 <tr>
14446 <td class="paramkey"></td>
14447 <td></td>
Jenkins52ba29e2018-08-29 15:32:11 +000014448 <td class="paramtype">const int&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010014449 <td class="paramname"><em>line</em>, </td>
14450 </tr>
14451 <tr>
14452 <td class="paramkey"></td>
14453 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014454 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
14455 <td class="paramname"><em>tensor_info</em>&#160;</td>
14456 </tr>
14457 <tr>
14458 <td></td>
14459 <td>)</td>
14460 <td></td><td></td>
14461 </tr>
14462 </table>
14463 </td>
14464 <td class="mlabels-right">
14465<span class="mlabels"><span class="mlabel">inline</span></span> </td>
14466 </tr>
14467</table>
14468</div><div class="memdoc">
14469
Jenkins52ba29e2018-08-29 15:32:11 +000014470<p>Return an error if the data type of the passed tensor info is FP16 and FP16 support is not compiled in. </p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014471<dl class="params"><dt>Parameters</dt><dd>
14472 <table class="params">
14473 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
14474 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
14475 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000014476 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info to validate.</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014477 </table>
14478 </dd>
14479</dl>
Jenkins514be652019-02-28 12:25:18 +000014480<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014481
Jenkinsb9abeae2018-11-22 11:58:08 +000014482<p class="definition">Definition at line <a class="el" href="_c_p_p_2_validate_8h_source.xhtml#l00040">40</a> of file <a class="el" href="_c_p_p_2_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014483<div class="fragment"><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;{</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#ifndef __ARM_FEATURE_FP16_VECTOR_ARITHMETIC</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>(tensor_info-&gt;data_type() == DataType::F16,</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;This CPU architecture does not support F16 data type, you need v8.2 or above&quot;</span>);</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* __ARM_FEATURE_FP16_VECTOR_ARITHMETIC */</span><span class="preprocessor"></span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> {};</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
14484<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
14485<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
14486</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000014487<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014488
Jenkinsb9abeae2018-11-22 11:58:08 +000014489<p class="reference">Referenced by <a class="el" href="_c_p_p_2_validate_8h_source.xhtml#l00060">error_on_unsupported_cpu_fp16()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014490
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014491</div>
14492</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014493<a id="af2619085e2d6192b99df91fd805d8d30"></a>
14494<h2 class="memtitle"><span class="permalink"><a href="#af2619085e2d6192b99df91fd805d8d30">&#9670;&nbsp;</a></span>error_on_unsupported_cpu_fp16() <span class="overload">[2/2]</span></h2>
14495
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014496<div class="memitem">
14497<div class="memproto">
14498<table class="mlabels">
14499 <tr>
14500 <td class="mlabels-left">
14501 <table class="memname">
14502 <tr>
Jenkins52ba29e2018-08-29 15:32:11 +000014503 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_unsupported_cpu_fp16 </td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014504 <td>(</td>
14505 <td class="paramtype">const char *&#160;</td>
14506 <td class="paramname"><em>function</em>, </td>
14507 </tr>
14508 <tr>
14509 <td class="paramkey"></td>
14510 <td></td>
14511 <td class="paramtype">const char *&#160;</td>
14512 <td class="paramname"><em>file</em>, </td>
14513 </tr>
14514 <tr>
14515 <td class="paramkey"></td>
14516 <td></td>
Jenkins52ba29e2018-08-29 15:32:11 +000014517 <td class="paramtype">const int&#160;</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014518 <td class="paramname"><em>line</em>, </td>
14519 </tr>
14520 <tr>
14521 <td class="paramkey"></td>
14522 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014523 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010014524 <td class="paramname"><em>tensor</em>&#160;</td>
14525 </tr>
14526 <tr>
14527 <td></td>
14528 <td>)</td>
14529 <td></td><td></td>
14530 </tr>
14531 </table>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014532 </td>
14533 <td class="mlabels-right">
14534<span class="mlabels"><span class="mlabel">inline</span></span> </td>
14535 </tr>
14536</table>
Anthony Barbierdbdab852017-06-23 15:42:00 +010014537</div><div class="memdoc">
14538
Jenkins52ba29e2018-08-29 15:32:11 +000014539<p>Return an error if the data type of the passed tensor is FP16 and FP16 support is not compiled in. </p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010014540<dl class="params"><dt>Parameters</dt><dd>
14541 <table class="params">
14542 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
14543 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
14544 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000014545 <tr><td class="paramdir">[in]</td><td class="paramname">tensor</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> to validate.</td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +010014546 </table>
14547 </dd>
14548</dl>
Jenkins514be652019-02-28 12:25:18 +000014549<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010014550
Jenkinsb9abeae2018-11-22 11:58:08 +000014551<p class="definition">Definition at line <a class="el" href="_c_p_p_2_validate_8h_source.xhtml#l00060">60</a> of file <a class="el" href="_c_p_p_2_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014552<div class="fragment"><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;{</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a8e79316e933e15539e39cace39ba0e35">arm_compute::error_on_unsupported_cpu_fp16</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info()));</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
14553<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
14554<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000014555<div class="ttc" id="namespacearm__compute_xhtml_a8e79316e933e15539e39cace39ba0e35"><div class="ttname"><a href="namespacearm__compute.xhtml#a8e79316e933e15539e39cace39ba0e35">arm_compute::error_on_unsupported_cpu_fp16</a></div><div class="ttdeci">arm_compute::Status error_on_unsupported_cpu_fp16(const char *function, const char *file, const int line, const ITensorInfo *tensor_info)</div><div class="ttdoc">Return an error if the data type of the passed tensor info is FP16 and FP16 support is not compiled i...</div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_2_validate_8h_source.xhtml#l00040">Validate.h:40</a></div></div>
14556</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000014557<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_c_p_p_2_validate_8h_source.xhtml#l00040">error_on_unsupported_cpu_fp16()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
14558
Jenkins52ba29e2018-08-29 15:32:11 +000014559</div>
14560</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014561<a id="a76433394f276fbc92390850a15bd2cae"></a>
14562<h2 class="memtitle"><span class="permalink"><a href="#a76433394f276fbc92390850a15bd2cae">&#9670;&nbsp;</a></span>error_on_unsupported_fp16() <span class="overload">[1/2]</span></h2>
14563
Jenkins52ba29e2018-08-29 15:32:11 +000014564<div class="memitem">
14565<div class="memproto">
14566<table class="mlabels">
14567 <tr>
14568 <td class="mlabels-left">
14569 <table class="memname">
14570 <tr>
14571 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_unsupported_fp16 </td>
14572 <td>(</td>
14573 <td class="paramtype">const char *&#160;</td>
14574 <td class="paramname"><em>function</em>, </td>
14575 </tr>
14576 <tr>
14577 <td class="paramkey"></td>
14578 <td></td>
14579 <td class="paramtype">const char *&#160;</td>
14580 <td class="paramname"><em>file</em>, </td>
14581 </tr>
14582 <tr>
14583 <td class="paramkey"></td>
14584 <td></td>
14585 <td class="paramtype">const int&#160;</td>
14586 <td class="paramname"><em>line</em>, </td>
14587 </tr>
14588 <tr>
14589 <td class="paramkey"></td>
14590 <td></td>
14591 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> *&#160;</td>
14592 <td class="paramname"><em>tensor_info</em>, </td>
14593 </tr>
14594 <tr>
14595 <td class="paramkey"></td>
14596 <td></td>
14597 <td class="paramtype">bool&#160;</td>
14598 <td class="paramname"><em>is_fp16_supported</em>&#160;</td>
14599 </tr>
14600 <tr>
14601 <td></td>
14602 <td>)</td>
14603 <td></td><td></td>
14604 </tr>
14605 </table>
14606 </td>
14607 <td class="mlabels-right">
14608<span class="mlabels"><span class="mlabel">inline</span></span> </td>
14609 </tr>
14610</table>
14611</div><div class="memdoc">
14612
14613<p>Return an error if the data type of the passed tensor info is FP16 and FP16 extension is not supported by the device. </p>
14614<dl class="params"><dt>Parameters</dt><dd>
14615 <table class="params">
14616 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
14617 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
14618 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000014619 <tr><td class="paramdir">[in]</td><td class="paramname">tensor_info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info to validate. </td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +000014620 <tr><td class="paramdir">[in]</td><td class="paramname">is_fp16_supported</td><td>Is fp16 supported by the device.</td></tr>
14621 </table>
14622 </dd>
14623</dl>
Jenkins514be652019-02-28 12:25:18 +000014624<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Jenkins52ba29e2018-08-29 15:32:11 +000014625
Jenkinsb9abeae2018-11-22 11:58:08 +000014626<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00804">804</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014627<div class="fragment"><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160;{</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor_info == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>((tensor_info-&gt;data_type() == DataType::F16 &amp;&amp; !is_fp16_supported),</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;FP16 not supported by the device&quot;</span>);</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
14628<div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
14629<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
14630</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000014631<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7cfb31af63202568efef5214acfbf3ba">ITensorInfo::data_type()</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>.</p>
Jenkins52ba29e2018-08-29 15:32:11 +000014632
Jenkinsb9abeae2018-11-22 11:58:08 +000014633<p class="reference">Referenced by <a class="el" href="_validate_8h_source.xhtml#l00823">error_on_unsupported_fp16()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014634
Jenkins52ba29e2018-08-29 15:32:11 +000014635</div>
14636</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014637<a id="aea2b331c31943c1f726c9f552348c89c"></a>
14638<h2 class="memtitle"><span class="permalink"><a href="#aea2b331c31943c1f726c9f552348c89c">&#9670;&nbsp;</a></span>error_on_unsupported_fp16() <span class="overload">[2/2]</span></h2>
14639
Jenkins52ba29e2018-08-29 15:32:11 +000014640<div class="memitem">
14641<div class="memproto">
14642<table class="mlabels">
14643 <tr>
14644 <td class="mlabels-left">
14645 <table class="memname">
14646 <tr>
14647 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_unsupported_fp16 </td>
14648 <td>(</td>
14649 <td class="paramtype">const char *&#160;</td>
14650 <td class="paramname"><em>function</em>, </td>
14651 </tr>
14652 <tr>
14653 <td class="paramkey"></td>
14654 <td></td>
14655 <td class="paramtype">const char *&#160;</td>
14656 <td class="paramname"><em>file</em>, </td>
14657 </tr>
14658 <tr>
14659 <td class="paramkey"></td>
14660 <td></td>
14661 <td class="paramtype">const int&#160;</td>
14662 <td class="paramname"><em>line</em>, </td>
14663 </tr>
14664 <tr>
14665 <td class="paramkey"></td>
14666 <td></td>
14667 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
14668 <td class="paramname"><em>tensor</em>, </td>
14669 </tr>
14670 <tr>
14671 <td class="paramkey"></td>
14672 <td></td>
14673 <td class="paramtype">bool&#160;</td>
14674 <td class="paramname"><em>is_fp16_supported</em>&#160;</td>
14675 </tr>
14676 <tr>
14677 <td></td>
14678 <td>)</td>
14679 <td></td><td></td>
14680 </tr>
14681 </table>
14682 </td>
14683 <td class="mlabels-right">
14684<span class="mlabels"><span class="mlabel">inline</span></span> </td>
14685 </tr>
14686</table>
14687</div><div class="memdoc">
14688
14689<p>Return an error if the data type of the passed tensor is FP16 and FP16 extension is not supported by the device. </p>
14690<dl class="params"><dt>Parameters</dt><dd>
14691 <table class="params">
14692 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
14693 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
14694 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000014695 <tr><td class="paramdir">[in]</td><td class="paramname">tensor</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> to validate. </td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +000014696 <tr><td class="paramdir">[in]</td><td class="paramname">is_fp16_supported</td><td>Is fp16 supported by the device.</td></tr>
14697 </table>
14698 </dd>
14699</dl>
Jenkins514be652019-02-28 12:25:18 +000014700<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Jenkins52ba29e2018-08-29 15:32:11 +000014701
Jenkinsb9abeae2018-11-22 11:58:08 +000014702<p class="definition">Definition at line <a class="el" href="_validate_8h_source.xhtml#l00823">823</a> of file <a class="el" href="_validate_8h_source.xhtml">Validate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014703<div class="fragment"><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160;{</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(tensor == <span class="keyword">nullptr</span>, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; <a class="code" href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a>(::<a class="code" href="namespacearm__compute.xhtml#a76433394f276fbc92390850a15bd2cae">arm_compute::error_on_unsupported_fp16</a>(<span class="keyword">function</span>, file, line, tensor-&gt;info(), is_fp16_supported));</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
14704<div class="ttc" id="_error_8h_xhtml_a8a1e1c105f0bdaf37db408c7cfcb77a4"><div class="ttname"><a href="_error_8h.xhtml#a8a1e1c105f0bdaf37db408c7cfcb77a4">ARM_COMPUTE_RETURN_ON_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ON_ERROR(status)</div><div class="ttdoc">Checks if a status contains an error and returns it.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00193">Error.h:193</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014705<div class="ttc" id="namespacearm__compute_xhtml_a76433394f276fbc92390850a15bd2cae"><div class="ttname"><a href="namespacearm__compute.xhtml#a76433394f276fbc92390850a15bd2cae">arm_compute::error_on_unsupported_fp16</a></div><div class="ttdeci">arm_compute::Status error_on_unsupported_fp16(const char *function, const char *file, const int line, const ITensorInfo *tensor_info, bool is_fp16_supported)</div><div class="ttdoc">Return an error if the data type of the passed tensor info is FP16 and FP16 extension is not supporte...</div><div class="ttdef"><b>Definition:</b> <a href="_validate_8h_source.xhtml#l00804">Validate.h:804</a></div></div>
Jenkins514be652019-02-28 12:25:18 +000014706<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000014707</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000014708<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, <a class="el" href="_error_8h_source.xhtml#l00193">ARM_COMPUTE_RETURN_ON_ERROR</a>, <a class="el" href="_validate_8h_source.xhtml#l00804">error_on_unsupported_fp16()</a>, and <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>.</p>
14709
Jenkins52ba29e2018-08-29 15:32:11 +000014710</div>
14711</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014712<a id="a5c8dc3902d1a2de5b20aa249fb483eea"></a>
14713<h2 class="memtitle"><span class="permalink"><a href="#a5c8dc3902d1a2de5b20aa249fb483eea">&#9670;&nbsp;</a></span>error_on_unsupported_int64_base_atomics()</h2>
14714
Jenkins52ba29e2018-08-29 15:32:11 +000014715<div class="memitem">
14716<div class="memproto">
14717<table class="mlabels">
14718 <tr>
14719 <td class="mlabels-left">
14720 <table class="memname">
14721 <tr>
14722 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> arm_compute::error_on_unsupported_int64_base_atomics </td>
14723 <td>(</td>
14724 <td class="paramtype">const char *&#160;</td>
14725 <td class="paramname"><em>function</em>, </td>
14726 </tr>
14727 <tr>
14728 <td class="paramkey"></td>
14729 <td></td>
14730 <td class="paramtype">const char *&#160;</td>
14731 <td class="paramname"><em>file</em>, </td>
14732 </tr>
14733 <tr>
14734 <td class="paramkey"></td>
14735 <td></td>
14736 <td class="paramtype">const int&#160;</td>
14737 <td class="paramname"><em>line</em>&#160;</td>
14738 </tr>
14739 <tr>
14740 <td></td>
14741 <td>)</td>
14742 <td></td><td></td>
14743 </tr>
14744 </table>
14745 </td>
14746 <td class="mlabels-right">
14747<span class="mlabels"><span class="mlabel">inline</span></span> </td>
14748 </tr>
14749</table>
14750</div><div class="memdoc">
14751
14752<p>Return an error if int64_base_atomics extension is not supported by the device. </p>
14753<dl class="params"><dt>Parameters</dt><dd>
14754 <table class="params">
14755 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
14756 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
14757 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred.</td></tr>
14758 </table>
14759 </dd>
14760</dl>
Jenkins514be652019-02-28 12:25:18 +000014761<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Jenkins52ba29e2018-08-29 15:32:11 +000014762
Jenkinsb9abeae2018-11-22 11:58:08 +000014763<p class="definition">Definition at line <a class="el" href="_c_l_validate_8h_source.xhtml#l00045">45</a> of file <a class="el" href="_c_l_validate_8h_source.xhtml">CLValidate.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014764<div class="fragment"><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;{</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">if</span>(!CLKernelLibrary::get().int64_base_atomics_supported())</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; {</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">return</span> <a class="code" href="_error_8h.xhtml#ac00c754f27b1201dd72c74b73239ff47">ARM_COMPUTE_CREATE_ERROR_LOC</a>(<a class="code" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7">arm_compute::ErrorCode::UNSUPPORTED_EXTENSION_USE</a>, <span class="keyword">function</span>, file, line, <span class="stringliteral">&quot;Atomic functions are not supported&quot;</span>);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; }</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7"><div class="ttname"><a href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7">arm_compute::ErrorCode::UNSUPPORTED_EXTENSION_USE</a></div><div class="ttdoc">Unsupported extension used.</div></div>
14765<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
14766<div class="ttc" id="_error_8h_xhtml_ac00c754f27b1201dd72c74b73239ff47"><div class="ttname"><a href="_error_8h.xhtml#ac00c754f27b1201dd72c74b73239ff47">ARM_COMPUTE_CREATE_ERROR_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_CREATE_ERROR_LOC(error_code, func, file, line,...)</div><div class="ttdoc">Creates an error on location with a given message.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00177">Error.h:177</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +010014767</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000014768<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00177">ARM_COMPUTE_CREATE_ERROR_LOC</a>, <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00958">CLKernelLibrary::get()</a>, and <a class="el" href="namespacearm__compute.xhtml#a59e56af19e754a6aa26a612ebf91d05fa0ffe8be9137815d1266845a195c053c7">UNSUPPORTED_EXTENSION_USE</a>.</p>
14769
Anthony Barbierdbdab852017-06-23 15:42:00 +010014770</div>
14771</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014772<a id="a7d65985a30fc1229047b7db32caaab43"></a>
14773<h2 class="memtitle"><span class="permalink"><a href="#a7d65985a30fc1229047b7db32caaab43">&#9670;&nbsp;</a></span>error_on_window_dimensions_gte()</h2>
14774
Anthony Barbier871448e2017-03-24 14:54:29 +000014775<div class="memitem">
14776<div class="memproto">
14777 <table class="memname">
14778 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000014779 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_window_dimensions_gte </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000014780 <td>(</td>
14781 <td class="paramtype">const char *&#160;</td>
14782 <td class="paramname"><em>function</em>, </td>
14783 </tr>
14784 <tr>
14785 <td class="paramkey"></td>
14786 <td></td>
14787 <td class="paramtype">const char *&#160;</td>
14788 <td class="paramname"><em>file</em>, </td>
14789 </tr>
14790 <tr>
14791 <td class="paramkey"></td>
14792 <td></td>
14793 <td class="paramtype">const int&#160;</td>
14794 <td class="paramname"><em>line</em>, </td>
14795 </tr>
14796 <tr>
14797 <td class="paramkey"></td>
14798 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014799 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000014800 <td class="paramname"><em>win</em>, </td>
14801 </tr>
14802 <tr>
14803 <td class="paramkey"></td>
14804 <td></td>
14805 <td class="paramtype">unsigned int&#160;</td>
14806 <td class="paramname"><em>max_dim</em>&#160;</td>
14807 </tr>
14808 <tr>
14809 <td></td>
14810 <td>)</td>
14811 <td></td><td></td>
14812 </tr>
14813 </table>
14814</div><div class="memdoc">
14815
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014816<p>Return an error if the passed window has too many dimensions. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +000014817<p>The window has too many dimensions if any of the dimension greater or equal to max_dim is different from 0.</p>
14818<dl class="params"><dt>Parameters</dt><dd>
14819 <table class="params">
14820 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
14821 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
14822 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
Jenkins514be652019-02-28 12:25:18 +000014823 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> to validate </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014824 <tr><td class="paramdir">[in]</td><td class="paramname">max_dim</td><td>Maximum number of dimensions allowed.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000014825 </table>
14826 </dd>
14827</dl>
Jenkins514be652019-02-28 12:25:18 +000014828<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000014829
Jenkinsb9abeae2018-11-22 11:58:08 +000014830<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00080">80</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014831<div class="fragment"><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;{</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = max_dim; i &lt; <a class="code" href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Coordinates::num_max_dimensions</a>; ++i)</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; {</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>((win[i].start() != 0) || (win[i].end() != win[i].<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a>()),</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keyword">function</span>, file, line,</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="stringliteral">&quot;Maximum number of dimensions expected %u but dimension %u is not empty&quot;</span>, max_dim, i);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; }</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_ab4ebbfbeedd9d66614ddbfdb14199cbf"><div class="ttname"><a href="_error_8h.xhtml#ab4ebbfbeedd9d66614ddbfdb14199cbf">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG(cond, func, file, line,...)</div><div class="ttdoc">If the condition is true, an error is thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00231">Error.h:231</a></div></div>
14832<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
14833<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a75b73e17c4ebe901e44af3b2b9846ab3"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">arm_compute::test::validation::step</a></div><div class="ttdeci">const int step</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_select_8cpp_source.xhtml#l00172">Select.cpp:172</a></div></div>
14834<div class="ttc" id="classarm__compute_1_1_dimensions_xhtml_a1b67d5b720119d50faa286c774579ecc"><div class="ttname"><a href="classarm__compute_1_1_dimensions.xhtml#a1b67d5b720119d50faa286c774579ecc">arm_compute::Dimensions&lt; int &gt;::num_max_dimensions</a></div><div class="ttdeci">static constexpr size_t num_max_dimensions</div><div class="ttdoc">Number of dimensions the tensor has.</div><div class="ttdef"><b>Definition:</b> <a href="_dimensions_8h_source.xhtml#l00045">Dimensions.h:45</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014835</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000014836<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00231">ARM_COMPUTE_RETURN_ERROR_ON_LOC_MSG</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, and <a class="el" href="_c_l_2_select_8cpp_source.xhtml#l00172">arm_compute::test::validation::step</a>.</p>
14837
Anthony Barbier871448e2017-03-24 14:54:29 +000014838</div>
14839</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014840<a id="a4f63a617a4897663b386ba5e1f5cb675"></a>
14841<h2 class="memtitle"><span class="permalink"><a href="#a4f63a617a4897663b386ba5e1f5cb675">&#9670;&nbsp;</a></span>error_on_window_not_collapsable_at_dimension()</h2>
14842
Kaizen8938bd32017-09-28 14:38:23 +010014843<div class="memitem">
14844<div class="memproto">
14845 <table class="memname">
14846 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000014847 <td class="memname"><a class="el" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a> error_on_window_not_collapsable_at_dimension </td>
Kaizen8938bd32017-09-28 14:38:23 +010014848 <td>(</td>
14849 <td class="paramtype">const char *&#160;</td>
14850 <td class="paramname"><em>function</em>, </td>
14851 </tr>
14852 <tr>
14853 <td class="paramkey"></td>
14854 <td></td>
14855 <td class="paramtype">const char *&#160;</td>
14856 <td class="paramname"><em>file</em>, </td>
14857 </tr>
14858 <tr>
14859 <td class="paramkey"></td>
14860 <td></td>
14861 <td class="paramtype">const int&#160;</td>
14862 <td class="paramname"><em>line</em>, </td>
14863 </tr>
14864 <tr>
14865 <td class="paramkey"></td>
14866 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014867 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010014868 <td class="paramname"><em>full</em>, </td>
14869 </tr>
14870 <tr>
14871 <td class="paramkey"></td>
14872 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014873 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010014874 <td class="paramname"><em>window</em>, </td>
14875 </tr>
14876 <tr>
14877 <td class="paramkey"></td>
14878 <td></td>
14879 <td class="paramtype">const int&#160;</td>
14880 <td class="paramname"><em>dim</em>&#160;</td>
14881 </tr>
14882 <tr>
14883 <td></td>
14884 <td>)</td>
14885 <td></td><td></td>
14886 </tr>
14887 </table>
14888</div><div class="memdoc">
14889
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014890<p>Return an error if the window can't be collapsed at the given dimension. </p>
Kaizen8938bd32017-09-28 14:38:23 +010014891<p>The window cannot be collapsed if the given dimension not equal to the full window's dimension or not start from 0.</p>
14892<dl class="params"><dt>Parameters</dt><dd>
14893 <table class="params">
14894 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Function in which the error occurred. </td></tr>
14895 <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Name of the file where the error occurred. </td></tr>
14896 <tr><td class="paramdir">[in]</td><td class="paramname">line</td><td>Line on which the error occurred. </td></tr>
14897 <tr><td class="paramdir">[in]</td><td class="paramname">full</td><td>Full size window </td></tr>
Jenkins514be652019-02-28 12:25:18 +000014898 <tr><td class="paramdir">[in]</td><td class="paramname">window</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> to be collapsed. </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014899 <tr><td class="paramdir">[in]</td><td class="paramname">dim</td><td>Dimension need to be checked.</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +010014900 </table>
14901 </dd>
14902</dl>
Jenkins514be652019-02-28 12:25:18 +000014903<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_status.xhtml" title="Status class.">Status</a> </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010014904
Jenkinsb9abeae2018-11-22 11:58:08 +000014905<p class="definition">Definition at line <a class="el" href="_validate_8cpp_source.xhtml#l00057">57</a> of file <a class="el" href="_validate_8cpp_source.xhtml">Validate.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014906<div class="fragment"><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;{</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; full.validate();</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; window.validate();</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(window[dim].start() != 0, <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(window[dim].start() != full[dim].start(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>(full[dim].end() != window[dim].end(), <span class="keyword">function</span>, file, line);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a>{};</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_aab9171b209dda7cc9bb560486674c9f6"><div class="ttname"><a href="_error_8h.xhtml#aab9171b209dda7cc9bb560486674c9f6">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a></div><div class="ttdeci">#define ARM_COMPUTE_RETURN_ERROR_ON_LOC(cond, func, file, line)</div><div class="ttdoc">If the condition is true, an error is returned.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00254">Error.h:254</a></div></div>
14907<div class="ttc" id="classarm__compute_1_1_status_xhtml"><div class="ttname"><a href="classarm__compute_1_1_status.xhtml">arm_compute::Status</a></div><div class="ttdoc">Status class.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00052">Error.h:52</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014908</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000014909<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00254">ARM_COMPUTE_RETURN_ERROR_ON_LOC</a>, and <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>.</p>
14910
Kaizen8938bd32017-09-28 14:38:23 +010014911</div>
14912</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000014913<a id="a5002bf7ec46d52971f9526e94172cfee"></a>
14914<h2 class="memtitle"><span class="permalink"><a href="#a5002bf7ec46d52971f9526e94172cfee">&#9670;&nbsp;</a></span>execute_window_loop()</h2>
14915
Anthony Barbier871448e2017-03-24 14:54:29 +000014916<div class="memitem">
14917<div class="memproto">
14918<table class="mlabels">
14919 <tr>
14920 <td class="mlabels-left">
14921 <table class="memname">
14922 <tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +010014923 <td class="memname">void execute_window_loop </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000014924 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000014925 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000014926 <td class="paramname"><em>w</em>, </td>
14927 </tr>
14928 <tr>
14929 <td class="paramkey"></td>
14930 <td></td>
14931 <td class="paramtype">L &amp;&amp;&#160;</td>
14932 <td class="paramname"><em>lambda_function</em>, </td>
14933 </tr>
14934 <tr>
14935 <td class="paramkey"></td>
14936 <td></td>
14937 <td class="paramtype">Ts &amp;&amp;...&#160;</td>
14938 <td class="paramname"><em>iterators</em>&#160;</td>
14939 </tr>
14940 <tr>
14941 <td></td>
14942 <td>)</td>
14943 <td></td><td></td>
14944 </tr>
14945 </table>
14946 </td>
14947 <td class="mlabels-right">
14948<span class="mlabels"><span class="mlabel">inline</span></span> </td>
14949 </tr>
14950</table>
14951</div><div class="memdoc">
14952
14953<p>Iterate through the passed window, automatically adjusting the iterators and calling the lambda_functino for each element. </p>
14954<p>It passes the x and y positions to the lambda_function for each iteration</p>
14955<dl class="params"><dt>Parameters</dt><dd>
14956 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000014957 <tr><td class="paramdir">[in]</td><td class="paramname">w</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> to iterate through. </td></tr>
14958 <tr><td class="paramdir">[in]</td><td class="paramname">lambda_function</td><td>The function of type void(function)( const <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a> &amp; id ) to call at each iteration. Where id represents the absolute coordinates of the item to process. </td></tr>
14959 <tr><td class="paramdir">[in,out]</td><td class="paramname">iterators</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> iterators which will be updated by this function before calling lambda_function. </td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000014960 </table>
14961 </dd>
14962</dl>
14963
Jenkinsb9abeae2018-11-22 11:58:08 +000014964<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00122">122</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000014965<div class="fragment"><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;{</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; w.validate();</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; Coordinates::num_max_dimensions; ++i)</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; {</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(w[i].<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a>() == 0);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; }</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; Coordinates id;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; ForEachDimension&lt;Coordinates::num_max_dimensions&gt;::unroll(w, <span class="keywordtype">id</span>, std::forward&lt;L&gt;(lambda_function), std::forward&lt;Ts&gt;(iterators)...);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
14966<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a75b73e17c4ebe901e44af3b2b9846ab3"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">arm_compute::test::validation::step</a></div><div class="ttdeci">const int step</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_select_8cpp_source.xhtml#l00172">Select.cpp:172</a></div></div>
Anthony Barbierf45d5a92018-01-24 16:23:15 +000014967</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000014968<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>, <a class="el" href="_c_l_2_select_8cpp_source.xhtml#l00172">arm_compute::test::validation::step</a>, and <a class="el" href="_window_8inl_source.xhtml#l00152">Window::validate()</a>.</p>
14969
14970<p class="reference">Referenced by <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00665">colorconvert_iyuv_to_nv12()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00547">colorconvert_iyuv_to_rgb()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00880">colorconvert_iyuv_to_yuv4()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00713">colorconvert_nv12_to_iyuv()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00485">colorconvert_nv12_to_rgb()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00822">colorconvert_nv12_to_yuv4()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00982">colorconvert_rgb_to_iyuv()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00939">colorconvert_rgb_to_nv12()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00351">colorconvert_rgb_to_rgbx()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00382">colorconvert_rgb_to_u8()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l01026">colorconvert_rgb_to_yuv4()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00410">colorconvert_rgbx_to_rgb()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00762">colorconvert_yuyv_to_iyuv()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00610">colorconvert_yuyv_to_nv12()</a>, <a class="el" href="_n_e_color_convert_helper_8inl_source.xhtml#l00441">colorconvert_yuyv_to_rgb()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00793">arm_compute::utils::compare_tensor()</a>, <a class="el" href="_i_tensor_8cpp_source.xhtml#l00035">ITensor::copy_from()</a>, <a class="el" href="_c_p_p_detection_output_layer_8cpp_source.xhtml#l00435">extract_bounding_boxes_from_tensor()</a>, <a class="el" href="_c_p_p_detection_output_layer_8cpp_source.xhtml#l00450">extract_scores_from_tensor()</a>, <a class="el" href="_assets_library_8h_source.xhtml#l00459">AssetsLibrary::fill_borders_with_garbage()</a>, <a class="el" href="_image_loader_8h_source.xhtml#l00176">IImageLoader::fill_image()</a>, <a class="el" href="_assets_library_8h_source.xhtml#l00890">AssetsLibrary::fill_layer_data()</a>, <a class="el" href="_image_loader_8h_source.xhtml#l00256">IImageLoader::fill_planar_tensor()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00727">arm_compute::utils::fill_random_tensor()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00396">NPYLoader::fill_tensor()</a>, <a class="el" href="_c_p_p_flip_weights_kernel_8cpp_source.xhtml#l00045">CPPFlipWeightsKernel::flip_weights()</a>, <a class="el" href="reference_2_gather_8cpp_source.xhtml#l00040">arm_compute::test::validation::reference::gather()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00680">arm_compute::utils::load_trained_data()</a>, <a class="el" href="_graph_utils_8cpp_source.xhtml#l00089">CaffePreproccessor::preprocess()</a>, <a class="el" href="_graph_utils_8cpp_source.xhtml#l00064">TFPreproccessor::preprocess()</a>, <a class="el" href="_c_l_min_max_layer_kernel_8cpp_source.xhtml#l00119">CLMinMaxLayerKernel::reset()</a>, <a class="el" href="_n_e_min_max_layer_kernel_8cpp_source.xhtml#l00192">NEMinMaxLayerKernel::reset()</a>, <a class="el" href="_n_e_box3x3_kernel_8cpp_source.xhtml#l00148">NEBox3x3Kernel::run()</a>, <a class="el" href="_n_e_dilate_kernel_8cpp_source.xhtml#l00070">NEDilateKernel::run()</a>, <a class="el" href="_n_e_erode_kernel_8cpp_source.xhtml#l00070">NEErodeKernel::run()</a>, <a class="el" href="_n_e_integral_image_kernel_8cpp_source.xhtml#l00074">NEIntegralImageKernel::run()</a>, <a class="el" href="_n_e_gaussian3x3_kernel_8cpp_source.xhtml#l00067">NEGaussian3x3Kernel::run()</a>, <a class="el" href="_n_e_median3x3_kernel_8cpp_source.xhtml#l00077">NEMedian3x3Kernel::run()</a>, <a class="el" href="_n_e_gaussian5x5_kernel_8cpp_source.xhtml#l00076">NEGaussian5x5HorKernel::run()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00266">NEAccumulateKernel::run()</a>, <a class="el" href="_n_e_floor_kernel_8cpp_source.xhtml#l00101">NEFloorKernel::run()</a>, <a class="el" href="_n_e_gaussian_pyramid_kernel_8cpp_source.xhtml#l00108">NEGaussianPyramidHorKernel::run()</a>, <a class="el" href="_n_e_bitwise_not_kernel_8cpp_source.xhtml#l00084">NEBitwiseNotKernel::run()</a>, <a class="el" href="_n_e_bitwise_or_kernel_8cpp_source.xhtml#l00096">NEBitwiseOrKernel::run()</a>, <a class="el" href="_n_e_bitwise_xor_kernel_8cpp_source.xhtml#l00092">NEBitwiseXorKernel::run()</a>, <a class="el" href="_n_e_bitwise_and_kernel_8cpp_source.xhtml#l00100">NEBitwiseAndKernel::run()</a>, <a class="el" href="_n_e_memset_kernel_8cpp_source.xhtml#l00051">NEMemsetKernel::run()</a>, <a class="el" href="_n_e_fast_corners_kernel_8cpp_source.xhtml#l00391">NEFastCornersKernel::run()</a>, <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00678">NEHOGOrientationBinningKernel::run()</a>, <a class="el" href="_c_p_p_upsample_kernel_8cpp_source.xhtml#l00069">CPPUpsampleKernel::run()</a>, <a class="el" href="_n_e_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00498">NENonMaximaSuppression3x3Kernel::run()</a>, <a class="el" href="_n_e_sobel5x5_kernel_8cpp_source.xhtml#l00093">NESobel5x5HorKernel::run()</a>, <a class="el" href="_n_e_sobel7x7_kernel_8cpp_source.xhtml#l00196">NESobel7x7HorKernel::run()</a>, <a class="el" href="_n_e_fill_array_kernel_8cpp_source.xhtml#l00065">NEFillArrayKernel::run()</a>, <a class="el" href="_n_e_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00108">NEGEMMMatrixAccumulateBiasesKernel::run()</a>, <a class="el" href="_n_e_copy_kernel_8cpp_source.xhtml#l00058">NECopyKernel::run()</a>, <a class="el" href="_n_e_tile_kernel_8cpp_source.xhtml#l00089">NETileKernel::run()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00942">NEGradientKernel::run()</a>, <a class="el" href="_c_p_p_corner_candidates_kernel_8cpp_source.xhtml#l00096">CPPCornerCandidatesKernel::run()</a>, <a class="el" href="_n_e_h_o_g_detector_kernel_8cpp_source.xhtml#l00095">NEHOGDetectorKernel::run()</a>, <a class="el" href="_n_e_flatten_layer_kernel_8cpp_source.xhtml#l00104">NEFlattenLayerKernel::run()</a>, <a class="el" href="_n_e_scharr3x3_kernel_8cpp_source.xhtml#l00138">NEScharr3x3Kernel::run()</a>, <a class="el" href="_n_e_sobel3x3_kernel_8cpp_source.xhtml#l00091">NESobel3x3Kernel::run()</a>, <a class="el" href="_n_e_width_concatenate_layer_kernel_8cpp_source.xhtml#l00105">NEWidthConcatenateLayerKernel::run()</a>, <a class="el" href="_n_e_quantization_layer_kernel_8cpp_source.xhtml#l00107">NEQuantizationLayerKernel::run()</a>, <a class="el" href="_n_e_dequantization_layer_kernel_8cpp_source.xhtml#l00107">NEDequantizationLayerKernel::run()</a>, <a class="el" href="_n_e_gaussian5x5_kernel_8cpp_source.xhtml#l00144">NEGaussian5x5VertKernel::run()</a>, <a class="el" href="_n_e_depth_convert_layer_kernel_8cpp_source.xhtml#l00128">NEDepthConvertLayerKernel::run()</a>, <a class="el" href="_n_e_min_max_layer_kernel_8cpp_source.xhtml#l00117">NEMinMaxLayerKernel::run()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00305">NEAccumulateWeightedKernel::run()</a>, <a class="el" href="_n_e_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00550">NEPixelWiseMultiplicationKernel::run()</a>, <a class="el" href="_n_e_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00127">NEGEMMTranspose1xWKernel::run()</a>, <a class="el" href="_n_e_g_e_m_m_lowp_reduction_kernel_8cpp_source.xhtml#l00131">NEGEMMLowpMatrixAReductionKernel::run()</a>, <a class="el" href="_n_e_harris_corners_kernel_8cpp_source.xhtml#l00709">NEHarrisScoreKernel&lt; block_size &gt;::run()</a>, <a class="el" href="_n_e_gaussian_pyramid_kernel_8cpp_source.xhtml#l00208">NEGaussianPyramidVertKernel::run()</a>, <a class="el" href="_n_e_sobel5x5_kernel_8cpp_source.xhtml#l00265">NESobel5x5VertKernel::run()</a>, <a class="el" href="_n_e_sobel7x7_kernel_8cpp_source.xhtml#l00355">NESobel7x7VertKernel::run()</a>, <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00772">NEHOGBlockNormalizationKernel::run()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l01024">NEEdgeNonMaxSuppressionKernel::run()</a>, <a class="el" href="_n_e_g_e_m_m_lowp_reduction_kernel_8cpp_source.xhtml#l00279">NEGEMMLowpMatrixBReductionKernel::run()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00348">NEAccumulateSquaredKernel::run()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l01105">NEEdgeTraceKernel::run()</a>, <a class="el" href="_n_e_reverse_kernel_8cpp_source.xhtml#l00103">run_reverse()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00617">arm_compute::utils::save_to_npy()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00537">arm_compute::utils::save_to_ppm()</a>, <a class="el" href="_slice_operations_8cpp_source.xhtml#l00038">arm_compute::test::validation::reference::slice()</a>, and <a class="el" href="_slice_operations_8cpp_source.xhtml#l00080">arm_compute::test::validation::reference::strided_slice()</a>.</p>
14971
14972</div>
14973</div>
14974<a id="a5196b5248c3c12035174abb6c85ba093"></a>
14975<h2 class="memtitle"><span class="permalink"><a href="#a5196b5248c3c12035174abb6c85ba093">&#9670;&nbsp;</a></span>extract_bounding_boxes_from_tensor()</h2>
14976
14977<div class="memitem">
14978<div class="memproto">
14979 <table class="memname">
14980 <tr>
14981 <td class="memname">void arm_compute::extract_bounding_boxes_from_tensor </td>
14982 <td>(</td>
14983 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
14984 <td class="paramname"><em>bboxes</em>, </td>
14985 </tr>
14986 <tr>
14987 <td class="paramkey"></td>
14988 <td></td>
14989 <td class="paramtype">std::vector&lt; <a class="el" href="namespacearm__compute.xhtml#a4ec997c1b05a1fd406828bc7e1f41dad">NormalizedBBox</a> &gt; &amp;&#160;</td>
14990 <td class="paramname"><em>bboxes_vector</em>&#160;</td>
14991 </tr>
14992 <tr>
14993 <td></td>
14994 <td>)</td>
14995 <td></td><td></td>
14996 </tr>
14997 </table>
14998</div><div class="memdoc">
14999
15000<p class="definition">Definition at line <a class="el" href="_c_p_p_detection_output_layer_8cpp_source.xhtml#l00435">435</a> of file <a class="el" href="_c_p_p_detection_output_layer_8cpp_source.xhtml">CPPDetectionOutputLayer.cpp</a>.</p>
15001<div class="fragment"><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160;{</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; Window input_win;</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; input_win.use_tensor_dimensions(bboxes-&gt;info()-&gt;tensor_shape());</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; input_win.set_dimension_step(0<a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">U</a>, 4<a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">U</a>);</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; input_win.set_dimension_step(1<a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">U</a>, 1<a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">U</a>);</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; Iterator input(bboxes, input_win);</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="keyword">auto</span> f = [&amp;bboxes_vector, &amp;input](<span class="keyword">const</span> Coordinates &amp;)</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; {</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = reinterpret_cast&lt;const float *&gt;(input.ptr());</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; bboxes_vector.push_back(<a class="code" href="namespacearm__compute.xhtml#a4ec997c1b05a1fd406828bc7e1f41dad">NormalizedBBox</a>({ { *input_ptr, *(input_ptr + 1), *(2 + input_ptr), *(3 + input_ptr) } }));</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; };</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(input_win, f, input);</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1utils_1_1cast_xhtml_a2ea3d1fc01a3a442900249ca182ffa5e"><div class="ttname"><a href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">arm_compute::utils::cast::U</a></div><div class="ttdeci">U</div><div class="ttdef"><b>Definition:</b> <a href="_saturate_cast_8h_source.xhtml#l00057">SaturateCast.h:57</a></div></div>
15002<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
15003<div class="ttc" id="namespacearm__compute_xhtml_a4ec997c1b05a1fd406828bc7e1f41dad"><div class="ttname"><a href="namespacearm__compute.xhtml#a4ec997c1b05a1fd406828bc7e1f41dad">arm_compute::NormalizedBBox</a></div><div class="ttdeci">std::array&lt; float, 4 &gt; NormalizedBBox</div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_detection_output_layer_8h_source.xhtml#l00038">CPPDetectionOutputLayer.h:38</a></div></div>
15004</div><!-- fragment -->
15005<p class="reference">References <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_window_8inl_source.xhtml#l00146">Window::set_dimension_step()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">ITensorInfo::tensor_shape()</a>, and <a class="el" href="_window_8inl_source.xhtml#l00243">Window::use_tensor_dimensions()</a>.</p>
15006
15007<p class="reference">Referenced by <a class="el" href="_c_p_p_detection_output_layer_8cpp_source.xhtml#l00463">CPPNonMaximumSuppression::run()</a>.</p>
15008
15009</div>
15010</div>
15011<a id="a0ed6c4009303a6e319eb9e0519124b00"></a>
15012<h2 class="memtitle"><span class="permalink"><a href="#a0ed6c4009303a6e319eb9e0519124b00">&#9670;&nbsp;</a></span>extract_scores_from_tensor()</h2>
15013
15014<div class="memitem">
15015<div class="memproto">
15016 <table class="memname">
15017 <tr>
15018 <td class="memname">void arm_compute::extract_scores_from_tensor </td>
15019 <td>(</td>
15020 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
15021 <td class="paramname"><em>scores</em>, </td>
15022 </tr>
15023 <tr>
15024 <td class="paramkey"></td>
15025 <td></td>
15026 <td class="paramtype">std::vector&lt; float &gt; &amp;&#160;</td>
15027 <td class="paramname"><em>scores_vector</em>&#160;</td>
15028 </tr>
15029 <tr>
15030 <td></td>
15031 <td>)</td>
15032 <td></td><td></td>
15033 </tr>
15034 </table>
15035</div><div class="memdoc">
15036
15037<p class="definition">Definition at line <a class="el" href="_c_p_p_detection_output_layer_8cpp_source.xhtml#l00450">450</a> of file <a class="el" href="_c_p_p_detection_output_layer_8cpp_source.xhtml">CPPDetectionOutputLayer.cpp</a>.</p>
15038<div class="fragment"><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160;{</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; Window window;</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; window.use_tensor_dimensions(scores-&gt;info()-&gt;tensor_shape());</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; Iterator it(scores, window);</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keyword">auto</span> f = [&amp;it, &amp;scores_vector](<span class="keyword">const</span> Coordinates &amp;)</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; {</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> input_ptr = reinterpret_cast&lt;const float *&gt;(it.ptr());</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; scores_vector.push_back(*input_ptr);</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; };</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(window, f, it);</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
15039</div><!-- fragment -->
15040<p class="reference">References <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a7c66505457d00ece3aa4b34cab80757d">ITensorInfo::tensor_shape()</a>, and <a class="el" href="_window_8inl_source.xhtml#l00243">Window::use_tensor_dimensions()</a>.</p>
15041
15042<p class="reference">Referenced by <a class="el" href="_c_p_p_detection_output_layer_8cpp_source.xhtml#l00463">CPPNonMaximumSuppression::run()</a>.</p>
15043
Anthony Barbierf45d5a92018-01-24 16:23:15 +000015044</div>
15045</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015046<a id="a695a8105065167f7e4596d31f23a3573"></a>
15047<h2 class="memtitle"><span class="permalink"><a href="#a695a8105065167f7e4596d31f23a3573">&#9670;&nbsp;</a></span>finalize_quantization() <span class="overload">[1/2]</span></h2>
15048
Anthony Barbierf45d5a92018-01-24 16:23:15 +000015049<div class="memitem">
15050<div class="memproto">
15051 <table class="memname">
15052 <tr>
15053 <td class="memname">uint8x16_t arm_compute::finalize_quantization </td>
15054 <td>(</td>
15055 <td class="paramtype">int32x4x4_t &amp;&#160;</td>
15056 <td class="paramname"><em>in_s32</em>, </td>
15057 </tr>
15058 <tr>
15059 <td class="paramkey"></td>
15060 <td></td>
15061 <td class="paramtype">int&#160;</td>
15062 <td class="paramname"><em>result_fixedpoint_multiplier</em>, </td>
15063 </tr>
15064 <tr>
15065 <td class="paramkey"></td>
15066 <td></td>
15067 <td class="paramtype">int32_t&#160;</td>
15068 <td class="paramname"><em>result_shift</em>, </td>
15069 </tr>
15070 <tr>
15071 <td class="paramkey"></td>
15072 <td></td>
15073 <td class="paramtype">int32x4_t&#160;</td>
15074 <td class="paramname"><em>result_offset_after_shift_s32</em>, </td>
15075 </tr>
15076 <tr>
15077 <td class="paramkey"></td>
15078 <td></td>
15079 <td class="paramtype">uint8x16_t&#160;</td>
15080 <td class="paramname"><em>min_u8</em>, </td>
15081 </tr>
15082 <tr>
15083 <td class="paramkey"></td>
15084 <td></td>
15085 <td class="paramtype">uint8x16_t&#160;</td>
15086 <td class="paramname"><em>max_u8</em>&#160;</td>
15087 </tr>
15088 <tr>
15089 <td></td>
15090 <td>)</td>
15091 <td></td><td></td>
15092 </tr>
15093 </table>
15094</div><div class="memdoc">
15095
15096<p>Performs final quantization step on 16 elements. </p>
15097<dl class="tparams"><dt>Template Parameters</dt><dd>
15098 <table class="tparams">
15099 <tr><td class="paramname">is_bounded_relu</td><td>Specified if a fused bounded relu should be applied</td></tr>
15100 </table>
15101 </dd>
15102</dl>
15103<dl class="params"><dt>Parameters</dt><dd>
15104 <table class="params">
15105 <tr><td class="paramname">in_s32</td><td>Input to be quantized. </td></tr>
15106 <tr><td class="paramname">result_fixedpoint_multiplier</td><td>Result multiplier parameter </td></tr>
15107 <tr><td class="paramname">result_shift</td><td>Result shift parameter </td></tr>
15108 <tr><td class="paramname">result_offset_after_shift_s32</td><td>Result offset parameter </td></tr>
15109 <tr><td class="paramname">min_u8</td><td>Relu lower bound </td></tr>
15110 <tr><td class="paramname">max_u8</td><td>Relu upper bound</td></tr>
15111 </table>
15112 </dd>
15113</dl>
15114<dl class="section return"><dt>Returns</dt><dd>Quantized values </dd></dl>
15115
Jenkinsb9abeae2018-11-22 11:58:08 +000015116<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00074">74</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000015117<div class="fragment"><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;{</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keyword">const</span> <span class="keyword">static</span> int32x4_t zero_s32 = vdupq_n_s32(0);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="comment">// Fixed point multiplication with vector saturating rounding doubling multiply high with scalar</span></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; in_s32.val[0] = vqrdmulhq_n_s32(in_s32.val[0], result_fixedpoint_multiplier);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; in_s32.val[1] = vqrdmulhq_n_s32(in_s32.val[1], result_fixedpoint_multiplier);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; in_s32.val[2] = vqrdmulhq_n_s32(in_s32.val[2], result_fixedpoint_multiplier);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; in_s32.val[3] = vqrdmulhq_n_s32(in_s32.val[3], result_fixedpoint_multiplier);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="comment">// Round to the nearest division by a power-of-two using result_shift_s32</span></div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; in_s32.val[0] = <a class="code" href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">rounding_divide_by_pow2</a>(in_s32.val[0], result_shift);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; in_s32.val[1] = <a class="code" href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">rounding_divide_by_pow2</a>(in_s32.val[1], result_shift);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; in_s32.val[2] = <a class="code" href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">rounding_divide_by_pow2</a>(in_s32.val[2], result_shift);</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; in_s32.val[3] = <a class="code" href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">rounding_divide_by_pow2</a>(in_s32.val[3], result_shift);</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="comment">// Add the offset terms</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; in_s32.val[0] = vaddq_s32(in_s32.val[0], result_offset_after_shift_s32);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; in_s32.val[1] = vaddq_s32(in_s32.val[1], result_offset_after_shift_s32);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; in_s32.val[2] = vaddq_s32(in_s32.val[2], result_offset_after_shift_s32);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; in_s32.val[3] = vaddq_s32(in_s32.val[3], result_offset_after_shift_s32);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="comment">// Saturate negative values</span></div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; in_s32.val[0] = vmaxq_s32(in_s32.val[0], zero_s32);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; in_s32.val[1] = vmaxq_s32(in_s32.val[1], zero_s32);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; in_s32.val[2] = vmaxq_s32(in_s32.val[2], zero_s32);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; in_s32.val[3] = vmaxq_s32(in_s32.val[3], zero_s32);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="comment">// Convert S32 to S16</span></div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keyword">const</span> int16x8x2_t in_s16 =</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; {</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; vcombine_s16(vqmovn_s32(in_s32.val[0]), vqmovn_s32(in_s32.val[1])),</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; vcombine_s16(vqmovn_s32(in_s32.val[2]), vqmovn_s32(in_s32.val[3]))</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; }</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; };</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="comment">// Convert S16 to U8</span></div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; uint8x16_t out_u8 = vcombine_u8(vqmovun_s16(in_s16.val[0]), vqmovun_s16(in_s16.val[1]));</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">if</span>(is_bounded_relu)</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; {</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; out_u8 = vmaxq_u8(out_u8, min_u8);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; out_u8 = vminq_u8(out_u8, max_u8);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">return</span> out_u8;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a5e28a3911204ac952601f512c82b48f1"><div class="ttname"><a href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">arm_compute::rounding_divide_by_pow2</a></div><div class="ttdeci">int32x4_t rounding_divide_by_pow2(int32x4_t x, int exponent)</div><div class="ttdoc">Round to the nearest division by a power-of-two using exponent.</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_asymm_8inl_source.xhtml#l00026">NEAsymm.inl:26</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010015118</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000015119<p class="reference">References <a class="el" href="_n_e_asymm_8inl_source.xhtml#l00026">rounding_divide_by_pow2()</a>.</p>
15120
Kaizen8938bd32017-09-28 14:38:23 +010015121</div>
15122</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015123<a id="aff311815b306f7885265c103dc0344b9"></a>
15124<h2 class="memtitle"><span class="permalink"><a href="#aff311815b306f7885265c103dc0344b9">&#9670;&nbsp;</a></span>finalize_quantization() <span class="overload">[2/2]</span></h2>
15125
15126<div class="memitem">
15127<div class="memproto">
15128<table class="mlabels">
15129 <tr>
15130 <td class="mlabels-left">
15131 <table class="memname">
15132 <tr>
15133 <td class="memname">uint8_t arm_compute::finalize_quantization </td>
15134 <td>(</td>
15135 <td class="paramtype">int32x4_t&#160;</td>
15136 <td class="paramname"><em>in_s32</em>, </td>
15137 </tr>
15138 <tr>
15139 <td class="paramkey"></td>
15140 <td></td>
15141 <td class="paramtype">int&#160;</td>
15142 <td class="paramname"><em>result_fixedpoint_multiplier</em>, </td>
15143 </tr>
15144 <tr>
15145 <td class="paramkey"></td>
15146 <td></td>
15147 <td class="paramtype">int32_t&#160;</td>
15148 <td class="paramname"><em>result_shift</em>, </td>
15149 </tr>
15150 <tr>
15151 <td class="paramkey"></td>
15152 <td></td>
15153 <td class="paramtype">int32x4_t&#160;</td>
15154 <td class="paramname"><em>result_offset_after_shift_s32</em>, </td>
15155 </tr>
15156 <tr>
15157 <td class="paramkey"></td>
15158 <td></td>
15159 <td class="paramtype">uint8_t&#160;</td>
15160 <td class="paramname"><em>min_u8</em>, </td>
15161 </tr>
15162 <tr>
15163 <td class="paramkey"></td>
15164 <td></td>
15165 <td class="paramtype">uint8_t&#160;</td>
15166 <td class="paramname"><em>max_u8</em>&#160;</td>
15167 </tr>
15168 <tr>
15169 <td></td>
15170 <td>)</td>
15171 <td></td><td></td>
15172 </tr>
15173 </table>
15174 </td>
15175 <td class="mlabels-right">
15176<span class="mlabels"><span class="mlabel">inline</span></span> </td>
15177 </tr>
15178</table>
15179</div><div class="memdoc">
15180
Jenkins514be652019-02-28 12:25:18 +000015181<p class="definition">Definition at line <a class="el" href="_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel_8cpp_source.xhtml#l00092">92</a> of file <a class="el" href="_n_e_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_fixed_point_kernel_8cpp_source.xhtml">NEGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel.cpp</a>.</p>
15182<div class="fragment"><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;{</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keyword">const</span> <span class="keyword">static</span> int32x4_t zero_s32 = vdupq_n_s32(0);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keyword">const</span> <span class="keyword">static</span> int32x4_t sat_value_s32 = vdupq_n_s32(255);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="comment">// Fixed point multiplication with vector saturating rounding doubling multiply high with scalar</span></div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; in_s32 = vqrdmulhq_n_s32(in_s32, result_fixedpoint_multiplier);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">// Round to the nearest division by a power-of-two using result_shift_s32</span></div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; in_s32 = <a class="code" href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">rounding_divide_by_pow2</a>(in_s32, result_shift);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="comment">// Add the offset terms</span></div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; in_s32 = vaddq_s32(in_s32, result_offset_after_shift_s32);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">// Saturate negative values</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; in_s32 = vmaxq_s32(in_s32, zero_s32);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; in_s32 = vminq_s32(in_s32, sat_value_s32);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keyword">auto</span> out_u8 = static_cast&lt;uint8_t&gt;(vgetq_lane_s32(in_s32, 0));</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">if</span>(is_bounded_relu)</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; {</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; out_u8 = std::max(out_u8, min_u8);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; out_u8 = std::min(out_u8, max_u8);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">return</span> out_u8;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a5e28a3911204ac952601f512c82b48f1"><div class="ttname"><a href="namespacearm__compute.xhtml#a5e28a3911204ac952601f512c82b48f1">arm_compute::rounding_divide_by_pow2</a></div><div class="ttdeci">int32x4_t rounding_divide_by_pow2(int32x4_t x, int exponent)</div><div class="ttdoc">Round to the nearest division by a power-of-two using exponent.</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_asymm_8inl_source.xhtml#l00026">NEAsymm.inl:26</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015183</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000015184<p class="reference">References <a class="el" href="_n_e_asymm_8inl_source.xhtml#l00026">rounding_divide_by_pow2()</a>.</p>
15185
Jenkinsb9abeae2018-11-22 11:58:08 +000015186</div>
15187</div>
15188<a id="a9cd394c15b73f79ca1d98f5328064be2"></a>
15189<h2 class="memtitle"><span class="permalink"><a href="#a9cd394c15b73f79ca1d98f5328064be2">&#9670;&nbsp;</a></span>float_to_string_with_full_precision()</h2>
15190
Kaizen8938bd32017-09-28 14:38:23 +010015191<div class="memitem">
15192<div class="memproto">
15193<table class="mlabels">
15194 <tr>
15195 <td class="mlabels-left">
15196 <table class="memname">
15197 <tr>
15198 <td class="memname">std::string arm_compute::float_to_string_with_full_precision </td>
15199 <td>(</td>
15200 <td class="paramtype">float&#160;</td>
15201 <td class="paramname"><em>val</em></td><td>)</td>
15202 <td></td>
15203 </tr>
15204 </table>
15205 </td>
15206 <td class="mlabels-right">
15207<span class="mlabels"><span class="mlabel">inline</span></span> </td>
15208 </tr>
15209</table>
15210</div><div class="memdoc">
15211
15212<p>Create a string with the float in full precision. </p>
15213<dl class="params"><dt>Parameters</dt><dd>
15214 <table class="params">
15215 <tr><td class="paramname">val</td><td>Floating point value</td></tr>
15216 </table>
15217 </dd>
15218</dl>
15219<dl class="section return"><dt>Returns</dt><dd>String with the floating point value. </dd></dl>
15220
Jenkins514be652019-02-28 12:25:18 +000015221<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l01031">1031</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
15222<div class="fragment"><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160;{</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160; std::stringstream ss;</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160; ss.precision(std::numeric_limits&lt;float&gt;::max_digits10);</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160; ss &lt;&lt; val;</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160;</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160; <span class="keywordflow">if</span>(val != static_cast&lt;int&gt;(val))</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160; {</div><div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160; ss &lt;&lt; <span class="stringliteral">&quot;f&quot;</span>;</div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160; }</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;</div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160; <span class="keywordflow">return</span> ss.str();</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;}</div></div><!-- fragment -->
15223<p class="reference">Referenced by <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel_8cpp_source.xhtml#l00209">CLDepthwiseConvolutionLayer3x3NCHWKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00168">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_generate_proposals_layer_kernel_8cpp_source.xhtml#l00068">CLComputeAllAnchorsKernel::configure()</a>, <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00107">CLNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_comparison_kernel_8cpp_source.xhtml#l00113">CLComparisonKernel::configure()</a>, <a class="el" href="_g_c_activation_layer_kernel_8cpp_source.xhtml#l00047">GCActivationLayerKernel::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate2_tensors_kernel_8cpp_source.xhtml#l00097">CLWidthConcatenate2TensorsKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00079">CLGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_g_c_normalization_layer_kernel_8cpp_source.xhtml#l00049">GCNormalizationLayerKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00043">GCGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate_layer_kernel_8cpp_source.xhtml#l00092">CLWidthConcatenateLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_reshaped_kernel_8cpp_source.xhtml#l00175">CLGEMMMatrixMultiplyReshapedKernel::configure()</a>, <a class="el" href="_c_l_bounding_box_transform_kernel_8cpp_source.xhtml#l00070">CLBoundingBoxTransformKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate4_tensors_kernel_8cpp_source.xhtml#l00115">CLWidthConcatenate4TensorsKernel::configure()</a>, <a class="el" href="_c_l_range_kernel_8cpp_source.xhtml#l00093">CLRangeKernel::configure()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00098">CLFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_c_l_depth_concatenate_layer_kernel_8cpp_source.xhtml#l00101">CLDepthConcatenateLayerKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_g_c_batch_normalization_layer_kernel_8cpp_source.xhtml#l00139">GCBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, <a class="el" href="_c_l_r_o_i_align_layer_kernel_8cpp_source.xhtml#l00093">CLROIAlignLayerKernel::configure()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00185">GCGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00146">CLWinogradOutputTransformKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00263">CLGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_quantize_down_int32_to_uint8_scale_by_float_kernel_8cpp_source.xhtml#l00123">CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloatKernel::configure()</a>, and <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00219">CLLogits1DMaxShiftExpSumKernel::configure()</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000015224
Anthony Barbier871448e2017-03-24 14:54:29 +000015225</div>
15226</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015227<a id="ad1e1cc57e3e2ae0ea65d607f6d6312f8"></a>
15228<h2 class="memtitle"><span class="permalink"><a href="#ad1e1cc57e3e2ae0ea65d607f6d6312f8">&#9670;&nbsp;</a></span>FloatFlip()</h2>
15229
15230<div class="memitem">
15231<div class="memproto">
15232<table class="mlabels">
15233 <tr>
15234 <td class="mlabels-left">
15235 <table class="memname">
15236 <tr>
15237 <td class="memname">int32_t arm_compute::FloatFlip </td>
15238 <td>(</td>
15239 <td class="paramtype">float&#160;</td>
15240 <td class="paramname"><em>val</em></td><td>)</td>
15241 <td></td>
15242 </tr>
15243 </table>
15244 </td>
15245 <td class="mlabels-right">
15246<span class="mlabels"><span class="mlabel">inline</span></span> </td>
15247 </tr>
15248</table>
15249</div><div class="memdoc">
15250
15251<p class="definition">Definition at line <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00037">37</a> of file <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml">CLMinMaxLocationKernel.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000015252<div class="fragment"><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;{</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; static_assert(<span class="keyword">sizeof</span>(<span class="keywordtype">float</span>) == <span class="keyword">sizeof</span>(int32_t), <span class="stringliteral">&quot;Float must be same size as int32_t&quot;</span>);</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; int32_t int_val = 0;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; memcpy(&amp;int_val, &amp;val, <span class="keyword">sizeof</span>(<span class="keywordtype">float</span>));</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; int_val = (int_val &gt;= 0) ? int_val : int_val ^ 0x7FFFFFFF;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">return</span> int_val;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000015253<p class="reference">Referenced by <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00062">CLMinMaxKernel::configure()</a>.</p>
15254
Jenkinsb9abeae2018-11-22 11:58:08 +000015255</div>
15256</div>
15257<a id="a23062881efd3855d61bae58f330c97db"></a>
15258<h2 class="memtitle"><span class="permalink"><a href="#a23062881efd3855d61bae58f330c97db">&#9670;&nbsp;</a></span>floor_to_multiple()</h2>
15259
Anthony Barbier871448e2017-03-24 14:54:29 +000015260<div class="memitem">
15261<div class="memproto">
15262<table class="mlabels">
15263 <tr>
15264 <td class="mlabels-left">
15265 <table class="memname">
15266 <tr>
15267 <td class="memname">auto arm_compute::floor_to_multiple </td>
15268 <td>(</td>
15269 <td class="paramtype">S&#160;</td>
15270 <td class="paramname"><em>value</em>, </td>
15271 </tr>
15272 <tr>
15273 <td class="paramkey"></td>
15274 <td></td>
15275 <td class="paramtype">T&#160;</td>
15276 <td class="paramname"><em>divisor</em>&#160;</td>
15277 </tr>
15278 <tr>
15279 <td></td>
15280 <td>)</td>
Jenkinsb3a371b2018-05-23 11:36:53 +010015281 <td></td><td> -&gt; decltype((value / divisor) * divisor)
Anthony Barbier871448e2017-03-24 14:54:29 +000015282</td>
15283 </tr>
15284 </table>
15285 </td>
15286 <td class="mlabels-right">
15287<span class="mlabels"><span class="mlabel">inline</span></span> </td>
15288 </tr>
15289</table>
15290</div><div class="memdoc">
15291
15292<p>Computes the largest number smaller or equal to value that is a multiple of divisor. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010015293<dl class="params"><dt>Parameters</dt><dd>
15294 <table class="params">
15295 <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Upper bound value </td></tr>
15296 <tr><td class="paramdir">[in]</td><td class="paramname">divisor</td><td>Value to compute multiple of.</td></tr>
15297 </table>
15298 </dd>
15299</dl>
15300<dl class="section return"><dt>Returns</dt><dd>the result. </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000015301
Jenkinsb9abeae2018-11-22 11:58:08 +000015302<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00079">79</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000015303<div class="fragment"><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;{</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(value &lt; 0 || divisor &lt;= 0);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">return</span> (value / divisor) * divisor;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +010015304</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000015305<p class="reference">Referenced by <a class="el" href="_n_e_h_o_g_detector_kernel_8cpp_source.xhtml#l00042">NEHOGDetectorKernel::configure()</a>, and <a class="el" href="_c_l_h_o_g_detector_kernel_8cpp_source.xhtml#l00044">CLHOGDetectorKernel::configure()</a>.</p>
15306
Anthony Barbierdbdab852017-06-23 15:42:00 +010015307</div>
15308</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015309<a id="a2ad3c9492d4158b574a89ab798d74e16"></a>
15310<h2 class="memtitle"><span class="permalink"><a href="#a2ad3c9492d4158b574a89ab798d74e16">&#9670;&nbsp;</a></span>fp16_supported()</h2>
15311
Anthony Barbier8140e1e2017-12-14 23:48:46 +000015312<div class="memitem">
15313<div class="memproto">
15314 <table class="memname">
15315 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000015316 <td class="memname">bool fp16_supported </td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000015317 <td>(</td>
15318 <td class="paramtype">const cl::Device &amp;&#160;</td>
15319 <td class="paramname"><em>device</em></td><td>)</td>
15320 <td></td>
15321 </tr>
15322 </table>
15323</div><div class="memdoc">
15324
15325<p>Helper function to check whether the cl_khr_fp16 extension is supported. </p>
15326<dl class="params"><dt>Parameters</dt><dd>
15327 <table class="params">
15328 <tr><td class="paramdir">[in]</td><td class="paramname">device</td><td>A CL device</td></tr>
15329 </table>
15330 </dd>
15331</dl>
15332<dl class="section return"><dt>Returns</dt><dd>True if the extension is supported </dd></dl>
15333
Jenkins514be652019-02-28 12:25:18 +000015334<p class="definition">Definition at line <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00140">140</a> of file <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
15335<div class="fragment"><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;{</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">device_supports_extension</a>(device, <span class="stringliteral">&quot;cl_khr_fp16&quot;</span>);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a6c4a5ca34ebb51d4e2e119a110e4c8f0"><div class="ttname"><a href="namespacearm__compute.xhtml#a6c4a5ca34ebb51d4e2e119a110e4c8f0">arm_compute::device_supports_extension</a></div><div class="ttdeci">bool device_supports_extension(const cl::Device &amp;device, const char *extension_name)</div><div class="ttdoc">Helper function to check whether a given extension is supported.</div><div class="ttdef"><b>Definition:</b> <a href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00183">CLHelpers.cpp:183</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015336</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000015337<p class="reference">References <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00183">device_supports_extension()</a>.</p>
15338
15339<p class="reference">Referenced by <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l01043">CLKernelLibrary::fp16_supported()</a>.</p>
15340
Anthony Barbier8140e1e2017-12-14 23:48:46 +000015341</div>
15342</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015343<a id="a2355c2bf5d1950088937416baea24fe6"></a>
15344<h2 class="memtitle"><span class="permalink"><a href="#a2355c2bf5d1950088937416baea24fe6">&#9670;&nbsp;</a></span>get_arch_from_target()</h2>
15345
Anthony Barbierdbdab852017-06-23 15:42:00 +010015346<div class="memitem">
15347<div class="memproto">
15348 <table class="memname">
15349 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000015350 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> get_arch_from_target </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010015351 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000015352 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010015353 <td class="paramname"><em>target</em></td><td>)</td>
15354 <td></td>
15355 </tr>
15356 </table>
15357</div><div class="memdoc">
15358
15359<p>Helper function to get the GPU arch. </p>
15360<dl class="params"><dt>Parameters</dt><dd>
15361 <table class="params">
15362 <tr><td class="paramdir">[in]</td><td class="paramname">target</td><td>GPU target</td></tr>
15363 </table>
15364 </dd>
15365</dl>
15366<dl class="section return"><dt>Returns</dt><dd>the GPU target which shows the arch </dd></dl>
15367
Jenkinsb9abeae2018-11-22 11:58:08 +000015368<p class="definition">Definition at line <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00160">160</a> of file <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml">GPUTarget.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000015369<div class="fragment"><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;{</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">return</span> (target &amp; GPUTarget::GPU_ARCH_MASK);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000015370<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a57a3b40730a5af7ea3e13eb4bba56d82">GPU_ARCH_MASK</a>.</p>
15371
Jenkins514be652019-02-28 12:25:18 +000015372<p class="reference">Referenced by <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00234">CLGEMMLowpMatrixMultiplyKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00185">GCGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00263">CLGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_8cpp_source.xhtml#l00102">CLGEMM::configure()</a>, <a class="el" href="_c_l_g_e_m_m_reshaped_configuration_8h_source.xhtml#l00041">CLGEMMReshapedConfigurationFactory::create()</a>, <a class="el" href="_tuners_8h_source.xhtml#l00040">TunerFactory::create_tuner()</a>, and <a class="el" href="_c_l_g_e_m_m_8cpp_source.xhtml#l00233">CLGEMM::validate()</a>.</p>
15373
Anthony Barbierdbdab852017-06-23 15:42:00 +010015374</div>
15375</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015376<a id="a70d221fbff7bff840ef4d3fdc701cf53"></a>
15377<h2 class="memtitle"><span class="permalink"><a href="#a70d221fbff7bff840ef4d3fdc701cf53">&#9670;&nbsp;</a></span>get_cl_select_type_from_data_type()</h2>
15378
Anthony Barbier871448e2017-03-24 14:54:29 +000015379<div class="memitem">
15380<div class="memproto">
15381 <table class="memname">
15382 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000015383 <td class="memname">std::string get_cl_select_type_from_data_type </td>
15384 <td>(</td>
15385 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;&#160;</td>
15386 <td class="paramname"><em>dt</em></td><td>)</td>
15387 <td></td>
15388 </tr>
15389 </table>
15390</div><div class="memdoc">
15391
15392<p>Translates a tensor data type to the appropriate OpenCL select type. </p>
15393<dl class="params"><dt>Parameters</dt><dd>
15394 <table class="params">
15395 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> to be translated to OpenCL select type.</td></tr>
15396 </table>
15397 </dd>
15398</dl>
15399<dl class="section return"><dt>Returns</dt><dd>The string specifying the OpenCL select type to be used. </dd></dl>
15400
Jenkins514be652019-02-28 12:25:18 +000015401<p class="definition">Definition at line <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00067">67</a> of file <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
15402<div class="fragment"><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;{</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; {</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;uchar&quot;</span>;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;char&quot;</span>;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;uchar&quot;</span>;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;ushort&quot;</span>;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;short&quot;</span>;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;uint&quot;</span>;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;int&quot;</span>;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;ulong&quot;</span>;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;long&quot;</span>;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Unsupported input data type.&quot;</span>);</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; }</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
15403</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000015404<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
15405
Jenkins514be652019-02-28 12:25:18 +000015406<p class="reference">Referenced by <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_c_l_select_kernel_8cpp_source.xhtml#l00109">CLSelectKernel::configure()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00098">CLFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>, and <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00146">CLWinogradOutputTransformKernel::configure()</a>.</p>
15407
Jenkinsb9abeae2018-11-22 11:58:08 +000015408</div>
15409</div>
15410<a id="a545eeda2eaa3f5a54345ce8169e21184"></a>
15411<h2 class="memtitle"><span class="permalink"><a href="#a545eeda2eaa3f5a54345ce8169e21184">&#9670;&nbsp;</a></span>get_cl_type_from_data_type()</h2>
15412
15413<div class="memitem">
15414<div class="memproto">
15415 <table class="memname">
15416 <tr>
15417 <td class="memname">std::string get_cl_type_from_data_type </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000015418 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000015419 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000015420 <td class="paramname"><em>dt</em></td><td>)</td>
15421 <td></td>
15422 </tr>
15423 </table>
15424</div><div class="memdoc">
15425
15426<p>Translates a tensor data type to the appropriate OpenCL type. </p>
15427<dl class="params"><dt>Parameters</dt><dd>
15428 <table class="params">
15429 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> to be translated to OpenCL type.</td></tr>
15430 </table>
15431 </dd>
15432</dl>
15433<dl class="section return"><dt>Returns</dt><dd>The string specifying the OpenCL type to be used. </dd></dl>
15434
Jenkins514be652019-02-28 12:25:18 +000015435<p class="definition">Definition at line <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00035">35</a> of file <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
15436<div class="fragment"><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;{</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; {</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;uchar&quot;</span>;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;char&quot;</span>;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;uchar&quot;</span>;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;ushort&quot;</span>;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;short&quot;</span>;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;uint&quot;</span>;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;int&quot;</span>;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;ulong&quot;</span>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;long&quot;</span>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;half&quot;</span>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;float&quot;</span>;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Unsupported input data type.&quot;</span>);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; }</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
15437</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000015438<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
15439
Jenkins514be652019-02-28 12:25:18 +000015440<p class="reference">Referenced by <a class="el" href="_c_l_warp_perspective_kernel_8cpp_source.xhtml#l00061">CLWarpPerspectiveKernel::configure()</a>, <a class="el" href="_c_l_element_wise_unary_layer_kernel_8cpp_source.xhtml#l00052">CLElementWiseUnaryLayerKernel::configure()</a>, <a class="el" href="_c_l_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00044">CLNonMaximaSuppression3x3Kernel::configure()</a>, <a class="el" href="_c_l_warp_affine_kernel_8cpp_source.xhtml#l00061">CLWarpAffineKernel::configure()</a>, <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00161">CLScaleKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00168">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00079">CLGEMMMatrixAccumulateBiasesKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_vector_multiply_kernel_8cpp_source.xhtml#l00083">CLGEMMMatrixVectorMultiplyKernel::configure()</a>, <a class="el" href="_c_l_copy_kernel_8cpp_source.xhtml#l00138">CLCopyKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_reshape_weights_kernel_8cpp_source.xhtml#l00087">CLDepthwiseConvolutionLayerReshapeWeightsKernel::configure()</a>, <a class="el" href="_c_l_flatten_layer_kernel_8cpp_source.xhtml#l00086">CLFlattenLayerKernel::configure()</a>, <a class="el" href="_c_l_floor_kernel_8cpp_source.xhtml#l00079">CLFloorKernel::configure()</a>, <a class="el" href="_c_l_reshape_layer_kernel_8cpp_source.xhtml#l00067">CLReshapeLayerKernel::configure()</a>, <a class="el" href="_c_l_generate_proposals_layer_kernel_8cpp_source.xhtml#l00068">CLComputeAllAnchorsKernel::configure()</a>, <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00107">CLNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00084">CLBatchToSpaceLayerKernel::configure()</a>, <a class="el" href="_c_l_permute_kernel_8cpp_source.xhtml#l00081">CLPermuteKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00040">CLGradientKernel::configure()</a>, <a class="el" href="_c_l_tile_kernel_8cpp_source.xhtml#l00068">CLTileKernel::configure()</a>, <a class="el" href="_c_l_depth_convert_layer_kernel_8cpp_source.xhtml#l00073">CLDepthConvertLayerKernel::configure()</a>, <a class="el" href="_c_l_memset_kernel_8cpp_source.xhtml#l00042">CLMemsetKernel::configure()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00066">CLUpsampleLayerKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00062">CLMinMaxKernel::configure()</a>, <a class="el" href="_c_l_remap_kernel_8cpp_source.xhtml#l00050">CLRemapKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00089">CLSpaceToBatchLayerKernel::configure()</a>, <a class="el" href="_c_l_gather_kernel_8cpp_source.xhtml#l00091">CLGatherKernel::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_c_l_deconvolution_layer_upsample_kernel_8cpp_source.xhtml#l00073">CLDeconvolutionLayerUpsampleKernel::configure()</a>, <a class="el" href="_c_l_comparison_kernel_8cpp_source.xhtml#l00113">CLComparisonKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_reshape_weights_generic_kernel_8cpp_source.xhtml#l00070">CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00098">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00185">CLPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_reshaped_kernel_8cpp_source.xhtml#l00175">CLGEMMMatrixMultiplyReshapedKernel::configure()</a>, <a class="el" href="_c_l_reduction_operation_kernel_8cpp_source.xhtml#l00139">CLReductionOperationKernel::configure()</a>, <a class="el" href="_c_l_prior_box_layer_kernel_8cpp_source.xhtml#l00103">CLPriorBoxLayerKernel::configure()</a>, <a class="el" href="_c_l_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00064">CLDepthwiseVectorToTensorKernel::configure()</a>, <a class="el" href="_c_l_bounding_box_transform_kernel_8cpp_source.xhtml#l00070">CLBoundingBoxTransformKernel::configure()</a>, <a class="el" href="_c_l_absolute_difference_kernel_8cpp_source.xhtml#l00047">CLAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_c_l_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00120">CLPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_l2_normalize_layer_kernel_8cpp_source.xhtml#l00095">CLL2NormalizeLayerKernel::configure()</a>, <a class="el" href="_c_l_magnitude_phase_kernel_8cpp_source.xhtml#l00046">CLMagnitudePhaseKernel::configure()</a>, <a class="el" href="_c_l_range_kernel_8cpp_source.xhtml#l00093">CLRangeKernel::configure()</a>, <a class="el" href="_c_l_fuse_batch_normalization_kernel_8cpp_source.xhtml#l00098">CLFuseBatchNormalizationKernel::configure()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00065">CLDepthwiseIm2ColKernel::configure()</a>, <a class="el" href="_c_l_select_kernel_8cpp_source.xhtml#l00109">CLSelectKernel::configure()</a>, <a class="el" href="_c_l_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00040">CLConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00057">CLConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00111">CLWinogradInputTransformKernel::configure()</a>, <a class="el" href="_c_l_r_o_i_align_layer_kernel_8cpp_source.xhtml#l00093">CLROIAlignLayerKernel::configure()</a>, <a class="el" href="_c_l_r_o_i_pooling_layer_kernel_8cpp_source.xhtml#l00073">CLROIPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_winograd_filter_transform_kernel_8cpp_source.xhtml#l00102">CLWinogradFilterTransformKernel::configure()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_strided_slice_kernel_8cpp_source.xhtml#l00106">CLStridedSliceKernel::configure()</a>, <a class="el" href="_c_l_harris_corners_kernel_8cpp_source.xhtml#l00054">CLHarrisScoreKernel::configure()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00146">CLWinogradOutputTransformKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00263">CLGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_c_l_col2_im_kernel_8cpp_source.xhtml#l00090">CLCol2ImKernel::configure()</a>, <a class="el" href="_c_l_weights_reshape_kernel_8cpp_source.xhtml#l00078">CLWeightsReshapeKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00111">CLEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00169">CLMinMaxLocationKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00127">CLSeparableConvolutionHorKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00219">CLLogits1DMaxShiftExpSumKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00180">CLSeparableConvolutionVertKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00173">CLEdgeTraceKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00246">CLConvolutionRectangleKernel::configure()</a>, <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00335">CLLogits1DNormKernel::configure()</a>, and <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00122">get_underlying_cl_type_from_data_type()</a>.</p>
15441
Anthony Barbier871448e2017-03-24 14:54:29 +000015442</div>
15443</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015444<a id="a0e62ce01a7a7af6c3d059bb8534cad45"></a>
15445<h2 class="memtitle"><span class="permalink"><a href="#a0e62ce01a7a7af6c3d059bb8534cad45">&#9670;&nbsp;</a></span>get_cl_version()</h2>
15446
Kaizen8938bd32017-09-28 14:38:23 +010015447<div class="memitem">
15448<div class="memproto">
15449 <table class="memname">
15450 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000015451 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52e">CLVersion</a> get_cl_version </td>
Kaizen8938bd32017-09-28 14:38:23 +010015452 <td>(</td>
15453 <td class="paramtype">const cl::Device &amp;&#160;</td>
15454 <td class="paramname"><em>device</em></td><td>)</td>
15455 <td></td>
15456 </tr>
15457 </table>
15458</div><div class="memdoc">
15459
15460<p>Helper function to get the highest OpenCL version supported. </p>
15461<dl class="params"><dt>Parameters</dt><dd>
15462 <table class="params">
15463 <tr><td class="paramdir">[in]</td><td class="paramname">device</td><td>A CL device</td></tr>
15464 </table>
15465 </dd>
15466</dl>
15467<dl class="section return"><dt>Returns</dt><dd>the highest OpenCL version supported </dd></dl>
15468
Jenkins514be652019-02-28 12:25:18 +000015469<p class="definition">Definition at line <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00160">160</a> of file <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
15470<div class="fragment"><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;{</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; std::string version_str = device.getInfo&lt;CL_DEVICE_VERSION&gt;();</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">if</span>(version_str.find(<span class="stringliteral">&quot;OpenCL 2&quot;</span>) != std::string::npos)</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; {</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">return</span> CLVersion::CL20;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; }</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(version_str.find(<span class="stringliteral">&quot;OpenCL 1.2&quot;</span>) != std::string::npos)</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; {</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">return</span> CLVersion::CL12;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(version_str.find(<span class="stringliteral">&quot;OpenCL 1.1&quot;</span>) != std::string::npos)</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; {</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">return</span> CLVersion::CL11;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; }</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(version_str.find(<span class="stringliteral">&quot;OpenCL 1.0&quot;</span>) != std::string::npos)</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; {</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">return</span> CLVersion::CL10;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; }</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">return</span> CLVersion::UNKNOWN;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000015471<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea06e5b2cbe2f75bb5eec32613499cf22a">CL10</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea80e95ed62d0c47e4d8c0696d467d4db3">CL11</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ead7beedb1bf6bfae8111da26424266675">CL12</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52eaba90edbc644c32afa8a7e36e87735aab">CL20</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
15472
Jenkins514be652019-02-28 12:25:18 +000015473<p class="reference">Referenced by <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l00964">CLKernelLibrary::create_kernel()</a>.</p>
15474
Jenkinsb3a371b2018-05-23 11:36:53 +010015475</div>
15476</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015477<a id="a92d01d03db1530581737484c1290ca16"></a>
15478<h2 class="memtitle"><span class="permalink"><a href="#a92d01d03db1530581737484c1290ca16">&#9670;&nbsp;</a></span>get_cpu_configuration()</h2>
15479
Jenkinsb3a371b2018-05-23 11:36:53 +010015480<div class="memitem">
15481<div class="memproto">
15482 <table class="memname">
15483 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000015484 <td class="memname">void get_cpu_configuration </td>
Jenkinsb3a371b2018-05-23 11:36:53 +010015485 <td>(</td>
15486 <td class="paramtype"><a class="el" href="classarm__compute_1_1_c_p_u_info.xhtml">CPUInfo</a> &amp;&#160;</td>
15487 <td class="paramname"><em>cpuinfo</em></td><td>)</td>
15488 <td></td>
15489 </tr>
15490 </table>
15491</div><div class="memdoc">
Anthony Barbier8140e1e2017-12-14 23:48:46 +000015492
Jenkinsb3a371b2018-05-23 11:36:53 +010015493<p>This function will try to detect the CPU configuration on the system and will fill the cpuinfo object accordingly to reflect this. </p>
15494<dl class="params"><dt>Parameters</dt><dd>
15495 <table class="params">
15496 <tr><td class="paramdir">[out]</td><td class="paramname">cpuinfo</td><td><a class="el" href="classarm__compute_1_1_c_p_u_info.xhtml">CPUInfo</a> to be used to hold the system's cpu configuration. </td></tr>
15497 </table>
15498 </dd>
15499</dl>
15500
Jenkins514be652019-02-28 12:25:18 +000015501<p class="definition">Definition at line <a class="el" href="_c_p_u_utils_8cpp_source.xhtml#l00353">353</a> of file <a class="el" href="_c_p_u_utils_8cpp_source.xhtml">CPUUtils.cpp</a>.</p>
15502<div class="fragment"><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;{</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;<span class="preprocessor">#if !defined(BARE_METAL) &amp;&amp; (defined(__arm__) || defined(__aarch64__))</span></div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordtype">bool</span> cpuid = <span class="keyword">false</span>;</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordtype">bool</span> hwcaps_fp16_support = <span class="keyword">false</span>;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordtype">bool</span> hwcaps_dot_support = <span class="keyword">false</span>;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keyword">const</span> uint32_t hwcaps = getauxval(AT_HWCAP);</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">if</span>((hwcaps &amp; <a class="code" href="_c_p_u_utils_8cpp.xhtml#a81886f53bcc05e6aa40366dcee3c80cc">HWCAP_CPUID</a>) != 0)</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; {</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; cpuid = <span class="keyword">true</span>;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; }</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160;</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <span class="keywordflow">if</span>((hwcaps &amp; <a class="code" href="_c_p_u_utils_8cpp.xhtml#a3adcaa91ed4b68e8939a5175133460d5">HWCAP_ASIMDHP</a>) != 0)</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; {</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; hwcaps_fp16_support = <span class="keyword">true</span>;</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; }</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;<span class="preprocessor">#if defined(__aarch64__)</span></div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">if</span>((hwcaps &amp; <a class="code" href="_c_p_u_utils_8cpp.xhtml#af2e3430d5d0940d0a78029eb50f69234">HWCAP_ASIMDDP</a>) != 0)</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; {</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; hwcaps_dot_support = <span class="keyword">true</span>;</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; }</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* defined(__aarch64__) */</span><span class="preprocessor"></span></div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160;</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> max_cpus = get_max_cpus();</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; cpuinfo.<a class="code" href="classarm__compute_1_1_c_p_u_info.xhtml#aba3b726afdf36bdcd7496e1bfb523e71">set_cpu_num</a>(max_cpus);</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; std::vector&lt;CPUModel&gt; percpu(max_cpus, CPUModel::GENERIC);</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordflow">if</span>(cpuid)</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; {</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; populate_models_cpuid(percpu);</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; }</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; {</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; populate_models_cpuinfo(percpu);</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; }</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordtype">int</span> j(0);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="comment">// Update dot product and FP16 support if one of the CPUs support these features</span></div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="comment">// We assume that the system does not have mixed architectures</span></div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordtype">bool</span> one_supports_dot = <span class="keyword">false</span>;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordtype">bool</span> one_supports_fp16 = <span class="keyword">false</span>;</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">const</span> <span class="keyword">auto</span> &amp;v : percpu)</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; {</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; one_supports_dot = one_supports_dot || model_supports_dot(v);</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; one_supports_fp16 = one_supports_fp16 || model_supports_fp16(v);</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; cpuinfo.<a class="code" href="classarm__compute_1_1_c_p_u_info.xhtml#acb24f7c57aaeee1da27db2b4b52434ee">set_cpu_model</a>(j++, v);</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; }</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; cpuinfo.<a class="code" href="classarm__compute_1_1_c_p_u_info.xhtml#a6d2db590ac4d869e8feb648beb80fcea">set_dotprod</a>(one_supports_dot || hwcaps_dot_support);</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; cpuinfo.<a class="code" href="classarm__compute_1_1_c_p_u_info.xhtml#a6dfc7d658828318e6c54988913c22ec7">set_fp16</a>(one_supports_fp16 || hwcaps_fp16_support);</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;<span class="preprocessor">#else </span><span class="comment">/* !defined(BARE_METAL) &amp;&amp; (defined(__arm__) || defined(__aarch64__)) */</span><span class="preprocessor"></span></div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <a class="code" href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a>(cpuinfo);</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* !defined(BARE_METAL) &amp;&amp; (defined(__arm__) || defined(__aarch64__)) */</span><span class="preprocessor"></span></div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;}</div><div class="ttc" id="_c_p_u_utils_8cpp_xhtml_af2e3430d5d0940d0a78029eb50f69234"><div class="ttname"><a href="_c_p_u_utils_8cpp.xhtml#af2e3430d5d0940d0a78029eb50f69234">HWCAP_ASIMDDP</a></div><div class="ttdeci">#define HWCAP_ASIMDDP</div><div class="ttdef"><b>Definition:</b> <a href="_c_p_u_utils_8cpp_source.xhtml#l00065">CPUUtils.cpp:65</a></div></div>
15503<div class="ttc" id="_c_p_u_utils_8cpp_xhtml_a81886f53bcc05e6aa40366dcee3c80cc"><div class="ttname"><a href="_c_p_u_utils_8cpp.xhtml#a81886f53bcc05e6aa40366dcee3c80cc">HWCAP_CPUID</a></div><div class="ttdeci">#define HWCAP_CPUID</div><div class="ttdef"><b>Definition:</b> <a href="_c_p_u_utils_8cpp_source.xhtml#l00061">CPUUtils.cpp:61</a></div></div>
15504<div class="ttc" id="_error_8h_xhtml_a6dc630a6ae9cc063b3924bcea8dee9d6"><div class="ttname"><a href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a></div><div class="ttdeci">#define ARM_COMPUTE_UNUSED(...)</div><div class="ttdoc">To avoid unused variables warnings.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00160">Error.h:160</a></div></div>
15505<div class="ttc" id="classarm__compute_1_1_c_p_u_info_xhtml_acb24f7c57aaeee1da27db2b4b52434ee"><div class="ttname"><a href="classarm__compute_1_1_c_p_u_info.xhtml#acb24f7c57aaeee1da27db2b4b52434ee">arm_compute::CPUInfo::set_cpu_model</a></div><div class="ttdeci">void set_cpu_model(unsigned int cpuid, CPUModel model)</div><div class="ttdoc">Set the cpumodel for a given cpu core.</div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_types_8cpp_source.xhtml#l00045">CPPTypes.cpp:45</a></div></div>
15506<div class="ttc" id="_c_p_u_utils_8cpp_xhtml_a3adcaa91ed4b68e8939a5175133460d5"><div class="ttname"><a href="_c_p_u_utils_8cpp.xhtml#a3adcaa91ed4b68e8939a5175133460d5">HWCAP_ASIMDHP</a></div><div class="ttdeci">#define HWCAP_ASIMDHP</div><div class="ttdef"><b>Definition:</b> <a href="_c_p_u_utils_8cpp_source.xhtml#l00057">CPUUtils.cpp:57</a></div></div>
15507<div class="ttc" id="classarm__compute_1_1_c_p_u_info_xhtml_a6d2db590ac4d869e8feb648beb80fcea"><div class="ttname"><a href="classarm__compute_1_1_c_p_u_info.xhtml#a6d2db590ac4d869e8feb648beb80fcea">arm_compute::CPUInfo::set_dotprod</a></div><div class="ttdeci">void set_dotprod(const bool dotprod)</div><div class="ttdoc">Set dot product support.</div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_types_8cpp_source.xhtml#l00040">CPPTypes.cpp:40</a></div></div>
15508<div class="ttc" id="classarm__compute_1_1_c_p_u_info_xhtml_a6dfc7d658828318e6c54988913c22ec7"><div class="ttname"><a href="classarm__compute_1_1_c_p_u_info.xhtml#a6dfc7d658828318e6c54988913c22ec7">arm_compute::CPUInfo::set_fp16</a></div><div class="ttdeci">void set_fp16(const bool fp16)</div><div class="ttdoc">Set fp16 support.</div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_types_8cpp_source.xhtml#l00035">CPPTypes.cpp:35</a></div></div>
15509<div class="ttc" id="classarm__compute_1_1_c_p_u_info_xhtml_aba3b726afdf36bdcd7496e1bfb523e71"><div class="ttname"><a href="classarm__compute_1_1_c_p_u_info.xhtml#aba3b726afdf36bdcd7496e1bfb523e71">arm_compute::CPUInfo::set_cpu_num</a></div><div class="ttdeci">void set_cpu_num(unsigned int cpu_count)</div><div class="ttdoc">Set max number of cpus.</div><div class="ttdef"><b>Definition:</b> <a href="_c_p_p_types_8cpp_source.xhtml#l00097">CPPTypes.cpp:97</a></div></div>
15510</div><!-- fragment -->
15511<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00160">ARM_COMPUTE_UNUSED</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b">GENERIC</a>, <a class="el" href="_c_p_u_utils_8cpp_source.xhtml#l00065">HWCAP_ASIMDDP</a>, <a class="el" href="_c_p_u_utils_8cpp_source.xhtml#l00057">HWCAP_ASIMDHP</a>, <a class="el" href="_c_p_u_utils_8cpp_source.xhtml#l00061">HWCAP_CPUID</a>, <a class="el" href="_c_p_p_types_8cpp_source.xhtml#l00045">CPUInfo::set_cpu_model()</a>, <a class="el" href="_c_p_p_types_8cpp_source.xhtml#l00097">CPUInfo::set_cpu_num()</a>, <a class="el" href="_c_p_p_types_8cpp_source.xhtml#l00040">CPUInfo::set_dotprod()</a>, and <a class="el" href="_c_p_p_types_8cpp_source.xhtml#l00035">CPUInfo::set_fp16()</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000015512
15513<p class="reference">Referenced by <a class="el" href="_i_scheduler_8cpp_source.xhtml#l00031">IScheduler::IScheduler()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000015514
Jenkinsb3a371b2018-05-23 11:36:53 +010015515</div>
15516</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015517<a id="a46e938020a3ac8c926d0590b7fe957db"></a>
15518<h2 class="memtitle"><span class="permalink"><a href="#a46e938020a3ac8c926d0590b7fe957db">&#9670;&nbsp;</a></span>get_data_layout_dimension_index()</h2>
15519
Jenkinsb3a371b2018-05-23 11:36:53 +010015520<div class="memitem">
15521<div class="memproto">
15522<table class="mlabels">
15523 <tr>
15524 <td class="mlabels-left">
15525 <table class="memname">
15526 <tr>
15527 <td class="memname">size_t get_data_layout_dimension_index </td>
15528 <td>(</td>
15529 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a>&#160;</td>
15530 <td class="paramname"><em>data_layout</em>, </td>
15531 </tr>
15532 <tr>
15533 <td class="paramkey"></td>
15534 <td></td>
15535 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02">DataLayoutDimension</a>&#160;</td>
15536 <td class="paramname"><em>data_layout_dimension</em>&#160;</td>
15537 </tr>
15538 <tr>
15539 <td></td>
15540 <td>)</td>
15541 <td></td><td></td>
15542 </tr>
15543 </table>
15544 </td>
15545 <td class="mlabels-right">
15546<span class="mlabels"><span class="mlabel">inline</span></span> </td>
15547 </tr>
15548</table>
15549</div><div class="memdoc">
15550
15551<p>Get the index of the given dimension. </p>
15552<dl class="params"><dt>Parameters</dt><dd>
15553 <table class="params">
15554 <tr><td class="paramdir">[in]</td><td class="paramname">data_layout</td><td>The data layout. </td></tr>
15555 <tr><td class="paramdir">[in]</td><td class="paramname">data_layout_dimension</td><td>The dimension which this index is requested for.</td></tr>
15556 </table>
15557 </dd>
15558</dl>
15559<dl class="section return"><dt>Returns</dt><dd>The int conversion of the requested data layout index. </dd></dl>
15560
Jenkinsb9abeae2018-11-22 11:58:08 +000015561<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00326">326</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000015562<div class="fragment"><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;{</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(data_layout == DataLayout::UNKNOWN, <span class="stringliteral">&quot;Cannot retrieve the dimension index for an unknown layout!&quot;</span>);</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160;</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="comment">/* Return the index based on the data layout</span></div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;<span class="comment"> * [N C H W]</span></div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160;<span class="comment"> * [3 2 1 0]</span></div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;<span class="comment"> * [N H W C]</span></div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordflow">switch</span>(data_layout_dimension)</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; {</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">case</span> DataLayoutDimension::CHANNEL:</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keywordflow">return</span> (data_layout == DataLayout::NCHW) ? 2 : 0;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">case</span> DataLayoutDimension::HEIGHT:</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">return</span> (data_layout == DataLayout::NCHW) ? 1 : 2;</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="keywordflow">case</span> DataLayoutDimension::WIDTH:</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordflow">return</span> (data_layout == DataLayout::NCHW) ? 0 : 1;</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">case</span> DataLayoutDimension::BATCHES:</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Data layout index not supported!&quot;</span>);</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; }</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000015563<div class="ttc" id="_error_8h_xhtml_a5bbdcf574d3f5e412fa6a1117911e67b"><div class="ttname"><a href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_MSG(cond,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00328">Error.h:328</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +010015564</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000015565<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a">BATCHES</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">CHANNEL</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">HEIGHT</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, and <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>.</p>
15566
15567<p class="reference">Referenced by <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00329">calculate_same_pad()</a>, <a class="el" href="src_2core_2_helpers_8cpp_source.xhtml#l00184">calculate_valid_region_scale()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00983">arm_compute::misc::shape_calculator::compute_batch_to_space_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00358">arm_compute::misc::shape_calculator::compute_col2im_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00511">arm_compute::misc::shape_calculator::compute_deconvolution_output_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00478">arm_compute::misc::shape_calculator::compute_deconvolution_upsampled_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00730">arm_compute::misc::shape_calculator::compute_deep_convolution_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00408">arm_compute::misc::shape_calculator::compute_depthwise_convolution_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00541">arm_compute::misc::shape_calculator::compute_im2col_conv_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00779">arm_compute::misc::shape_calculator::compute_pool_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l01066">arm_compute::misc::shape_calculator::compute_prior_box_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00085">arm_compute::misc::shape_calculator::compute_reorg_output_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00260">arm_compute::misc::shape_calculator::compute_reshaped_depthwise_weights_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00812">arm_compute::misc::shape_calculator::compute_roi_align_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l01043">arm_compute::misc::shape_calculator::compute_space_to_batch_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l01138">arm_compute::misc::shape_calculator::compute_upsample_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00050">arm_compute::misc::shape_calculator::compute_vector_to_tensor_output_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00636">arm_compute::misc::shape_calculator::compute_winograd_filter_transform_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00659">arm_compute::misc::shape_calculator::compute_winograd_input_transform_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00695">arm_compute::misc::shape_calculator::compute_winograd_output_transform_shape()</a>, <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00161">CLScaleKernel::configure()</a>, <a class="el" href="_c_l_r_n_n_layer_8cpp_source.xhtml#l00069">CLRNNLayer::configure()</a>, <a class="el" href="_n_e_im2_col_8cpp_source.xhtml#l00037">NEIm2Col::configure()</a>, <a class="el" href="_c_l_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00095">CLChannelShuffleLayerKernel::configure()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00084">CLBatchToSpaceLayerKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00089">CLSpaceToBatchLayerKernel::configure()</a>, <a class="el" href="_n_e_scale_8cpp_source.xhtml#l00104">NEScale::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_reshape_weights_generic_kernel_8cpp_source.xhtml#l00070">CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00098">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00185">CLPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_prior_box_layer_kernel_8cpp_source.xhtml#l00103">CLPriorBoxLayerKernel::configure()</a>, <a class="el" href="_n_e_concatenate_layer_8cpp_source.xhtml#l00042">NEConcatenateLayer::configure()</a>, <a class="el" href="_c_l_concatenate_layer_8cpp_source.xhtml#l00042">CLConcatenateLayer::configure()</a>, <a class="el" href="_n_e_pooling_layer_kernel_8cpp_source.xhtml#l00334">NEPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00065">CLDepthwiseIm2ColKernel::configure()</a>, <a class="el" href="_c_l_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00040">CLConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_n_e_r_n_n_layer_8cpp_source.xhtml#l00067">NERNNLayer::configure()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00111">CLWinogradInputTransformKernel::configure()</a>, <a class="el" href="_c_l_r_o_i_align_layer_kernel_8cpp_source.xhtml#l00093">CLROIAlignLayerKernel::configure()</a>, <a class="el" href="_n_e_convert_fully_connected_weights_kernel_8cpp_source.xhtml#l00036">NEConvertFullyConnectedWeightsKernel::configure()</a>, <a class="el" href="_n_e_direct_convolution_layer_kernel_8cpp_source.xhtml#l01155">NEDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_n_e_scale_kernel_8cpp_source.xhtml#l00306">NEScaleKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_n_e_winograd_convolution_layer_8cpp_source.xhtml#l00244">NEWinogradConvolutionLayer::configure()</a>, <a class="el" href="_c_l_winograd_convolution_layer_8cpp_source.xhtml#l00092">CLWinogradConvolutionLayer::configure()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00293">CLIm2ColKernel::configure()</a>, <a class="el" href="_c_l_generate_proposals_layer_8cpp_source.xhtml#l00058">CLGenerateProposalsLayer::configure()</a>, <a class="el" href="_n_e_im2_col_kernel_8cpp_source.xhtml#l00334">NEIm2ColKernel::configure()</a>, <a class="el" href="_c_l_deconvolution_layer_8cpp_source.xhtml#l00110">CLDeconvolutionLayer::configure()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00173">NEGEMMConvolutionLayer::configure()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00169">CLGEMMConvolutionLayer::configure()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00268">NEDepthwiseConvolutionLayer::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00231">CLDepthwiseConvolutionLayer::configure()</a>, <a class="el" href="_r_o_i_align_layer_node_8cpp_source.xhtml#l00060">ROIAlignLayerNode::configure_output()</a>, <a class="el" href="reference_2_convert_fully_connected_weights_8cpp_source.xhtml#l00035">arm_compute::test::validation::reference::convert_fully_connected_weights()</a>, <a class="el" href="_sub_tensor_info_8h_source.xhtml#l00124">SubTensorInfo::dimension()</a>, <a class="el" href="_tensor_info_8h_source.xhtml#l00227">TensorInfo::dimension()</a>, <a class="el" href="_image_loader_8h_source.xhtml#l00256">IImageLoader::fill_planar_tensor()</a>, <a class="el" href="_c_p_p_flip_weights_kernel_8cpp_source.xhtml#l00045">CPPFlipWeightsKernel::flip_weights()</a>, <a class="el" href="_c_l_convolution_layer_8cpp_source.xhtml#l00122">CLConvolutionLayer::get_convolution_method()</a>, <a class="el" href="_n_e_convolution_layer_8cpp_source.xhtml#l00108">NEConvolutionLayer::get_convolution_method()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00717">get_normalization_dimension_index()</a>, <a class="el" href="_graph_utils_8cpp_source.xhtml#l00089">CaffePreproccessor::preprocess()</a>, <a class="el" href="_c_l_deconvolution_layer_upsample_kernel_8cpp_source.xhtml#l00101">CLDeconvolutionLayerUpsampleKernel::run()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_reshape_weights_generic_kernel_8cpp_source.xhtml#l00108">CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::run()</a>, <a class="el" href="_c_l_r_o_i_align_layer_kernel_8cpp_source.xhtml#l00133">CLROIAlignLayerKernel::run()</a>, <a class="el" href="_n_e_direct_convolution_layer_kernel_8cpp_source.xhtml#l01209">NEDirectConvolutionLayerKernel::run()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00227">CLWinogradInputTransformKernel::run()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00503">CLDirectConvolutionLayerKernel::run()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00571">NEGEMMConvolutionLayer::run()</a>, <a class="el" href="_c_l_r_n_n_layer_8cpp_source.xhtml#l00044">CLRNNLayer::validate()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00044">CLUpsampleLayerKernel::validate()</a>, <a class="el" href="_c_l_deconvolution_layer_upsample_kernel_8cpp_source.xhtml#l00042">CLDeconvolutionLayerUpsampleKernel::validate()</a>, <a class="el" href="_n_e_scale_8cpp_source.xhtml#l00178">NEScale::validate()</a>, <a class="el" href="_n_e_upsample_layer_kernel_8cpp_source.xhtml#l00090">NEUpsampleLayerKernel::validate()</a>, <a class="el" href="_n_e_pooling_layer_kernel_8cpp_source.xhtml#l01742">NEPoolingLayerKernel::validate()</a>, <a class="el" href="_n_e_concatenate_layer_8cpp_source.xhtml#l00067">NEConcatenateLayer::validate()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00062">NEConvolutionLayerReshapeWeights::validate()</a>, <a class="el" href="_c_l_concatenate_layer_8cpp_source.xhtml#l00067">CLConcatenateLayer::validate()</a>, <a class="el" href="_n_e_r_n_n_layer_8cpp_source.xhtml#l00042">NERNNLayer::validate()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00063">CLConvolutionLayerReshapeWeights::validate()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00174">NEDepthwiseConvolutionLayer3x3::validate()</a>, <a class="el" href="_n_e_winograd_convolution_layer_8cpp_source.xhtml#l00546">NEWinogradConvolutionLayer::validate()</a>, <a class="el" href="_c_l_winograd_convolution_layer_8cpp_source.xhtml#l00143">CLWinogradConvolutionLayer::validate()</a>, <a class="el" href="_c_l_generate_proposals_layer_8cpp_source.xhtml#l00158">CLGenerateProposalsLayer::validate()</a>, <a class="el" href="_c_l_deconvolution_layer_8cpp_source.xhtml#l00051">CLDeconvolutionLayer::validate()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00377">NEGEMMConvolutionLayer::validate()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00353">CLGEMMConvolutionLayer::validate()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00401">NEDepthwiseConvolutionLayer::validate()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00347">CLDepthwiseConvolutionLayer::validate()</a>, <a class="el" href="_n_e_winograd_convolution_layer_kernel_8cpp_source.xhtml#l00215">INEWinogradLayerTransformWeightsKernel&lt; T &gt;::validate()</a>, and <a class="el" href="reference_2_winograd_8cpp_source.xhtml#l00437">arm_compute::test::validation::reference::winograd_output_transform()</a>.</p>
15568
Kaizen8938bd32017-09-28 14:38:23 +010015569</div>
15570</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015571<a id="ab631f49c436b1f18beff3248c4b1a19e"></a>
15572<h2 class="memtitle"><span class="permalink"><a href="#ab631f49c436b1f18beff3248c4b1a19e">&#9670;&nbsp;</a></span>get_data_size_from_data_type()</h2>
15573
Kaizen8938bd32017-09-28 14:38:23 +010015574<div class="memitem">
15575<div class="memproto">
15576 <table class="memname">
15577 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000015578 <td class="memname">std::string get_data_size_from_data_type </td>
Kaizen8938bd32017-09-28 14:38:23 +010015579 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000015580 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010015581 <td class="paramname"><em>dt</em></td><td>)</td>
15582 <td></td>
15583 </tr>
15584 </table>
15585</div><div class="memdoc">
15586
15587<p>Get the size of a data type in number of bits. </p>
15588<dl class="params"><dt>Parameters</dt><dd>
15589 <table class="params">
15590 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>.</td></tr>
15591 </table>
15592 </dd>
15593</dl>
15594<dl class="section return"><dt>Returns</dt><dd>Number of bits in the data type specified. </dd></dl>
15595
Jenkins514be652019-02-28 12:25:18 +000015596<p class="definition">Definition at line <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00097">97</a> of file <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
15597<div class="fragment"><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;{</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;8&quot;</span>;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;16&quot;</span>;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;32&quot;</span>;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;64&quot;</span>;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Unsupported input data type.&quot;</span>);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;0&quot;</span>;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; }</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
15598</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000015599<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
15600
Jenkins514be652019-02-28 12:25:18 +000015601<p class="reference">Referenced by <a class="el" href="_c_l_r_o_i_align_layer_kernel_8cpp_source.xhtml#l00093">CLROIAlignLayerKernel::configure()</a>, <a class="el" href="_c_l_r_o_i_pooling_layer_kernel_8cpp_source.xhtml#l00073">CLROIPoolingLayerKernel::configure()</a>, and <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>.</p>
15602
Kaizen8938bd32017-09-28 14:38:23 +010015603</div>
15604</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015605<a id="ae76431f34048289454a9cb6dc66d7c6b"></a>
15606<h2 class="memtitle"><span class="permalink"><a href="#ae76431f34048289454a9cb6dc66d7c6b">&#9670;&nbsp;</a></span>get_normalization_dimension_index()</h2>
15607
Jenkins52ba29e2018-08-29 15:32:11 +000015608<div class="memitem">
15609<div class="memproto">
15610<table class="mlabels">
15611 <tr>
15612 <td class="mlabels-left">
15613 <table class="memname">
15614 <tr>
15615 <td class="memname">unsigned int arm_compute::get_normalization_dimension_index </td>
15616 <td>(</td>
15617 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a>&#160;</td>
15618 <td class="paramname"><em>layout</em>, </td>
15619 </tr>
15620 <tr>
15621 <td class="paramkey"></td>
15622 <td></td>
15623 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">NormalizationLayerInfo</a> &amp;&#160;</td>
15624 <td class="paramname"><em>info</em>&#160;</td>
15625 </tr>
15626 <tr>
15627 <td></td>
15628 <td>)</td>
15629 <td></td><td></td>
15630 </tr>
15631 </table>
15632 </td>
15633 <td class="mlabels-right">
15634<span class="mlabels"><span class="mlabel">inline</span></span> </td>
15635 </tr>
15636</table>
15637</div><div class="memdoc">
15638
15639<p>Calculate the normalization dimension index for a given normalization type. </p>
15640<dl class="params"><dt>Parameters</dt><dd>
15641 <table class="params">
15642 <tr><td class="paramdir">[in]</td><td class="paramname">layout</td><td>Data layout of the input and output tensor </td></tr>
15643 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Normalization info</td></tr>
15644 </table>
15645 </dd>
15646</dl>
15647<dl class="section return"><dt>Returns</dt><dd>Normalization dimension index </dd></dl>
15648
Jenkins514be652019-02-28 12:25:18 +000015649<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00717">717</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
15650<div class="fragment"><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160;{</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> width_idx = <a class="code" href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">get_data_layout_dimension_index</a>(layout, DataLayoutDimension::WIDTH);</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel_idx = <a class="code" href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">get_data_layout_dimension_index</a>(layout, DataLayoutDimension::CHANNEL);</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.is_in_map() ? width_idx : channel_idx;</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a46e938020a3ac8c926d0590b7fe957db"><div class="ttname"><a href="namespacearm__compute.xhtml#a46e938020a3ac8c926d0590b7fe957db">arm_compute::get_data_layout_dimension_index</a></div><div class="ttdeci">size_t get_data_layout_dimension_index(const DataLayout data_layout, const DataLayoutDimension data_layout_dimension)</div><div class="ttdoc">Get the index of the given dimension.</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00326">Helpers.inl:326</a></div></div>
15651<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000015652</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000015653<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">CHANNEL</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00326">get_data_layout_dimension_index()</a>, <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>, and <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>.</p>
15654
15655<p class="reference">Referenced by <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00107">CLNormalizationLayerKernel::configure()</a>, and <a class="el" href="_n_e_normalization_layer_kernel_8cpp_source.xhtml#l00115">NENormalizationLayerKernel::configure()</a>.</p>
15656
Jenkins52ba29e2018-08-29 15:32:11 +000015657</div>
15658</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015659<a id="a5e4254e9c71fffafb79b99d972df8f81"></a>
15660<h2 class="memtitle"><span class="permalink"><a href="#a5e4254e9c71fffafb79b99d972df8f81">&#9670;&nbsp;</a></span>get_promoted_data_type()</h2>
15661
Anthony Barbier8140e1e2017-12-14 23:48:46 +000015662<div class="memitem">
15663<div class="memproto">
15664<table class="mlabels">
15665 <tr>
15666 <td class="mlabels-left">
15667 <table class="memname">
15668 <tr>
15669 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> arm_compute::get_promoted_data_type </td>
15670 <td>(</td>
15671 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td>
15672 <td class="paramname"><em>dt</em></td><td>)</td>
15673 <td></td>
15674 </tr>
15675 </table>
15676 </td>
15677 <td class="mlabels-right">
15678<span class="mlabels"><span class="mlabel">inline</span></span> </td>
15679 </tr>
15680</table>
15681</div><div class="memdoc">
15682
15683<p>Return the promoted data type of a given data type. </p>
15684<dl class="section note"><dt>Note</dt><dd>If promoted data type is not supported an error will be thrown</dd></dl>
15685<dl class="params"><dt>Parameters</dt><dd>
15686 <table class="params">
15687 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td>Data type to get the promoted type of.</td></tr>
15688 </table>
15689 </dd>
15690</dl>
15691<dl class="section return"><dt>Returns</dt><dd>Promoted data type </dd></dl>
15692
Jenkinsb9abeae2018-11-22 11:58:08 +000015693<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00512">512</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000015694<div class="fragment"><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;{</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <span class="keywordflow">switch</span>(dt)</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="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; <span class="keywordflow">return</span> DataType::U16;</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; <span class="keywordflow">return</span> DataType::S16;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; <span class="keywordflow">return</span> DataType::U32;</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <span class="keywordflow">return</span> DataType::S32;</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Unsupported data type promotions!&quot;</span>);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Undefined data type!&quot;</span>);</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">return</span> DataType::UNKNOWN;</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000015695</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000015696<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
15697
Anthony Barbier8140e1e2017-12-14 23:48:46 +000015698</div>
15699</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015700<a id="a786b9d823a527bb1e30d38f4dbe52d4b"></a>
15701<h2 class="memtitle"><span class="permalink"><a href="#a786b9d823a527bb1e30d38f4dbe52d4b">&#9670;&nbsp;</a></span>get_target_from_device() <span class="overload">[1/2]</span></h2>
15702
Jenkinsb3a371b2018-05-23 11:36:53 +010015703<div class="memitem">
15704<div class="memproto">
15705 <table class="memname">
15706 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000015707 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> get_target_from_device </td>
Jenkinsb3a371b2018-05-23 11:36:53 +010015708 <td>(</td>
15709 <td class="paramname"></td><td>)</td>
15710 <td></td>
15711 </tr>
15712 </table>
15713</div><div class="memdoc">
15714
15715<p>Helper function to get the GPU target from GLES using GL_RENDERER enum. </p>
15716<dl class="section return"><dt>Returns</dt><dd>the GPU target </dd></dl>
15717
Jenkinsb9abeae2018-11-22 11:58:08 +000015718<p class="definition">Definition at line <a class="el" href="_g_c_helpers_8cpp_source.xhtml#l00028">28</a> of file <a class="el" href="_g_c_helpers_8cpp_source.xhtml">GCHelpers.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000015719<div class="fragment"><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;{</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">const</span> std::string device_name = reinterpret_cast&lt;const char *&gt;(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#a2ee378c6363791b2a733b2ba4ec6e846">glGetString</a>(GL_RENDERER));</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a0dc6fb54ac0bbc7bf512fe0ca7414076">get_target_from_name</a>(device_name);</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a0dc6fb54ac0bbc7bf512fe0ca7414076"><div class="ttname"><a href="namespacearm__compute.xhtml#a0dc6fb54ac0bbc7bf512fe0ca7414076">arm_compute::get_target_from_name</a></div><div class="ttdeci">GPUTarget get_target_from_name(const std::string &amp;device_name)</div><div class="ttdoc">Helper function to get the GPU target from a device name.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00127">GPUTarget.cpp:127</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015720<div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_a2ee378c6363791b2a733b2ba4ec6e846"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#a2ee378c6363791b2a733b2ba4ec6e846">glGetString</a></div><div class="ttdeci">const GLubyte *GL_APIENTRY glGetString(GLenum name)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00672">OpenGLES.cpp:672</a></div></div>
15721</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000015722<p class="reference">References <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00127">get_target_from_name()</a>, and <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00672">glGetString()</a>.</p>
15723
Jenkinsb3a371b2018-05-23 11:36:53 +010015724</div>
15725</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015726<a id="a281384aa081efe5819eedd6a7c2a429b"></a>
15727<h2 class="memtitle"><span class="permalink"><a href="#a281384aa081efe5819eedd6a7c2a429b">&#9670;&nbsp;</a></span>get_target_from_device() <span class="overload">[2/2]</span></h2>
15728
Anthony Barbier871448e2017-03-24 14:54:29 +000015729<div class="memitem">
15730<div class="memproto">
Anthony Barbier871448e2017-03-24 14:54:29 +000015731 <table class="memname">
15732 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000015733 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> get_target_from_device </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000015734 <td>(</td>
Jenkins52ba29e2018-08-29 15:32:11 +000015735 <td class="paramtype">const cl::Device &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010015736 <td class="paramname"><em>device</em></td><td>)</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000015737 <td></td>
Anthony Barbier871448e2017-03-24 14:54:29 +000015738 </tr>
15739 </table>
Anthony Barbier871448e2017-03-24 14:54:29 +000015740</div><div class="memdoc">
15741
Anthony Barbierdbdab852017-06-23 15:42:00 +010015742<p>Helper function to get the GPU target from CL device. </p>
15743<dl class="params"><dt>Parameters</dt><dd>
15744 <table class="params">
15745 <tr><td class="paramdir">[in]</td><td class="paramname">device</td><td>A CL device</td></tr>
15746 </table>
15747 </dd>
15748</dl>
15749<dl class="section return"><dt>Returns</dt><dd>the GPU target </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000015750
Jenkins514be652019-02-28 12:25:18 +000015751<p class="definition">Definition at line <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00127">127</a> of file <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
15752<div class="fragment"><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;{</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="comment">// Query device name size</span></div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; std::string device_name = device.getInfo&lt;CL_DEVICE_NAME&gt;();</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a0dc6fb54ac0bbc7bf512fe0ca7414076">get_target_from_name</a>(device_name);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a0dc6fb54ac0bbc7bf512fe0ca7414076"><div class="ttname"><a href="namespacearm__compute.xhtml#a0dc6fb54ac0bbc7bf512fe0ca7414076">arm_compute::get_target_from_name</a></div><div class="ttdeci">GPUTarget get_target_from_name(const std::string &amp;device_name)</div><div class="ttdoc">Helper function to get the GPU target from a device name.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00127">GPUTarget.cpp:127</a></div></div>
15753</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000015754<p class="reference">References <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00127">get_target_from_name()</a>.</p>
15755
Jenkins514be652019-02-28 12:25:18 +000015756<p class="reference">Referenced by <a class="el" href="_c_l_kernel_library_8cpp_source.xhtml#l01139">CLKernelLibrary::default_ndrange()</a>, <a class="el" href="_g_c_scheduler_8cpp_source.xhtml#l00055">GCScheduler::init()</a>, <a class="el" href="_c_l_scheduler_8cpp_source.xhtml#l00086">CLScheduler::init()</a>, and <a class="el" href="_i_c_l_kernel_8cpp_source.xhtml#l00120">ICLKernel::set_target()</a>.</p>
15757
Jenkinsb3a371b2018-05-23 11:36:53 +010015758</div>
15759</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015760<a id="a0dc6fb54ac0bbc7bf512fe0ca7414076"></a>
15761<h2 class="memtitle"><span class="permalink"><a href="#a0dc6fb54ac0bbc7bf512fe0ca7414076">&#9670;&nbsp;</a></span>get_target_from_name()</h2>
15762
Jenkinsb3a371b2018-05-23 11:36:53 +010015763<div class="memitem">
15764<div class="memproto">
15765 <table class="memname">
15766 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000015767 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> get_target_from_name </td>
Jenkinsb3a371b2018-05-23 11:36:53 +010015768 <td>(</td>
15769 <td class="paramtype">const std::string &amp;&#160;</td>
15770 <td class="paramname"><em>device_name</em></td><td>)</td>
15771 <td></td>
15772 </tr>
15773 </table>
15774</div><div class="memdoc">
15775
15776<p>Helper function to get the GPU target from a device name. </p>
15777<dl class="params"><dt>Parameters</dt><dd>
15778 <table class="params">
15779 <tr><td class="paramdir">[in]</td><td class="paramname">device_name</td><td>A device name</td></tr>
15780 </table>
15781 </dd>
15782</dl>
15783<dl class="section return"><dt>Returns</dt><dd>the GPU target </dd></dl>
15784
Jenkinsb9abeae2018-11-22 11:58:08 +000015785<p class="definition">Definition at line <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00127">127</a> of file <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml">GPUTarget.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000015786<div class="fragment"><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;{</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; std::regex mali_regex(R<span class="stringliteral">&quot;(Mali-(.*))&quot;);</span></div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="stringliteral"> std::smatch name_parts;</span></div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="stringliteral"> </span><span class="keyword">const</span> <span class="keywordtype">bool</span> found_mali = std::regex_search(device_name, name_parts, mali_regex);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">if</span>(!found_mali)</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; {</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <a class="code" href="_log_8h.xhtml#a14f4c3a00d20ad742642767c9449993e">ARM_COMPUTE_LOG_INFO_MSG_CORE</a>(<span class="stringliteral">&quot;Can&#39;t find valid Mali GPU. Target is set to default.&quot;</span>);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">return</span> GPUTarget::MIDGARD;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> target = name_parts.str(1)[0];</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keyword">const</span> std::string &amp;version = name_parts.str(1);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; std::regex future_regex(R<span class="stringliteral">&quot;(.*X)&quot;);</span></div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="stringliteral"> </span><span class="keyword">const</span> <span class="keywordtype">bool</span> is_future_bifrost = std::regex_search(version, future_regex);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordflow">if</span>(target == <span class="charliteral">&#39;G&#39;</span> || is_future_bifrost)</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; {</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">return</span> get_bifrost_target(version);</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; }</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(target == <span class="charliteral">&#39;T&#39;</span>)</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; {</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">return</span> get_midgard_target(version);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; }</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; {</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="_log_8h.xhtml#a14f4c3a00d20ad742642767c9449993e">ARM_COMPUTE_LOG_INFO_MSG_CORE</a>(<span class="stringliteral">&quot;Mali GPU unknown. Target is set to the default one. (BIFROST)&quot;</span>);</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">return</span> GPUTarget::BIFROST;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;}</div><div class="ttc" id="_log_8h_xhtml_a14f4c3a00d20ad742642767c9449993e"><div class="ttname"><a href="_log_8h.xhtml#a14f4c3a00d20ad742642767c9449993e">ARM_COMPUTE_LOG_INFO_MSG_CORE</a></div><div class="ttdeci">#define ARM_COMPUTE_LOG_INFO_MSG_CORE(msg)</div><div class="ttdoc">Log information level message to the core system logger.</div><div class="ttdef"><b>Definition:</b> <a href="_log_8h_source.xhtml#l00087">Log.h:87</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015787</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000015788<p class="reference">References <a class="el" href="_log_8h_source.xhtml#l00087">ARM_COMPUTE_LOG_INFO_MSG_CORE</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e">BIFROST</a>, and <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38">MIDGARD</a>.</p>
15789
15790<p class="reference">Referenced by <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00145">dot8_supported()</a>, <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00127">get_target_from_device()</a>, and <a class="el" href="tests_2validation_2_u_n_i_t_2_g_p_u_target_8cpp_source.xhtml#l00040">arm_compute::test::validation::TEST_CASE()</a>.</p>
15791
Jenkinsb3a371b2018-05-23 11:36:53 +010015792</div>
15793</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015794<a id="a9a9fa44b29bc17746a0b486626a76e0a"></a>
15795<h2 class="memtitle"><span class="permalink"><a href="#a9a9fa44b29bc17746a0b486626a76e0a">&#9670;&nbsp;</a></span>get_threads_hint()</h2>
15796
Jenkinsb3a371b2018-05-23 11:36:53 +010015797<div class="memitem">
15798<div class="memproto">
15799 <table class="memname">
15800 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000015801 <td class="memname">unsigned int get_threads_hint </td>
Jenkinsb3a371b2018-05-23 11:36:53 +010015802 <td>(</td>
15803 <td class="paramname"></td><td>)</td>
15804 <td></td>
15805 </tr>
15806 </table>
15807</div><div class="memdoc">
15808
15809<p>Some systems have both big and small cores, this fuction computes the minimum number of cores that are exactly the same on the system. </p>
15810<p>To maximize performance the library attempts to process workloads concurrently using as many threads as big cores are available on the system.</p>
15811<dl class="section return"><dt>Returns</dt><dd>The minumum number of common cores. </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000015812
Jenkins514be652019-02-28 12:25:18 +000015813<p class="definition">Definition at line <a class="el" href="_c_p_u_utils_8cpp_source.xhtml#l00408">408</a> of file <a class="el" href="_c_p_u_utils_8cpp_source.xhtml">CPUUtils.cpp</a>.</p>
15814<div class="fragment"><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;{</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> num_threads_hint = 1;</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;<span class="preprocessor">#ifndef BARE_METAL</span></div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; std::map&lt;std::string, unsigned int&gt; cpu_part_occurrence_map;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="comment">// CPU part regex</span></div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; regex_t cpu_part_rgx;</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; memset(&amp;cpu_part_rgx, 0, <span class="keyword">sizeof</span>(regex_t));</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordtype">int</span> ret_status = regcomp(&amp;cpu_part_rgx, R<span class="stringliteral">&quot;(.*CPU part.+/?\:[[:space:]]+([[:alnum:]]+).*)&quot;, REG_EXTENDED);</span></div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;<span class="stringliteral"> <a class="code" href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a>(ret_status);</span></div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;<span class="stringliteral"> <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(ret_status != 0, </span><span class="stringliteral">&quot;Regex compilation failed.&quot;</span>);</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="comment">// Read cpuinfo and get occurrence of each core</span></div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; std::ifstream cpuinfo;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; cpuinfo.open(<span class="stringliteral">&quot;/proc/cpuinfo&quot;</span>, std::ios::in);</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keywordflow">if</span>(cpuinfo.is_open())</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; {</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; std::string line;</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordflow">while</span>(<span class="keywordtype">bool</span>(getline(cpuinfo, line)))</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; {</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; regmatch_t match[2];</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; ret_status = regexec(&amp;cpu_part_rgx, line.c_str(), 2, match, 0);</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <span class="keywordflow">if</span>(ret_status == 0)</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; {</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; std::string cpu_part = line.substr(match[1].rm_so, (match[1].rm_eo - match[1].rm_so));</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="keywordflow">if</span>(cpu_part_occurrence_map.find(cpu_part) != cpu_part_occurrence_map.end())</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; {</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; cpu_part_occurrence_map[cpu_part]++;</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; }</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; {</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; cpu_part_occurrence_map[cpu_part] = 1;</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; }</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; }</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; }</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; }</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; regfree(&amp;cpu_part_rgx);</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="comment">// Get min number of threads</span></div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="keyword">auto</span> min_common_cores = std::min_element(cpu_part_occurrence_map.begin(), cpu_part_occurrence_map.end(),</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; [](<span class="keyword">const</span> std::pair&lt;std::string, unsigned int&gt; &amp;p1, <span class="keyword">const</span> std::pair&lt;std::string, unsigned int&gt; &amp;p2)</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; {</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <span class="keywordflow">return</span> p1.second &lt; p2.second;</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; });</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="comment">// Set thread hint</span></div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; num_threads_hint = cpu_part_occurrence_map.empty() ? std::thread::hardware_concurrency() : min_common_cores-&gt;second;</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* BARE_METAL */</span><span class="preprocessor"></span></div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <span class="keywordflow">return</span> num_threads_hint;</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a6dc630a6ae9cc063b3924bcea8dee9d6"><div class="ttname"><a href="_error_8h.xhtml#a6dc630a6ae9cc063b3924bcea8dee9d6">ARM_COMPUTE_UNUSED</a></div><div class="ttdeci">#define ARM_COMPUTE_UNUSED(...)</div><div class="ttdoc">To avoid unused variables warnings.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00160">Error.h:160</a></div></div>
15815<div class="ttc" id="_error_8h_xhtml_a5bbdcf574d3f5e412fa6a1117911e67b"><div class="ttname"><a href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_MSG(cond,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00328">Error.h:328</a></div></div>
15816</div><!-- fragment -->
15817<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, and <a class="el" href="_error_8h_source.xhtml#l00160">ARM_COMPUTE_UNUSED</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000015818
15819<p class="reference">Referenced by <a class="el" href="_i_scheduler_8cpp_source.xhtml#l00031">IScheduler::IScheduler()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000015820
Anthony Barbier871448e2017-03-24 14:54:29 +000015821</div>
15822</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015823<a id="aa9ed41c417478e5b1e346de1899137b1"></a>
15824<h2 class="memtitle"><span class="permalink"><a href="#aa9ed41c417478e5b1e346de1899137b1">&#9670;&nbsp;</a></span>get_underlying_cl_type_from_data_type()</h2>
15825
Kaizen8938bd32017-09-28 14:38:23 +010015826<div class="memitem">
15827<div class="memproto">
15828 <table class="memname">
15829 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000015830 <td class="memname">std::string get_underlying_cl_type_from_data_type </td>
Kaizen8938bd32017-09-28 14:38:23 +010015831 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000015832 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010015833 <td class="paramname"><em>dt</em></td><td>)</td>
15834 <td></td>
15835 </tr>
15836 </table>
15837</div><div class="memdoc">
15838
15839<p>Translates fixed point tensor data type to the underlying OpenCL type. </p>
15840<dl class="params"><dt>Parameters</dt><dd>
15841 <table class="params">
15842 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> to be translated to OpenCL type.</td></tr>
15843 </table>
15844 </dd>
15845</dl>
15846<dl class="section return"><dt>Returns</dt><dd>The string specifying the underlying OpenCL type to be used. </dd></dl>
15847
Jenkins514be652019-02-28 12:25:18 +000015848<p class="definition">Definition at line <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00122">122</a> of file <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
15849<div class="fragment"><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;{</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a545eeda2eaa3f5a54345ce8169e21184">get_cl_type_from_data_type</a>(dt);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a545eeda2eaa3f5a54345ce8169e21184"><div class="ttname"><a href="namespacearm__compute.xhtml#a545eeda2eaa3f5a54345ce8169e21184">arm_compute::get_cl_type_from_data_type</a></div><div class="ttdeci">std::string get_cl_type_from_data_type(const DataType &amp;dt)</div><div class="ttdoc">Translates a tensor data type to the appropriate OpenCL type.</div><div class="ttdef"><b>Definition:</b> <a href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00035">CLHelpers.cpp:35</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015850</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000015851<p class="reference">References <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00035">get_cl_type_from_data_type()</a>.</p>
15852
15853<p class="reference">Referenced by <a class="el" href="_c_l_fill_border_kernel_8cpp_source.xhtml#l00062">CLFillBorderKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate2_tensors_kernel_8cpp_source.xhtml#l00097">CLWidthConcatenate2TensorsKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate_layer_kernel_8cpp_source.xhtml#l00092">CLWidthConcatenateLayerKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate4_tensors_kernel_8cpp_source.xhtml#l00115">CLWidthConcatenate4TensorsKernel::configure()</a>, <a class="el" href="_c_l_stack_layer_kernel_8cpp_source.xhtml#l00084">CLStackLayerKernel::configure()</a>, and <a class="el" href="_c_l_depth_concatenate_layer_kernel_8cpp_source.xhtml#l00101">CLDepthConcatenateLayerKernel::configure()</a>.</p>
15854
Kaizen8938bd32017-09-28 14:38:23 +010015855</div>
15856</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015857<a id="a1da498e9b2c2d24883087f62c6bbe75d"></a>
15858<h2 class="memtitle"><span class="permalink"><a href="#a1da498e9b2c2d24883087f62c6bbe75d">&#9670;&nbsp;</a></span>gpu_target_is_in() <span class="overload">[1/2]</span></h2>
15859
Jenkinsb3a371b2018-05-23 11:36:53 +010015860<div class="memitem">
15861<div class="memproto">
15862 <table class="memname">
15863 <tr>
15864 <td class="memname">bool arm_compute::gpu_target_is_in </td>
15865 <td>(</td>
15866 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td>
15867 <td class="paramname"><em>target_to_check</em>, </td>
15868 </tr>
15869 <tr>
15870 <td class="paramkey"></td>
15871 <td></td>
15872 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td>
15873 <td class="paramname"><em>target</em>, </td>
15874 </tr>
15875 <tr>
15876 <td class="paramkey"></td>
15877 <td></td>
15878 <td class="paramtype">Args...&#160;</td>
15879 <td class="paramname"><em>targets</em>&#160;</td>
15880 </tr>
15881 <tr>
15882 <td></td>
15883 <td>)</td>
15884 <td></td><td></td>
15885 </tr>
15886 </table>
15887</div><div class="memdoc">
15888
15889<p>Helper function to check whether a gpu target is equal to the provided targets. </p>
15890<dl class="params"><dt>Parameters</dt><dd>
15891 <table class="params">
15892 <tr><td class="paramdir">[in]</td><td class="paramname">target_to_check</td><td>gpu target to check </td></tr>
15893 <tr><td class="paramdir">[in]</td><td class="paramname">target</td><td>First target to compare against </td></tr>
15894 <tr><td class="paramdir">[in]</td><td class="paramname">targets</td><td>(Optional) Additional targets to compare with</td></tr>
15895 </table>
15896 </dd>
15897</dl>
15898<dl class="section return"><dt>Returns</dt><dd>True if the target is equal with at least one of the targets. </dd></dl>
15899
Jenkinsb9abeae2018-11-22 11:58:08 +000015900<p class="definition">Definition at line <a class="el" href="_g_p_u_target_8h_source.xhtml#l00094">94</a> of file <a class="el" href="_g_p_u_target_8h_source.xhtml">GPUTarget.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000015901<div class="fragment"><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;{</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span> (target_to_check == target) | <a class="code" href="namespacearm__compute.xhtml#aab39ce9a593f7e12a4bf4cb47272b917">gpu_target_is_in</a>(target_to_check, targets...);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_aab39ce9a593f7e12a4bf4cb47272b917"><div class="ttname"><a href="namespacearm__compute.xhtml#aab39ce9a593f7e12a4bf4cb47272b917">arm_compute::gpu_target_is_in</a></div><div class="ttdeci">bool gpu_target_is_in(GPUTarget target_to_check, GPUTarget target)</div><div class="ttdoc">Variant of gpu_target_is_in for comparing two targets.</div><div class="ttdef"><b>Definition:</b> <a href="_g_p_u_target_8h_source.xhtml#l00100">GPUTarget.h:100</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +010015902</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000015903<p class="reference">Referenced by <a class="el" href="tests_2validation_2_u_n_i_t_2_g_p_u_target_8cpp_source.xhtml#l00058">arm_compute::test::validation::TEST_CASE()</a>.</p>
15904
Jenkinsb3a371b2018-05-23 11:36:53 +010015905</div>
15906</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015907<a id="aab39ce9a593f7e12a4bf4cb47272b917"></a>
15908<h2 class="memtitle"><span class="permalink"><a href="#aab39ce9a593f7e12a4bf4cb47272b917">&#9670;&nbsp;</a></span>gpu_target_is_in() <span class="overload">[2/2]</span></h2>
15909
Jenkinsb3a371b2018-05-23 11:36:53 +010015910<div class="memitem">
15911<div class="memproto">
15912<table class="mlabels">
15913 <tr>
15914 <td class="mlabels-left">
15915 <table class="memname">
15916 <tr>
15917 <td class="memname">bool arm_compute::gpu_target_is_in </td>
15918 <td>(</td>
15919 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td>
15920 <td class="paramname"><em>target_to_check</em>, </td>
15921 </tr>
15922 <tr>
15923 <td class="paramkey"></td>
15924 <td></td>
15925 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td>
15926 <td class="paramname"><em>target</em>&#160;</td>
15927 </tr>
15928 <tr>
15929 <td></td>
15930 <td>)</td>
15931 <td></td><td></td>
15932 </tr>
15933 </table>
15934 </td>
15935 <td class="mlabels-right">
15936<span class="mlabels"><span class="mlabel">inline</span></span> </td>
15937 </tr>
15938</table>
15939</div><div class="memdoc">
15940
15941<p>Variant of gpu_target_is_in for comparing two targets. </p>
15942
Jenkinsb9abeae2018-11-22 11:58:08 +000015943<p class="definition">Definition at line <a class="el" href="_g_p_u_target_8h_source.xhtml#l00100">100</a> of file <a class="el" href="_g_p_u_target_8h_source.xhtml">GPUTarget.h</a>.</p>
15944<div class="fragment"><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;{</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">return</span> target_to_check == target;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;}</div></div><!-- fragment -->
Jenkinsb3a371b2018-05-23 11:36:53 +010015945</div>
15946</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015947<a id="aa2f22cc01532e0236e438324310fdb94"></a>
15948<h2 class="memtitle"><span class="permalink"><a href="#aa2f22cc01532e0236e438324310fdb94">&#9670;&nbsp;</a></span>has_format_horizontal_subsampling()</h2>
15949
Anthony Barbier06ea0482018-02-22 15:45:35 +000015950<div class="memitem">
15951<div class="memproto">
15952<table class="mlabels">
15953 <tr>
15954 <td class="mlabels-left">
15955 <table class="memname">
15956 <tr>
15957 <td class="memname">bool arm_compute::has_format_horizontal_subsampling </td>
15958 <td>(</td>
15959 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td>
15960 <td class="paramname"><em>format</em></td><td>)</td>
15961 <td></td>
15962 </tr>
15963 </table>
15964 </td>
15965 <td class="mlabels-right">
15966<span class="mlabels"><span class="mlabel">inline</span></span> </td>
15967 </tr>
15968</table>
15969</div><div class="memdoc">
15970
15971<p>Return true if the given format has horizontal subsampling. </p>
15972<dl class="params"><dt>Parameters</dt><dd>
15973 <table class="params">
15974 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>Format to determine subsampling.</td></tr>
15975 </table>
15976 </dd>
15977</dl>
15978<dl class="section return"><dt>Returns</dt><dd>True if the format can be subsampled horizontaly. </dd></dl>
15979
Jenkinsb9abeae2018-11-22 11:58:08 +000015980<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00542">542</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000015981<div class="fragment"><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160;{</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <span class="keywordflow">return</span> (format == Format::YUYV422 || format == Format::UYVY422 || format == Format::NV12 || format == Format::NV21 || format == Format::IYUV || format == Format::UV88) ? true : <span class="keyword">false</span>;</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000015982<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
Anthony Barbier06ea0482018-02-22 15:45:35 +000015983
Jenkinsb9abeae2018-11-22 11:58:08 +000015984<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00647">adjust_odd_shape()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00674">calculate_subsampled_shape()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000015985
Anthony Barbier06ea0482018-02-22 15:45:35 +000015986</div>
15987</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000015988<a id="a95358b677c5c17f5cc1e369e4a27e2c2"></a>
15989<h2 class="memtitle"><span class="permalink"><a href="#a95358b677c5c17f5cc1e369e4a27e2c2">&#9670;&nbsp;</a></span>has_format_vertical_subsampling()</h2>
15990
Anthony Barbier06ea0482018-02-22 15:45:35 +000015991<div class="memitem">
15992<div class="memproto">
15993<table class="mlabels">
15994 <tr>
15995 <td class="mlabels-left">
15996 <table class="memname">
15997 <tr>
15998 <td class="memname">bool arm_compute::has_format_vertical_subsampling </td>
15999 <td>(</td>
16000 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td>
16001 <td class="paramname"><em>format</em></td><td>)</td>
16002 <td></td>
16003 </tr>
16004 </table>
16005 </td>
16006 <td class="mlabels-right">
16007<span class="mlabels"><span class="mlabel">inline</span></span> </td>
16008 </tr>
16009</table>
16010</div><div class="memdoc">
16011
16012<p>Return true if the given format has vertical subsampling. </p>
16013<dl class="params"><dt>Parameters</dt><dd>
16014 <table class="params">
16015 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>Format to determine subsampling.</td></tr>
16016 </table>
16017 </dd>
16018</dl>
16019<dl class="section return"><dt>Returns</dt><dd>True if the format can be subsampled verticaly. </dd></dl>
16020
Jenkinsb9abeae2018-11-22 11:58:08 +000016021<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00553">553</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016022<div class="fragment"><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;{</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; <span class="keywordflow">return</span> (format == Format::NV12 || format == Format::NV21 || format == Format::IYUV || format == Format::UV88) ? true : <span class="keyword">false</span>;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000016023<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>.</p>
Anthony Barbier06ea0482018-02-22 15:45:35 +000016024
Jenkinsb9abeae2018-11-22 11:58:08 +000016025<p class="reference">Referenced by <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00647">adjust_odd_shape()</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00674">calculate_subsampled_shape()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016026
Jenkinsb3a371b2018-05-23 11:36:53 +010016027</div>
16028</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016029<a id="a69c96727fe92b1ad1b07da3117c73c76"></a>
16030<h2 class="memtitle"><span class="permalink"><a href="#a69c96727fe92b1ad1b07da3117c73c76">&#9670;&nbsp;</a></span>IFloatFlip()</h2>
16031
16032<div class="memitem">
16033<div class="memproto">
16034<table class="mlabels">
16035 <tr>
16036 <td class="mlabels-left">
16037 <table class="memname">
16038 <tr>
16039 <td class="memname">float arm_compute::IFloatFlip </td>
16040 <td>(</td>
16041 <td class="paramtype">int32_t&#160;</td>
16042 <td class="paramname"><em>val</em></td><td>)</td>
16043 <td></td>
16044 </tr>
16045 </table>
16046 </td>
16047 <td class="mlabels-right">
16048<span class="mlabels"><span class="mlabel">inline</span></span> </td>
16049 </tr>
16050</table>
16051</div><div class="memdoc">
16052
16053<p class="definition">Definition at line <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00047">47</a> of file <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml">CLMinMaxLocationKernel.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000016054<div class="fragment"><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;{</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; static_assert(<span class="keyword">sizeof</span>(<span class="keywordtype">float</span>) == <span class="keyword">sizeof</span>(int32_t), <span class="stringliteral">&quot;Float must be same size as int32_t&quot;</span>);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordtype">float</span> flt_val = 0.f;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; val = (val &gt;= 0) ? val : val ^ 0x7FFFFFFF;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; memcpy(&amp;flt_val, &amp;val, <span class="keyword">sizeof</span>(<span class="keywordtype">float</span>));</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">return</span> flt_val;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000016055<p class="reference">Referenced by <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00124">CLMinMaxKernel::run()</a>.</p>
16056
Jenkinsb9abeae2018-11-22 11:58:08 +000016057</div>
16058</div>
16059<a id="a053a24bb37402fa4b4d8d5963976ba17"></a>
16060<h2 class="memtitle"><span class="permalink"><a href="#a053a24bb37402fa4b4d8d5963976ba17">&#9670;&nbsp;</a></span>ignore_unused()</h2>
16061
Jenkinsb3a371b2018-05-23 11:36:53 +010016062<div class="memitem">
16063<div class="memproto">
16064<table class="mlabels">
16065 <tr>
16066 <td class="mlabels-left">
16067 <table class="memname">
16068 <tr>
16069 <td class="memname">void arm_compute::ignore_unused </td>
16070 <td>(</td>
16071 <td class="paramtype">T &amp;&amp;&#160;</td>
16072 <td class="paramname"><em>...</em></td><td>)</td>
16073 <td></td>
16074 </tr>
16075 </table>
16076 </td>
16077 <td class="mlabels-right">
16078<span class="mlabels"><span class="mlabel">inline</span></span> </td>
16079 </tr>
16080</table>
16081</div><div class="memdoc">
16082
16083<p>Ignores unused arguments. </p>
16084<dl class="tparams"><dt>Template Parameters</dt><dd>
16085 <table class="tparams">
16086 <tr><td class="paramname">T</td><td>Argument types</td></tr>
16087 </table>
16088 </dd>
16089</dl>
16090<dl class="params"><dt>Parameters</dt><dd>
16091 <table class="params">
16092 <tr><td class="paramdir">[in]</td><td class="paramname">...</td><td>Ignored arguments </td></tr>
16093 </table>
16094 </dd>
16095</dl>
16096
Jenkinsb9abeae2018-11-22 11:58:08 +000016097<p class="definition">Definition at line <a class="el" href="_error_8h_source.xhtml#l00039">39</a> of file <a class="el" href="_error_8h_source.xhtml">Error.h</a>.</p>
Jenkinsb3a371b2018-05-23 11:36:53 +010016098<div class="fragment"><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;{</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;}</div></div><!-- fragment -->
Anthony Barbier06ea0482018-02-22 15:45:35 +000016099</div>
16100</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016101<a id="ad34f2150f1c9f8a3ecb7298162124e5d"></a>
16102<h2 class="memtitle"><span class="permalink"><a href="#ad34f2150f1c9f8a3ecb7298162124e5d">&#9670;&nbsp;</a></span>index2coords()</h2>
16103
Kaizen8938bd32017-09-28 14:38:23 +010016104<div class="memitem">
16105<div class="memproto">
16106<table class="mlabels">
16107 <tr>
16108 <td class="mlabels-left">
16109 <table class="memname">
16110 <tr>
16111 <td class="memname"><a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> index2coords </td>
16112 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016113 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010016114 <td class="paramname"><em>shape</em>, </td>
16115 </tr>
16116 <tr>
16117 <td class="paramkey"></td>
16118 <td></td>
16119 <td class="paramtype">int&#160;</td>
16120 <td class="paramname"><em>index</em>&#160;</td>
16121 </tr>
16122 <tr>
16123 <td></td>
16124 <td>)</td>
16125 <td></td><td></td>
16126 </tr>
16127 </table>
16128 </td>
16129 <td class="mlabels-right">
16130<span class="mlabels"><span class="mlabel">inline</span></span> </td>
16131 </tr>
16132</table>
16133</div><div class="memdoc">
16134
16135<p>Convert a linear index into n-dimensional coordinates. </p>
16136<dl class="params"><dt>Parameters</dt><dd>
16137 <table class="params">
16138 <tr><td class="paramdir">[in]</td><td class="paramname">shape</td><td>Shape of the n-dimensional tensor. </td></tr>
16139 <tr><td class="paramdir">[in]</td><td class="paramname">index</td><td>Linear index specifying the i-th element.</td></tr>
16140 </table>
16141 </dd>
16142</dl>
16143<dl class="section return"><dt>Returns</dt><dd>n-dimensional coordinates. </dd></dl>
16144
Jenkinsb9abeae2018-11-22 11:58:08 +000016145<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00289">289</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016146<div class="fragment"><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;{</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordtype">int</span> num_elements = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>.total_size();</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(index &lt; 0 || index &gt;= num_elements, <span class="stringliteral">&quot;Index has to be in [0, num_elements]!&quot;</span>);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(num_elements == 0, <span class="stringliteral">&quot;Cannot create coordinate from empty shape!&quot;</span>);</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; Coordinates coord{ 0 };</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">int</span> d = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>.num_dimensions() - 1; d &gt;= 0; --d)</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; {</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; num_elements /= <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>[d];</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; coord.set(d, index / num_elements);</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; index %= num_elements;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; }</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="keywordflow">return</span> coord;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">AbsoluteDifference.cpp:97</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000016147<div class="ttc" id="_error_8h_xhtml_a5bbdcf574d3f5e412fa6a1117911e67b"><div class="ttname"><a href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_MSG(cond,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00328">Error.h:328</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010016148</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000016149<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, and <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">arm_compute::test::validation::shape</a>.</p>
16150
16151<p class="reference">Referenced by <a class="el" href="reference_2_convert_fully_connected_weights_8cpp_source.xhtml#l00035">arm_compute::test::validation::reference::convert_fully_connected_weights()</a>, and <a class="el" href="_n_e_g_e_m_m_interleaved_wrapper_8cpp_source.xhtml#l00191">NEGEMMInterleavedWrapper::prepare()</a>.</p>
16152
Kaizen8938bd32017-09-28 14:38:23 +010016153</div>
16154</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016155<a id="aa7510e92de273e0457ce12218f712ad4"></a>
16156<h2 class="memtitle"><span class="permalink"><a href="#aa7510e92de273e0457ce12218f712ad4">&#9670;&nbsp;</a></span>intersect_valid_regions()</h2>
16157
Anthony Barbier871448e2017-03-24 14:54:29 +000016158<div class="memitem">
16159<div class="memproto">
16160 <table class="memname">
16161 <tr>
16162 <td class="memname"><a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> arm_compute::intersect_valid_regions </td>
16163 <td>(</td>
Anthony Barbierf45d5a92018-01-24 16:23:15 +000016164 <td class="paramtype">const Ts &amp;...&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000016165 <td class="paramname"><em>regions</em></td><td>)</td>
16166 <td></td>
16167 </tr>
16168 </table>
16169</div><div class="memdoc">
16170
16171<p>Intersect multiple valid regions. </p>
16172<dl class="params"><dt>Parameters</dt><dd>
16173 <table class="params">
16174 <tr><td class="paramdir">[in]</td><td class="paramname">regions</td><td>Valid regions.</td></tr>
16175 </table>
16176 </dd>
16177</dl>
16178<dl class="section return"><dt>Returns</dt><dd>Intersection of all regions. </dd></dl>
16179
Jenkins514be652019-02-28 12:25:18 +000016180<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00503">503</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
16181<div class="fragment"><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;{</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <span class="keyword">auto</span> intersect = [](<span class="keyword">const</span> ValidRegion &amp; r1, <span class="keyword">const</span> ValidRegion &amp; r2) -&gt; ValidRegion</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; {</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; ValidRegion region;</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> d = 0; d &lt; std::min(r1.anchor.num_dimensions(), r2.anchor.num_dimensions()); ++d)</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; {</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; region.anchor.set(d, std::max(r1.anchor[d], r2.anchor[d]));</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; }</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> d = 0; d &lt; std::min(r1.shape.num_dimensions(), r2.shape.num_dimensions()); ++d)</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; region.shape.set(d, std::min(r1.shape[d], r2.shape[d]));</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; }</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="keywordflow">return</span> region;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; };</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160;</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1utility.xhtml#a043270c1f50c73bf9f91fcc4570ccf0c">utility::foldl</a>(intersect, regions...);</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1utility_xhtml_a043270c1f50c73bf9f91fcc4570ccf0c"><div class="ttname"><a href="namespacearm__compute_1_1utility.xhtml#a043270c1f50c73bf9f91fcc4570ccf0c">arm_compute::utility::foldl</a></div><div class="ttdeci">T &amp;&amp; foldl(F &amp;&amp;, T &amp;&amp;value)</div><div class="ttdoc">Base case of foldl.</div><div class="ttdef"><b>Definition:</b> <a href="_utility_8h_source.xhtml#l00115">Utility.h:115</a></div></div>
16182</div><!-- fragment -->
16183<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00300">ValidRegion::anchor</a>, <a class="el" href="_utility_8h_source.xhtml#l00115">arm_compute::utility::foldl()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00078">TensorShape::set()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00301">ValidRegion::shape</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000016184
16185<p class="reference">Referenced by <a class="el" href="_c_l_bitwise_and_kernel_8cpp_source.xhtml#l00040">CLBitwiseAndKernel::configure()</a>, <a class="el" href="_c_l_bitwise_xor_kernel_8cpp_source.xhtml#l00041">CLBitwiseXorKernel::configure()</a>, <a class="el" href="_c_l_bitwise_or_kernel_8cpp_source.xhtml#l00041">CLBitwiseOrKernel::configure()</a>, <a class="el" href="_g_c_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00047">GCPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_absolute_difference_kernel_8cpp_source.xhtml#l00047">CLAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_g_c_absolute_difference_kernel_8cpp_source.xhtml#l00047">GCAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_bitwise_xor_kernel_8cpp_source.xhtml#l00057">NEBitwiseXorKernel::configure()</a>, <a class="el" href="_c_l_magnitude_phase_kernel_8cpp_source.xhtml#l00046">CLMagnitudePhaseKernel::configure()</a>, <a class="el" href="_n_e_bitwise_and_kernel_8cpp_source.xhtml#l00061">NEBitwiseAndKernel::configure()</a>, <a class="el" href="_n_e_bitwise_or_kernel_8cpp_source.xhtml#l00057">NEBitwiseOrKernel::configure()</a>, <a class="el" href="_c_l_channel_combine_kernel_8cpp_source.xhtml#l00049">CLChannelCombineKernel::configure()</a>, <a class="el" href="_n_e_absolute_difference_kernel_8cpp_source.xhtml#l00133">NEAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_magnitude_phase_kernel_8cpp_source.xhtml#l00250">NEMagnitudePhaseKernel&lt; mag_type, phase_type &gt;::configure()</a>, <a class="el" href="_n_e_channel_combine_kernel_8cpp_source.xhtml#l00052">NEChannelCombineKernel::configure()</a>, <a class="el" href="_c_l_harris_corners_kernel_8cpp_source.xhtml#l00054">CLHarrisScoreKernel::configure()</a>, <a class="el" href="_c_l_color_convert_kernel_8cpp_source.xhtml#l00130">CLColorConvertKernel::configure()</a>, <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00145">NEColorConvertKernel::configure()</a>, <a class="el" href="_n_e_harris_corners_kernel_8cpp_source.xhtml#l00736">NEHarrisScoreKernel&lt; block_size &gt;::configure()</a>, and <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00123">CLLKTrackerStage0Kernel::configure()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016186
Anthony Barbierdbdab852017-06-23 15:42:00 +010016187</div>
16188</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016189<a id="af5982a092e9eb743fce2d6392bdd8897"></a>
16190<h2 class="memtitle"><span class="permalink"><a href="#af5982a092e9eb743fce2d6392bdd8897">&#9670;&nbsp;</a></span>is_data_type_float()</h2>
16191
Anthony Barbier871448e2017-03-24 14:54:29 +000016192<div class="memitem">
16193<div class="memproto">
16194<table class="mlabels">
16195 <tr>
16196 <td class="mlabels-left">
16197 <table class="memname">
16198 <tr>
16199 <td class="memname">bool arm_compute::is_data_type_float </td>
16200 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016201 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000016202 <td class="paramname"><em>dt</em></td><td>)</td>
16203 <td></td>
16204 </tr>
16205 </table>
16206 </td>
16207 <td class="mlabels-right">
16208<span class="mlabels"><span class="mlabel">inline</span></span> </td>
16209 </tr>
16210</table>
16211</div><div class="memdoc">
16212
Anthony Barbierdbdab852017-06-23 15:42:00 +010016213<p>Check if a given data type is of floating point type. </p>
16214<dl class="params"><dt>Parameters</dt><dd>
16215 <table class="params">
16216 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td>Input data type.</td></tr>
16217 </table>
16218 </dd>
16219</dl>
16220<dl class="section return"><dt>Returns</dt><dd>True if data type is of floating point type, else false. </dd></dl>
16221
Jenkins514be652019-02-28 12:25:18 +000016222<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00977">977</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
16223<div class="fragment"><div class="line"><a name="l00978"></a><span class="lineno"> 978</span>&#160;{</div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>&#160; <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160; {</div><div class="line"><a name="l00981"></a><span class="lineno"> 981</span>&#160; <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160; <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>&#160; }</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000016224<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>.</p>
16225
Jenkins514be652019-02-28 12:25:18 +000016226<p class="reference">Referenced by <a class="el" href="_c_l_depth_convert_layer_kernel_8cpp_source.xhtml#l00073">CLDepthConvertLayerKernel::configure()</a>, <a class="el" href="_c_l_mean_std_dev_8cpp_source.xhtml#l00067">CLMeanStdDev::configure()</a>, <a class="el" href="_c_l_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00120">CLPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00263">CLGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00219">CLLogits1DMaxShiftExpSumKernel::configure()</a>, <a class="el" href="_n_e_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00319">NEDepthwiseConvolutionLayer3x3Kernel::is_optimized_execution_possible()</a>, and <a class="el" href="_c_l_mean_std_dev_8cpp_source.xhtml#l00049">CLMeanStdDev::validate()</a>.</p>
16227
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016228</div>
16229</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016230<a id="a0bee325b210f81bb89fe1f9e15badf9c"></a>
16231<h2 class="memtitle"><span class="permalink"><a href="#a0bee325b210f81bb89fe1f9e15badf9c">&#9670;&nbsp;</a></span>is_data_type_quantized()</h2>
16232
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016233<div class="memitem">
16234<div class="memproto">
16235<table class="mlabels">
16236 <tr>
16237 <td class="mlabels-left">
16238 <table class="memname">
16239 <tr>
16240 <td class="memname">bool arm_compute::is_data_type_quantized </td>
16241 <td>(</td>
16242 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td>
16243 <td class="paramname"><em>dt</em></td><td>)</td>
16244 <td></td>
16245 </tr>
16246 </table>
16247 </td>
16248 <td class="mlabels-right">
16249<span class="mlabels"><span class="mlabel">inline</span></span> </td>
16250 </tr>
16251</table>
16252</div><div class="memdoc">
16253
16254<p>Check if a given data type is of quantized type. </p>
16255<dl class="section note"><dt>Note</dt><dd>Quantized is considered a super-set of fixed-point and asymmetric data types.</dd></dl>
16256<dl class="params"><dt>Parameters</dt><dd>
16257 <table class="params">
16258 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td>Input data type.</td></tr>
16259 </table>
16260 </dd>
16261</dl>
16262<dl class="section return"><dt>Returns</dt><dd>True if data type is of quantized type, else false. </dd></dl>
16263
Jenkins514be652019-02-28 12:25:18 +000016264<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00997">997</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
16265<div class="fragment"><div class="line"><a name="l00998"></a><span class="lineno"> 998</span>&#160;{</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160; <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160; {</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160; <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160; }</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000016266<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>.</p>
16267
Jenkins514be652019-02-28 12:25:18 +000016268<p class="reference">Referenced by <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00098">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_reduction_operation_kernel_8cpp_source.xhtml#l00139">CLReductionOperationKernel::configure()</a>, <a class="el" href="_c_l_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00120">CLPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_reduction_operation_8cpp_source.xhtml#l00129">CLReductionOperation::configure()</a>, <a class="el" href="reference_2_depth_convert_layer_8cpp_source.xhtml#l00042">arm_compute::test::validation::reference::depth_convert()</a>, <a class="el" href="_n_e_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00319">NEDepthwiseConvolutionLayer3x3Kernel::is_optimized_execution_possible()</a>, <a class="el" href="_c_l_reduction_operation_kernel_8cpp_source.xhtml#l00247">CLReductionOperationKernel::run()</a>, and <a class="el" href="_c_l_reduction_operation_8cpp_source.xhtml#l00063">CLReductionOperation::validate()</a>.</p>
16269
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016270</div>
16271</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016272<a id="a14f46283f316e7f0fad301d5c1507e9f"></a>
16273<h2 class="memtitle"><span class="permalink"><a href="#a14f46283f316e7f0fad301d5c1507e9f">&#9670;&nbsp;</a></span>is_data_type_quantized_asymmetric()</h2>
16274
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016275<div class="memitem">
16276<div class="memproto">
16277<table class="mlabels">
16278 <tr>
16279 <td class="mlabels-left">
16280 <table class="memname">
16281 <tr>
16282 <td class="memname">bool arm_compute::is_data_type_quantized_asymmetric </td>
16283 <td>(</td>
16284 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td>
16285 <td class="paramname"><em>dt</em></td><td>)</td>
16286 <td></td>
16287 </tr>
16288 </table>
16289 </td>
16290 <td class="mlabels-right">
16291<span class="mlabels"><span class="mlabel">inline</span></span> </td>
16292 </tr>
16293</table>
16294</div><div class="memdoc">
16295
16296<p>Check if a given data type is of asymmetric quantized type. </p>
16297<dl class="params"><dt>Parameters</dt><dd>
16298 <table class="params">
16299 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td>Input data type.</td></tr>
16300 </table>
16301 </dd>
16302</dl>
16303<dl class="section return"><dt>Returns</dt><dd>True if data type is of symmetric quantized type, else false. </dd></dl>
16304
Jenkins514be652019-02-28 12:25:18 +000016305<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l01014">1014</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
16306<div class="fragment"><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160;{</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160; <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160; {</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160; <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160; }</div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000016307<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016308
Jenkins514be652019-02-28 12:25:18 +000016309<p class="reference">Referenced by <a class="el" href="_graph_builder_8cpp_source.xhtml#l00190">GraphBuilder::add_convolution_node()</a>, <a class="el" href="_graph_builder_8cpp_source.xhtml#l00246">GraphBuilder::add_deconvolution_node()</a>, <a class="el" href="_graph_builder_8cpp_source.xhtml#l00313">GraphBuilder::add_depthwise_convolution_node()</a>, <a class="el" href="_graph_builder_8cpp_source.xhtml#l00407">GraphBuilder::add_fully_connected_layer()</a>, <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00161">CLScaleKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_8cpp_source.xhtml#l00033">CLPoolingLayer::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel_8cpp_source.xhtml#l00209">CLDepthwiseConvolutionLayer3x3NCHWKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00168">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_vector_multiply_kernel_8cpp_source.xhtml#l00083">CLGEMMMatrixVectorMultiplyKernel::configure()</a>, <a class="el" href="_n_e_pooling_layer_8cpp_source.xhtml#l00038">NEPoolingLayer::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_c_l_comparison_kernel_8cpp_source.xhtml#l00113">CLComparisonKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00185">CLPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_8cpp_source.xhtml#l00040">CLDirectConvolutionLayer::configure()</a>, <a class="el" href="_c_l_width_concatenate2_tensors_kernel_8cpp_source.xhtml#l00097">CLWidthConcatenate2TensorsKernel::configure()</a>, <a class="el" href="_c_l_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00120">CLPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate_layer_kernel_8cpp_source.xhtml#l00092">CLWidthConcatenateLayerKernel::configure()</a>, <a class="el" href="_g_c_convolution_layer_8cpp_source.xhtml#l00044">GCConvolutionLayerReshapeWeights::configure()</a>, <a class="el" href="_c_l_range_kernel_8cpp_source.xhtml#l00093">CLRangeKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate4_tensors_kernel_8cpp_source.xhtml#l00115">CLWidthConcatenate4TensorsKernel::configure()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00065">CLDepthwiseIm2ColKernel::configure()</a>, <a class="el" href="_c_l_depth_concatenate_layer_kernel_8cpp_source.xhtml#l00101">CLDepthConcatenateLayerKernel::configure()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00046">NEConvolutionLayerReshapeWeights::configure()</a>, <a class="el" href="_c_l_softmax_layer_8cpp_source.xhtml#l00073">CLSoftmaxLayer::configure()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00046">CLConvolutionLayerReshapeWeights::configure()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00045">NEDepthwiseConvolutionLayer3x3::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_n_e_softmax_layer_8cpp_source.xhtml#l00071">NESoftmaxLayer::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00047">CLDepthwiseConvolutionLayer3x3::configure()</a>, <a class="el" href="_n_e_fully_connected_layer_8cpp_source.xhtml#l00139">NEFullyConnectedLayer::configure()</a>, <a class="el" href="_c_l_fully_connected_layer_8cpp_source.xhtml#l00137">CLFullyConnectedLayer::configure()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00173">NEGEMMConvolutionLayer::configure()</a>, <a class="el" href="_c_l_softmax_layer_kernel_8cpp_source.xhtml#l00219">CLLogits1DMaxShiftExpSumKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00169">CLGEMMConvolutionLayer::configure()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00268">NEDepthwiseConvolutionLayer::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00231">CLDepthwiseConvolutionLayer::configure()</a>, <a class="el" href="_function_helpers_8h_source.xhtml#l00296">arm_compute::graph::backends::detail::create_convolution_layer()</a>, <a class="el" href="_g_c_functions_factory_8cpp_source.xhtml#l00109">arm_compute::graph::backends::detail::create_convolution_layer&lt; GCConvolutionLayerFunctions, GCTargetInfo &gt;()</a>, <a class="el" href="_n_e_function_factory_8cpp_source.xhtml#l00083">arm_compute::graph::backends::detail::create_convolution_layer&lt; NEConvolutionLayerFunctions, NETargetInfo &gt;()</a>, <a class="el" href="_function_helpers_8h_source.xhtml#l00431">arm_compute::graph::backends::detail::create_depthwise_convolution_layer()</a>, <a class="el" href="_g_c_functions_factory_8cpp_source.xhtml#l00162">arm_compute::graph::backends::detail::create_depthwise_convolution_layer&lt; GCDepthwiseConvolutionLayerFunctions, GCTargetInfo &gt;()</a>, <a class="el" href="_function_helpers_8h_source.xhtml#l00648">arm_compute::graph::backends::detail::create_fully_connected_layer()</a>, <a class="el" href="tests_2validation_2_c_l_2_fully_connected_layer_8cpp_source.xhtml#l00068">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="_validate_8h_source.xhtml#l00562">error_on_mismatching_quantization_info()</a>, <a class="el" href="reference_2_im2_col_8cpp_source.xhtml#l00039">arm_compute::test::validation::reference::im2col_nchw()</a>, <a class="el" href="reference_2_im2_col_8cpp_source.xhtml#l00093">arm_compute::test::validation::reference::im2col_nhwc()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00301">CLDepthwiseConvolutionLayer3x3NHWCKernel::run()</a>, <a class="el" href="_c_l_deconvolution_layer_upsample_8cpp_source.xhtml#l00057">CLDeconvolutionLayerUpsample::run()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00278">set_quantization_info_if_empty()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00062">NEConvolutionLayerReshapeWeights::validate()</a>, <a class="el" href="_c_l_softmax_layer_8cpp_source.xhtml#l00148">CLSoftmaxLayer::validate()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00063">CLConvolutionLayerReshapeWeights::validate()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00174">NEDepthwiseConvolutionLayer3x3::validate()</a>, <a class="el" href="_c_l_deconvolution_layer_8cpp_source.xhtml#l00051">CLDeconvolutionLayer::validate()</a>, <a class="el" href="_n_e_fully_connected_layer_8cpp_source.xhtml#l00240">NEFullyConnectedLayer::validate()</a>, <a class="el" href="_c_l_fully_connected_layer_8cpp_source.xhtml#l00241">CLFullyConnectedLayer::validate()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00377">NEGEMMConvolutionLayer::validate()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00353">CLGEMMConvolutionLayer::validate()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00401">NEDepthwiseConvolutionLayer::validate()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00347">CLDepthwiseConvolutionLayer::validate()</a>, and <a class="el" href="_validate_helpers_8h_source.xhtml#l00114">arm_compute::graph::backends::detail::validate_convolution_layer()</a>.</p>
16310
Anthony Barbier871448e2017-03-24 14:54:29 +000016311</div>
16312</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016313<a id="a0a7bb17a0a0414a7162f635776a02eb5"></a>
16314<h2 class="memtitle"><span class="permalink"><a href="#a0a7bb17a0a0414a7162f635776a02eb5">&#9670;&nbsp;</a></span>lower_string()</h2>
16315
Anthony Barbier871448e2017-03-24 14:54:29 +000016316<div class="memitem">
16317<div class="memproto">
16318 <table class="memname">
16319 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000016320 <td class="memname">std::string lower_string </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000016321 <td>(</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010016322 <td class="paramtype">const std::string &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000016323 <td class="paramname"><em>val</em></td><td>)</td>
16324 <td></td>
16325 </tr>
16326 </table>
16327</div><div class="memdoc">
16328
16329<p>Lower a given string. </p>
16330<dl class="params"><dt>Parameters</dt><dd>
16331 <table class="params">
Anthony Barbierdbdab852017-06-23 15:42:00 +010016332 <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>Given string to lower.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000016333 </table>
16334 </dd>
16335</dl>
16336<dl class="section return"><dt>Returns</dt><dd>The lowered string </dd></dl>
16337
Jenkins514be652019-02-28 12:25:18 +000016338<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00322">322</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
16339<div class="fragment"><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;{</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; std::string res = val;</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; std::transform(res.begin(), res.end(), res.begin(), <a class="code" href="namespacearm__compute_1_1utility.xhtml#abb96ad5c7071ec3a47ea5f07e817a636">::tolower</a>);</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keywordflow">return</span> res;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1utility_xhtml_abb96ad5c7071ec3a47ea5f07e817a636"><div class="ttname"><a href="namespacearm__compute_1_1utility.xhtml#abb96ad5c7071ec3a47ea5f07e817a636">arm_compute::utility::tolower</a></div><div class="ttdeci">std::string tolower(std::string string)</div><div class="ttdoc">Convert string to lower case.</div><div class="ttdef"><b>Definition:</b> <a href="_utility_8h_source.xhtml#l00188">Utility.h:188</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016340</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000016341<p class="reference">References <a class="el" href="_utility_8h_source.xhtml#l00188">arm_compute::utility::tolower()</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000016342
Jenkins514be652019-02-28 12:25:18 +000016343<p class="reference">Referenced by <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00161">CLScaleKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel_8cpp_source.xhtml#l00209">CLDepthwiseConvolutionLayer3x3NCHWKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00168">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_flatten_layer_kernel_8cpp_source.xhtml#l00086">CLFlattenLayerKernel::configure()</a>, <a class="el" href="_c_l_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00095">CLChannelShuffleLayerKernel::configure()</a>, <a class="el" href="_c_l_reverse_kernel_8cpp_source.xhtml#l00068">CLReverseKernel::configure()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00084">CLBatchToSpaceLayerKernel::configure()</a>, <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00107">CLNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_locally_connected_matrix_multiply_kernel_8cpp_source.xhtml#l00084">CLLocallyConnectedMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00089">CLSpaceToBatchLayerKernel::configure()</a>, <a class="el" href="_c_l_tile_kernel_8cpp_source.xhtml#l00068">CLTileKernel::configure()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00066">CLUpsampleLayerKernel::configure()</a>, <a class="el" href="_c_l_comparison_kernel_8cpp_source.xhtml#l00113">CLComparisonKernel::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_g_c_fill_border_kernel_8cpp_source.xhtml#l00060">GCFillBorderKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00043">GCGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00098">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_fill_border_kernel_8cpp_source.xhtml#l00062">CLFillBorderKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00185">CLPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00079">CLGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate2_tensors_kernel_8cpp_source.xhtml#l00097">CLWidthConcatenate2TensorsKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_reshaped_kernel_8cpp_source.xhtml#l00175">CLGEMMMatrixMultiplyReshapedKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate4_tensors_kernel_8cpp_source.xhtml#l00115">CLWidthConcatenate4TensorsKernel::configure()</a>, <a class="el" href="_c_l_range_kernel_8cpp_source.xhtml#l00093">CLRangeKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_reshape_l_h_s_matrix_kernel_8cpp_source.xhtml#l00121">CLGEMMReshapeLHSMatrixKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00111">CLWinogradInputTransformKernel::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00234">CLGEMMLowpMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_winograd_filter_transform_kernel_8cpp_source.xhtml#l00102">CLWinogradFilterTransformKernel::configure()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_strided_slice_kernel_8cpp_source.xhtml#l00106">CLStridedSliceKernel::configure()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00146">CLWinogradOutputTransformKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00263">CLGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00119">CLGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_c_l_col2_im_kernel_8cpp_source.xhtml#l00090">CLCol2ImKernel::configure()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00293">CLIm2ColKernel::configure()</a>, and <a class="el" href="_graph_utils_8h_source.xhtml#l00438">arm_compute::graph_utils::get_input_accessor()</a>.</p>
Anthony Barbiera4376382017-04-12 15:12:46 +010016344
Kaizen8938bd32017-09-28 14:38:23 +010016345</div>
16346</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016347<a id="ab14153fb809c18823af3c9c8bc4286cb"></a>
16348<h2 class="memtitle"><span class="permalink"><a href="#ab14153fb809c18823af3c9c8bc4286cb">&#9670;&nbsp;</a></span>num_channels_from_format()</h2>
16349
Anthony Barbier871448e2017-03-24 14:54:29 +000016350<div class="memitem">
16351<div class="memproto">
16352<table class="mlabels">
16353 <tr>
16354 <td class="mlabels-left">
16355 <table class="memname">
16356 <tr>
16357 <td class="memname">size_t arm_compute::num_channels_from_format </td>
16358 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016359 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000016360 <td class="paramname"><em>format</em></td><td>)</td>
16361 <td></td>
16362 </tr>
16363 </table>
16364 </td>
16365 <td class="mlabels-right">
16366<span class="mlabels"><span class="mlabel">inline</span></span> </td>
16367 </tr>
16368</table>
16369</div><div class="memdoc">
16370
16371<p>Return the number of channels for a given single-planar pixel format. </p>
16372<dl class="params"><dt>Parameters</dt><dd>
16373 <table class="params">
16374 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>Input format</td></tr>
16375 </table>
16376 </dd>
16377</dl>
16378<dl class="section return"><dt>Returns</dt><dd>The number of channels for a given image format. </dd></dl>
16379
Jenkinsb9abeae2018-11-22 11:58:08 +000016380<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00471">471</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016381<div class="fragment"><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; <span class="keywordflow">switch</span>(format)</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; <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; <span class="comment">// Because the U and V channels are subsampled</span></div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; <span class="comment">// these formats appear like having only 2 channels:</span></div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <span class="comment">//Doesn&#39;t make sense for planar formats:</span></div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; }</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000016382<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
16383
16384<p class="reference">Referenced by <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00104">TensorInfo::init()</a>, <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00173">TensorInfo::init_auto_padding()</a>, and <a class="el" href="src_2core_2_tensor_info_8cpp_source.xhtml#l00325">TensorInfo::set_format()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016385
16386</div>
16387</div>
16388<a id="a22ef3e50f7dbf08c974a120588e1ad90"></a>
16389<h2 class="memtitle"><span class="permalink"><a href="#a22ef3e50f7dbf08c974a120588e1ad90">&#9670;&nbsp;</a></span>num_of_elements_in_range()</h2>
16390
16391<div class="memitem">
16392<div class="memproto">
16393<table class="mlabels">
16394 <tr>
16395 <td class="mlabels-left">
16396 <table class="memname">
16397 <tr>
16398 <td class="memname">size_t arm_compute::num_of_elements_in_range </td>
16399 <td>(</td>
16400 <td class="paramtype">const float&#160;</td>
16401 <td class="paramname"><em>start</em>, </td>
16402 </tr>
16403 <tr>
16404 <td class="paramkey"></td>
16405 <td></td>
16406 <td class="paramtype">const float&#160;</td>
16407 <td class="paramname"><em>end</em>, </td>
16408 </tr>
16409 <tr>
16410 <td class="paramkey"></td>
16411 <td></td>
16412 <td class="paramtype">const float&#160;</td>
16413 <td class="paramname"><em>step</em>&#160;</td>
16414 </tr>
16415 <tr>
16416 <td></td>
16417 <td>)</td>
16418 <td></td><td></td>
16419 </tr>
16420 </table>
16421 </td>
16422 <td class="mlabels-right">
16423<span class="mlabels"><span class="mlabel">inline</span></span> </td>
16424 </tr>
16425</table>
16426</div><div class="memdoc">
16427
16428<p>Returns the number of elements required to go from start to end with the wanted step. </p>
16429<dl class="params"><dt>Parameters</dt><dd>
16430 <table class="params">
16431 <tr><td class="paramdir">[in]</td><td class="paramname">start</td><td>start value </td></tr>
16432 <tr><td class="paramdir">[in]</td><td class="paramname">end</td><td>end value </td></tr>
16433 <tr><td class="paramdir">[in]</td><td class="paramname">step</td><td>step value between each number in the wanted sequence</td></tr>
16434 </table>
16435 </dd>
16436</dl>
16437<dl class="section return"><dt>Returns</dt><dd>number of elements to go from start value to end value using the wanted step </dd></dl>
16438
16439<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l01053">1053</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
16440<div class="fragment"><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160;{</div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a> == 0, <span class="stringliteral">&quot;Range Step cannot be 0&quot;</span>);</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160; <span class="keywordflow">return</span> size_t(std::ceil((end - start) / <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">step</a>));</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a75b73e17c4ebe901e44af3b2b9846ab3"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a75b73e17c4ebe901e44af3b2b9846ab3">arm_compute::test::validation::step</a></div><div class="ttdeci">const int step</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_select_8cpp_source.xhtml#l00172">Select.cpp:172</a></div></div>
16441<div class="ttc" id="_error_8h_xhtml_a5bbdcf574d3f5e412fa6a1117911e67b"><div class="ttname"><a href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_MSG(cond,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00328">Error.h:328</a></div></div>
16442</div><!-- fragment -->
16443<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, and <a class="el" href="_c_l_2_select_8cpp_source.xhtml#l00172">arm_compute::test::validation::step</a>.</p>
16444
Anthony Barbier871448e2017-03-24 14:54:29 +000016445</div>
16446</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016447<a id="a2a71659def659c8b1c164023a99a25a9"></a>
16448<h2 class="memtitle"><span class="permalink"><a href="#a2a71659def659c8b1c164023a99a25a9">&#9670;&nbsp;</a></span>num_planes_from_format()</h2>
16449
Anthony Barbier871448e2017-03-24 14:54:29 +000016450<div class="memitem">
16451<div class="memproto">
16452<table class="mlabels">
16453 <tr>
16454 <td class="mlabels-left">
16455 <table class="memname">
16456 <tr>
16457 <td class="memname">size_t arm_compute::num_planes_from_format </td>
16458 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016459 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000016460 <td class="paramname"><em>format</em></td><td>)</td>
16461 <td></td>
16462 </tr>
16463 </table>
16464 </td>
16465 <td class="mlabels-right">
16466<span class="mlabels"><span class="mlabel">inline</span></span> </td>
16467 </tr>
16468</table>
16469</div><div class="memdoc">
16470
16471<p>Return the number of planes for a given format. </p>
16472<dl class="params"><dt>Parameters</dt><dd>
16473 <table class="params">
16474 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>Input format</td></tr>
16475 </table>
16476 </dd>
16477</dl>
16478<dl class="section return"><dt>Returns</dt><dd>The number of planes for a given image format. </dd></dl>
16479
Jenkinsb9abeae2018-11-22 11:58:08 +000016480<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00437">437</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016481<div class="fragment"><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160;{</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; {</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported format&quot;</span>);</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; }</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
16482</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000016483<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
16484
16485<p class="reference">Referenced by <a class="el" href="_c_l_channel_combine_kernel_8cpp_source.xhtml#l00238">CLChannelCombineKernel::run()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016486
Anthony Barbier871448e2017-03-24 14:54:29 +000016487</div>
16488</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016489<a id="a5f49decb4b0a74d5361686ab45db8961"></a>
16490<h2 class="memtitle"><span class="permalink"><a href="#a5f49decb4b0a74d5361686ab45db8961">&#9670;&nbsp;</a></span>opencl_is_available()</h2>
16491
Anthony Barbier46d59272017-05-04 09:15:15 +010016492<div class="memitem">
16493<div class="memproto">
16494 <table class="memname">
16495 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000016496 <td class="memname">bool opencl_is_available </td>
Anthony Barbier46d59272017-05-04 09:15:15 +010016497 <td>(</td>
16498 <td class="paramname"></td><td>)</td>
16499 <td></td>
16500 </tr>
16501 </table>
16502</div><div class="memdoc">
16503
Jenkinsb3a371b2018-05-23 11:36:53 +010016504<p>Check if OpenCL is available. </p>
16505<dl class="section return"><dt>Returns</dt><dd>True if OpenCL is available. </dd></dl>
16506
Jenkinsb9abeae2018-11-22 11:58:08 +000016507<p class="definition">Definition at line <a class="el" href="_open_c_l_8cpp_source.xhtml#l00133">133</a> of file <a class="el" href="_open_c_l_8cpp_source.xhtml">OpenCL.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016508<div class="fragment"><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;{</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; CLSymbols::get().load_default();</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">return</span> CLSymbols::get().clBuildProgram_ptr != <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000016509<p class="reference">References <a class="el" href="_open_c_l_8h_source.xhtml#l00092">CLSymbols::clBuildProgram_ptr</a>, <a class="el" href="_open_c_l_8cpp_source.xhtml#l00032">CLSymbols::get()</a>, and <a class="el" href="_open_c_l_8cpp_source.xhtml#l00038">CLSymbols::load_default()</a>.</p>
16510
Jenkins514be652019-02-28 12:25:18 +000016511<p class="reference">Referenced by <a class="el" href="runtime_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00086">create_opencl_context_and_device()</a>, <a class="el" href="_c_l_scheduler_8cpp_source.xhtml#l00041">CLScheduler::get()</a>, <a class="el" href="_c_l_device_backend_8cpp_source.xhtml#l00136">CLDeviceBackend::is_backend_supported()</a>, <a class="el" href="main_8cpp_source.xhtml#l00090">main()</a>, <a class="el" href="_framework_8cpp_source.xhtml#l00528">Framework::run()</a>, and <a class="el" href="tests_2_utils_8h_source.xhtml#l00773">arm_compute::test::sync_if_necessary()</a>.</p>
16512
Anthony Barbier46d59272017-05-04 09:15:15 +010016513</div>
16514</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016515<a id="ad8ec10f67d9849be264c23c5329d9324"></a>
16516<h2 class="memtitle"><span class="permalink"><a href="#ad8ec10f67d9849be264c23c5329d9324">&#9670;&nbsp;</a></span>opengles31_is_available()</h2>
16517
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016518<div class="memitem">
16519<div class="memproto">
16520 <table class="memname">
16521 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000016522 <td class="memname">bool opengles31_is_available </td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016523 <td>(</td>
16524 <td class="paramname"></td><td>)</td>
16525 <td></td>
16526 </tr>
16527 </table>
16528</div><div class="memdoc">
16529
16530<p>Check if the OpenGL ES 3.1 API is available at runtime. </p>
16531<dl class="section return"><dt>Returns</dt><dd>true if the OpenGL ES 3.1 API is available. </dd></dl>
16532
Jenkinsb9abeae2018-11-22 11:58:08 +000016533<p class="definition">Definition at line <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00160">160</a> of file <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml">OpenGLES.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000016534<div class="fragment"><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;{</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">return</span> GLESSymbols::get().glDispatchCompute != <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000016535<p class="reference">Referenced by <a class="el" href="_g_c_scheduler_8cpp_source.xhtml#l00062">GCScheduler::get()</a>, <a class="el" href="_g_c_device_backend_8cpp_source.xhtml#l00095">GCDeviceBackend::is_backend_supported()</a>, and <a class="el" href="tests_2_utils_8h_source.xhtml#l00790">arm_compute::test::sync_tensor_if_necessary()</a>.</p>
16536
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016537</div>
16538</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016539<a id="a4e3ff85e1f6c648dfbe264f54c147451"></a>
16540<h2 class="memtitle"><span class="permalink"><a href="#a4e3ff85e1f6c648dfbe264f54c147451">&#9670;&nbsp;</a></span>operator!=()</h2>
16541
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016542<div class="memitem">
16543<div class="memproto">
16544<table class="mlabels">
16545 <tr>
16546 <td class="mlabels-left">
16547 <table class="memname">
16548 <tr>
16549 <td class="memname">bool arm_compute::operator!= </td>
16550 <td>(</td>
16551 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;&#160;</td>
16552 <td class="paramname"><em>lhs</em>, </td>
16553 </tr>
16554 <tr>
16555 <td class="paramkey"></td>
16556 <td></td>
16557 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;&#160;</td>
16558 <td class="paramname"><em>rhs</em>&#160;</td>
16559 </tr>
16560 <tr>
16561 <td></td>
16562 <td>)</td>
16563 <td></td><td></td>
16564 </tr>
16565 </table>
16566 </td>
16567 <td class="mlabels-right">
16568<span class="mlabels"><span class="mlabel">inline</span></span> </td>
16569 </tr>
16570</table>
16571</div><div class="memdoc">
16572
Jenkinsb3a371b2018-05-23 11:36:53 +010016573<p>Check that given dimensions are not equal. </p>
16574<dl class="params"><dt>Parameters</dt><dd>
16575 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000016576 <tr><td class="paramdir">[in]</td><td class="paramname">lhs</td><td>Left-hand side <a class="el" href="classarm__compute_1_1_dimensions.xhtml" title="Dimensions with dimensionality.">Dimensions</a>. </td></tr>
16577 <tr><td class="paramdir">[in]</td><td class="paramname">rhs</td><td>Right-hand side <a class="el" href="classarm__compute_1_1_dimensions.xhtml" title="Dimensions with dimensionality.">Dimensions</a>.</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010016578 </table>
16579 </dd>
16580</dl>
16581<dl class="section return"><dt>Returns</dt><dd>True if the given dimensions are not equal. </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010016582
Jenkinsb9abeae2018-11-22 11:58:08 +000016583<p class="definition">Definition at line <a class="el" href="_dimensions_8h_source.xhtml#l00246">246</a> of file <a class="el" href="_dimensions_8h_source.xhtml">Dimensions.h</a>.</p>
Jenkinsb3a371b2018-05-23 11:36:53 +010016584<div class="fragment"><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;{</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keywordflow">return</span> !(lhs == rhs);</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;}</div></div><!-- fragment -->
Anthony Barbierdbdab852017-06-23 15:42:00 +010016585</div>
16586</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016587<a id="af3985189d478b45014e7dead9d002e2a"></a>
Jenkins514be652019-02-28 12:25:18 +000016588<h2 class="memtitle"><span class="permalink"><a href="#af3985189d478b45014e7dead9d002e2a">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[1/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000016589
Jenkins52ba29e2018-08-29 15:32:11 +000016590<div class="memitem">
16591<div class="memproto">
16592 <table class="memname">
16593 <tr>
16594 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
16595 <td>(</td>
16596 <td class="paramtype">::std::ostream &amp;&#160;</td>
16597 <td class="paramname"><em>os</em>, </td>
16598 </tr>
16599 <tr>
16600 <td class="paramkey"></td>
16601 <td></td>
16602 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7">GradientDimension</a> &amp;&#160;</td>
16603 <td class="paramname"><em>dim</em>&#160;</td>
16604 </tr>
16605 <tr>
16606 <td></td>
16607 <td>)</td>
16608 <td></td><td></td>
16609 </tr>
16610 </table>
16611</div><div class="memdoc">
16612
16613<p>Formatted output of the GradientDimension type. </p>
16614<dl class="params"><dt>Parameters</dt><dd>
16615 <table class="params">
16616 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
16617 <tr><td class="paramdir">[in]</td><td class="paramname">dim</td><td>Type to output</td></tr>
16618 </table>
16619 </dd>
16620</dl>
16621<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
16622
Jenkinsb9abeae2018-11-22 11:58:08 +000016623<p class="definition">Definition at line <a class="el" href="tests_2_type_printer_8h_source.xhtml#l00038">38</a> of file <a class="el" href="tests_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016624<div class="fragment"><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;{</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordflow">switch</span>(dim)</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; {</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordflow">case</span> GradientDimension::GRAD_X:</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;GRAD_X&quot;</span>;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordflow">case</span> GradientDimension::GRAD_Y:</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;GRAD_Y&quot;</span>;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">case</span> GradientDimension::GRAD_XY:</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;GRAD_XY&quot;</span>;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; }</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000016625</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000016626<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, and <a class="el" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7a5515a637eda61b978e97adaa5d7629cc">GRAD_XY</a>.</p>
16627
Jenkins52ba29e2018-08-29 15:32:11 +000016628</div>
16629</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016630<a id="a18d43401e8f84ed020429b41ec4e99f5"></a>
Jenkins514be652019-02-28 12:25:18 +000016631<h2 class="memtitle"><span class="permalink"><a href="#a18d43401e8f84ed020429b41ec4e99f5">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[2/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000016632
Anthony Barbierdbdab852017-06-23 15:42:00 +010016633<div class="memitem">
16634<div class="memproto">
16635 <table class="memname">
16636 <tr>
16637 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
16638 <td>(</td>
16639 <td class="paramtype">::std::ostream &amp;&#160;</td>
16640 <td class="paramname"><em>os</em>, </td>
16641 </tr>
16642 <tr>
16643 <td class="paramkey"></td>
16644 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016645 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010016646 <td class="paramname"><em>dimensions</em>&#160;</td>
16647 </tr>
16648 <tr>
16649 <td></td>
16650 <td>)</td>
16651 <td></td><td></td>
16652 </tr>
16653 </table>
16654</div><div class="memdoc">
16655
Jenkins514be652019-02-28 12:25:18 +000016656<p>Formatted output of the <a class="el" href="classarm__compute_1_1_dimensions.xhtml" title="Dimensions with dimensionality.">Dimensions</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010016657<dl class="params"><dt>Parameters</dt><dd>
16658 <table class="params">
16659 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
16660 <tr><td class="paramdir">[in]</td><td class="paramname">dimensions</td><td>Type to output.</td></tr>
16661 </table>
16662 </dd>
16663</dl>
16664<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010016665
Jenkinsb9abeae2018-11-22 11:58:08 +000016666<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00070">70</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins52ba29e2018-08-29 15:32:11 +000016667<div class="fragment"><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;{</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">if</span>(dimensions.num_dimensions() &gt; 0)</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; os &lt;&lt; dimensions[0];</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> d = 1; d &lt; dimensions.num_dimensions(); ++d)</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; {</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; dimensions[d];</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; }</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; }</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000016668<p class="reference">References <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>.</p>
16669
Anthony Barbierdbdab852017-06-23 15:42:00 +010016670</div>
16671</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016672<a id="ae8c2a3451bcf739a75aa7438e7a78d45"></a>
Jenkins514be652019-02-28 12:25:18 +000016673<h2 class="memtitle"><span class="permalink"><a href="#ae8c2a3451bcf739a75aa7438e7a78d45">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[3/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000016674
Anthony Barbierdbdab852017-06-23 15:42:00 +010016675<div class="memitem">
16676<div class="memproto">
16677 <table class="memname">
16678 <tr>
16679 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
16680 <td>(</td>
16681 <td class="paramtype">::std::ostream &amp;&#160;</td>
16682 <td class="paramname"><em>os</em>, </td>
16683 </tr>
16684 <tr>
16685 <td class="paramkey"></td>
16686 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016687 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010016688 <td class="paramname"><em>function</em>&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010016689 </tr>
16690 <tr>
16691 <td></td>
16692 <td>)</td>
16693 <td></td><td></td>
16694 </tr>
16695 </table>
16696</div><div class="memdoc">
16697
Kaizen8938bd32017-09-28 14:38:23 +010016698<p>Formatted output of the NonLinearFilterFunction type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010016699<dl class="params"><dt>Parameters</dt><dd>
16700 <table class="params">
16701 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
16702 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Type to output.</td></tr>
16703 </table>
16704 </dd>
16705</dl>
16706<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010016707
Jenkinsb9abeae2018-11-22 11:58:08 +000016708<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00092">92</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016709<div class="fragment"><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;{</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">switch</span>(<span class="keyword">function</span>)</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; {</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">case</span> <a class="code" href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">NonLinearFilterFunction::MAX</a>:</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;MAX&quot;</span>;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">case</span> NonLinearFilterFunction::MEDIAN:</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;MEDIAN&quot;</span>;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">case</span> <a class="code" href="elementwise__operation_8cl.xhtml#a74e75242132eaabbc1c512488a135926">NonLinearFilterFunction::MIN</a>:</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;MIN&quot;</span>;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; }</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
16710<div class="ttc" id="elementwise__operation_8cl_xhtml_a74e75242132eaabbc1c512488a135926"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#a74e75242132eaabbc1c512488a135926">MIN</a></div><div class="ttdeci">#define MIN(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00037">elementwise_operation.cl:37</a></div></div>
16711<div class="ttc" id="elementwise__operation_8cl_xhtml_aacc3ee1a7f283f8ef65cea31f4436a95"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">MAX</a></div><div class="ttdeci">#define MAX(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00036">elementwise_operation.cl:36</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +010016712</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000016713<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>, <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074">MEDIAN</a>, and <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858ace31e2a082d17e038fcc6e3006166653">MIN</a>.</p>
16714
Anthony Barbierdbdab852017-06-23 15:42:00 +010016715</div>
16716</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016717<a id="acec416ec5af175a7aad47a518fefb770"></a>
Jenkins514be652019-02-28 12:25:18 +000016718<h2 class="memtitle"><span class="permalink"><a href="#acec416ec5af175a7aad47a518fefb770">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[4/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000016719
Anthony Barbierdbdab852017-06-23 15:42:00 +010016720<div class="memitem">
16721<div class="memproto">
16722 <table class="memname">
16723 <tr>
16724 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
16725 <td>(</td>
16726 <td class="paramtype">::std::ostream &amp;&#160;</td>
16727 <td class="paramname"><em>os</em>, </td>
16728 </tr>
16729 <tr>
16730 <td class="paramkey"></td>
16731 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016732 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010016733 <td class="paramname"><em>pattern</em>&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010016734 </tr>
16735 <tr>
16736 <td></td>
16737 <td>)</td>
16738 <td></td><td></td>
16739 </tr>
16740 </table>
16741</div><div class="memdoc">
16742
Kaizen8938bd32017-09-28 14:38:23 +010016743<p>Formatted output of the MatrixPattern type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010016744<dl class="params"><dt>Parameters</dt><dd>
16745 <table class="params">
16746 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
16747 <tr><td class="paramdir">[in]</td><td class="paramname">pattern</td><td>Type to output.</td></tr>
16748 </table>
16749 </dd>
16750</dl>
16751<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010016752
Jenkinsb9abeae2018-11-22 11:58:08 +000016753<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00132">132</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016754<div class="fragment"><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;{</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">switch</span>(pattern)</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">case</span> MatrixPattern::BOX:</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;BOX&quot;</span>;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">case</span> MatrixPattern::CROSS:</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;CROSS&quot;</span>;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">case</span> MatrixPattern::DISK:</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;DISK&quot;</span>;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordflow">case</span> MatrixPattern::OTHER:</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;OTHER&quot;</span>;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; }</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +010016755</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000016756<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5">BOX</a>, <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2">CROSS</a>, <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7">DISK</a>, and <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb">OTHER</a>.</p>
16757
Anthony Barbierdbdab852017-06-23 15:42:00 +010016758</div>
16759</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016760<a id="a295edc9f8caf95838db2c5e251153514"></a>
Jenkins514be652019-02-28 12:25:18 +000016761<h2 class="memtitle"><span class="permalink"><a href="#a295edc9f8caf95838db2c5e251153514">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[5/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000016762
Anthony Barbierdbdab852017-06-23 15:42:00 +010016763<div class="memitem">
16764<div class="memproto">
16765 <table class="memname">
16766 <tr>
16767 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
16768 <td>(</td>
16769 <td class="paramtype">::std::ostream &amp;&#160;</td>
16770 <td class="paramname"><em>os</em>, </td>
16771 </tr>
16772 <tr>
16773 <td class="paramkey"></td>
16774 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016775 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010016776 <td class="paramname"><em>rounding_policy</em>&#160;</td>
16777 </tr>
16778 <tr>
16779 <td></td>
16780 <td>)</td>
16781 <td></td><td></td>
16782 </tr>
16783 </table>
16784</div><div class="memdoc">
16785
16786<p>Formatted output of the RoundingPolicy type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010016787<dl class="params"><dt>Parameters</dt><dd>
16788 <table class="params">
16789 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
16790 <tr><td class="paramdir">[in]</td><td class="paramname">rounding_policy</td><td>Type to output.</td></tr>
16791 </table>
16792 </dd>
16793</dl>
16794<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010016795
Jenkinsb9abeae2018-11-22 11:58:08 +000016796<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00175">175</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016797<div class="fragment"><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;{</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a60ad1078faeaf3f59266d69ad937339f">rounding_policy</a>)</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; {</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">case</span> RoundingPolicy::TO_ZERO:</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;TO_ZERO&quot;</span>;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">case</span> RoundingPolicy::TO_NEAREST_UP:</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;TO_NEAREST_UP&quot;</span>;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">case</span> RoundingPolicy::TO_NEAREST_EVEN:</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;TO_NEAREST_EVEN&quot;</span>;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; }</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000016798<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a60ad1078faeaf3f59266d69ad937339f"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a60ad1078faeaf3f59266d69ad937339f">arm_compute::test::validation::rounding_policy</a></div><div class="ttdeci">rounding_policy</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">PixelWiseMultiplication.cpp:168</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010016799</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000016800<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">arm_compute::test::validation::rounding_policy</a>, <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150">TO_NEAREST_EVEN</a>, <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95">TO_NEAREST_UP</a>, and <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06">TO_ZERO</a>.</p>
16801
Kaizen8938bd32017-09-28 14:38:23 +010016802</div>
16803</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016804<a id="a5972c7131d378f567af9c2961f088a0b"></a>
Jenkins514be652019-02-28 12:25:18 +000016805<h2 class="memtitle"><span class="permalink"><a href="#a5972c7131d378f567af9c2961f088a0b">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[6/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000016806
Kaizen8938bd32017-09-28 14:38:23 +010016807<div class="memitem">
16808<div class="memproto">
16809 <table class="memname">
16810 <tr>
16811 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
16812 <td>(</td>
16813 <td class="paramtype">::std::ostream &amp;&#160;</td>
16814 <td class="paramname"><em>os</em>, </td>
16815 </tr>
16816 <tr>
16817 <td class="paramkey"></td>
16818 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016819 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_weights_info.xhtml">WeightsInfo</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010016820 <td class="paramname"><em>weights_info</em>&#160;</td>
16821 </tr>
16822 <tr>
16823 <td></td>
16824 <td>)</td>
16825 <td></td><td></td>
16826 </tr>
16827 </table>
16828</div><div class="memdoc">
16829
Jenkins514be652019-02-28 12:25:18 +000016830<p>Formatted output of the <a class="el" href="classarm__compute_1_1_weights_info.xhtml" title="Convolution Layer Weights Information class.">WeightsInfo</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010016831<dl class="params"><dt>Parameters</dt><dd>
16832 <table class="params">
16833 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
16834 <tr><td class="paramdir">[in]</td><td class="paramname">weights_info</td><td>Type to output.</td></tr>
16835 </table>
16836 </dd>
16837</dl>
16838<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010016839
Jenkinsb9abeae2018-11-22 11:58:08 +000016840<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00202">202</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016841<div class="fragment"><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;{</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; os &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">weights_info</a>.are_reshaped() &lt;&lt; <span class="stringliteral">&quot;;&quot;</span>;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; os &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">weights_info</a>.num_kernels() &lt;&lt; <span class="stringliteral">&quot;;&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">weights_info</a>.kernel_size().first &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">weights_info</a>.kernel_size().second;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a7cb842ebfe255726066039853a4322f0"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a7cb842ebfe255726066039853a4322f0">arm_compute::test::validation::weights_info</a></div><div class="ttdeci">weights_info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_batch_normalization_layer_8cpp_source.xhtml#l00196">BatchNormalizationLayer.cpp:196</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +010016842</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000016843<p class="reference">References <a class="el" href="validation_2_c_l_2_batch_normalization_layer_8cpp_source.xhtml#l00196">arm_compute::test::validation::weights_info</a>.</p>
16844
Kaizen8938bd32017-09-28 14:38:23 +010016845</div>
16846</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016847<a id="a352b805b77fde4f32f44af271580677b"></a>
Jenkins514be652019-02-28 12:25:18 +000016848<h2 class="memtitle"><span class="permalink"><a href="#a352b805b77fde4f32f44af271580677b">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[7/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000016849
Kaizen8938bd32017-09-28 14:38:23 +010016850<div class="memitem">
16851<div class="memproto">
16852 <table class="memname">
16853 <tr>
16854 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
16855 <td>(</td>
16856 <td class="paramtype">::std::ostream &amp;&#160;</td>
16857 <td class="paramname"><em>os</em>, </td>
16858 </tr>
16859 <tr>
16860 <td class="paramkey"></td>
16861 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016862 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_r_o_i_pooling_layer_info.xhtml">ROIPoolingLayerInfo</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010016863 <td class="paramname"><em>pool_info</em>&#160;</td>
16864 </tr>
16865 <tr>
16866 <td></td>
16867 <td>)</td>
16868 <td></td><td></td>
16869 </tr>
16870 </table>
16871</div><div class="memdoc">
16872
16873<p>Formatted output of the ROIPoolingInfo type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010016874<dl class="params"><dt>Parameters</dt><dd>
16875 <table class="params">
16876 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
16877 <tr><td class="paramdir">[in]</td><td class="paramname">pool_info</td><td>Type to output.</td></tr>
16878 </table>
16879 </dd>
16880</dl>
16881<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010016882
Jenkinsb9abeae2018-11-22 11:58:08 +000016883<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00217">217</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins52ba29e2018-08-29 15:32:11 +000016884<div class="fragment"><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;{</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; os &lt;&lt; pool_info.pooled_width() &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; pool_info.pooled_height() &lt;&lt; <span class="stringliteral">&quot;~&quot;</span> &lt;&lt; pool_info.spatial_scale();</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000016885<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01226">ROIPoolingLayerInfo::pooled_height()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01221">ROIPoolingLayerInfo::pooled_width()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01231">ROIPoolingLayerInfo::spatial_scale()</a>.</p>
16886
Anthony Barbier8140e1e2017-12-14 23:48:46 +000016887</div>
16888</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000016889<a id="af81bb4f87d418311c7ca43a28c74bf03"></a>
Jenkins514be652019-02-28 12:25:18 +000016890<h2 class="memtitle"><span class="permalink"><a href="#af81bb4f87d418311c7ca43a28c74bf03">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[8/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000016891
16892<div class="memitem">
16893<div class="memproto">
16894 <table class="memname">
16895 <tr>
16896 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
16897 <td>(</td>
16898 <td class="paramtype">::std::ostream &amp;&#160;</td>
16899 <td class="paramname"><em>os</em>, </td>
16900 </tr>
16901 <tr>
16902 <td class="paramkey"></td>
16903 <td></td>
16904 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml">BoundingBoxTransformInfo</a> &amp;&#160;</td>
16905 <td class="paramname"><em>bbox_info</em>&#160;</td>
16906 </tr>
16907 <tr>
16908 <td></td>
16909 <td>)</td>
16910 <td></td><td></td>
16911 </tr>
16912 </table>
16913</div><div class="memdoc">
16914
Jenkins514be652019-02-28 12:25:18 +000016915<p>Formatted output of the <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml" title="Bounding Box Transform information class.">BoundingBoxTransformInfo</a> type. </p>
Jenkinsb9abeae2018-11-22 11:58:08 +000016916<dl class="params"><dt>Parameters</dt><dd>
16917 <table class="params">
16918 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
16919 <tr><td class="paramdir">[in]</td><td class="paramname">bbox_info</td><td>Type to output.</td></tr>
16920 </table>
16921 </dd>
16922</dl>
16923<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
16924
16925<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00243">243</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000016926<div class="fragment"><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;{</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keyword">auto</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a64a08a9fec5aeee8650e7182b6d171d0">weights</a> = bbox_info.weights();</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;(&quot;</span> &lt;&lt; bbox_info.img_width() &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; bbox_info.img_height() &lt;&lt; <span class="stringliteral">&quot;)~&quot;</span> &lt;&lt; bbox_info.scale() &lt;&lt; <span class="stringliteral">&quot;(weights = {&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a64a08a9fec5aeee8650e7182b6d171d0">weights</a>[0] &lt;&lt; <span class="stringliteral">&quot;, &quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a64a08a9fec5aeee8650e7182b6d171d0">weights</a>[1] &lt;&lt; <span class="stringliteral">&quot;, &quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a64a08a9fec5aeee8650e7182b6d171d0">weights</a>[2] &lt;&lt; <span class="stringliteral">&quot;, &quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a64a08a9fec5aeee8650e7182b6d171d0">weights</a>[3] &lt;&lt;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="stringliteral">&quot;})&quot;</span>;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a64a08a9fec5aeee8650e7182b6d171d0"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a64a08a9fec5aeee8650e7182b6d171d0">arm_compute::test::validation::weights</a></div><div class="ttdeci">CLTensor weights</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00180">ConvolutionLayer.cpp:180</a></div></div>
16927</div><!-- fragment -->
16928<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01411">BoundingBoxTransformInfo::img_height()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01416">BoundingBoxTransformInfo::img_width()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01421">BoundingBoxTransformInfo::scale()</a>, <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00180">arm_compute::test::validation::weights</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01401">BoundingBoxTransformInfo::weights()</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000016929
Jenkinsb9abeae2018-11-22 11:58:08 +000016930</div>
16931</div>
16932<a id="a59ea8b6694897a281eb3105f5c99f28f"></a>
Jenkins514be652019-02-28 12:25:18 +000016933<h2 class="memtitle"><span class="permalink"><a href="#a59ea8b6694897a281eb3105f5c99f28f">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[9/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000016934
16935<div class="memitem">
16936<div class="memproto">
16937 <table class="memname">
16938 <tr>
16939 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
16940 <td>(</td>
16941 <td class="paramtype">::std::ostream &amp;&#160;</td>
16942 <td class="paramname"><em>os</em>, </td>
16943 </tr>
16944 <tr>
16945 <td class="paramkey"></td>
16946 <td></td>
16947 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml">ComputeAnchorsInfo</a> &amp;&#160;</td>
16948 <td class="paramname"><em>anchors_info</em>&#160;</td>
16949 </tr>
16950 <tr>
16951 <td></td>
16952 <td>)</td>
16953 <td></td><td></td>
16954 </tr>
16955 </table>
16956</div><div class="memdoc">
16957
Jenkins514be652019-02-28 12:25:18 +000016958<p>Formatted output of the <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml" title="ComputeAnchors information class.">ComputeAnchorsInfo</a> type. </p>
Jenkinsb9abeae2018-11-22 11:58:08 +000016959<dl class="params"><dt>Parameters</dt><dd>
16960 <table class="params">
16961 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
16962 <tr><td class="paramdir">[in]</td><td class="paramname">anchors_info</td><td>Type to output.</td></tr>
16963 </table>
16964 </dd>
16965</dl>
16966<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
16967
16968<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00271">271</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000016969<div class="fragment"><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;{</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;(&quot;</span> &lt;&lt; anchors_info.feat_width() &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; anchors_info.feat_height() &lt;&lt; <span class="stringliteral">&quot;)~&quot;</span> &lt;&lt; anchors_info.spatial_scale();</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000016970<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01349">ComputeAnchorsInfo::feat_height()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01355">ComputeAnchorsInfo::feat_width()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01361">ComputeAnchorsInfo::spatial_scale()</a>.</p>
16971
Jenkinsb9abeae2018-11-22 11:58:08 +000016972</div>
16973</div>
16974<a id="a1a54a883f8acc0664accdae9bed93494"></a>
Jenkins514be652019-02-28 12:25:18 +000016975<h2 class="memtitle"><span class="permalink"><a href="#a1a54a883f8acc0664accdae9bed93494">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[10/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000016976
16977<div class="memitem">
16978<div class="memproto">
16979 <table class="memname">
16980 <tr>
16981 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
16982 <td>(</td>
16983 <td class="paramtype">::std::ostream &amp;&#160;</td>
16984 <td class="paramname"><em>os</em>, </td>
16985 </tr>
16986 <tr>
16987 <td class="paramkey"></td>
16988 <td></td>
16989 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml">GenerateProposalsInfo</a> &amp;&#160;</td>
16990 <td class="paramname"><em>proposals_info</em>&#160;</td>
16991 </tr>
16992 <tr>
16993 <td></td>
16994 <td>)</td>
16995 <td></td><td></td>
16996 </tr>
16997 </table>
16998</div><div class="memdoc">
16999
Jenkins514be652019-02-28 12:25:18 +000017000<p>Formatted output of the <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml" title="Generate Proposals Information class.">GenerateProposalsInfo</a> type. </p>
Jenkinsb9abeae2018-11-22 11:58:08 +000017001<dl class="params"><dt>Parameters</dt><dd>
17002 <table class="params">
17003 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17004 <tr><td class="paramdir">[in]</td><td class="paramname">proposals_info</td><td>Type to output.</td></tr>
17005 </table>
17006 </dd>
17007</dl>
17008<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
17009
17010<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00297">297</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000017011<div class="fragment"><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;{</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;(&quot;</span> &lt;&lt; proposals_info.im_width() &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; proposals_info.im_height() &lt;&lt; <span class="stringliteral">&quot;)~&quot;</span> &lt;&lt; proposals_info.im_scale();</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017012<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01272">GenerateProposalsInfo::im_height()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01282">GenerateProposalsInfo::im_scale()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01277">GenerateProposalsInfo::im_width()</a>.</p>
17013
Jenkinsb9abeae2018-11-22 11:58:08 +000017014</div>
17015</div>
17016<a id="a32a5556a927543fe57c0d7b82c20e9b4"></a>
Jenkins514be652019-02-28 12:25:18 +000017017<h2 class="memtitle"><span class="permalink"><a href="#a32a5556a927543fe57c0d7b82c20e9b4">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[11/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017018
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017019<div class="memitem">
17020<div class="memproto">
17021 <table class="memname">
17022 <tr>
17023 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17024 <td>(</td>
17025 <td class="paramtype">::std::ostream &amp;&#160;</td>
17026 <td class="paramname"><em>os</em>, </td>
17027 </tr>
17028 <tr>
17029 <td class="paramkey"></td>
17030 <td></td>
17031 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> &amp;&#160;</td>
17032 <td class="paramname"><em>quantization_info</em>&#160;</td>
17033 </tr>
17034 <tr>
17035 <td></td>
17036 <td>)</td>
17037 <td></td><td></td>
17038 </tr>
17039 </table>
17040</div><div class="memdoc">
17041
Jenkins514be652019-02-28 12:25:18 +000017042<p>Formatted output of the <a class="el" href="structarm__compute_1_1_quantization_info.xhtml" title="Quantization settings (used for QASYMM8 data type)">QuantizationInfo</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017043<dl class="params"><dt>Parameters</dt><dd>
17044 <table class="params">
17045 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17046 <tr><td class="paramdir">[in]</td><td class="paramname">quantization_info</td><td>Type to output.</td></tr>
17047 </table>
17048 </dd>
17049</dl>
17050<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017051
Jenkinsb9abeae2018-11-22 11:58:08 +000017052<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00323">323</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000017053<div class="fragment"><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;{</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;Scale:&quot;</span> &lt;&lt; quantization_info.scale &lt;&lt; <span class="stringliteral">&quot;~&quot;</span></div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; &lt;&lt; <span class="stringliteral">&quot;Offset:&quot;</span> &lt;&lt; quantization_info.offset;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017054<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00190">QuantizationInfo::offset</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00189">QuantizationInfo::scale</a>.</p>
17055
Kaizen8938bd32017-09-28 14:38:23 +010017056</div>
17057</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017058<a id="a9d79efe2673aeb3f9a9160b6a78de50c"></a>
Jenkins514be652019-02-28 12:25:18 +000017059<h2 class="memtitle"><span class="permalink"><a href="#a9d79efe2673aeb3f9a9160b6a78de50c">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[12/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017060
Kaizen8938bd32017-09-28 14:38:23 +010017061<div class="memitem">
17062<div class="memproto">
17063 <table class="memname">
17064 <tr>
17065 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17066 <td>(</td>
17067 <td class="paramtype">::std::ostream &amp;&#160;</td>
17068 <td class="paramname"><em>os</em>, </td>
17069 </tr>
17070 <tr>
17071 <td class="paramkey"></td>
17072 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017073 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9ea">ActivationLayerInfo::ActivationFunction</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010017074 <td class="paramname"><em>act_function</em>&#160;</td>
17075 </tr>
17076 <tr>
17077 <td></td>
17078 <td>)</td>
17079 <td></td><td></td>
17080 </tr>
17081 </table>
17082</div><div class="memdoc">
17083
17084<p>Formatted output of the activation function type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017085<dl class="params"><dt>Parameters</dt><dd>
17086 <table class="params">
17087 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17088 <tr><td class="paramdir">[in]</td><td class="paramname">act_function</td><td>Type to output.</td></tr>
17089 </table>
17090 </dd>
17091</dl>
17092<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010017093
Jenkinsb9abeae2018-11-22 11:58:08 +000017094<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00350">350</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000017095<div class="fragment"><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;{</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordflow">switch</span>(act_function)</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; {</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::ABS:</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;ABS&quot;</span>;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::LINEAR:</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;LINEAR&quot;</span>;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::LOGISTIC:</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;LOGISTIC&quot;</span>;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::RELU:</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;RELU&quot;</span>;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::BOUNDED_RELU:</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;BOUNDED_RELU&quot;</span>;</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::LEAKY_RELU:</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;LEAKY_RELU&quot;</span>;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::SOFT_RELU:</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;SOFT_RELU&quot;</span>;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::SQRT:</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;SQRT&quot;</span>;</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::LU_BOUNDED_RELU:</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;LU_BOUNDED_RELU&quot;</span>;</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::SQUARE:</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;SQUARE&quot;</span>;</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">case</span> ActivationLayerInfo::ActivationFunction::TANH:</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;TANH&quot;</span>;</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; }</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010017096</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017097<p class="reference">References <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa7d8a220d2262f9d6c658d549ee12cf2c">ActivationLayerInfo::ABS</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaacc516ab03b98f1c908ddf6ed4a7c45e9">ActivationLayerInfo::BOUNDED_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaac7e80a3de04936f4e423e1b564fdca10">ActivationLayerInfo::LEAKY_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaaaac544aacc3615aada24897a215f5046">ActivationLayerInfo::LINEAR</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa72ee60fba0509af07cbbd91398d8db9d">ActivationLayerInfo::LOGISTIC</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaaab1d4411a9e7f5e82002512cddfdc33a">ActivationLayerInfo::LU_BOUNDED_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaad346bb4679d29be241279f15d7795c1c">ActivationLayerInfo::RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaadcc44a50c791a591c74e00ecdda7c58d">ActivationLayerInfo::SOFT_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa36875f2500a09ee35d0bb7eb8c0b91b0">ActivationLayerInfo::SQRT</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa12dec4e1f7ec620651b2b95c440ffac0">ActivationLayerInfo::SQUARE</a>, and <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa143c8c6f51b9bb893ce71e38702e3cc1">ActivationLayerInfo::TANH</a>.</p>
17098
Kaizen8938bd32017-09-28 14:38:23 +010017099</div>
17100</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017101<a id="a2ab7370aab6e5698990c50c8871fa6fb"></a>
Jenkins514be652019-02-28 12:25:18 +000017102<h2 class="memtitle"><span class="permalink"><a href="#a2ab7370aab6e5698990c50c8871fa6fb">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[13/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017103
Kaizen8938bd32017-09-28 14:38:23 +010017104<div class="memitem">
17105<div class="memproto">
17106 <table class="memname">
17107 <tr>
17108 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17109 <td>(</td>
17110 <td class="paramtype">::std::ostream &amp;&#160;</td>
17111 <td class="paramname"><em>os</em>, </td>
17112 </tr>
17113 <tr>
17114 <td class="paramkey"></td>
17115 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017116 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">NormType</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010017117 <td class="paramname"><em>norm_type</em>&#160;</td>
17118 </tr>
17119 <tr>
17120 <td></td>
17121 <td>)</td>
17122 <td></td><td></td>
17123 </tr>
17124 </table>
17125</div><div class="memdoc">
17126
17127<p>Formatted output of the NormType type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017128<dl class="params"><dt>Parameters</dt><dd>
17129 <table class="params">
17130 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17131 <tr><td class="paramdir">[in]</td><td class="paramname">norm_type</td><td>Type to output.</td></tr>
17132 </table>
17133 </dd>
17134</dl>
17135<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010017136
Jenkinsb9abeae2018-11-22 11:58:08 +000017137<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00430">430</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000017138<div class="fragment"><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;{</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <span class="keywordflow">switch</span>(norm_type)</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; {</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="keywordflow">case</span> NormType::CROSS_MAP:</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;CROSS_MAP&quot;</span>;</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <span class="keywordflow">case</span> NormType::IN_MAP_1D:</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;IN_MAP_1D&quot;</span>;</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">case</span> NormType::IN_MAP_2D:</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;IN_MAP_2D&quot;</span>;</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; }</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010017139</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017140<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5">CROSS_MAP</a>, <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190">IN_MAP_1D</a>, and <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e">IN_MAP_2D</a>.</p>
17141
Kaizen8938bd32017-09-28 14:38:23 +010017142</div>
17143</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017144<a id="a6e422c610c91f611590173cd595c94c5"></a>
Jenkins514be652019-02-28 12:25:18 +000017145<h2 class="memtitle"><span class="permalink"><a href="#a6e422c610c91f611590173cd595c94c5">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[14/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017146
Kaizenbf8b01d2017-10-12 14:26:51 +010017147<div class="memitem">
17148<div class="memproto">
17149 <table class="memname">
17150 <tr>
17151 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17152 <td>(</td>
17153 <td class="paramtype">::std::ostream &amp;&#160;</td>
17154 <td class="paramname"><em>os</em>, </td>
17155 </tr>
17156 <tr>
17157 <td class="paramkey"></td>
17158 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017159 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">NormalizationLayerInfo</a> &amp;&#160;</td>
Kaizenbf8b01d2017-10-12 14:26:51 +010017160 <td class="paramname"><em>info</em>&#160;</td>
17161 </tr>
17162 <tr>
17163 <td></td>
17164 <td>)</td>
17165 <td></td><td></td>
17166 </tr>
17167 </table>
17168</div><div class="memdoc">
17169
17170<p>Formatted output of <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">NormalizationLayerInfo</a>. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017171<dl class="params"><dt>Parameters</dt><dd>
17172 <table class="params">
17173 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17174 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
17175 </table>
17176 </dd>
17177</dl>
17178<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Kaizenbf8b01d2017-10-12 14:26:51 +010017179
Jenkinsb9abeae2018-11-22 11:58:08 +000017180<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00470">470</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000017181<div class="fragment"><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;{</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; os &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.type() &lt;&lt; <span class="stringliteral">&quot;:NormSize=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.norm_size();</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Kaizenbf8b01d2017-10-12 14:26:51 +010017182</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017183<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
17184
Kaizenbf8b01d2017-10-12 14:26:51 +010017185</div>
17186</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017187<a id="a336cf1e870f467e44c184587a13feeec"></a>
Jenkins514be652019-02-28 12:25:18 +000017188<h2 class="memtitle"><span class="permalink"><a href="#a336cf1e870f467e44c184587a13feeec">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[15/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017189
Kaizen8938bd32017-09-28 14:38:23 +010017190<div class="memitem">
17191<div class="memproto">
17192 <table class="memname">
17193 <tr>
17194 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17195 <td>(</td>
17196 <td class="paramtype">::std::ostream &amp;&#160;</td>
17197 <td class="paramname"><em>os</em>, </td>
17198 </tr>
17199 <tr>
17200 <td class="paramkey"></td>
17201 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017202 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">PoolingType</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010017203 <td class="paramname"><em>pool_type</em>&#160;</td>
17204 </tr>
17205 <tr>
17206 <td></td>
17207 <td>)</td>
17208 <td></td><td></td>
17209 </tr>
17210 </table>
17211</div><div class="memdoc">
17212
17213<p>Formatted output of the PoolingType type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017214<dl class="params"><dt>Parameters</dt><dd>
17215 <table class="params">
17216 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17217 <tr><td class="paramdir">[in]</td><td class="paramname">pool_type</td><td>Type to output.</td></tr>
17218 </table>
17219 </dd>
17220</dl>
17221<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010017222
Jenkinsb9abeae2018-11-22 11:58:08 +000017223<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00483">483</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000017224<div class="fragment"><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; <span class="keywordflow">switch</span>(pool_type)</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; {</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keywordflow">case</span> PoolingType::AVG:</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;AVG&quot;</span>;</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="keywordflow">case</span> <a class="code" href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">PoolingType::MAX</a>:</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;MAX&quot;</span>;</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <span class="keywordflow">case</span> PoolingType::L2:</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;L2&quot;</span>;</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; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</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;</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
17225<div class="ttc" id="elementwise__operation_8cl_xhtml_aacc3ee1a7f283f8ef65cea31f4436a95"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">MAX</a></div><div class="ttdeci">#define MAX(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00036">elementwise_operation.cl:36</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010017226</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017227<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a">AVG</a>, <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76">L2</a>, and <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>.</p>
17228
Kaizen8938bd32017-09-28 14:38:23 +010017229</div>
17230</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017231<a id="ae72a61a2ca5c962ab1d37065e5598060"></a>
Jenkins514be652019-02-28 12:25:18 +000017232<h2 class="memtitle"><span class="permalink"><a href="#ae72a61a2ca5c962ab1d37065e5598060">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[16/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017233
Kaizen8938bd32017-09-28 14:38:23 +010017234<div class="memitem">
17235<div class="memproto">
17236 <table class="memname">
17237 <tr>
17238 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17239 <td>(</td>
17240 <td class="paramtype">::std::ostream &amp;&#160;</td>
17241 <td class="paramname"><em>os</em>, </td>
17242 </tr>
17243 <tr>
17244 <td class="paramkey"></td>
17245 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017246 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_pooling_layer_info.xhtml">PoolingLayerInfo</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010017247 <td class="paramname"><em>info</em>&#160;</td>
17248 </tr>
17249 <tr>
17250 <td></td>
17251 <td>)</td>
17252 <td></td><td></td>
17253 </tr>
17254 </table>
17255</div><div class="memdoc">
17256
17257<p>Formatted output of <a class="el" href="classarm__compute_1_1_pooling_layer_info.xhtml">PoolingLayerInfo</a>. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017258<dl class="params"><dt>Parameters</dt><dd>
17259 <table class="params">
17260 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17261 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
17262 </table>
17263 </dd>
17264</dl>
17265<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010017266
Jenkinsb9abeae2018-11-22 11:58:08 +000017267<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00510">510</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000017268<div class="fragment"><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; os &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.pool_type();</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +010017269</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017270<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
17271
Jenkinsb3a371b2018-05-23 11:36:53 +010017272</div>
17273</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017274<a id="a1698cb24508a2bc45962bc887f18a8d0"></a>
Jenkins514be652019-02-28 12:25:18 +000017275<h2 class="memtitle"><span class="permalink"><a href="#a1698cb24508a2bc45962bc887f18a8d0">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[17/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017276
Jenkinsb3a371b2018-05-23 11:36:53 +010017277<div class="memitem">
17278<div class="memproto">
17279 <table class="memname">
17280 <tr>
17281 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17282 <td>(</td>
17283 <td class="paramtype">::std::ostream &amp;&#160;</td>
17284 <td class="paramname"><em>os</em>, </td>
17285 </tr>
17286 <tr>
17287 <td class="paramkey"></td>
17288 <td></td>
17289 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> &amp;&#160;</td>
17290 <td class="paramname"><em>data_layout</em>&#160;</td>
17291 </tr>
17292 <tr>
17293 <td></td>
17294 <td>)</td>
17295 <td></td><td></td>
17296 </tr>
17297 </table>
17298</div><div class="memdoc">
17299
Jenkinsb9abeae2018-11-22 11:58:08 +000017300<p>[Print DataLayout type] </p>
17301<p>Formatted output of the DataLayout type.</p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017302<dl class="params"><dt>Parameters</dt><dd>
17303 <table class="params">
17304 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17305 <tr><td class="paramdir">[in]</td><td class="paramname">data_layout</td><td>Type to output.</td></tr>
17306 </table>
17307 </dd>
17308</dl>
17309<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
17310
Jenkinsb9abeae2018-11-22 11:58:08 +000017311<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00538">538</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000017312<div class="fragment"><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160;{</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; <span class="keywordflow">switch</span>(data_layout)</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; {</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <span class="keywordflow">case</span> DataLayout::UNKNOWN:</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;UNKNOWN&quot;</span>;</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; <span class="keywordflow">case</span> DataLayout::NHWC:</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;NHWC&quot;</span>;</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; <span class="keywordflow">case</span> DataLayout::NCHW:</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;NCHW&quot;</span>;</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; }</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000017313</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017314<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">NHWC</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
17315
Jenkins52ba29e2018-08-29 15:32:11 +000017316</div>
17317</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017318<a id="adec19acb64bfca26fa53ef76f03b79ef"></a>
Jenkins514be652019-02-28 12:25:18 +000017319<h2 class="memtitle"><span class="permalink"><a href="#adec19acb64bfca26fa53ef76f03b79ef">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[18/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017320
Jenkins52ba29e2018-08-29 15:32:11 +000017321<div class="memitem">
17322<div class="memproto">
17323 <table class="memname">
17324 <tr>
17325 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17326 <td>(</td>
17327 <td class="paramtype">::std::ostream &amp;&#160;</td>
17328 <td class="paramname"><em>os</em>, </td>
17329 </tr>
17330 <tr>
17331 <td class="paramkey"></td>
17332 <td></td>
17333 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02">DataLayoutDimension</a> &amp;&#160;</td>
17334 <td class="paramname"><em>data_layout_dim</em>&#160;</td>
17335 </tr>
17336 <tr>
17337 <td></td>
17338 <td>)</td>
17339 <td></td><td></td>
17340 </tr>
17341 </table>
17342</div><div class="memdoc">
17343
Jenkinsb9abeae2018-11-22 11:58:08 +000017344<p>[Print DataLayout type] </p>
17345<p>Formatted output of the DataLayoutDimension type.</p>
Jenkins52ba29e2018-08-29 15:32:11 +000017346<dl class="params"><dt>Parameters</dt><dd>
17347 <table class="params">
17348 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17349 <tr><td class="paramdir">[in]</td><td class="paramname">data_layout_dim</td><td>Data layout dimension to print.</td></tr>
17350 </table>
17351 </dd>
17352</dl>
17353<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
17354
Jenkinsb9abeae2018-11-22 11:58:08 +000017355<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00579">579</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000017356<div class="fragment"><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160;{</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <span class="keywordflow">switch</span>(data_layout_dim)</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; {</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keywordflow">case</span> DataLayoutDimension::WIDTH:</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;WIDTH&quot;</span>;</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; <span class="keywordflow">case</span> DataLayoutDimension::HEIGHT:</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;HEIGHT&quot;</span>;</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; <span class="keywordflow">case</span> DataLayoutDimension::CHANNEL:</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;CHANNEL&quot;</span>;</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; <span class="keywordflow">case</span> DataLayoutDimension::BATCHES:</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;BATCHES&quot;</span>;</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; }</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +010017357</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017358<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a628bcf7e10fc1c2a984f379a1ec3393a">BATCHES</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02af52e9c50a060add65a035429b2a22229">CHANNEL</a>, <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02ad770ba3ce18fa409965dfdf5e7c348e6">HEIGHT</a>, and <a class="el" href="namespacearm__compute.xhtml#a74ce3f7420453d3446218ff3b7453e02a49da85b69bc6285eeee286ca49fa7195">WIDTH</a>.</p>
17359
Anthony Barbierdbdab852017-06-23 15:42:00 +010017360</div>
17361</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017362<a id="a685af15532d70b8682bcc52f06f034f9"></a>
Jenkins514be652019-02-28 12:25:18 +000017363<h2 class="memtitle"><span class="permalink"><a href="#a685af15532d70b8682bcc52f06f034f9">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[19/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017364
Anthony Barbierdbdab852017-06-23 15:42:00 +010017365<div class="memitem">
17366<div class="memproto">
17367 <table class="memname">
17368 <tr>
17369 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17370 <td>(</td>
17371 <td class="paramtype">::std::ostream &amp;&#160;</td>
17372 <td class="paramname"><em>os</em>, </td>
17373 </tr>
17374 <tr>
17375 <td class="paramkey"></td>
17376 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017377 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010017378 <td class="paramname"><em>data_type</em>&#160;</td>
17379 </tr>
17380 <tr>
17381 <td></td>
17382 <td>)</td>
17383 <td></td><td></td>
17384 </tr>
17385 </table>
17386</div><div class="memdoc">
17387
17388<p>Formatted output of the DataType type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017389<dl class="params"><dt>Parameters</dt><dd>
17390 <table class="params">
17391 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17392 <tr><td class="paramdir">[in]</td><td class="paramname">data_type</td><td>Type to output.</td></tr>
17393 </table>
17394 </dd>
17395</dl>
17396<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010017397
Jenkinsb9abeae2018-11-22 11:58:08 +000017398<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00608">608</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000017399<div class="fragment"><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160;{</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>)</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; {</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <span class="keywordflow">case</span> DataType::UNKNOWN:</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;UNKNOWN&quot;</span>;</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;U8&quot;</span>;</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;QASYMM8&quot;</span>;</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;S8&quot;</span>;</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;U16&quot;</span>;</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;S16&quot;</span>;</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;U32&quot;</span>;</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;S32&quot;</span>;</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;U64&quot;</span>;</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;S64&quot;</span>;</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;F16&quot;</span>;</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;F32&quot;</span>;</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; <span class="keywordflow">case</span> DataType::F64:</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;F64&quot;</span>;</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; <span class="keywordflow">case</span> DataType::SIZET:</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;SIZET&quot;</span>;</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; }</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160;</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
17400<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +010017401</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017402<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::data_type</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">F64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">SIZET</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
17403
Anthony Barbierdbdab852017-06-23 15:42:00 +010017404</div>
17405</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017406<a id="a3b22e54b0ac0204c3b89aebcd695fa03"></a>
Jenkins514be652019-02-28 12:25:18 +000017407<h2 class="memtitle"><span class="permalink"><a href="#a3b22e54b0ac0204c3b89aebcd695fa03">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[20/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017408
Anthony Barbierdbdab852017-06-23 15:42:00 +010017409<div class="memitem">
17410<div class="memproto">
17411 <table class="memname">
17412 <tr>
17413 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17414 <td>(</td>
17415 <td class="paramtype">::std::ostream &amp;&#160;</td>
17416 <td class="paramname"><em>os</em>, </td>
17417 </tr>
17418 <tr>
17419 <td class="paramkey"></td>
17420 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017421 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010017422 <td class="paramname"><em>format</em>&#160;</td>
17423 </tr>
17424 <tr>
17425 <td></td>
17426 <td>)</td>
17427 <td></td><td></td>
17428 </tr>
17429 </table>
17430</div><div class="memdoc">
17431
17432<p>Formatted output of the Format type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017433<dl class="params"><dt>Parameters</dt><dd>
17434 <table class="params">
17435 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17436 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>Type to output.</td></tr>
17437 </table>
17438 </dd>
17439</dl>
17440<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010017441
Jenkinsb9abeae2018-11-22 11:58:08 +000017442<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00681">681</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000017443<div class="fragment"><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160;{</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; {</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; <span class="keywordflow">case</span> Format::UNKNOWN:</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;UNKNOWN&quot;</span>;</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;U8&quot;</span>;</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;S16&quot;</span>;</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;U16&quot;</span>;</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;S32&quot;</span>;</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;U32&quot;</span>;</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;F16&quot;</span>;</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;F32&quot;</span>;</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;UV88&quot;</span>;</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;RGB888&quot;</span>;</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;RGBA8888&quot;</span>;</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;YUV444&quot;</span>;</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;YUYV422&quot;</span>;</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;NV12&quot;</span>;</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;NV21&quot;</span>;</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;IYUV&quot;</span>;</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;UYVY422&quot;</span>;</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; }</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160;</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +010017444</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017445<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
17446
Anthony Barbierdbdab852017-06-23 15:42:00 +010017447</div>
17448</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017449<a id="aa66be15c012986ebd4c1934b97e08a36"></a>
Jenkins514be652019-02-28 12:25:18 +000017450<h2 class="memtitle"><span class="permalink"><a href="#aa66be15c012986ebd4c1934b97e08a36">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[21/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017451
Anthony Barbierdbdab852017-06-23 15:42:00 +010017452<div class="memitem">
17453<div class="memproto">
17454 <table class="memname">
17455 <tr>
17456 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17457 <td>(</td>
17458 <td class="paramtype">::std::ostream &amp;&#160;</td>
17459 <td class="paramname"><em>os</em>, </td>
17460 </tr>
17461 <tr>
17462 <td class="paramkey"></td>
17463 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017464 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010017465 <td class="paramname"><em>channel</em>&#160;</td>
17466 </tr>
17467 <tr>
17468 <td></td>
17469 <td>)</td>
17470 <td></td><td></td>
17471 </tr>
17472 </table>
17473</div><div class="memdoc">
17474
17475<p>Formatted output of the Channel type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017476<dl class="params"><dt>Parameters</dt><dd>
17477 <table class="params">
17478 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17479 <tr><td class="paramdir">[in]</td><td class="paramname">channel</td><td>Type to output.</td></tr>
17480 </table>
17481 </dd>
17482</dl>
17483<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010017484
Jenkinsb9abeae2018-11-22 11:58:08 +000017485<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00763">763</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000017486<div class="fragment"><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160;{</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; {</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; <span class="keywordflow">case</span> Channel::UNKNOWN:</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;UNKNOWN&quot;</span>;</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; <span class="keywordflow">case</span> Channel::C0:</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;C0&quot;</span>;</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; <span class="keywordflow">case</span> Channel::C1:</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;C1&quot;</span>;</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; <span class="keywordflow">case</span> Channel::C2:</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;C2&quot;</span>;</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; <span class="keywordflow">case</span> Channel::C3:</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;C3&quot;</span>;</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; <span class="keywordflow">case</span> Channel::R:</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;R&quot;</span>;</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; <span class="keywordflow">case</span> Channel::G:</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;G&quot;</span>;</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; <span class="keywordflow">case</span> Channel::B:</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;B&quot;</span>;</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; <span class="keywordflow">case</span> Channel::A:</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;A&quot;</span>;</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;Y&quot;</span>;</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">Channel::U</a>:</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;U&quot;</span>;</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;V&quot;</span>;</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; }</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160;</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
17487<div class="ttc" id="namespacearm__compute_1_1utils_1_1cast_xhtml_a2ea3d1fc01a3a442900249ca182ffa5e"><div class="ttname"><a href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">arm_compute::utils::cast::U</a></div><div class="ttdeci">U</div><div class="ttdef"><b>Definition:</b> <a href="_saturate_cast_8h_source.xhtml#l00057">SaturateCast.h:57</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010017488</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017489<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9c5959e6f08f10d0edbadf5be1f33c53">C0</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1">C1</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aaf1a543f5a2c5d49bc5dde298fcf716e4">C2</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa3abe124ecc82bf2c2e22e6058f38c50c">C3</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">G</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">R</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, and <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>.</p>
17490
Kaizen8938bd32017-09-28 14:38:23 +010017491</div>
17492</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017493<a id="a7929032d41d5f23cd1778a70508d0219"></a>
Jenkins514be652019-02-28 12:25:18 +000017494<h2 class="memtitle"><span class="permalink"><a href="#a7929032d41d5f23cd1778a70508d0219">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[22/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017495
Kaizen8938bd32017-09-28 14:38:23 +010017496<div class="memitem">
17497<div class="memproto">
17498 <table class="memname">
17499 <tr>
17500 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17501 <td>(</td>
17502 <td class="paramtype">::std::ostream &amp;&#160;</td>
17503 <td class="paramname"><em>os</em>, </td>
17504 </tr>
17505 <tr>
17506 <td class="paramkey"></td>
17507 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017508 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010017509 <td class="paramname"><em>mode</em>&#160;</td>
17510 </tr>
17511 <tr>
17512 <td></td>
17513 <td>)</td>
17514 <td></td><td></td>
17515 </tr>
17516 </table>
17517</div><div class="memdoc">
17518
17519<p>Formatted output of the BorderMode type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017520<dl class="params"><dt>Parameters</dt><dd>
17521 <table class="params">
17522 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17523 <tr><td class="paramdir">[in]</td><td class="paramname">mode</td><td>Type to output.</td></tr>
17524 </table>
17525 </dd>
17526</dl>
17527<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010017528
Jenkinsb9abeae2018-11-22 11:58:08 +000017529<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00830">830</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000017530<div class="fragment"><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160;{</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; <span class="keywordflow">switch</span>(mode)</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; {</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; <span class="keywordflow">case</span> BorderMode::UNDEFINED:</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;UNDEFINED&quot;</span>;</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160; <span class="keywordflow">case</span> BorderMode::CONSTANT:</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;CONSTANT&quot;</span>;</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; <span class="keywordflow">case</span> BorderMode::REPLICATE:</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;REPLICATE&quot;</span>;</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; }</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160;</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +010017531</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017532<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92">CONSTANT</a>, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa">REPLICATE</a>, and <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3">UNDEFINED</a>.</p>
17533
Anthony Barbierdbdab852017-06-23 15:42:00 +010017534</div>
17535</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017536<a id="af32c4c5cdd0efde09774eb803bc8a0bd"></a>
Jenkins514be652019-02-28 12:25:18 +000017537<h2 class="memtitle"><span class="permalink"><a href="#af32c4c5cdd0efde09774eb803bc8a0bd">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[23/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017538
Anthony Barbierdbdab852017-06-23 15:42:00 +010017539<div class="memitem">
17540<div class="memproto">
17541 <table class="memname">
17542 <tr>
17543 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17544 <td>(</td>
17545 <td class="paramtype">::std::ostream &amp;&#160;</td>
17546 <td class="paramname"><em>os</em>, </td>
17547 </tr>
17548 <tr>
17549 <td class="paramkey"></td>
17550 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017551 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010017552 <td class="paramname"><em>border</em>&#160;</td>
17553 </tr>
17554 <tr>
17555 <td></td>
17556 <td>)</td>
17557 <td></td><td></td>
17558 </tr>
17559 </table>
17560</div><div class="memdoc">
17561
Jenkins514be652019-02-28 12:25:18 +000017562<p>Formatted output of the <a class="el" href="structarm__compute_1_1_border_size.xhtml" title="Container for 2D border size.">BorderSize</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017563<dl class="params"><dt>Parameters</dt><dd>
17564 <table class="params">
17565 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17566 <tr><td class="paramdir">[in]</td><td class="paramname">border</td><td>Type to output.</td></tr>
17567 </table>
17568 </dd>
17569</dl>
17570<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010017571
Jenkinsb9abeae2018-11-22 11:58:08 +000017572<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00857">857</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000017573<div class="fragment"><div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160;{</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; os &lt;&lt; border.top &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160; &lt;&lt; border.right &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; &lt;&lt; border.bottom &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00862"></a><span class="lineno"> 862</span>&#160; &lt;&lt; border.left;</div><div class="line"><a name="l00863"></a><span class="lineno"> 863</span>&#160;</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017574<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00395">BorderSize::bottom</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00396">BorderSize::left</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00394">BorderSize::right</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00393">BorderSize::top</a>.</p>
17575
Kaizen8938bd32017-09-28 14:38:23 +010017576</div>
17577</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017578<a id="af15a06b73e1fde15f0809ce07bf1ab7d"></a>
Jenkins514be652019-02-28 12:25:18 +000017579<h2 class="memtitle"><span class="permalink"><a href="#af15a06b73e1fde15f0809ce07bf1ab7d">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[24/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017580
17581<div class="memitem">
17582<div class="memproto">
17583 <table class="memname">
17584 <tr>
17585 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17586 <td>(</td>
17587 <td class="paramtype">::std::ostream &amp;&#160;</td>
17588 <td class="paramname"><em>os</em>, </td>
17589 </tr>
17590 <tr>
17591 <td class="paramkey"></td>
17592 <td></td>
17593 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ac1a1b012674e0f1de071a611391828ad">PaddingList</a> &amp;&#160;</td>
17594 <td class="paramname"><em>padding</em>&#160;</td>
17595 </tr>
17596 <tr>
17597 <td></td>
17598 <td>)</td>
17599 <td></td><td></td>
17600 </tr>
17601 </table>
17602</div><div class="memdoc">
17603
17604<p>Formatted output of the PaddingList type. </p>
17605<dl class="params"><dt>Parameters</dt><dd>
17606 <table class="params">
17607 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17608 <tr><td class="paramdir">[in]</td><td class="paramname">padding</td><td>Type to output.</td></tr>
17609 </table>
17610 </dd>
17611</dl>
17612<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
17613
17614<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00874">874</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000017615<div class="fragment"><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160;{</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;{&quot;</span>;</div><div class="line"><a name="l00877"></a><span class="lineno"> 877</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">auto</span> <span class="keyword">const</span> &amp;p : <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a735a025fce26c1ef147b54426df18181">padding</a>)</div><div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160; {</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;{&quot;</span> &lt;&lt; p.first &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; p.second &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160; }</div><div class="line"><a name="l00881"></a><span class="lineno"> 881</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a735a025fce26c1ef147b54426df18181"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a735a025fce26c1ef147b54426df18181">arm_compute::test::validation::padding</a></div><div class="ttdeci">const PaddingSize padding</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00113">AbsoluteDifference.cpp:113</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017616</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017617<p class="reference">References <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00113">arm_compute::test::validation::padding</a>.</p>
17618
17619</div>
17620</div>
17621<a id="a9caac285297030f50a972095e767aff9"></a>
17622<h2 class="memtitle"><span class="permalink"><a href="#a9caac285297030f50a972095e767aff9">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[25/55]</span></h2>
17623
17624<div class="memitem">
17625<div class="memproto">
17626 <table class="memname">
17627 <tr>
17628 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17629 <td>(</td>
17630 <td class="paramtype">::std::ostream &amp;&#160;</td>
17631 <td class="paramname"><em>os</em>, </td>
17632 </tr>
17633 <tr>
17634 <td class="paramkey"></td>
17635 <td></td>
17636 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#afe9e10e5fdfd1e2665ac17c75c0cacd8">Multiples</a> &amp;&#160;</td>
17637 <td class="paramname"><em>multiples</em>&#160;</td>
17638 </tr>
17639 <tr>
17640 <td></td>
17641 <td>)</td>
17642 <td></td><td></td>
17643 </tr>
17644 </table>
17645</div><div class="memdoc">
17646
17647<p>Formatted output of the Multiples type. </p>
17648<dl class="params"><dt>Parameters</dt><dd>
17649 <table class="params">
17650 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17651 <tr><td class="paramdir">[in]</td><td class="paramname">multiples</td><td>Type to output.</td></tr>
17652 </table>
17653 </dd>
17654</dl>
17655<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
17656
17657<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00892">892</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
17658<div class="fragment"><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160;{</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;(&quot;</span>;</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> i = 0; i &lt; multiples.size() - 1; i++)</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160; {</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160; os &lt;&lt; multiples[i] &lt;&lt; <span class="stringliteral">&quot;, &quot;</span>;</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160; }</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; os &lt;&lt; multiples.back() &lt;&lt; <span class="stringliteral">&quot;)&quot;</span>;</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000017659</div>
17660</div>
17661<a id="a509047aefc691398f1bb60b1f967a98b"></a>
Jenkins514be652019-02-28 12:25:18 +000017662<h2 class="memtitle"><span class="permalink"><a href="#a509047aefc691398f1bb60b1f967a98b">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[26/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017663
Kaizen8938bd32017-09-28 14:38:23 +010017664<div class="memitem">
17665<div class="memproto">
17666 <table class="memname">
17667 <tr>
17668 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17669 <td>(</td>
17670 <td class="paramtype">::std::ostream &amp;&#160;</td>
17671 <td class="paramname"><em>os</em>, </td>
17672 </tr>
17673 <tr>
17674 <td class="paramkey"></td>
17675 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017676 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010017677 <td class="paramname"><em>policy</em>&#160;</td>
17678 </tr>
17679 <tr>
17680 <td></td>
17681 <td>)</td>
17682 <td></td><td></td>
17683 </tr>
17684 </table>
17685</div><div class="memdoc">
17686
17687<p>Formatted output of the InterpolationPolicy type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017688<dl class="params"><dt>Parameters</dt><dd>
17689 <table class="params">
17690 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17691 <tr><td class="paramdir">[in]</td><td class="paramname">policy</td><td>Type to output.</td></tr>
17692 </table>
17693 </dd>
17694</dl>
17695<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010017696
Jenkins514be652019-02-28 12:25:18 +000017697<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00910">910</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
17698<div class="fragment"><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160;{</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160; <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">policy</a>)</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160; {</div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160; <span class="keywordflow">case</span> InterpolationPolicy::NEAREST_NEIGHBOR:</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;NEAREST_NEIGHBOR&quot;</span>;</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; <span class="keywordflow">case</span> InterpolationPolicy::BILINEAR:</div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;BILINEAR&quot;</span>;</div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; <span class="keywordflow">case</span> InterpolationPolicy::AREA:</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;AREA&quot;</span>;</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; }</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160;</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
17699<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad986b73e9d5f47a623a9b6d773c25e34"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">arm_compute::test::validation::policy</a></div><div class="ttdeci">policy</div><div class="ttdef"><b>Definition:</b> <a href="_cast_8cpp_source.xhtml#l00169">Cast.cpp:169</a></div></div>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017700</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017701<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4">AREA</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65">BILINEAR</a>, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2">NEAREST_NEIGHBOR</a>, and <a class="el" href="_cast_8cpp_source.xhtml#l00169">arm_compute::test::validation::policy</a>.</p>
17702
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017703</div>
17704</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017705<a id="aab8eb6dc1ba89bb8a69f1c3845988a2b"></a>
Jenkins514be652019-02-28 12:25:18 +000017706<h2 class="memtitle"><span class="permalink"><a href="#aab8eb6dc1ba89bb8a69f1c3845988a2b">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[27/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017707
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017708<div class="memitem">
17709<div class="memproto">
17710 <table class="memname">
17711 <tr>
17712 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17713 <td>(</td>
17714 <td class="paramtype">::std::ostream &amp;&#160;</td>
17715 <td class="paramname"><em>os</em>, </td>
17716 </tr>
17717 <tr>
17718 <td class="paramkey"></td>
17719 <td></td>
17720 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7b">SamplingPolicy</a> &amp;&#160;</td>
17721 <td class="paramname"><em>policy</em>&#160;</td>
17722 </tr>
17723 <tr>
17724 <td></td>
17725 <td>)</td>
17726 <td></td><td></td>
17727 </tr>
17728 </table>
17729</div><div class="memdoc">
17730
17731<p>Formatted output of the SamplingPolicy type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017732<dl class="params"><dt>Parameters</dt><dd>
17733 <table class="params">
17734 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17735 <tr><td class="paramdir">[in]</td><td class="paramname">policy</td><td>Type to output.</td></tr>
17736 </table>
17737 </dd>
17738</dl>
17739<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017740
Jenkins514be652019-02-28 12:25:18 +000017741<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00937">937</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
17742<div class="fragment"><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160;{</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">policy</a>)</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160; {</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160; <span class="keywordflow">case</span> SamplingPolicy::CENTER:</div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;CENTER&quot;</span>;</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; <span class="keywordflow">case</span> SamplingPolicy::TOP_LEFT:</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;TOP_LEFT&quot;</span>;</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; }</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160;</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
17743<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad986b73e9d5f47a623a9b6d773c25e34"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">arm_compute::test::validation::policy</a></div><div class="ttdeci">policy</div><div class="ttdef"><b>Definition:</b> <a href="_cast_8cpp_source.xhtml#l00169">Cast.cpp:169</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010017744</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017745<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7bac397289ee45877be0cd49811fe245b4e">CENTER</a>, <a class="el" href="_cast_8cpp_source.xhtml#l00169">arm_compute::test::validation::policy</a>, and <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7ba747385047b85ae751f83adb36435a3c1">TOP_LEFT</a>.</p>
17746
Kaizen8938bd32017-09-28 14:38:23 +010017747</div>
17748</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017749<a id="ab398837465010958bfccff032ad1ee51"></a>
Jenkins514be652019-02-28 12:25:18 +000017750<h2 class="memtitle"><span class="permalink"><a href="#ab398837465010958bfccff032ad1ee51">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[28/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017751
Jenkins52ba29e2018-08-29 15:32:11 +000017752<div class="memitem">
17753<div class="memproto">
17754 <table class="memname">
17755 <tr>
17756 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17757 <td>(</td>
17758 <td class="paramtype">::std::ostream &amp;&#160;</td>
17759 <td class="paramname"><em>os</em>, </td>
17760 </tr>
17761 <tr>
17762 <td class="paramkey"></td>
17763 <td></td>
17764 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_info.xhtml">TensorInfo</a> &amp;&#160;</td>
17765 <td class="paramname"><em>info</em>&#160;</td>
17766 </tr>
17767 <tr>
17768 <td></td>
17769 <td>)</td>
17770 <td></td><td></td>
17771 </tr>
17772 </table>
17773</div><div class="memdoc">
17774
Jenkins514be652019-02-28 12:25:18 +000017775<p>Formatted output of the <a class="el" href="classarm__compute_1_1_tensor_info.xhtml" title="Store the tensor&#39;s metadata.">TensorInfo</a> type. </p>
Jenkins52ba29e2018-08-29 15:32:11 +000017776<dl class="params"><dt>Parameters</dt><dd>
17777 <table class="params">
17778 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17779 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
17780 </table>
17781 </dd>
17782</dl>
17783<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
17784
Jenkins514be652019-02-28 12:25:18 +000017785<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00961">961</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
17786<div class="fragment"><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160;{</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;{Shape=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.tensor_shape() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160; &lt;&lt; <span class="stringliteral">&quot;Type=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.data_type() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160; &lt;&lt; <span class="stringliteral">&quot;Channels=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.num_channels() &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000017787</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017788<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
17789
Jenkins52ba29e2018-08-29 15:32:11 +000017790</div>
17791</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017792<a id="a0fc75dce8064a37effa5e71344b6a5d2"></a>
Jenkins514be652019-02-28 12:25:18 +000017793<h2 class="memtitle"><span class="permalink"><a href="#a0fc75dce8064a37effa5e71344b6a5d2">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[29/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017794
Jenkins52ba29e2018-08-29 15:32:11 +000017795<div class="memitem">
17796<div class="memproto">
17797 <table class="memname">
17798 <tr>
17799 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17800 <td>(</td>
17801 <td class="paramtype">::std::ostream &amp;&#160;</td>
17802 <td class="paramname"><em>os</em>, </td>
17803 </tr>
17804 <tr>
17805 <td class="paramkey"></td>
17806 <td></td>
17807 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_g_e_m_m_reshape_info.xhtml">GEMMReshapeInfo</a> &amp;&#160;</td>
17808 <td class="paramname"><em>info</em>&#160;</td>
17809 </tr>
17810 <tr>
17811 <td></td>
17812 <td>)</td>
17813 <td></td><td></td>
17814 </tr>
17815 </table>
17816</div><div class="memdoc">
17817
Jenkins514be652019-02-28 12:25:18 +000017818<p>Formatted output of the <a class="el" href="classarm__compute_1_1_g_e_m_m_reshape_info.xhtml" title="GEMM reshape information class.">GEMMReshapeInfo</a> type. </p>
Jenkins52ba29e2018-08-29 15:32:11 +000017819<dl class="params"><dt>Parameters</dt><dd>
17820 <table class="params">
17821 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17822 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
17823 </table>
17824 </dd>
17825</dl>
17826<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
17827
Jenkins514be652019-02-28 12:25:18 +000017828<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01042">1042</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
17829<div class="fragment"><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;{</div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;{m=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.m() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;n=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.n() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;k=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.k() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;mult_transpose1xW_width=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.mult_transpose1xW_width() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;mult_interleave4x4_height=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.mult_interleave4x4_height();</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160;</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000017830</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017831<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
17832
Jenkins52ba29e2018-08-29 15:32:11 +000017833</div>
17834</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017835<a id="a5fdae5de2d2cf2e7957f0299d17ce5ec"></a>
Jenkins514be652019-02-28 12:25:18 +000017836<h2 class="memtitle"><span class="permalink"><a href="#a5fdae5de2d2cf2e7957f0299d17ce5ec">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[30/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017837
Jenkins52ba29e2018-08-29 15:32:11 +000017838<div class="memitem">
17839<div class="memproto">
17840 <table class="memname">
17841 <tr>
17842 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17843 <td>(</td>
17844 <td class="paramtype">::std::ostream &amp;&#160;</td>
17845 <td class="paramname"><em>os</em>, </td>
17846 </tr>
17847 <tr>
17848 <td class="paramkey"></td>
17849 <td></td>
17850 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_g_e_m_m_info.xhtml">GEMMInfo</a> &amp;&#160;</td>
17851 <td class="paramname"><em>info</em>&#160;</td>
17852 </tr>
17853 <tr>
17854 <td></td>
17855 <td>)</td>
17856 <td></td><td></td>
17857 </tr>
17858 </table>
17859</div><div class="memdoc">
17860
Jenkins514be652019-02-28 12:25:18 +000017861<p>Formatted output of the <a class="el" href="classarm__compute_1_1_g_e_m_m_info.xhtml" title="GEMM information class.">GEMMInfo</a> type. </p>
Jenkins52ba29e2018-08-29 15:32:11 +000017862<dl class="params"><dt>Parameters</dt><dd>
17863 <table class="params">
17864 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17865 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
17866 </table>
17867 </dd>
17868</dl>
17869<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
17870
Jenkins514be652019-02-28 12:25:18 +000017871<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01061">1061</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
17872<div class="fragment"><div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160;{</div><div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;{is_a_reshaped=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.is_a_reshaped() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;is_b_reshaped=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.is_b_reshaped() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;reshape_b_only_on_first_run=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.reshape_b_only_on_first_run() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span>;</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160;</div><div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000017873</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000017874<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
17875
Jenkins52ba29e2018-08-29 15:32:11 +000017876</div>
17877</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017878<a id="a6ed8dc0f587448d14a1a33cbd5fc4f70"></a>
Jenkins514be652019-02-28 12:25:18 +000017879<h2 class="memtitle"><span class="permalink"><a href="#a6ed8dc0f587448d14a1a33cbd5fc4f70">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[31/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017880
Jenkins52ba29e2018-08-29 15:32:11 +000017881<div class="memitem">
17882<div class="memproto">
17883 <table class="memname">
17884 <tr>
17885 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17886 <td>(</td>
17887 <td class="paramtype">::std::ostream &amp;&#160;</td>
17888 <td class="paramname"><em>os</em>, </td>
17889 </tr>
17890 <tr>
17891 <td class="paramkey"></td>
17892 <td></td>
17893 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a> &amp;&#160;</td>
17894 <td class="paramname"><em>dim</em>&#160;</td>
17895 </tr>
17896 <tr>
17897 <td></td>
17898 <td>)</td>
17899 <td></td><td></td>
17900 </tr>
17901 </table>
17902</div><div class="memdoc">
17903
Jenkins514be652019-02-28 12:25:18 +000017904<p>Formatted output of the <a class="el" href="classarm__compute_1_1_window_1_1_dimension.xhtml" title="Describe one of the image&#39;s dimensions with a start, end and step.">Window::Dimension</a> type. </p>
Jenkins52ba29e2018-08-29 15:32:11 +000017905<dl class="params"><dt>Parameters</dt><dd>
17906 <table class="params">
17907 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17908 <tr><td class="paramdir">[in]</td><td class="paramname">dim</td><td>Type to output.</td></tr>
17909 </table>
17910 </dd>
17911</dl>
17912<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
17913
Jenkins514be652019-02-28 12:25:18 +000017914<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01078">1078</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
17915<div class="fragment"><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160;{</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;{start=&quot;</span> &lt;&lt; dim.start() &lt;&lt; <span class="stringliteral">&quot;, end=&quot;</span> &lt;&lt; dim.end() &lt;&lt; <span class="stringliteral">&quot;, step=&quot;</span> &lt;&lt; dim.step() &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000017916<p class="reference">References <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, and <a class="el" href="_window_8h_source.xhtml#l00095">Window::Dimension::step()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000017917
Jenkins52ba29e2018-08-29 15:32:11 +000017918</div>
17919</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017920<a id="afc6e49991e36423027a467eab1e405b2"></a>
Jenkins514be652019-02-28 12:25:18 +000017921<h2 class="memtitle"><span class="permalink"><a href="#afc6e49991e36423027a467eab1e405b2">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[32/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017922
Jenkins52ba29e2018-08-29 15:32:11 +000017923<div class="memitem">
17924<div class="memproto">
17925 <table class="memname">
17926 <tr>
17927 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17928 <td>(</td>
17929 <td class="paramtype">::std::ostream &amp;&#160;</td>
17930 <td class="paramname"><em>os</em>, </td>
17931 </tr>
17932 <tr>
17933 <td class="paramkey"></td>
17934 <td></td>
17935 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
17936 <td class="paramname"><em>win</em>&#160;</td>
17937 </tr>
17938 <tr>
17939 <td></td>
17940 <td>)</td>
17941 <td></td><td></td>
17942 </tr>
17943 </table>
17944</div><div class="memdoc">
17945
Jenkins514be652019-02-28 12:25:18 +000017946<p>Formatted output of the <a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> type. </p>
Jenkins52ba29e2018-08-29 15:32:11 +000017947<dl class="params"><dt>Parameters</dt><dd>
17948 <table class="params">
17949 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17950 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td>Type to output.</td></tr>
17951 </table>
17952 </dd>
17953</dl>
17954<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
17955
Jenkins514be652019-02-28 12:25:18 +000017956<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01091">1091</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
17957<div class="fragment"><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160;{</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;{&quot;</span>;</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; Coordinates::num_max_dimensions; i++)</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160; {</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160; <span class="keywordflow">if</span>(i &gt; 0)</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160; {</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;, &quot;</span>;</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160; }</div><div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160; os &lt;&lt; win[i];</div><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160; }</div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160;</div><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000017958<p class="reference">References <a class="el" href="_dimensions_8h_source.xhtml#l00045">Dimensions&lt; int &gt;::num_max_dimensions</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000017959
Jenkins52ba29e2018-08-29 15:32:11 +000017960</div>
17961</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000017962<a id="a17881750c427aedd95deba46a4366ace"></a>
Jenkins514be652019-02-28 12:25:18 +000017963<h2 class="memtitle"><span class="permalink"><a href="#a17881750c427aedd95deba46a4366ace">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[33/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000017964
Kaizen8938bd32017-09-28 14:38:23 +010017965<div class="memitem">
17966<div class="memproto">
17967 <table class="memname">
17968 <tr>
17969 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
17970 <td>(</td>
17971 <td class="paramtype">::std::ostream &amp;&#160;</td>
17972 <td class="paramname"><em>os</em>, </td>
17973 </tr>
17974 <tr>
17975 <td class="paramkey"></td>
17976 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000017977 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_rectangle.xhtml">Rectangle</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010017978 <td class="paramname"><em>rect</em>&#160;</td>
17979 </tr>
17980 <tr>
17981 <td></td>
17982 <td>)</td>
17983 <td></td><td></td>
17984 </tr>
17985 </table>
17986</div><div class="memdoc">
17987
Jenkins514be652019-02-28 12:25:18 +000017988<p>Formatted output of the <a class="el" href="structarm__compute_1_1_rectangle.xhtml" title="Rectangle type.">Rectangle</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010017989<dl class="params"><dt>Parameters</dt><dd>
17990 <table class="params">
17991 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
17992 <tr><td class="paramdir">[in]</td><td class="paramname">rect</td><td>Type to output.</td></tr>
17993 </table>
17994 </dd>
17995</dl>
17996<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010017997
Jenkins514be652019-02-28 12:25:18 +000017998<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01178">1178</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
17999<div class="fragment"><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160;{</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160; os &lt;&lt; rect.width &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; rect.height;</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;+&quot;</span> &lt;&lt; rect.x &lt;&lt; <span class="stringliteral">&quot;+&quot;</span> &lt;&lt; rect.y;</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160;</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160;}</div></div><!-- fragment -->
18000<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00477">Rectangle::height</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00476">Rectangle::width</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00474">Rectangle::x</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00475">Rectangle::y</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +010018001
Kaizen8938bd32017-09-28 14:38:23 +010018002</div>
18003</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018004<a id="a8af36ae3a3613112c3a95e57f606359a"></a>
Jenkins514be652019-02-28 12:25:18 +000018005<h2 class="memtitle"><span class="permalink"><a href="#a8af36ae3a3613112c3a95e57f606359a">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[34/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018006
Kaizen8938bd32017-09-28 14:38:23 +010018007<div class="memitem">
18008<div class="memproto">
18009 <table class="memname">
18010 <tr>
18011 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18012 <td>(</td>
18013 <td class="paramtype">::std::ostream &amp;&#160;</td>
18014 <td class="paramname"><em>os</em>, </td>
18015 </tr>
18016 <tr>
18017 <td class="paramkey"></td>
18018 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000018019 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010018020 <td class="paramname"><em>pad_stride_info</em>&#160;</td>
18021 </tr>
18022 <tr>
18023 <td></td>
18024 <td>)</td>
18025 <td></td><td></td>
18026 </tr>
18027 </table>
18028</div><div class="memdoc">
18029
Jenkins514be652019-02-28 12:25:18 +000018030<p>Formatted output of the <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml" title="Padding and stride information class.">PadStrideInfo</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010018031<dl class="params"><dt>Parameters</dt><dd>
18032 <table class="params">
18033 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
18034 <tr><td class="paramdir">[in]</td><td class="paramname">pad_stride_info</td><td>Type to output.</td></tr>
18035 </table>
18036 </dd>
18037</dl>
18038<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010018039
Jenkins514be652019-02-28 12:25:18 +000018040<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01193">1193</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18041<div class="fragment"><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160;{</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160; os &lt;&lt; pad_stride_info.stride().first &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; pad_stride_info.stride().second;</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;;&quot;</span>;</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160; os &lt;&lt; pad_stride_info.pad_left() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; pad_stride_info.pad_right() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160; &lt;&lt; pad_stride_info.pad_top() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; pad_stride_info.pad_bottom();</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160;</div><div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>&#160;}</div></div><!-- fragment -->
18042<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00810">PadStrideInfo::pad_bottom()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00795">PadStrideInfo::pad_left()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00800">PadStrideInfo::pad_right()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00805">PadStrideInfo::pad_top()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00769">PadStrideInfo::stride()</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +010018043
Kaizen8938bd32017-09-28 14:38:23 +010018044</div>
18045</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018046<a id="a4287c6842a60e5f6bf309e55f8813527"></a>
Jenkins514be652019-02-28 12:25:18 +000018047<h2 class="memtitle"><span class="permalink"><a href="#a4287c6842a60e5f6bf309e55f8813527">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[35/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018048
Kaizen8938bd32017-09-28 14:38:23 +010018049<div class="memitem">
18050<div class="memproto">
18051 <table class="memname">
18052 <tr>
18053 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18054 <td>(</td>
18055 <td class="paramtype">::std::ostream &amp;&#160;</td>
18056 <td class="paramname"><em>os</em>, </td>
18057 </tr>
18058 <tr>
18059 <td class="paramkey"></td>
18060 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000018061 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6f">ConvertPolicy</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010018062 <td class="paramname"><em>policy</em>&#160;</td>
18063 </tr>
18064 <tr>
18065 <td></td>
18066 <td>)</td>
18067 <td></td><td></td>
18068 </tr>
18069 </table>
18070</div><div class="memdoc">
18071
Jenkinsb3a371b2018-05-23 11:36:53 +010018072<p>Formatted output of the ConvertPolicy type. </p>
18073<dl class="params"><dt>Parameters</dt><dd>
18074 <table class="params">
18075 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
18076 <tr><td class="paramdir">[in]</td><td class="paramname">policy</td><td>Type to output.</td></tr>
18077 </table>
18078 </dd>
18079</dl>
18080<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010018081
Jenkins514be652019-02-28 12:25:18 +000018082<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01301">1301</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18083<div class="fragment"><div class="line"><a name="l01302"></a><span class="lineno"> 1302</span>&#160;{</div><div class="line"><a name="l01303"></a><span class="lineno"> 1303</span>&#160; <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">policy</a>)</div><div class="line"><a name="l01304"></a><span class="lineno"> 1304</span>&#160; {</div><div class="line"><a name="l01305"></a><span class="lineno"> 1305</span>&#160; <span class="keywordflow">case</span> ConvertPolicy::WRAP:</div><div class="line"><a name="l01306"></a><span class="lineno"> 1306</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;WRAP&quot;</span>;</div><div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160; <span class="keywordflow">case</span> ConvertPolicy::SATURATE:</div><div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;SATURATE&quot;</span>;</div><div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01311"></a><span class="lineno"> 1311</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01312"></a><span class="lineno"> 1312</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l01313"></a><span class="lineno"> 1313</span>&#160; }</div><div class="line"><a name="l01314"></a><span class="lineno"> 1314</span>&#160;</div><div class="line"><a name="l01315"></a><span class="lineno"> 1315</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
18084<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad986b73e9d5f47a623a9b6d773c25e34"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">arm_compute::test::validation::policy</a></div><div class="ttdeci">policy</div><div class="ttdef"><b>Definition:</b> <a href="_cast_8cpp_source.xhtml#l00169">Cast.cpp:169</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010018085</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000018086<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="_cast_8cpp_source.xhtml#l00169">arm_compute::test::validation::policy</a>, <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fa4729d95f983955f0d93a30179deb2b86">SATURATE</a>, and <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6fae1c8555fcf0ea2bb648a6fd527d658c0">WRAP</a>.</p>
18087
18088</div>
18089</div>
18090<a id="a7b94aeca99a5d6b1a5723014a01faac0"></a>
18091<h2 class="memtitle"><span class="permalink"><a href="#a7b94aeca99a5d6b1a5723014a01faac0">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[36/55]</span></h2>
18092
18093<div class="memitem">
18094<div class="memproto">
18095 <table class="memname">
18096 <tr>
18097 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18098 <td>(</td>
18099 <td class="paramtype">::std::ostream &amp;&#160;</td>
18100 <td class="paramname"><em>os</em>, </td>
18101 </tr>
18102 <tr>
18103 <td class="paramkey"></td>
18104 <td></td>
18105 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8ae">ArithmeticOperation</a> &amp;&#160;</td>
18106 <td class="paramname"><em>op</em>&#160;</td>
18107 </tr>
18108 <tr>
18109 <td></td>
18110 <td>)</td>
18111 <td></td><td></td>
18112 </tr>
18113 </table>
18114</div><div class="memdoc">
18115
18116<p>Formatted output of the ArithmeticOperation type. </p>
18117<dl class="params"><dt>Parameters</dt><dd>
18118 <table class="params">
18119 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
18120 <tr><td class="paramdir">[in]</td><td class="paramname">op</td><td>Operation to output.</td></tr>
18121 </table>
18122 </dd>
18123</dl>
18124<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
18125
18126<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01332">1332</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18127<div class="fragment"><div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>&#160;{</div><div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>&#160; <span class="keywordflow">switch</span>(op)</div><div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>&#160; {</div><div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>&#160; <span class="keywordflow">case</span> <a class="code" href="elementwise__operation_8cl.xhtml#af3b709fb668cf93ca09e2a46a2a031a8">ArithmeticOperation::ADD</a>:</div><div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;ADD&quot;</span>;</div><div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>&#160; <span class="keywordflow">case</span> <a class="code" href="elementwise__operation_8cl.xhtml#aafc2c4f262a0686c07f86c7d2e1d8d14">ArithmeticOperation::SUB</a>:</div><div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;SUB&quot;</span>;</div><div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>&#160; <span class="keywordflow">case</span> <a class="code" href="elementwise__operation_8cl.xhtml#a49f6fecffd852cda3b0ece53dcbb2b87">ArithmeticOperation::DIV</a>:</div><div class="line"><a name="l01343"></a><span class="lineno"> 1343</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;DIV&quot;</span>;</div><div class="line"><a name="l01344"></a><span class="lineno"> 1344</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>&#160; <span class="keywordflow">case</span> <a class="code" href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">ArithmeticOperation::MAX</a>:</div><div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;MAX&quot;</span>;</div><div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>&#160; <span class="keywordflow">case</span> <a class="code" href="elementwise__operation_8cl.xhtml#a74e75242132eaabbc1c512488a135926">ArithmeticOperation::MIN</a>:</div><div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;MIN&quot;</span>;</div><div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160; <span class="keywordflow">case</span> <a class="code" href="elementwise__operation_8cl.xhtml#ab05bd244cb8823c69d6dce6a23a758fd">ArithmeticOperation::SQUARED_DIFF</a>:</div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;SQUARED_DIFF&quot;</span>;</div><div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l01356"></a><span class="lineno"> 1356</span>&#160; }</div><div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160;</div><div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
18128<div class="ttc" id="elementwise__operation_8cl_xhtml_af3b709fb668cf93ca09e2a46a2a031a8"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#af3b709fb668cf93ca09e2a46a2a031a8">ADD</a></div><div class="ttdeci">#define ADD(x, y)</div><div class="ttdoc">List of all the operations supported by this kernel.</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00032">elementwise_operation.cl:32</a></div></div>
18129<div class="ttc" id="elementwise__operation_8cl_xhtml_a74e75242132eaabbc1c512488a135926"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#a74e75242132eaabbc1c512488a135926">MIN</a></div><div class="ttdeci">#define MIN(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00037">elementwise_operation.cl:37</a></div></div>
18130<div class="ttc" id="elementwise__operation_8cl_xhtml_aafc2c4f262a0686c07f86c7d2e1d8d14"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#aafc2c4f262a0686c07f86c7d2e1d8d14">SUB</a></div><div class="ttdeci">#define SUB(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00033">elementwise_operation.cl:33</a></div></div>
18131<div class="ttc" id="elementwise__operation_8cl_xhtml_a49f6fecffd852cda3b0ece53dcbb2b87"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#a49f6fecffd852cda3b0ece53dcbb2b87">DIV</a></div><div class="ttdeci">#define DIV(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00039">elementwise_operation.cl:39</a></div></div>
18132<div class="ttc" id="elementwise__operation_8cl_xhtml_aacc3ee1a7f283f8ef65cea31f4436a95"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">MAX</a></div><div class="ttdeci">#define MAX(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00036">elementwise_operation.cl:36</a></div></div>
18133<div class="ttc" id="elementwise__operation_8cl_xhtml_ab05bd244cb8823c69d6dce6a23a758fd"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#ab05bd244cb8823c69d6dce6a23a758fd">SQUARED_DIFF</a></div><div class="ttdeci">#define SQUARED_DIFF(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00038">elementwise_operation.cl:38</a></div></div>
18134</div><!-- fragment -->
18135<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8aea9eeb52badb613229884838847294b90d">ADD</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8aea29bbf66f7f8529ec47e394fb5a36c646">DIV</a>, <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>, <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858ace31e2a082d17e038fcc6e3006166653">MIN</a>, <a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8aea46ea186b87dc545033d86ba8d6e63916">SQUARED_DIFF</a>, and <a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8aea241dd841abade20fcb27b8a9f494e1eb">SUB</a>.</p>
18136
Kaizen8938bd32017-09-28 14:38:23 +010018137</div>
18138</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018139<a id="a292505a0ec686541cfe0dcfd1d651ec5"></a>
Jenkins514be652019-02-28 12:25:18 +000018140<h2 class="memtitle"><span class="permalink"><a href="#a292505a0ec686541cfe0dcfd1d651ec5">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[37/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018141
Kaizen8938bd32017-09-28 14:38:23 +010018142<div class="memitem">
18143<div class="memproto">
18144 <table class="memname">
18145 <tr>
18146 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18147 <td>(</td>
18148 <td class="paramtype">::std::ostream &amp;&#160;</td>
18149 <td class="paramname"><em>os</em>, </td>
18150 </tr>
18151 <tr>
18152 <td class="paramkey"></td>
18153 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000018154 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45b">ReductionOperation</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010018155 <td class="paramname"><em>op</em>&#160;</td>
18156 </tr>
18157 <tr>
18158 <td></td>
18159 <td>)</td>
18160 <td></td><td></td>
18161 </tr>
18162 </table>
18163</div><div class="memdoc">
18164
18165<p>Formatted output of the Reduction Operations. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010018166<dl class="params"><dt>Parameters</dt><dd>
18167 <table class="params">
18168 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
18169 <tr><td class="paramdir">[in]</td><td class="paramname">op</td><td>Type to output.</td></tr>
18170 </table>
18171 </dd>
18172</dl>
18173<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010018174
Jenkins514be652019-02-28 12:25:18 +000018175<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01381">1381</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18176<div class="fragment"><div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>&#160;{</div><div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>&#160; <span class="keywordflow">switch</span>(op)</div><div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>&#160; {</div><div class="line"><a name="l01385"></a><span class="lineno"> 1385</span>&#160; <span class="keywordflow">case</span> ReductionOperation::SUM:</div><div class="line"><a name="l01386"></a><span class="lineno"> 1386</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;SUM&quot;</span>;</div><div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>&#160; <span class="keywordflow">case</span> ReductionOperation::SUM_SQUARE:</div><div class="line"><a name="l01389"></a><span class="lineno"> 1389</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;SUM_SQUARE&quot;</span>;</div><div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160; <span class="keywordflow">case</span> ReductionOperation::MEAN_SUM:</div><div class="line"><a name="l01392"></a><span class="lineno"> 1392</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;MEAN_SUM&quot;</span>;</div><div class="line"><a name="l01393"></a><span class="lineno"> 1393</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>&#160; <span class="keywordflow">case</span> ReductionOperation::ARG_IDX_MAX:</div><div class="line"><a name="l01395"></a><span class="lineno"> 1395</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;ARG_IDX_MAX&quot;</span>;</div><div class="line"><a name="l01396"></a><span class="lineno"> 1396</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>&#160; <span class="keywordflow">case</span> ReductionOperation::ARG_IDX_MIN:</div><div class="line"><a name="l01398"></a><span class="lineno"> 1398</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;ARG_IDX_MIN&quot;</span>;</div><div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160; <span class="keywordflow">case</span> ReductionOperation::PROD:</div><div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;PROD&quot;</span>;</div><div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01404"></a><span class="lineno"> 1404</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l01405"></a><span class="lineno"> 1405</span>&#160; }</div><div class="line"><a name="l01406"></a><span class="lineno"> 1406</span>&#160;</div><div class="line"><a name="l01407"></a><span class="lineno"> 1407</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01408"></a><span class="lineno"> 1408</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010018177</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000018178<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba654fed6e9b6c154d04bcaa439e32d0d5">ARG_IDX_MAX</a>, <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba39102811589b9a0d7a6aa8721663b4d1">ARG_IDX_MIN</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45bafc54513dae613e117ffc4169e48bfce5">MEAN_SUM</a>, <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45bac8074bb318fb85693233e64acc64c1ed">PROD</a>, <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba6970bdc2201030b9c03fbdcf3973858a">SUM</a>, and <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45ba2ce6e134b828b72fad160fa17c8d1b64">SUM_SQUARE</a>.</p>
18179
18180</div>
18181</div>
18182<a id="aac34f5e54ad35f26328f8706b3d28b43"></a>
18183<h2 class="memtitle"><span class="permalink"><a href="#aac34f5e54ad35f26328f8706b3d28b43">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[38/55]</span></h2>
18184
18185<div class="memitem">
18186<div class="memproto">
18187 <table class="memname">
18188 <tr>
18189 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18190 <td>(</td>
18191 <td class="paramtype">::std::ostream &amp;&#160;</td>
18192 <td class="paramname"><em>os</em>, </td>
18193 </tr>
18194 <tr>
18195 <td class="paramkey"></td>
18196 <td></td>
18197 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58c">ComparisonOperation</a> &amp;&#160;</td>
18198 <td class="paramname"><em>op</em>&#160;</td>
18199 </tr>
18200 <tr>
18201 <td></td>
18202 <td>)</td>
18203 <td></td><td></td>
18204 </tr>
18205 </table>
18206</div><div class="memdoc">
18207
18208<p>Formatted output of the Comparison Operations. </p>
18209<dl class="params"><dt>Parameters</dt><dd>
18210 <table class="params">
18211 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
18212 <tr><td class="paramdir">[in]</td><td class="paramname">op</td><td>Type to output.</td></tr>
18213 </table>
18214 </dd>
18215</dl>
18216<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
18217
18218<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01430">1430</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18219<div class="fragment"><div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>&#160;{</div><div class="line"><a name="l01432"></a><span class="lineno"> 1432</span>&#160; <span class="keywordflow">switch</span>(op)</div><div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>&#160; {</div><div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>&#160; <span class="keywordflow">case</span> ComparisonOperation::Equal:</div><div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;Equal&quot;</span>;</div><div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160; <span class="keywordflow">case</span> ComparisonOperation::NotEqual:</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;NotEqual&quot;</span>;</div><div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>&#160; <span class="keywordflow">case</span> ComparisonOperation::Greater:</div><div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;Greater&quot;</span>;</div><div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01443"></a><span class="lineno"> 1443</span>&#160; <span class="keywordflow">case</span> ComparisonOperation::GreaterEqual:</div><div class="line"><a name="l01444"></a><span class="lineno"> 1444</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;GreaterEqual&quot;</span>;</div><div class="line"><a name="l01445"></a><span class="lineno"> 1445</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01446"></a><span class="lineno"> 1446</span>&#160; <span class="keywordflow">case</span> ComparisonOperation::Less:</div><div class="line"><a name="l01447"></a><span class="lineno"> 1447</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;Less&quot;</span>;</div><div class="line"><a name="l01448"></a><span class="lineno"> 1448</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01449"></a><span class="lineno"> 1449</span>&#160; <span class="keywordflow">case</span> ComparisonOperation::LessEqual:</div><div class="line"><a name="l01450"></a><span class="lineno"> 1450</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;LessEqual&quot;</span>;</div><div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160; }</div><div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>&#160;</div><div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
18220</div><!-- fragment -->
18221<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58caf5f286e73bda105e538310b3190f75c5">Equal</a>, <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">Greater</a>, <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca758b05d899def79c9eb864ad4f96be1f">GreaterEqual</a>, <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca1cfdf0e8d0c87a228c1f40d9bee7888b">Less</a>, <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58cad3e6fdac55bb7b0edd7834c968ba1f38">LessEqual</a>, and <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58ca19bb0af2c3c530538cb41aff7f235b96">NotEqual</a>.</p>
18222
18223</div>
18224</div>
18225<a id="accfc6f2e5fb354e1fb19a7067b6efdec"></a>
18226<h2 class="memtitle"><span class="permalink"><a href="#accfc6f2e5fb354e1fb19a7067b6efdec">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[39/55]</span></h2>
18227
18228<div class="memitem">
18229<div class="memproto">
18230 <table class="memname">
18231 <tr>
18232 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18233 <td>(</td>
18234 <td class="paramtype">::std::ostream &amp;&#160;</td>
18235 <td class="paramname"><em>os</em>, </td>
18236 </tr>
18237 <tr>
18238 <td class="paramkey"></td>
18239 <td></td>
18240 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936d">ElementWiseUnary</a> &amp;&#160;</td>
18241 <td class="paramname"><em>op</em>&#160;</td>
18242 </tr>
18243 <tr>
18244 <td></td>
18245 <td>)</td>
18246 <td></td><td></td>
18247 </tr>
18248 </table>
18249</div><div class="memdoc">
18250
18251<p>Formatted output of the Elementwise unary Operations. </p>
18252<dl class="params"><dt>Parameters</dt><dd>
18253 <table class="params">
18254 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
18255 <tr><td class="paramdir">[in]</td><td class="paramname">op</td><td>Type to output.</td></tr>
18256 </table>
18257 </dd>
18258</dl>
18259<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
18260
18261<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01466">1466</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18262<div class="fragment"><div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>&#160;{</div><div class="line"><a name="l01468"></a><span class="lineno"> 1468</span>&#160; <span class="keywordflow">switch</span>(op)</div><div class="line"><a name="l01469"></a><span class="lineno"> 1469</span>&#160; {</div><div class="line"><a name="l01470"></a><span class="lineno"> 1470</span>&#160; <span class="keywordflow">case</span> ElementWiseUnary::RSQRT:</div><div class="line"><a name="l01471"></a><span class="lineno"> 1471</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;RSQRT&quot;</span>;</div><div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01473"></a><span class="lineno"> 1473</span>&#160; <span class="keywordflow">case</span> ElementWiseUnary::EXP:</div><div class="line"><a name="l01474"></a><span class="lineno"> 1474</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;EXP&quot;</span>;</div><div class="line"><a name="l01475"></a><span class="lineno"> 1475</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01476"></a><span class="lineno"> 1476</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01477"></a><span class="lineno"> 1477</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160; }</div><div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>&#160;</div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01481"></a><span class="lineno"> 1481</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
18263</div><!-- fragment -->
18264<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936da8c670f8c37b95e1ed14a0ce414b049c7">EXP</a>, and <a class="el" href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936da66bac724670f51e77f3688d33ca0d781">RSQRT</a>.</p>
18265
Kaizen8938bd32017-09-28 14:38:23 +010018266</div>
18267</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018268<a id="a9a2e48a508dc85b7280f955876bb4462"></a>
Jenkins514be652019-02-28 12:25:18 +000018269<h2 class="memtitle"><span class="permalink"><a href="#a9a2e48a508dc85b7280f955876bb4462">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[40/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018270
Kaizen8938bd32017-09-28 14:38:23 +010018271<div class="memitem">
18272<div class="memproto">
18273 <table class="memname">
18274 <tr>
18275 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18276 <td>(</td>
18277 <td class="paramtype">::std::ostream &amp;&#160;</td>
18278 <td class="paramname"><em>os</em>, </td>
18279 </tr>
18280 <tr>
18281 <td class="paramkey"></td>
18282 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000018283 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_key_point.xhtml">KeyPoint</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010018284 <td class="paramname"><em>point</em>&#160;</td>
18285 </tr>
18286 <tr>
18287 <td></td>
18288 <td>)</td>
18289 <td></td><td></td>
18290 </tr>
18291 </table>
18292</div><div class="memdoc">
18293
Jenkins514be652019-02-28 12:25:18 +000018294<p>Formatted output of the <a class="el" href="structarm__compute_1_1_key_point.xhtml" title="Keypoint type.">KeyPoint</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010018295<dl class="params"><dt>Parameters</dt><dd>
18296 <table class="params">
18297 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
18298 <tr><td class="paramdir">[in]</td><td class="paramname">point</td><td>Type to output.</td></tr>
18299 </table>
18300 </dd>
18301</dl>
18302<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010018303
Jenkins514be652019-02-28 12:25:18 +000018304<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01587">1587</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18305<div class="fragment"><div class="line"><a name="l01588"></a><span class="lineno"> 1588</span>&#160;{</div><div class="line"><a name="l01589"></a><span class="lineno"> 1589</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;{x=&quot;</span> &lt;&lt; point.x &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>&#160; &lt;&lt; <span class="stringliteral">&quot;y=&quot;</span> &lt;&lt; point.y &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01591"></a><span class="lineno"> 1591</span>&#160; &lt;&lt; <span class="stringliteral">&quot;strength=&quot;</span> &lt;&lt; point.strength &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01592"></a><span class="lineno"> 1592</span>&#160; &lt;&lt; <span class="stringliteral">&quot;scale=&quot;</span> &lt;&lt; point.scale &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01593"></a><span class="lineno"> 1593</span>&#160; &lt;&lt; <span class="stringliteral">&quot;orientation=&quot;</span> &lt;&lt; point.orientation &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160; &lt;&lt; <span class="stringliteral">&quot;tracking_status=&quot;</span> &lt;&lt; point.tracking_status &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>&#160; &lt;&lt; <span class="stringliteral">&quot;error=&quot;</span> &lt;&lt; point.error &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>&#160;</div><div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>&#160;}</div></div><!-- fragment -->
18306<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00465">KeyPoint::error</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00463">KeyPoint::orientation</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00462">KeyPoint::scale</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00461">KeyPoint::strength</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00464">KeyPoint::tracking_status</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00459">KeyPoint::x</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00460">KeyPoint::y</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +010018307
Anthony Barbier8140e1e2017-12-14 23:48:46 +000018308</div>
18309</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018310<a id="abe52a76af2aa88876d54ce8a5969e509"></a>
Jenkins514be652019-02-28 12:25:18 +000018311<h2 class="memtitle"><span class="permalink"><a href="#abe52a76af2aa88876d54ce8a5969e509">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[41/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018312
Anthony Barbier8140e1e2017-12-14 23:48:46 +000018313<div class="memitem">
18314<div class="memproto">
18315 <table class="memname">
18316 <tr>
18317 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18318 <td>(</td>
18319 <td class="paramtype">::std::ostream &amp;&#160;</td>
18320 <td class="paramname"><em>os</em>, </td>
18321 </tr>
18322 <tr>
18323 <td class="paramkey"></td>
18324 <td></td>
18325 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72">PhaseType</a> &amp;&#160;</td>
18326 <td class="paramname"><em>phase_type</em>&#160;</td>
18327 </tr>
18328 <tr>
18329 <td></td>
18330 <td>)</td>
18331 <td></td><td></td>
18332 </tr>
18333 </table>
18334</div><div class="memdoc">
18335
18336<p>Formatted output of the PhaseType type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010018337<dl class="params"><dt>Parameters</dt><dd>
18338 <table class="params">
18339 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
18340 <tr><td class="paramdir">[in]</td><td class="paramname">phase_type</td><td>Type to output.</td></tr>
18341 </table>
18342 </dd>
18343</dl>
18344<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000018345
Jenkins514be652019-02-28 12:25:18 +000018346<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01607">1607</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18347<div class="fragment"><div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>&#160;{</div><div class="line"><a name="l01609"></a><span class="lineno"> 1609</span>&#160; <span class="keywordflow">switch</span>(phase_type)</div><div class="line"><a name="l01610"></a><span class="lineno"> 1610</span>&#160; {</div><div class="line"><a name="l01611"></a><span class="lineno"> 1611</span>&#160; <span class="keywordflow">case</span> PhaseType::SIGNED:</div><div class="line"><a name="l01612"></a><span class="lineno"> 1612</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;SIGNED&quot;</span>;</div><div class="line"><a name="l01613"></a><span class="lineno"> 1613</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>&#160; <span class="keywordflow">case</span> PhaseType::UNSIGNED:</div><div class="line"><a name="l01615"></a><span class="lineno"> 1615</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;UNSIGNED&quot;</span>;</div><div class="line"><a name="l01616"></a><span class="lineno"> 1616</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01617"></a><span class="lineno"> 1617</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l01619"></a><span class="lineno"> 1619</span>&#160; }</div><div class="line"><a name="l01620"></a><span class="lineno"> 1620</span>&#160;</div><div class="line"><a name="l01621"></a><span class="lineno"> 1621</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01622"></a><span class="lineno"> 1622</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010018348</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000018349<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72a6898b46a1cde8a1572e2722c44c5ab07">SIGNED</a>, and <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72aaf36b47f395cd01f48b8fc1013665054">UNSIGNED</a>.</p>
18350
Anthony Barbierdbdab852017-06-23 15:42:00 +010018351</div>
18352</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018353<a id="a530d86eec3dbd22cab6336ffdceb0d37"></a>
Jenkins514be652019-02-28 12:25:18 +000018354<h2 class="memtitle"><span class="permalink"><a href="#a530d86eec3dbd22cab6336ffdceb0d37">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[42/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018355
Anthony Barbier8140e1e2017-12-14 23:48:46 +000018356<div class="memitem">
18357<div class="memproto">
18358 <table class="memname">
18359 <tr>
18360 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18361 <td>(</td>
18362 <td class="paramtype">::std::ostream &amp;&#160;</td>
18363 <td class="paramname"><em>os</em>, </td>
18364 </tr>
18365 <tr>
18366 <td class="paramkey"></td>
18367 <td></td>
18368 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8a">MagnitudeType</a> &amp;&#160;</td>
18369 <td class="paramname"><em>magnitude_type</em>&#160;</td>
18370 </tr>
18371 <tr>
18372 <td></td>
18373 <td>)</td>
18374 <td></td><td></td>
18375 </tr>
18376 </table>
18377</div><div class="memdoc">
18378
18379<p>Formatted output of the MagnitudeType type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010018380<dl class="params"><dt>Parameters</dt><dd>
18381 <table class="params">
18382 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
18383 <tr><td class="paramdir">[in]</td><td class="paramname">magnitude_type</td><td>Type to output.</td></tr>
18384 </table>
18385 </dd>
18386</dl>
18387<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000018388
Jenkins514be652019-02-28 12:25:18 +000018389<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01644">1644</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18390<div class="fragment"><div class="line"><a name="l01645"></a><span class="lineno"> 1645</span>&#160;{</div><div class="line"><a name="l01646"></a><span class="lineno"> 1646</span>&#160; <span class="keywordflow">switch</span>(magnitude_type)</div><div class="line"><a name="l01647"></a><span class="lineno"> 1647</span>&#160; {</div><div class="line"><a name="l01648"></a><span class="lineno"> 1648</span>&#160; <span class="keywordflow">case</span> MagnitudeType::L1NORM:</div><div class="line"><a name="l01649"></a><span class="lineno"> 1649</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;L1NORM&quot;</span>;</div><div class="line"><a name="l01650"></a><span class="lineno"> 1650</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01651"></a><span class="lineno"> 1651</span>&#160; <span class="keywordflow">case</span> MagnitudeType::L2NORM:</div><div class="line"><a name="l01652"></a><span class="lineno"> 1652</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;L2NORM&quot;</span>;</div><div class="line"><a name="l01653"></a><span class="lineno"> 1653</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01655"></a><span class="lineno"> 1655</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>&#160; }</div><div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>&#160;</div><div class="line"><a name="l01658"></a><span class="lineno"> 1658</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01659"></a><span class="lineno"> 1659</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000018391</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000018392<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aac2f1be73bf576190d1f42bdaf5162ae8">L1NORM</a>, and <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8aad927ac799e8b24f80fc80d89b2eb7131">L2NORM</a>.</p>
18393
Anthony Barbier8140e1e2017-12-14 23:48:46 +000018394</div>
18395</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018396<a id="a5e7a61df2b926347b42ecadf8bcc8969"></a>
Jenkins514be652019-02-28 12:25:18 +000018397<h2 class="memtitle"><span class="permalink"><a href="#a5e7a61df2b926347b42ecadf8bcc8969">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[43/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018398
Anthony Barbierf45d5a92018-01-24 16:23:15 +000018399<div class="memitem">
18400<div class="memproto">
18401 <table class="memname">
18402 <tr>
18403 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18404 <td>(</td>
18405 <td class="paramtype">::std::ostream &amp;&#160;</td>
18406 <td class="paramname"><em>os</em>, </td>
18407 </tr>
18408 <tr>
18409 <td class="paramkey"></td>
18410 <td></td>
18411 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3">HOGNormType</a> &amp;&#160;</td>
18412 <td class="paramname"><em>norm_type</em>&#160;</td>
18413 </tr>
18414 <tr>
18415 <td></td>
18416 <td>)</td>
18417 <td></td><td></td>
18418 </tr>
18419 </table>
18420</div><div class="memdoc">
18421
18422<p>Formatted output of the HOGNormType type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010018423<dl class="params"><dt>Parameters</dt><dd>
18424 <table class="params">
18425 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
18426 <tr><td class="paramdir">[in]</td><td class="paramname">norm_type</td><td>Type to output</td></tr>
18427 </table>
18428 </dd>
18429</dl>
18430<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbierf45d5a92018-01-24 16:23:15 +000018431
Jenkins514be652019-02-28 12:25:18 +000018432<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01681">1681</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18433<div class="fragment"><div class="line"><a name="l01682"></a><span class="lineno"> 1682</span>&#160;{</div><div class="line"><a name="l01683"></a><span class="lineno"> 1683</span>&#160; <span class="keywordflow">switch</span>(norm_type)</div><div class="line"><a name="l01684"></a><span class="lineno"> 1684</span>&#160; {</div><div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>&#160; <span class="keywordflow">case</span> HOGNormType::L1_NORM:</div><div class="line"><a name="l01686"></a><span class="lineno"> 1686</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;L1_NORM&quot;</span>;</div><div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>&#160; <span class="keywordflow">case</span> HOGNormType::L2_NORM:</div><div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;L2_NORM&quot;</span>;</div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>&#160; <span class="keywordflow">case</span> HOGNormType::L2HYS_NORM:</div><div class="line"><a name="l01692"></a><span class="lineno"> 1692</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;L2HYS_NORM&quot;</span>;</div><div class="line"><a name="l01693"></a><span class="lineno"> 1693</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01695"></a><span class="lineno"> 1695</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>&#160; }</div><div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>&#160;</div><div class="line"><a name="l01698"></a><span class="lineno"> 1698</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01699"></a><span class="lineno"> 1699</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Anthony Barbierf45d5a92018-01-24 16:23:15 +000018434</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000018435<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a68616ae21712c00705b962f4eff06eaa">L1_NORM</a>, <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3a80485e54c7a3c93a0f74637c6b918ce5">L2_NORM</a>, and <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3ac9e68c0594494ec85805b225a7acb9c2">L2HYS_NORM</a>.</p>
18436
Anthony Barbierf45d5a92018-01-24 16:23:15 +000018437</div>
18438</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018439<a id="ab91d110e020f6ed987e05e82df3e350b"></a>
Jenkins514be652019-02-28 12:25:18 +000018440<h2 class="memtitle"><span class="permalink"><a href="#ab91d110e020f6ed987e05e82df3e350b">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[44/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018441
Anthony Barbierf45d5a92018-01-24 16:23:15 +000018442<div class="memitem">
18443<div class="memproto">
18444 <table class="memname">
18445 <tr>
18446 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18447 <td>(</td>
18448 <td class="paramtype">::std::ostream &amp;&#160;</td>
18449 <td class="paramname"><em>os</em>, </td>
18450 </tr>
18451 <tr>
18452 <td class="paramkey"></td>
18453 <td></td>
18454 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;&#160;</td>
18455 <td class="paramname"><em>size</em>&#160;</td>
18456 </tr>
18457 <tr>
18458 <td></td>
18459 <td>)</td>
18460 <td></td><td></td>
18461 </tr>
18462 </table>
18463</div><div class="memdoc">
18464
Jenkins514be652019-02-28 12:25:18 +000018465<p>Formatted output of the <a class="el" href="classarm__compute_1_1_size2_d.xhtml" title="Class for specifying the size of an image or rectangle.">Size2D</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010018466<dl class="params"><dt>Parameters</dt><dd>
18467 <table class="params">
18468 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
18469 <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>Type to output</td></tr>
18470 </table>
18471 </dd>
18472</dl>
18473<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbierf45d5a92018-01-24 16:23:15 +000018474
Jenkins514be652019-02-28 12:25:18 +000018475<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01721">1721</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18476<div class="fragment"><div class="line"><a name="l01722"></a><span class="lineno"> 1722</span>&#160;{</div><div class="line"><a name="l01723"></a><span class="lineno"> 1723</span>&#160; os &lt;&lt; size.width &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; size.height;</div><div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>&#160;</div><div class="line"><a name="l01725"></a><span class="lineno"> 1725</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01726"></a><span class="lineno"> 1726</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000018477<p class="reference">References <a class="el" href="_size2_d_8h_source.xhtml#l00093">Size2D::height</a>, and <a class="el" href="_size2_d_8h_source.xhtml#l00092">Size2D::width</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000018478
Anthony Barbierf45d5a92018-01-24 16:23:15 +000018479</div>
18480</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018481<a id="a4228b490e13b79a60737929d9d9e5957"></a>
Jenkins514be652019-02-28 12:25:18 +000018482<h2 class="memtitle"><span class="permalink"><a href="#a4228b490e13b79a60737929d9d9e5957">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[45/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018483
Anthony Barbierf45d5a92018-01-24 16:23:15 +000018484<div class="memitem">
18485<div class="memproto">
18486 <table class="memname">
18487 <tr>
18488 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18489 <td>(</td>
18490 <td class="paramtype">::std::ostream &amp;&#160;</td>
18491 <td class="paramname"><em>os</em>, </td>
18492 </tr>
18493 <tr>
18494 <td class="paramkey"></td>
18495 <td></td>
18496 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml">HOGInfo</a> &amp;&#160;</td>
18497 <td class="paramname"><em>hog_info</em>&#160;</td>
18498 </tr>
18499 <tr>
18500 <td></td>
18501 <td>)</td>
18502 <td></td><td></td>
18503 </tr>
18504 </table>
18505</div><div class="memdoc">
18506
Jenkins514be652019-02-28 12:25:18 +000018507<p>Formatted output of the <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml" title="Store the HOG&#39;s metadata.">HOGInfo</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010018508<dl class="params"><dt>Parameters</dt><dd>
18509 <table class="params">
18510 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
18511 <tr><td class="paramdir">[in]</td><td class="paramname">hog_info</td><td>Type to output</td></tr>
18512 </table>
18513 </dd>
18514</dl>
18515<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbierf45d5a92018-01-24 16:23:15 +000018516
Jenkins514be652019-02-28 12:25:18 +000018517<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01748">1748</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18518<div class="fragment"><div class="line"><a name="l01749"></a><span class="lineno"> 1749</span>&#160;{</div><div class="line"><a name="l01750"></a><span class="lineno"> 1750</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;{CellSize=&quot;</span> &lt;&lt; hog_info.cell_size() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01751"></a><span class="lineno"> 1751</span>&#160; &lt;&lt; <span class="stringliteral">&quot;BlockSize=&quot;</span> &lt;&lt; hog_info.block_size() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01752"></a><span class="lineno"> 1752</span>&#160; &lt;&lt; <span class="stringliteral">&quot;DetectionWindowSize=&quot;</span> &lt;&lt; hog_info.detection_window_size() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01753"></a><span class="lineno"> 1753</span>&#160; &lt;&lt; <span class="stringliteral">&quot;BlockStride=&quot;</span> &lt;&lt; hog_info.block_stride() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01754"></a><span class="lineno"> 1754</span>&#160; &lt;&lt; <span class="stringliteral">&quot;NumBins=&quot;</span> &lt;&lt; hog_info.num_bins() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01755"></a><span class="lineno"> 1755</span>&#160; &lt;&lt; <span class="stringliteral">&quot;NormType=&quot;</span> &lt;&lt; hog_info.normalization_type() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01756"></a><span class="lineno"> 1756</span>&#160; &lt;&lt; <span class="stringliteral">&quot;L2HystThreshold=&quot;</span> &lt;&lt; hog_info.l2_hyst_threshold() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01757"></a><span class="lineno"> 1757</span>&#160; &lt;&lt; <span class="stringliteral">&quot;PhaseType=&quot;</span> &lt;&lt; hog_info.phase_type() &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01758"></a><span class="lineno"> 1758</span>&#160;</div><div class="line"><a name="l01759"></a><span class="lineno"> 1759</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01760"></a><span class="lineno"> 1760</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000018519<p class="reference">References <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00096">HOGInfo::block_size()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00106">HOGInfo::block_stride()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00091">HOGInfo::cell_size()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00101">HOGInfo::detection_window_size()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00121">HOGInfo::l2_hyst_threshold()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00116">HOGInfo::normalization_type()</a>, <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00111">HOGInfo::num_bins()</a>, and <a class="el" href="_h_o_g_info_8cpp_source.xhtml#l00126">HOGInfo::phase_type()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000018520
Anthony Barbier06ea0482018-02-22 15:45:35 +000018521</div>
18522</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018523<a id="abd35c1c3fb716078b1f4a25981defac4"></a>
Jenkins514be652019-02-28 12:25:18 +000018524<h2 class="memtitle"><span class="permalink"><a href="#abd35c1c3fb716078b1f4a25981defac4">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[46/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018525
Anthony Barbier06ea0482018-02-22 15:45:35 +000018526<div class="memitem">
18527<div class="memproto">
18528 <table class="memname">
18529 <tr>
18530 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18531 <td>(</td>
18532 <td class="paramtype">::std::ostream &amp;&#160;</td>
18533 <td class="paramname"><em>os</em>, </td>
18534 </tr>
18535 <tr>
18536 <td class="paramkey"></td>
18537 <td></td>
18538 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517d">ConvolutionMethod</a> &amp;&#160;</td>
18539 <td class="paramname"><em>conv_method</em>&#160;</td>
18540 </tr>
18541 <tr>
18542 <td></td>
18543 <td>)</td>
18544 <td></td><td></td>
18545 </tr>
18546 </table>
18547</div><div class="memdoc">
18548
Jenkinsb3a371b2018-05-23 11:36:53 +010018549<p>Formatted output of the ConvolutionMethod type. </p>
18550<dl class="params"><dt>Parameters</dt><dd>
18551 <table class="params">
18552 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
18553 <tr><td class="paramdir">[in]</td><td class="paramname">conv_method</td><td>Type to output</td></tr>
18554 </table>
18555 </dd>
18556</dl>
18557<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbier06ea0482018-02-22 15:45:35 +000018558
Jenkins514be652019-02-28 12:25:18 +000018559<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01782">1782</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18560<div class="fragment"><div class="line"><a name="l01783"></a><span class="lineno"> 1783</span>&#160;{</div><div class="line"><a name="l01784"></a><span class="lineno"> 1784</span>&#160; <span class="keywordflow">switch</span>(conv_method)</div><div class="line"><a name="l01785"></a><span class="lineno"> 1785</span>&#160; {</div><div class="line"><a name="l01786"></a><span class="lineno"> 1786</span>&#160; <span class="keywordflow">case</span> ConvolutionMethod::GEMM:</div><div class="line"><a name="l01787"></a><span class="lineno"> 1787</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;GEMM&quot;</span>;</div><div class="line"><a name="l01788"></a><span class="lineno"> 1788</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01789"></a><span class="lineno"> 1789</span>&#160; <span class="keywordflow">case</span> ConvolutionMethod::DIRECT:</div><div class="line"><a name="l01790"></a><span class="lineno"> 1790</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;DIRECT&quot;</span>;</div><div class="line"><a name="l01791"></a><span class="lineno"> 1791</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01792"></a><span class="lineno"> 1792</span>&#160; <span class="keywordflow">case</span> ConvolutionMethod::WINOGRAD:</div><div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;WINOGRAD&quot;</span>;</div><div class="line"><a name="l01794"></a><span class="lineno"> 1794</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01795"></a><span class="lineno"> 1795</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01796"></a><span class="lineno"> 1796</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l01797"></a><span class="lineno"> 1797</span>&#160; }</div><div class="line"><a name="l01798"></a><span class="lineno"> 1798</span>&#160;</div><div class="line"><a name="l01799"></a><span class="lineno"> 1799</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01800"></a><span class="lineno"> 1800</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Anthony Barbier06ea0482018-02-22 15:45:35 +000018561</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000018562<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da4c5d06b02c97731aaa976179c62dcf76">DIRECT</a>, <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da5174aac3927faa9ee34befb7fc87a9e3">GEMM</a>, and <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517da9d024a5762b3a992dec7eb3c49d17ae8">WINOGRAD</a>.</p>
18563
Anthony Barbier06ea0482018-02-22 15:45:35 +000018564</div>
18565</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018566<a id="a1f4d95d65a62a085e929ab0a1a77add2"></a>
Jenkins514be652019-02-28 12:25:18 +000018567<h2 class="memtitle"><span class="permalink"><a href="#a1f4d95d65a62a085e929ab0a1a77add2">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[47/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018568
Anthony Barbier06ea0482018-02-22 15:45:35 +000018569<div class="memitem">
18570<div class="memproto">
18571 <table class="memname">
18572 <tr>
18573 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18574 <td>(</td>
18575 <td class="paramtype">::std::ostream &amp;&#160;</td>
18576 <td class="paramname"><em>os</em>, </td>
18577 </tr>
18578 <tr>
18579 <td class="paramkey"></td>
18580 <td></td>
18581 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> &amp;&#160;</td>
18582 <td class="paramname"><em>gpu_target</em>&#160;</td>
18583 </tr>
18584 <tr>
18585 <td></td>
18586 <td>)</td>
18587 <td></td><td></td>
18588 </tr>
18589 </table>
18590</div><div class="memdoc">
18591
Jenkinsb3a371b2018-05-23 11:36:53 +010018592<p>Formatted output of the GPUTarget type. </p>
18593<dl class="params"><dt>Parameters</dt><dd>
18594 <table class="params">
18595 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
18596 <tr><td class="paramdir">[in]</td><td class="paramname">gpu_target</td><td>Type to output</td></tr>
18597 </table>
18598 </dd>
18599</dl>
18600<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
Anthony Barbier06ea0482018-02-22 15:45:35 +000018601
Jenkins514be652019-02-28 12:25:18 +000018602<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01822">1822</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18603<div class="fragment"><div class="line"><a name="l01823"></a><span class="lineno"> 1823</span>&#160;{</div><div class="line"><a name="l01824"></a><span class="lineno"> 1824</span>&#160; <span class="keywordflow">switch</span>(gpu_target)</div><div class="line"><a name="l01825"></a><span class="lineno"> 1825</span>&#160; {</div><div class="line"><a name="l01826"></a><span class="lineno"> 1826</span>&#160; <span class="keywordflow">case</span> GPUTarget::GPU_ARCH_MASK:</div><div class="line"><a name="l01827"></a><span class="lineno"> 1827</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;GPU_ARCH_MASK&quot;</span>;</div><div class="line"><a name="l01828"></a><span class="lineno"> 1828</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01829"></a><span class="lineno"> 1829</span>&#160; <span class="keywordflow">case</span> GPUTarget::MIDGARD:</div><div class="line"><a name="l01830"></a><span class="lineno"> 1830</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;MIDGARD&quot;</span>;</div><div class="line"><a name="l01831"></a><span class="lineno"> 1831</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>&#160; <span class="keywordflow">case</span> GPUTarget::BIFROST:</div><div class="line"><a name="l01833"></a><span class="lineno"> 1833</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;BIFROST&quot;</span>;</div><div class="line"><a name="l01834"></a><span class="lineno"> 1834</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01835"></a><span class="lineno"> 1835</span>&#160; <span class="keywordflow">case</span> GPUTarget::T600:</div><div class="line"><a name="l01836"></a><span class="lineno"> 1836</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;T600&quot;</span>;</div><div class="line"><a name="l01837"></a><span class="lineno"> 1837</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01838"></a><span class="lineno"> 1838</span>&#160; <span class="keywordflow">case</span> GPUTarget::T700:</div><div class="line"><a name="l01839"></a><span class="lineno"> 1839</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;T700&quot;</span>;</div><div class="line"><a name="l01840"></a><span class="lineno"> 1840</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01841"></a><span class="lineno"> 1841</span>&#160; <span class="keywordflow">case</span> GPUTarget::T800:</div><div class="line"><a name="l01842"></a><span class="lineno"> 1842</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;T800&quot;</span>;</div><div class="line"><a name="l01843"></a><span class="lineno"> 1843</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01844"></a><span class="lineno"> 1844</span>&#160; <span class="keywordflow">case</span> GPUTarget::G71:</div><div class="line"><a name="l01845"></a><span class="lineno"> 1845</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;G71&quot;</span>;</div><div class="line"><a name="l01846"></a><span class="lineno"> 1846</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01847"></a><span class="lineno"> 1847</span>&#160; <span class="keywordflow">case</span> GPUTarget::G72:</div><div class="line"><a name="l01848"></a><span class="lineno"> 1848</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;G72&quot;</span>;</div><div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01850"></a><span class="lineno"> 1850</span>&#160; <span class="keywordflow">case</span> GPUTarget::G51:</div><div class="line"><a name="l01851"></a><span class="lineno"> 1851</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;G51&quot;</span>;</div><div class="line"><a name="l01852"></a><span class="lineno"> 1852</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01853"></a><span class="lineno"> 1853</span>&#160; <span class="keywordflow">case</span> GPUTarget::G51BIG:</div><div class="line"><a name="l01854"></a><span class="lineno"> 1854</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;G51BIG&quot;</span>;</div><div class="line"><a name="l01855"></a><span class="lineno"> 1855</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01856"></a><span class="lineno"> 1856</span>&#160; <span class="keywordflow">case</span> GPUTarget::G51LIT:</div><div class="line"><a name="l01857"></a><span class="lineno"> 1857</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;G51LIT&quot;</span>;</div><div class="line"><a name="l01858"></a><span class="lineno"> 1858</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01859"></a><span class="lineno"> 1859</span>&#160; <span class="keywordflow">case</span> GPUTarget::G76:</div><div class="line"><a name="l01860"></a><span class="lineno"> 1860</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;G76&quot;</span>;</div><div class="line"><a name="l01861"></a><span class="lineno"> 1861</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01862"></a><span class="lineno"> 1862</span>&#160; <span class="keywordflow">case</span> GPUTarget::TTRX:</div><div class="line"><a name="l01863"></a><span class="lineno"> 1863</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;TTRX&quot;</span>;</div><div class="line"><a name="l01864"></a><span class="lineno"> 1864</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01865"></a><span class="lineno"> 1865</span>&#160; <span class="keywordflow">case</span> GPUTarget::TBOX:</div><div class="line"><a name="l01866"></a><span class="lineno"> 1866</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;TBOX&quot;</span>;</div><div class="line"><a name="l01867"></a><span class="lineno"> 1867</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01868"></a><span class="lineno"> 1868</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01869"></a><span class="lineno"> 1869</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l01870"></a><span class="lineno"> 1870</span>&#160; }</div><div class="line"><a name="l01871"></a><span class="lineno"> 1871</span>&#160;</div><div class="line"><a name="l01872"></a><span class="lineno"> 1872</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01873"></a><span class="lineno"> 1873</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +010018604</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000018605<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e">BIFROST</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0">G51</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988">G51BIG</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f">G51LIT</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6">G71</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab2ac2aea42c95ccc70260ceeb02ec4fc">G72</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">G76</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a57a3b40730a5af7ea3e13eb4bba56d82">GPU_ARCH_MASK</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38">MIDGARD</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a6855a4342969d2b58c96d95385d6e673">T600</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd">T700</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aae926a8537ded0221329aa9a89b84048">T800</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc">TBOX</a>, and <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4">TTRX</a>.</p>
18606
Jenkinsb3a371b2018-05-23 11:36:53 +010018607</div>
18608</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018609<a id="a907c93ba5daaabf6af7095f20340d024"></a>
Jenkins514be652019-02-28 12:25:18 +000018610<h2 class="memtitle"><span class="permalink"><a href="#a907c93ba5daaabf6af7095f20340d024">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[48/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018611
Jenkinsb3a371b2018-05-23 11:36:53 +010018612<div class="memitem">
18613<div class="memproto">
18614 <table class="memname">
18615 <tr>
18616 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18617 <td>(</td>
18618 <td class="paramtype">::std::ostream &amp;&#160;</td>
18619 <td class="paramname"><em>os</em>, </td>
18620 </tr>
18621 <tr>
18622 <td class="paramkey"></td>
18623 <td></td>
18624 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a> &amp;&#160;</td>
18625 <td class="paramname"><em>detection_window</em>&#160;</td>
18626 </tr>
18627 <tr>
18628 <td></td>
18629 <td>)</td>
18630 <td></td><td></td>
18631 </tr>
18632 </table>
18633</div><div class="memdoc">
18634
Jenkins514be652019-02-28 12:25:18 +000018635<p>Formatted output of the <a class="el" href="structarm__compute_1_1_detection_window.xhtml" title="Detection window used for the object detection.">DetectionWindow</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010018636<dl class="params"><dt>Parameters</dt><dd>
18637 <table class="params">
18638 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
18639 <tr><td class="paramdir">[in]</td><td class="paramname">detection_window</td><td>Type to output</td></tr>
18640 </table>
18641 </dd>
18642</dl>
18643<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
18644
Jenkins514be652019-02-28 12:25:18 +000018645<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01895">1895</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18646<div class="fragment"><div class="line"><a name="l01896"></a><span class="lineno"> 1896</span>&#160;{</div><div class="line"><a name="l01897"></a><span class="lineno"> 1897</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;{x=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#a0815db32ce16586f5e90a633735df930">x</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01898"></a><span class="lineno"> 1898</span>&#160; &lt;&lt; <span class="stringliteral">&quot;y=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#a45b45124e843a937c3e256edbce64eea">y</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01899"></a><span class="lineno"> 1899</span>&#160; &lt;&lt; <span class="stringliteral">&quot;width=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#a67fe5ca4d6c3f95bf649ef48fe3d221b">width</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>&#160; &lt;&lt; <span class="stringliteral">&quot;height=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#aa0fb54e3dbe6f7446157eb3f3c1f77f3">height</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>&#160; &lt;&lt; <span class="stringliteral">&quot;idx_class=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#ad4f986571659dd822695ca58dda00e49">idx_class</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01902"></a><span class="lineno"> 1902</span>&#160; &lt;&lt; <span class="stringliteral">&quot;score=&quot;</span> &lt;&lt; detection_window.<a class="code" href="struct_detection_window.xhtml#a8c5cd9b525ee73a24b1d9d8e34982d1c">score</a> &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01903"></a><span class="lineno"> 1903</span>&#160;</div><div class="line"><a name="l01904"></a><span class="lineno"> 1904</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01905"></a><span class="lineno"> 1905</span>&#160;}</div><div class="ttc" id="struct_detection_window_xhtml_ad4f986571659dd822695ca58dda00e49"><div class="ttname"><a href="struct_detection_window.xhtml#ad4f986571659dd822695ca58dda00e49">DetectionWindow::idx_class</a></div><div class="ttdeci">ushort idx_class</div><div class="ttdoc">Index of the class.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_types_8h_source.xhtml#l00053">types.h:53</a></div></div>
18647<div class="ttc" id="struct_detection_window_xhtml_a45b45124e843a937c3e256edbce64eea"><div class="ttname"><a href="struct_detection_window.xhtml#a45b45124e843a937c3e256edbce64eea">DetectionWindow::y</a></div><div class="ttdeci">ushort y</div><div class="ttdoc">Top-left y coordinate.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_types_8h_source.xhtml#l00050">types.h:50</a></div></div>
18648<div class="ttc" id="struct_detection_window_xhtml_a8c5cd9b525ee73a24b1d9d8e34982d1c"><div class="ttname"><a href="struct_detection_window.xhtml#a8c5cd9b525ee73a24b1d9d8e34982d1c">DetectionWindow::score</a></div><div class="ttdeci">float score</div><div class="ttdoc">Confidence value for the detection window.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_types_8h_source.xhtml#l00054">types.h:54</a></div></div>
18649<div class="ttc" id="struct_detection_window_xhtml_aa0fb54e3dbe6f7446157eb3f3c1f77f3"><div class="ttname"><a href="struct_detection_window.xhtml#aa0fb54e3dbe6f7446157eb3f3c1f77f3">DetectionWindow::height</a></div><div class="ttdeci">ushort height</div><div class="ttdoc">Height of the detection window.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_types_8h_source.xhtml#l00052">types.h:52</a></div></div>
18650<div class="ttc" id="struct_detection_window_xhtml_a0815db32ce16586f5e90a633735df930"><div class="ttname"><a href="struct_detection_window.xhtml#a0815db32ce16586f5e90a633735df930">DetectionWindow::x</a></div><div class="ttdeci">ushort x</div><div class="ttdoc">Top-left x coordinate.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_types_8h_source.xhtml#l00049">types.h:49</a></div></div>
18651<div class="ttc" id="struct_detection_window_xhtml_a67fe5ca4d6c3f95bf649ef48fe3d221b"><div class="ttname"><a href="struct_detection_window.xhtml#a67fe5ca4d6c3f95bf649ef48fe3d221b">DetectionWindow::width</a></div><div class="ttdeci">ushort width</div><div class="ttdoc">Width of the detection window.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_types_8h_source.xhtml#l00051">types.h:51</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +010018652</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000018653<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00594">DetectionWindow::height</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00595">DetectionWindow::idx_class</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00596">DetectionWindow::score</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00593">DetectionWindow::width</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00591">DetectionWindow::x</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00592">DetectionWindow::y</a>.</p>
18654
18655</div>
18656</div>
18657<a id="a28634df052522fe60e15a0128ba924cc"></a>
18658<h2 class="memtitle"><span class="permalink"><a href="#a28634df052522fe60e15a0128ba924cc">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[49/55]</span></h2>
18659
18660<div class="memitem">
18661<div class="memproto">
18662 <table class="memname">
18663 <tr>
18664 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18665 <td>(</td>
18666 <td class="paramtype">::std::ostream &amp;&#160;</td>
18667 <td class="paramname"><em>os</em>, </td>
18668 </tr>
18669 <tr>
18670 <td class="paramkey"></td>
18671 <td></td>
18672 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830">DetectionOutputLayerCodeType</a> &amp;&#160;</td>
18673 <td class="paramname"><em>detection_code</em>&#160;</td>
18674 </tr>
18675 <tr>
18676 <td></td>
18677 <td>)</td>
18678 <td></td><td></td>
18679 </tr>
18680 </table>
18681</div><div class="memdoc">
18682
18683<p>Formatted output of the DetectionOutputLayerCodeType type. </p>
18684<dl class="params"><dt>Parameters</dt><dd>
18685 <table class="params">
18686 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
18687 <tr><td class="paramdir">[in]</td><td class="paramname">detection_code</td><td>Type to output</td></tr>
18688 </table>
18689 </dd>
18690</dl>
18691<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
18692
18693<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01914">1914</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18694<div class="fragment"><div class="line"><a name="l01915"></a><span class="lineno"> 1915</span>&#160;{</div><div class="line"><a name="l01916"></a><span class="lineno"> 1916</span>&#160; <span class="keywordflow">switch</span>(detection_code)</div><div class="line"><a name="l01917"></a><span class="lineno"> 1917</span>&#160; {</div><div class="line"><a name="l01918"></a><span class="lineno"> 1918</span>&#160; <span class="keywordflow">case</span> DetectionOutputLayerCodeType::CENTER_SIZE:</div><div class="line"><a name="l01919"></a><span class="lineno"> 1919</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;CENTER_SIZE&quot;</span>;</div><div class="line"><a name="l01920"></a><span class="lineno"> 1920</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01921"></a><span class="lineno"> 1921</span>&#160; <span class="keywordflow">case</span> DetectionOutputLayerCodeType::CORNER:</div><div class="line"><a name="l01922"></a><span class="lineno"> 1922</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;CORNER&quot;</span>;</div><div class="line"><a name="l01923"></a><span class="lineno"> 1923</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>&#160; <span class="keywordflow">case</span> DetectionOutputLayerCodeType::CORNER_SIZE:</div><div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;CORNER_SIZE&quot;</span>;</div><div class="line"><a name="l01926"></a><span class="lineno"> 1926</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01927"></a><span class="lineno"> 1927</span>&#160; <span class="keywordflow">case</span> DetectionOutputLayerCodeType::TF_CENTER:</div><div class="line"><a name="l01928"></a><span class="lineno"> 1928</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;TF_CENTER&quot;</span>;</div><div class="line"><a name="l01929"></a><span class="lineno"> 1929</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01930"></a><span class="lineno"> 1930</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01931"></a><span class="lineno"> 1931</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l01932"></a><span class="lineno"> 1932</span>&#160; }</div><div class="line"><a name="l01933"></a><span class="lineno"> 1933</span>&#160;</div><div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
18695</div><!-- fragment -->
18696<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830a1150a8d7752b01d30d91fe18fe9d8a54">CENTER_SIZE</a>, <a class="el" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830ac411afd31d32cec664d372acc12f404a">CORNER</a>, <a class="el" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830afbc6c35854fe02eb9e792f897399c42a">CORNER_SIZE</a>, and <a class="el" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830ae65a115db9b4bcc4ae0aa0b989089d16">TF_CENTER</a>.</p>
18697
18698</div>
18699</div>
18700<a id="a22b40e983993e76ab39ce878fb111b9b"></a>
18701<h2 class="memtitle"><span class="permalink"><a href="#a22b40e983993e76ab39ce878fb111b9b">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[50/55]</span></h2>
18702
18703<div class="memitem">
18704<div class="memproto">
18705 <table class="memname">
18706 <tr>
18707 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18708 <td>(</td>
18709 <td class="paramtype">::std::ostream &amp;&#160;</td>
18710 <td class="paramname"><em>os</em>, </td>
18711 </tr>
18712 <tr>
18713 <td class="paramkey"></td>
18714 <td></td>
18715 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_detection_output_layer_info.xhtml">DetectionOutputLayerInfo</a> &amp;&#160;</td>
18716 <td class="paramname"><em>detection_info</em>&#160;</td>
18717 </tr>
18718 <tr>
18719 <td></td>
18720 <td>)</td>
18721 <td></td><td></td>
18722 </tr>
18723 </table>
18724</div><div class="memdoc">
18725
18726<p>Formatted output of the <a class="el" href="classarm__compute_1_1_detection_output_layer_info.xhtml" title="Detection Output layer info.">DetectionOutputLayerInfo</a> type. </p>
18727<dl class="params"><dt>Parameters</dt><dd>
18728 <table class="params">
18729 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
18730 <tr><td class="paramdir">[in]</td><td class="paramname">detection_info</td><td>Type to output</td></tr>
18731 </table>
18732 </dd>
18733</dl>
18734<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
18735
18736<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01956">1956</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18737<div class="fragment"><div class="line"><a name="l01957"></a><span class="lineno"> 1957</span>&#160;{</div><div class="line"><a name="l01958"></a><span class="lineno"> 1958</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;{Classes=&quot;</span> &lt;&lt; detection_info.num_classes() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01959"></a><span class="lineno"> 1959</span>&#160; &lt;&lt; <span class="stringliteral">&quot;ShareLocation=&quot;</span> &lt;&lt; detection_info.share_location() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01960"></a><span class="lineno"> 1960</span>&#160; &lt;&lt; <span class="stringliteral">&quot;CodeType=&quot;</span> &lt;&lt; detection_info.code_type() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01961"></a><span class="lineno"> 1961</span>&#160; &lt;&lt; <span class="stringliteral">&quot;VarianceEncodedInTarget=&quot;</span> &lt;&lt; detection_info.variance_encoded_in_target() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01962"></a><span class="lineno"> 1962</span>&#160; &lt;&lt; <span class="stringliteral">&quot;KeepTopK=&quot;</span> &lt;&lt; detection_info.keep_top_k() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01963"></a><span class="lineno"> 1963</span>&#160; &lt;&lt; <span class="stringliteral">&quot;NMSThreshold=&quot;</span> &lt;&lt; detection_info.nms_threshold() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01964"></a><span class="lineno"> 1964</span>&#160; &lt;&lt; <span class="stringliteral">&quot;Eta=&quot;</span> &lt;&lt; detection_info.eta() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>&#160; &lt;&lt; <span class="stringliteral">&quot;BackgroundLabelId=&quot;</span> &lt;&lt; detection_info.background_label_id() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>&#160; &lt;&lt; <span class="stringliteral">&quot;ConfidenceThreshold=&quot;</span> &lt;&lt; detection_info.confidence_threshold() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01967"></a><span class="lineno"> 1967</span>&#160; &lt;&lt; <span class="stringliteral">&quot;TopK=&quot;</span> &lt;&lt; detection_info.top_k() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01968"></a><span class="lineno"> 1968</span>&#160; &lt;&lt; <span class="stringliteral">&quot;NumLocClasses=&quot;</span> &lt;&lt; detection_info.num_loc_classes()</div><div class="line"><a name="l01969"></a><span class="lineno"> 1969</span>&#160; &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01970"></a><span class="lineno"> 1970</span>&#160;</div><div class="line"><a name="l01971"></a><span class="lineno"> 1971</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l01972"></a><span class="lineno"> 1972</span>&#160;}</div></div><!-- fragment -->
18738<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01086">DetectionOutputLayerInfo::background_label_id()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01061">DetectionOutputLayerInfo::code_type()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01091">DetectionOutputLayerInfo::confidence_threshold()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01081">DetectionOutputLayerInfo::eta()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01071">DetectionOutputLayerInfo::keep_top_k()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01076">DetectionOutputLayerInfo::nms_threshold()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01051">DetectionOutputLayerInfo::num_classes()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01101">DetectionOutputLayerInfo::num_loc_classes()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01056">DetectionOutputLayerInfo::share_location()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01096">DetectionOutputLayerInfo::top_k()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l01066">DetectionOutputLayerInfo::variance_encoded_in_target()</a>.</p>
18739
Jenkinsb3a371b2018-05-23 11:36:53 +010018740</div>
18741</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018742<a id="a8cfa7d498e60be008d557d025fe62ff3"></a>
Jenkins514be652019-02-28 12:25:18 +000018743<h2 class="memtitle"><span class="permalink"><a href="#a8cfa7d498e60be008d557d025fe62ff3">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[51/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018744
Jenkinsb3a371b2018-05-23 11:36:53 +010018745<div class="memitem">
18746<div class="memproto">
18747 <table class="memname">
18748 <tr>
18749 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18750 <td>(</td>
18751 <td class="paramtype">::std::ostream &amp;&#160;</td>
18752 <td class="paramname"><em>os</em>, </td>
18753 </tr>
18754 <tr>
18755 <td class="paramkey"></td>
18756 <td></td>
18757 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453">Termination</a> &amp;&#160;</td>
18758 <td class="paramname"><em>termination</em>&#160;</td>
18759 </tr>
18760 <tr>
18761 <td></td>
18762 <td>)</td>
18763 <td></td><td></td>
18764 </tr>
18765 </table>
18766</div><div class="memdoc">
18767
18768<p>Formatted output of the Termination type. </p>
18769<dl class="params"><dt>Parameters</dt><dd>
18770 <table class="params">
18771 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
18772 <tr><td class="paramdir">[in]</td><td class="paramname">termination</td><td>Type to output</td></tr>
18773 </table>
18774 </dd>
18775</dl>
18776<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
18777
Jenkins514be652019-02-28 12:25:18 +000018778<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l02006">2006</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18779<div class="fragment"><div class="line"><a name="l02007"></a><span class="lineno"> 2007</span>&#160;{</div><div class="line"><a name="l02008"></a><span class="lineno"> 2008</span>&#160; <span class="keywordflow">switch</span>(termination)</div><div class="line"><a name="l02009"></a><span class="lineno"> 2009</span>&#160; {</div><div class="line"><a name="l02010"></a><span class="lineno"> 2010</span>&#160; <span class="keywordflow">case</span> Termination::TERM_CRITERIA_EPSILON:</div><div class="line"><a name="l02011"></a><span class="lineno"> 2011</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;TERM_CRITERIA_EPSILON&quot;</span>;</div><div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02013"></a><span class="lineno"> 2013</span>&#160; <span class="keywordflow">case</span> Termination::TERM_CRITERIA_ITERATIONS:</div><div class="line"><a name="l02014"></a><span class="lineno"> 2014</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;TERM_CRITERIA_ITERATIONS&quot;</span>;</div><div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>&#160; <span class="keywordflow">case</span> Termination::TERM_CRITERIA_BOTH:</div><div class="line"><a name="l02017"></a><span class="lineno"> 2017</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;TERM_CRITERIA_BOTH&quot;</span>;</div><div class="line"><a name="l02018"></a><span class="lineno"> 2018</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02019"></a><span class="lineno"> 2019</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02020"></a><span class="lineno"> 2020</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l02021"></a><span class="lineno"> 2021</span>&#160; }</div><div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>&#160;</div><div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l02024"></a><span class="lineno"> 2024</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Jenkinsb3a371b2018-05-23 11:36:53 +010018780</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000018781<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a788740b1ba2d6463dae318a332513b29">TERM_CRITERIA_BOTH</a>, <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a5a2e12b6baf7ad91a2ce32f19c36bd1b">TERM_CRITERIA_EPSILON</a>, and <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453a43f2a8b688fb96e5ad8ba08308bbcdfd">TERM_CRITERIA_ITERATIONS</a>.</p>
18782
Jenkinsb3a371b2018-05-23 11:36:53 +010018783</div>
18784</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018785<a id="a2329ad899483ca80bbffd03a63da9f5d"></a>
Jenkins514be652019-02-28 12:25:18 +000018786<h2 class="memtitle"><span class="permalink"><a href="#a2329ad899483ca80bbffd03a63da9f5d">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[52/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018787
Jenkins52ba29e2018-08-29 15:32:11 +000018788<div class="memitem">
18789<div class="memproto">
18790 <table class="memname">
18791 <tr>
18792 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18793 <td>(</td>
18794 <td class="paramtype">::std::ostream &amp;&#160;</td>
18795 <td class="paramname"><em>os</em>, </td>
18796 </tr>
18797 <tr>
18798 <td class="paramkey"></td>
18799 <td></td>
18800 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">CPUModel</a> &amp;&#160;</td>
18801 <td class="paramname"><em>cpu_model</em>&#160;</td>
18802 </tr>
18803 <tr>
18804 <td></td>
18805 <td>)</td>
18806 <td></td><td></td>
18807 </tr>
18808 </table>
18809</div><div class="memdoc">
18810
18811<p>Formatted output of the CPUModel type. </p>
18812<dl class="params"><dt>Parameters</dt><dd>
18813 <table class="params">
18814 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
18815 <tr><td class="paramdir">[in]</td><td class="paramname">cpu_model</td><td>Model to output</td></tr>
18816 </table>
18817 </dd>
18818</dl>
18819<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
18820
Jenkins514be652019-02-28 12:25:18 +000018821<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l02046">2046</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18822<div class="fragment"><div class="line"><a name="l02047"></a><span class="lineno"> 2047</span>&#160;{</div><div class="line"><a name="l02048"></a><span class="lineno"> 2048</span>&#160; <span class="keywordflow">switch</span>(cpu_model)</div><div class="line"><a name="l02049"></a><span class="lineno"> 2049</span>&#160; {</div><div class="line"><a name="l02050"></a><span class="lineno"> 2050</span>&#160; <span class="keywordflow">case</span> CPUModel::GENERIC:</div><div class="line"><a name="l02051"></a><span class="lineno"> 2051</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;GENERIC&quot;</span>;</div><div class="line"><a name="l02052"></a><span class="lineno"> 2052</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02053"></a><span class="lineno"> 2053</span>&#160; <span class="keywordflow">case</span> CPUModel::GENERIC_FP16:</div><div class="line"><a name="l02054"></a><span class="lineno"> 2054</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;GENERIC_FP16&quot;</span>;</div><div class="line"><a name="l02055"></a><span class="lineno"> 2055</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02056"></a><span class="lineno"> 2056</span>&#160; <span class="keywordflow">case</span> CPUModel::GENERIC_FP16_DOT:</div><div class="line"><a name="l02057"></a><span class="lineno"> 2057</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;GENERIC_FP16_DOT&quot;</span>;</div><div class="line"><a name="l02058"></a><span class="lineno"> 2058</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02059"></a><span class="lineno"> 2059</span>&#160; <span class="keywordflow">case</span> CPUModel::A53:</div><div class="line"><a name="l02060"></a><span class="lineno"> 2060</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;A53&quot;</span>;</div><div class="line"><a name="l02061"></a><span class="lineno"> 2061</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02062"></a><span class="lineno"> 2062</span>&#160; <span class="keywordflow">case</span> CPUModel::A55r0:</div><div class="line"><a name="l02063"></a><span class="lineno"> 2063</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;A55r0&quot;</span>;</div><div class="line"><a name="l02064"></a><span class="lineno"> 2064</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02065"></a><span class="lineno"> 2065</span>&#160; <span class="keywordflow">case</span> CPUModel::A55r1:</div><div class="line"><a name="l02066"></a><span class="lineno"> 2066</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;A55r1&quot;</span>;</div><div class="line"><a name="l02067"></a><span class="lineno"> 2067</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02068"></a><span class="lineno"> 2068</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02069"></a><span class="lineno"> 2069</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT_SUPPORTED!&quot;</span>);</div><div class="line"><a name="l02070"></a><span class="lineno"> 2070</span>&#160; }</div><div class="line"><a name="l02071"></a><span class="lineno"> 2071</span>&#160;</div><div class="line"><a name="l02072"></a><span class="lineno"> 2072</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l02073"></a><span class="lineno"> 2073</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000018823</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000018824<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aecf3e2493afebcfefb0b9b86bd50ef0d">A53</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a33f91a7ec1c6be774d71fcd00ac81c92">A55r0</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4a2f2d74257db975404ff4ca97ce1e0bca">A55r1</a>, <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4ac942dc2a9f958acddc67e11472d3ca0b">GENERIC</a>, <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aca6fc09ca003ddc8f631109ce01bc6e8">GENERIC_FP16</a>, and <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4aad1a9b424f69f167da12150036196cd7">GENERIC_FP16_DOT</a>.</p>
18825
Jenkins52ba29e2018-08-29 15:32:11 +000018826</div>
18827</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018828<a id="a29cd1c3e1b33d61a479fa49465c5a7e7"></a>
Jenkins514be652019-02-28 12:25:18 +000018829<h2 class="memtitle"><span class="permalink"><a href="#a29cd1c3e1b33d61a479fa49465c5a7e7">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[53/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018830
Jenkins52ba29e2018-08-29 15:32:11 +000018831<div class="memitem">
18832<div class="memproto">
18833 <table class="memname">
18834 <tr>
18835 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18836 <td>(</td>
18837 <td class="paramtype">::std::ostream &amp;&#160;</td>
18838 <td class="paramname"><em>os</em>, </td>
18839 </tr>
18840 <tr>
18841 <td class="paramkey"></td>
18842 <td></td>
18843 <td class="paramtype">const std::vector&lt; T &gt; &amp;&#160;</td>
18844 <td class="paramname"><em>args</em>&#160;</td>
18845 </tr>
18846 <tr>
18847 <td></td>
18848 <td>)</td>
18849 <td></td><td></td>
18850 </tr>
18851 </table>
18852</div><div class="memdoc">
18853
18854<p>Formatted output of a vector of objects. </p>
18855<dl class="params"><dt>Parameters</dt><dd>
18856 <table class="params">
18857 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream </td></tr>
Jenkins514be652019-02-28 12:25:18 +000018858 <tr><td class="paramdir">[in]</td><td class="paramname">args</td><td><a class="el" href="struct_vector.xhtml" title="Structure to hold Vector information.">Vector</a> of objects to print</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +000018859 </table>
18860 </dd>
18861</dl>
18862<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
18863
Jenkins514be652019-02-28 12:25:18 +000018864<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l02095">2095</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18865<div class="fragment"><div class="line"><a name="l02096"></a><span class="lineno"> 2096</span>&#160;{</div><div class="line"><a name="l02097"></a><span class="lineno"> 2097</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;[&quot;</span>;</div><div class="line"><a name="l02098"></a><span class="lineno"> 2098</span>&#160; <span class="keywordtype">bool</span> first = <span class="keyword">true</span>;</div><div class="line"><a name="l02099"></a><span class="lineno"> 2099</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">auto</span> &amp;arg : args)</div><div class="line"><a name="l02100"></a><span class="lineno"> 2100</span>&#160; {</div><div class="line"><a name="l02101"></a><span class="lineno"> 2101</span>&#160; <span class="keywordflow">if</span>(first)</div><div class="line"><a name="l02102"></a><span class="lineno"> 2102</span>&#160; {</div><div class="line"><a name="l02103"></a><span class="lineno"> 2103</span>&#160; first = <span class="keyword">false</span>;</div><div class="line"><a name="l02104"></a><span class="lineno"> 2104</span>&#160; }</div><div class="line"><a name="l02105"></a><span class="lineno"> 2105</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l02106"></a><span class="lineno"> 2106</span>&#160; {</div><div class="line"><a name="l02107"></a><span class="lineno"> 2107</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;, &quot;</span>;</div><div class="line"><a name="l02108"></a><span class="lineno"> 2108</span>&#160; }</div><div class="line"><a name="l02109"></a><span class="lineno"> 2109</span>&#160; os &lt;&lt; arg;</div><div class="line"><a name="l02110"></a><span class="lineno"> 2110</span>&#160; }</div><div class="line"><a name="l02111"></a><span class="lineno"> 2111</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;]&quot;</span>;</div><div class="line"><a name="l02112"></a><span class="lineno"> 2112</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l02113"></a><span class="lineno"> 2113</span>&#160;}</div></div><!-- fragment -->
Jenkins52ba29e2018-08-29 15:32:11 +000018866</div>
18867</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018868<a id="ae7393414bb7b814bf70e0399f2347847"></a>
Jenkins514be652019-02-28 12:25:18 +000018869<h2 class="memtitle"><span class="permalink"><a href="#ae7393414bb7b814bf70e0399f2347847">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[54/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018870
18871<div class="memitem">
18872<div class="memproto">
18873 <table class="memname">
18874 <tr>
18875 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18876 <td>(</td>
18877 <td class="paramtype">::std::ostream &amp;&#160;</td>
18878 <td class="paramname"><em>os</em>, </td>
18879 </tr>
18880 <tr>
18881 <td class="paramkey"></td>
18882 <td></td>
18883 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml">PriorBoxLayerInfo</a> &amp;&#160;</td>
18884 <td class="paramname"><em>info</em>&#160;</td>
18885 </tr>
18886 <tr>
18887 <td></td>
18888 <td>)</td>
18889 <td></td><td></td>
18890 </tr>
18891 </table>
18892</div><div class="memdoc">
18893
18894<p>Formatted output of <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml">PriorBoxLayerInfo</a>. </p>
18895<dl class="params"><dt>Parameters</dt><dd>
18896 <table class="params">
18897 <tr><td class="paramdir">[out]</td><td class="paramname">os</td><td>Output stream. </td></tr>
18898 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
18899 </table>
18900 </dd>
18901</dl>
18902<dl class="section return"><dt>Returns</dt><dd>Modified output stream. </dd></dl>
18903
Jenkins514be652019-02-28 12:25:18 +000018904<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l02122">2122</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18905<div class="fragment"><div class="line"><a name="l02123"></a><span class="lineno"> 2123</span>&#160;{</div><div class="line"><a name="l02124"></a><span class="lineno"> 2124</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;Clip:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.clip()</div><div class="line"><a name="l02125"></a><span class="lineno"> 2125</span>&#160; &lt;&lt; <span class="stringliteral">&quot;Flip:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.flip()</div><div class="line"><a name="l02126"></a><span class="lineno"> 2126</span>&#160; &lt;&lt; <span class="stringliteral">&quot;StepX:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.steps()[0]</div><div class="line"><a name="l02127"></a><span class="lineno"> 2127</span>&#160; &lt;&lt; <span class="stringliteral">&quot;StepY:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.steps()[1]</div><div class="line"><a name="l02128"></a><span class="lineno"> 2128</span>&#160; &lt;&lt; <span class="stringliteral">&quot;MinSizes:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.min_sizes()</div><div class="line"><a name="l02129"></a><span class="lineno"> 2129</span>&#160; &lt;&lt; <span class="stringliteral">&quot;MaxSizes:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.max_sizes()</div><div class="line"><a name="l02130"></a><span class="lineno"> 2130</span>&#160; &lt;&lt; <span class="stringliteral">&quot;ImgSizeX:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.img_size().x</div><div class="line"><a name="l02131"></a><span class="lineno"> 2131</span>&#160; &lt;&lt; <span class="stringliteral">&quot;ImgSizeY:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.img_size().y</div><div class="line"><a name="l02132"></a><span class="lineno"> 2132</span>&#160; &lt;&lt; <span class="stringliteral">&quot;Offset:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.offset()</div><div class="line"><a name="l02133"></a><span class="lineno"> 2133</span>&#160; &lt;&lt; <span class="stringliteral">&quot;Variances:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.variances();</div><div class="line"><a name="l02134"></a><span class="lineno"> 2134</span>&#160;</div><div class="line"><a name="l02135"></a><span class="lineno"> 2135</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l02136"></a><span class="lineno"> 2136</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018906</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000018907<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
18908
Jenkinsb9abeae2018-11-22 11:58:08 +000018909</div>
18910</div>
18911<a id="af3cba8a4493cee4c431d128eed565ffe"></a>
Jenkins514be652019-02-28 12:25:18 +000018912<h2 class="memtitle"><span class="permalink"><a href="#af3cba8a4493cee4c431d128eed565ffe">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[55/55]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018913
Jenkinsb3a371b2018-05-23 11:36:53 +010018914<div class="memitem">
18915<div class="memproto">
18916 <table class="memname">
18917 <tr>
18918 <td class="memname">inline ::std::ostream&amp; arm_compute::operator&lt;&lt; </td>
18919 <td>(</td>
18920 <td class="paramtype">::std::ostream &amp;&#160;</td>
18921 <td class="paramname"><em>os</em>, </td>
18922 </tr>
18923 <tr>
18924 <td class="paramkey"></td>
18925 <td></td>
18926 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_winograd_info.xhtml">WinogradInfo</a> &amp;&#160;</td>
18927 <td class="paramname"><em>info</em>&#160;</td>
18928 </tr>
18929 <tr>
18930 <td></td>
18931 <td>)</td>
18932 <td></td><td></td>
18933 </tr>
18934 </table>
18935</div><div class="memdoc">
18936
Jenkins514be652019-02-28 12:25:18 +000018937<p>Formatted output of the <a class="el" href="structarm__compute_1_1_winograd_info.xhtml" title="Winograd information.">WinogradInfo</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010018938
Jenkins514be652019-02-28 12:25:18 +000018939<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l02153">2153</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
18940<div class="fragment"><div class="line"><a name="l02154"></a><span class="lineno"> 2154</span>&#160;{</div><div class="line"><a name="l02155"></a><span class="lineno"> 2155</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;{OutputTileSize=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.output_tile_size &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l02156"></a><span class="lineno"> 2156</span>&#160; &lt;&lt; <span class="stringliteral">&quot;KernelSize=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.kernel_size &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l02157"></a><span class="lineno"> 2157</span>&#160; &lt;&lt; <span class="stringliteral">&quot;PadStride=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.convolution_info &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l02158"></a><span class="lineno"> 2158</span>&#160; &lt;&lt; <span class="stringliteral">&quot;OutputDataLayout=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.output_data_layout &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l02159"></a><span class="lineno"> 2159</span>&#160;</div><div class="line"><a name="l02160"></a><span class="lineno"> 2160</span>&#160; <span class="keywordflow">return</span> os;</div><div class="line"><a name="l02161"></a><span class="lineno"> 2161</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Anthony Barbier06ea0482018-02-22 15:45:35 +000018941</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000018942<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
18943
Anthony Barbierf45d5a92018-01-24 16:23:15 +000018944</div>
18945</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018946<a id="a096590f2456b9e9bcb8db98175720b60"></a>
18947<h2 class="memtitle"><span class="permalink"><a href="#a096590f2456b9e9bcb8db98175720b60">&#9670;&nbsp;</a></span>operator==()</h2>
18948
Anthony Barbier8140e1e2017-12-14 23:48:46 +000018949<div class="memitem">
18950<div class="memproto">
18951<table class="mlabels">
18952 <tr>
18953 <td class="mlabels-left">
18954 <table class="memname">
18955 <tr>
18956 <td class="memname">bool arm_compute::operator== </td>
18957 <td>(</td>
18958 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;&#160;</td>
18959 <td class="paramname"><em>lhs</em>, </td>
18960 </tr>
18961 <tr>
18962 <td class="paramkey"></td>
18963 <td></td>
18964 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;&#160;</td>
18965 <td class="paramname"><em>rhs</em>&#160;</td>
18966 </tr>
18967 <tr>
18968 <td></td>
18969 <td>)</td>
18970 <td></td><td></td>
18971 </tr>
18972 </table>
18973 </td>
18974 <td class="mlabels-right">
18975<span class="mlabels"><span class="mlabel">inline</span></span> </td>
18976 </tr>
18977</table>
18978</div><div class="memdoc">
18979
Jenkinsb3a371b2018-05-23 11:36:53 +010018980<p>Check that given dimensions are equal. </p>
18981<dl class="params"><dt>Parameters</dt><dd>
18982 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000018983 <tr><td class="paramdir">[in]</td><td class="paramname">lhs</td><td>Left-hand side <a class="el" href="classarm__compute_1_1_dimensions.xhtml" title="Dimensions with dimensionality.">Dimensions</a>. </td></tr>
18984 <tr><td class="paramdir">[in]</td><td class="paramname">rhs</td><td>Right-hand side <a class="el" href="classarm__compute_1_1_dimensions.xhtml" title="Dimensions with dimensionality.">Dimensions</a>.</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010018985 </table>
18986 </dd>
18987</dl>
18988<dl class="section return"><dt>Returns</dt><dd>True if the given dimensions are equal. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000018989
Jenkinsb9abeae2018-11-22 11:58:08 +000018990<p class="definition">Definition at line <a class="el" href="_dimensions_8h_source.xhtml#l00234">234</a> of file <a class="el" href="_dimensions_8h_source.xhtml">Dimensions.h</a>.</p>
Jenkinsb3a371b2018-05-23 11:36:53 +010018991<div class="fragment"><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;{</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordflow">return</span> ((lhs.num_dimensions() == rhs.num_dimensions()) &amp;&amp; std::equal(lhs.cbegin(), lhs.cend(), rhs.cbegin()));</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000018992<p class="reference">References <a class="el" href="_dimensions_8h_source.xhtml#l00189">Dimensions&lt; T &gt;::cbegin()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00213">Dimensions&lt; T &gt;::cend()</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>.</p>
18993
Anthony Barbier8140e1e2017-12-14 23:48:46 +000018994</div>
18995</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000018996<a id="a1379e5f8a8b4640d7a52d901f0539ccd"></a>
Jenkins514be652019-02-28 12:25:18 +000018997<h2 class="memtitle"><span class="permalink"><a href="#a1379e5f8a8b4640d7a52d901f0539ccd">&#9670;&nbsp;</a></span>operator&gt;&gt;() <span class="overload">[1/3]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000018998
Anthony Barbierdbdab852017-06-23 15:42:00 +010018999<div class="memitem">
19000<div class="memproto">
19001 <table class="memname">
19002 <tr>
19003 <td class="memname">inline ::std::istream&amp; arm_compute::operator&gt;&gt; </td>
19004 <td>(</td>
19005 <td class="paramtype">::std::istream &amp;&#160;</td>
19006 <td class="paramname"><em>is</em>, </td>
19007 </tr>
19008 <tr>
19009 <td class="paramkey"></td>
19010 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019011 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010019012 <td class="paramname"><em>mode</em>&#160;</td>
19013 </tr>
19014 <tr>
19015 <td></td>
19016 <td>)</td>
19017 <td></td><td></td>
19018 </tr>
19019 </table>
19020</div><div class="memdoc">
19021
19022<p>Formatted input of the BorderMode type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010019023<dl class="params"><dt>Parameters</dt><dd>
19024 <table class="params">
19025 <tr><td class="paramdir">[out]</td><td class="paramname">is</td><td>Input stream. </td></tr>
19026 <tr><td class="paramdir">[in]</td><td class="paramname">mode</td><td>Border mode.</td></tr>
19027 </table>
19028 </dd>
19029</dl>
19030<dl class="section return"><dt>Returns</dt><dd>the modified input stream. </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010019031
Jenkinsb9abeae2018-11-22 11:58:08 +000019032<p class="definition">Definition at line <a class="el" href="_type_reader_8h_source.xhtml#l00042">42</a> of file <a class="el" href="_type_reader_8h_source.xhtml">TypeReader.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000019033<div class="fragment"><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;{</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; std::string value;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; is &gt;&gt; value;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; std::transform(value.begin(), value.end(), value.begin(), [](<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> c)</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; {</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordflow">return</span> std::toupper(c);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; });</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">if</span>(value == <span class="stringliteral">&quot;UNDEFINED&quot;</span>)</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; {</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; mode = BorderMode::UNDEFINED;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; }</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(value == <span class="stringliteral">&quot;CONSTANT&quot;</span>)</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; {</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; mode = BorderMode::CONSTANT;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; }</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(value == <span class="stringliteral">&quot;REPLICATE&quot;</span>)</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; {</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; mode = BorderMode::REPLICATE;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; }</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; {</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">throw</span> std::invalid_argument(<span class="stringliteral">&quot;Unsupported value &#39;&quot;</span> + value + <span class="stringliteral">&quot;&#39; for border mode&quot;</span>);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; }</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">return</span> is;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;}</div></div><!-- fragment -->
Jenkins52ba29e2018-08-29 15:32:11 +000019034</div>
19035</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019036<a id="a7cec6ed141f3eb1d6330533a90bba9e1"></a>
Jenkins514be652019-02-28 12:25:18 +000019037<h2 class="memtitle"><span class="permalink"><a href="#a7cec6ed141f3eb1d6330533a90bba9e1">&#9670;&nbsp;</a></span>operator&gt;&gt;() <span class="overload">[2/3]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000019038
Jenkins52ba29e2018-08-29 15:32:11 +000019039<div class="memitem">
19040<div class="memproto">
19041 <table class="memname">
19042 <tr>
19043 <td class="memname">inline ::std::istream&amp; arm_compute::operator&gt;&gt; </td>
19044 <td>(</td>
19045 <td class="paramtype">::std::istream &amp;&#160;</td>
19046 <td class="paramname"><em>stream</em>, </td>
19047 </tr>
19048 <tr>
19049 <td class="paramkey"></td>
19050 <td></td>
19051 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a> &amp;&#160;</td>
19052 <td class="paramname"><em>data_type</em>&#160;</td>
19053 </tr>
19054 <tr>
19055 <td></td>
19056 <td>)</td>
19057 <td></td><td></td>
19058 </tr>
19059 </table>
19060</div><div class="memdoc">
19061
19062<p>Input Stream operator for <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>. </p>
19063<dl class="params"><dt>Parameters</dt><dd>
19064 <table class="params">
19065 <tr><td class="paramdir">[in]</td><td class="paramname">stream</td><td>Stream to parse </td></tr>
19066 <tr><td class="paramdir">[out]</td><td class="paramname">data_type</td><td>Output data type</td></tr>
19067 </table>
19068 </dd>
19069</dl>
19070<dl class="section return"><dt>Returns</dt><dd>Updated stream </dd></dl>
19071
Jenkinsb9abeae2018-11-22 11:58:08 +000019072<p class="definition">Definition at line <a class="el" href="_type_loader_8h_source.xhtml#l00048">48</a> of file <a class="el" href="_type_loader_8h_source.xhtml">TypeLoader.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000019073<div class="fragment"><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;{</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; std::string value;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; stream &gt;&gt; value;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a> = <a class="code" href="namespacearm__compute.xhtml#a307a55b07dc70dc9177ff26543b1c66f">data_type_from_name</a>(value);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">return</span> stream;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
19074<div class="ttc" id="namespacearm__compute_xhtml_a307a55b07dc70dc9177ff26543b1c66f"><div class="ttname"><a href="namespacearm__compute.xhtml#a307a55b07dc70dc9177ff26543b1c66f">arm_compute::data_type_from_name</a></div><div class="ttdeci">arm_compute::DataType data_type_from_name(const std::string &amp;name)</div><div class="ttdoc">Converts a string to a strong types enumeration DataType.</div><div class="ttdef"><b>Definition:</b> <a href="_type_loader_8cpp_source.xhtml#l00032">TypeLoader.cpp:32</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000019075</div><!-- fragment -->
19076</div>
19077</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019078<a id="a9c4a3d0e80938810dd7b22b16785f5c8"></a>
Jenkins514be652019-02-28 12:25:18 +000019079<h2 class="memtitle"><span class="permalink"><a href="#a9c4a3d0e80938810dd7b22b16785f5c8">&#9670;&nbsp;</a></span>operator&gt;&gt;() <span class="overload">[3/3]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000019080
Jenkins52ba29e2018-08-29 15:32:11 +000019081<div class="memitem">
19082<div class="memproto">
19083 <table class="memname">
19084 <tr>
19085 <td class="memname">inline ::std::istream&amp; arm_compute::operator&gt;&gt; </td>
19086 <td>(</td>
19087 <td class="paramtype">::std::istream &amp;&#160;</td>
19088 <td class="paramname"><em>stream</em>, </td>
19089 </tr>
19090 <tr>
19091 <td class="paramkey"></td>
19092 <td></td>
19093 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a> &amp;&#160;</td>
19094 <td class="paramname"><em>data_layout</em>&#160;</td>
19095 </tr>
19096 <tr>
19097 <td></td>
19098 <td>)</td>
19099 <td></td><td></td>
19100 </tr>
19101 </table>
19102</div><div class="memdoc">
19103
19104<p>Input Stream operator for <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a>. </p>
19105<dl class="params"><dt>Parameters</dt><dd>
19106 <table class="params">
19107 <tr><td class="paramdir">[in]</td><td class="paramname">stream</td><td>Stream to parse </td></tr>
19108 <tr><td class="paramdir">[out]</td><td class="paramname">data_layout</td><td>Output data layout</td></tr>
19109 </table>
19110 </dd>
19111</dl>
19112<dl class="section return"><dt>Returns</dt><dd>Updated stream </dd></dl>
19113
Jenkinsb9abeae2018-11-22 11:58:08 +000019114<p class="definition">Definition at line <a class="el" href="_type_loader_8h_source.xhtml#l00071">71</a> of file <a class="el" href="_type_loader_8h_source.xhtml">TypeLoader.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000019115<div class="fragment"><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;{</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; std::string value;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; stream &gt;&gt; value;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; data_layout = <a class="code" href="namespacearm__compute.xhtml#a834b76c7d21af898f39def3b787d7530">data_layout_from_name</a>(value);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">return</span> stream;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a834b76c7d21af898f39def3b787d7530"><div class="ttname"><a href="namespacearm__compute.xhtml#a834b76c7d21af898f39def3b787d7530">arm_compute::data_layout_from_name</a></div><div class="ttdeci">arm_compute::DataLayout data_layout_from_name(const std::string &amp;name)</div><div class="ttdoc">Converts a string to a strong types enumeration DataLayout.</div><div class="ttdef"><b>Definition:</b> <a href="_type_loader_8cpp_source.xhtml#l00056">TypeLoader.cpp:56</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010019116</div><!-- fragment -->
Anthony Barbierdbdab852017-06-23 15:42:00 +010019117</div>
19118</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019119<a id="a21c3e11887f3acf9284ca763372c7da0"></a>
19120<h2 class="memtitle"><span class="permalink"><a href="#a21c3e11887f3acf9284ca763372c7da0">&#9670;&nbsp;</a></span>permute() <span class="overload">[1/2]</span></h2>
19121
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019122<div class="memitem">
19123<div class="memproto">
19124<table class="mlabels">
19125 <tr>
19126 <td class="mlabels-left">
19127 <table class="memname">
19128 <tr>
19129 <td class="memname">void arm_compute::permute </td>
19130 <td>(</td>
19131 <td class="paramtype"><a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;&#160;</td>
19132 <td class="paramname"><em>dimensions</em>, </td>
19133 </tr>
19134 <tr>
19135 <td class="paramkey"></td>
19136 <td></td>
19137 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a33e65be485104e2e9e69fca551d6f492">PermutationVector</a> &amp;&#160;</td>
19138 <td class="paramname"><em>perm</em>&#160;</td>
19139 </tr>
19140 <tr>
19141 <td></td>
19142 <td>)</td>
19143 <td></td><td></td>
19144 </tr>
19145 </table>
19146 </td>
19147 <td class="mlabels-right">
19148<span class="mlabels"><span class="mlabel">inline</span></span> </td>
19149 </tr>
19150</table>
19151</div><div class="memdoc">
19152
Jenkins514be652019-02-28 12:25:18 +000019153<p>Permutes given <a class="el" href="classarm__compute_1_1_dimensions.xhtml" title="Dimensions with dimensionality.">Dimensions</a> according to a permutation vector. </p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019154<dl class="section warning"><dt>Warning</dt><dd>Validity of permutation is not checked</dd></dl>
19155<dl class="params"><dt>Parameters</dt><dd>
19156 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000019157 <tr><td class="paramdir">[in,out]</td><td class="paramname">dimensions</td><td><a class="el" href="classarm__compute_1_1_dimensions.xhtml" title="Dimensions with dimensionality.">Dimensions</a> to permute </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019158 <tr><td class="paramdir">[in]</td><td class="paramname">perm</td><td>Permutation vector </td></tr>
19159 </table>
19160 </dd>
19161</dl>
19162
Jenkins514be652019-02-28 12:25:18 +000019163<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00570">570</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
19164<div class="fragment"><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;{</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; <span class="keyword">auto</span> dimensions_copy = utility::make_array&lt;Dimensions&lt;T&gt;::num_max_dimensions&gt;(dimensions.begin(), dimensions.end());</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; perm.num_dimensions(); ++i)</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; T dimension_val = (perm[i] &lt; dimensions.num_dimensions()) ? dimensions_copy[perm[i]] : 0;</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; dimensions.set(i, dimension_val);</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; }</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000019165<p class="reference">References <a class="el" href="_dimensions_8h_source.xhtml#l00173">Dimensions&lt; T &gt;::begin()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00197">Dimensions&lt; T &gt;::end()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019166
Jenkins514be652019-02-28 12:25:18 +000019167<p class="reference">Referenced by <a class="el" href="_shape_calculator_8h_source.xhtml#l00071">arm_compute::misc::shape_calculator::compute_permutation_output_shape()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00045">NEDepthwiseConvolutionLayer3x3::configure()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00268">NEDepthwiseConvolutionLayer::configure()</a>, <a class="el" href="_permute_layer_node_8cpp_source.xhtml#l00059">PermuteLayerNode::configure_output()</a>, <a class="el" href="_assets_library_8h_source.xhtml#l00522">AssetsLibrary::fill()</a>, <a class="el" href="utils_2_utils_8h_source.xhtml#l00396">NPYLoader::fill_tensor()</a>, <a class="el" href="_graph_utils_8h_source.xhtml#l00569">arm_compute::graph_utils::permute_shape()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_8cpp_source.xhtml#l00128">CLDepthwiseConvolutionLayer3x3::validate()</a>, <a class="el" href="_n_e_depthwise_convolution_layer_8cpp_source.xhtml#l00401">NEDepthwiseConvolutionLayer::validate()</a>, <a class="el" href="_validation_8h_source.xhtml#l00381">arm_compute::test::validation::validate()</a>, and <a class="el" href="_validation_8h_source.xhtml#l00456">arm_compute::test::validation::validate_wrap()</a>.</p>
19168
Anthony Barbier06ea0482018-02-22 15:45:35 +000019169</div>
19170</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019171<a id="a5045aaec85553032a782c44ab8d26341"></a>
19172<h2 class="memtitle"><span class="permalink"><a href="#a5045aaec85553032a782c44ab8d26341">&#9670;&nbsp;</a></span>permute() <span class="overload">[2/2]</span></h2>
19173
Anthony Barbier06ea0482018-02-22 15:45:35 +000019174<div class="memitem">
19175<div class="memproto">
19176<table class="mlabels">
19177 <tr>
19178 <td class="mlabels-left">
19179 <table class="memname">
19180 <tr>
19181 <td class="memname">void arm_compute::permute </td>
19182 <td>(</td>
19183 <td class="paramtype"><a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;&#160;</td>
19184 <td class="paramname"><em>shape</em>, </td>
19185 </tr>
19186 <tr>
19187 <td class="paramkey"></td>
19188 <td></td>
19189 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a33e65be485104e2e9e69fca551d6f492">PermutationVector</a> &amp;&#160;</td>
19190 <td class="paramname"><em>perm</em>&#160;</td>
19191 </tr>
19192 <tr>
19193 <td></td>
19194 <td>)</td>
19195 <td></td><td></td>
19196 </tr>
19197 </table>
19198 </td>
19199 <td class="mlabels-right">
19200<span class="mlabels"><span class="mlabel">inline</span></span> </td>
19201 </tr>
19202</table>
19203</div><div class="memdoc">
19204
Jenkins514be652019-02-28 12:25:18 +000019205<p>Permutes given <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml" title="Shape of a tensor.">TensorShape</a> according to a permutation vector. </p>
Anthony Barbier06ea0482018-02-22 15:45:35 +000019206<dl class="section warning"><dt>Warning</dt><dd>Validity of permutation is not checked</dd></dl>
19207<dl class="params"><dt>Parameters</dt><dd>
19208 <table class="params">
19209 <tr><td class="paramdir">[in,out]</td><td class="paramname">shape</td><td>Shape to permute </td></tr>
19210 <tr><td class="paramdir">[in]</td><td class="paramname">perm</td><td>Permutation vector </td></tr>
19211 </table>
19212 </dd>
19213</dl>
19214
Jenkins514be652019-02-28 12:25:18 +000019215<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00587">587</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
19216<div class="fragment"><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160;{</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; TensorShape shape_copy = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>;</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; perm.num_dimensions(); ++i)</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; {</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; <span class="keywordtype">size_t</span> dimension_val = (perm[i] &lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>.num_dimensions()) ? shape_copy[perm[i]] : 1;</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>.set(i, dimension_val, <span class="keyword">false</span>); <span class="comment">// Avoid changes in _num_dimension</span></div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; }</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">AbsoluteDifference.cpp:97</a></div></div>
Anthony Barbier06ea0482018-02-22 15:45:35 +000019217</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000019218<p class="reference">References <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, and <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">arm_compute::test::validation::shape</a>.</p>
19219
19220</div>
19221</div>
19222<a id="afcd35973f3a5d2d4d3015e155f185a81"></a>
19223<h2 class="memtitle"><span class="permalink"><a href="#afcd35973f3a5d2d4d3015e155f185a81">&#9670;&nbsp;</a></span>permute_strides()</h2>
19224
19225<div class="memitem">
19226<div class="memproto">
19227<table class="mlabels">
19228 <tr>
19229 <td class="mlabels-left">
19230 <table class="memname">
19231 <tr>
19232 <td class="memname">void arm_compute::permute_strides </td>
19233 <td>(</td>
19234 <td class="paramtype"><a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;&#160;</td>
19235 <td class="paramname"><em>dimensions</em>, </td>
19236 </tr>
19237 <tr>
19238 <td class="paramkey"></td>
19239 <td></td>
19240 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a33e65be485104e2e9e69fca551d6f492">PermutationVector</a> &amp;&#160;</td>
19241 <td class="paramname"><em>perm</em>&#160;</td>
19242 </tr>
19243 <tr>
19244 <td></td>
19245 <td>)</td>
19246 <td></td><td></td>
19247 </tr>
19248 </table>
19249 </td>
19250 <td class="mlabels-right">
19251<span class="mlabels"><span class="mlabel">inline</span></span> </td>
19252 </tr>
19253</table>
19254</div><div class="memdoc">
19255
19256<p>Permutes the given dimensions according the permutation vector. </p>
19257<dl class="params"><dt>Parameters</dt><dd>
19258 <table class="params">
19259 <tr><td class="paramdir">[in,out]</td><td class="paramname">dimensions</td><td><a class="el" href="classarm__compute_1_1_dimensions.xhtml" title="Dimensions with dimensionality.">Dimensions</a> to be permuted. </td></tr>
19260 <tr><td class="paramdir">[in]</td><td class="paramname">perm</td><td><a class="el" href="struct_vector.xhtml" title="Structure to hold Vector information.">Vector</a> describing the permutation. </td></tr>
19261 </table>
19262 </dd>
19263</dl>
19264
19265<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00815">815</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
19266<div class="fragment"><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160;{</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> old_dim = utility::make_array&lt;Dimensions&lt;T&gt;::num_max_dimensions&gt;(dimensions.begin(), dimensions.end());</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; perm.num_dimensions(); ++i)</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; {</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; T dimension_val = old_dim[i];</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; dimensions.set(perm[i], dimension_val);</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; }</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160;}</div></div><!-- fragment -->
19267<p class="reference">References <a class="el" href="_dimensions_8h_source.xhtml#l00173">Dimensions&lt; T &gt;::begin()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00197">Dimensions&lt; T &gt;::end()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00122">Dimensions&lt; T &gt;::num_dimensions()</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>.</p>
19268
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019269</div>
19270</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019271<a id="ab7b3af731907e85fcaf72555c446176b"></a>
19272<h2 class="memtitle"><span class="permalink"><a href="#ab7b3af731907e85fcaf72555c446176b">&#9670;&nbsp;</a></span>pixel_area_c1u8_clamp()</h2>
19273
Anthony Barbierdbdab852017-06-23 15:42:00 +010019274<div class="memitem">
19275<div class="memproto">
19276<table class="mlabels">
19277 <tr>
19278 <td class="mlabels-left">
19279 <table class="memname">
19280 <tr>
19281 <td class="memname">uint8_t pixel_area_c1u8_clamp </td>
19282 <td>(</td>
19283 <td class="paramtype">const uint8_t *&#160;</td>
19284 <td class="paramname"><em>first_pixel_ptr</em>, </td>
19285 </tr>
19286 <tr>
19287 <td class="paramkey"></td>
19288 <td></td>
19289 <td class="paramtype">size_t&#160;</td>
19290 <td class="paramname"><em>stride</em>, </td>
19291 </tr>
19292 <tr>
19293 <td class="paramkey"></td>
19294 <td></td>
19295 <td class="paramtype">size_t&#160;</td>
19296 <td class="paramname"><em>width</em>, </td>
19297 </tr>
19298 <tr>
19299 <td class="paramkey"></td>
19300 <td></td>
19301 <td class="paramtype">size_t&#160;</td>
19302 <td class="paramname"><em>height</em>, </td>
19303 </tr>
19304 <tr>
19305 <td class="paramkey"></td>
19306 <td></td>
19307 <td class="paramtype">float&#160;</td>
19308 <td class="paramname"><em>wr</em>, </td>
19309 </tr>
19310 <tr>
19311 <td class="paramkey"></td>
19312 <td></td>
19313 <td class="paramtype">float&#160;</td>
19314 <td class="paramname"><em>hr</em>, </td>
19315 </tr>
19316 <tr>
19317 <td class="paramkey"></td>
19318 <td></td>
19319 <td class="paramtype">int&#160;</td>
19320 <td class="paramname"><em>x</em>, </td>
19321 </tr>
19322 <tr>
19323 <td class="paramkey"></td>
19324 <td></td>
19325 <td class="paramtype">int&#160;</td>
19326 <td class="paramname"><em>y</em>&#160;</td>
19327 </tr>
19328 <tr>
19329 <td></td>
19330 <td>)</td>
19331 <td></td><td></td>
19332 </tr>
19333 </table>
19334 </td>
19335 <td class="mlabels-right">
19336<span class="mlabels"><span class="mlabel">inline</span></span> </td>
19337 </tr>
19338</table>
19339</div><div class="memdoc">
19340
19341<p>Return the pixel at (x,y) using area interpolation by clamping when out of borders. </p>
19342<p>The image must be single channel U8</p>
19343<dl class="section note"><dt>Note</dt><dd>The interpolation area depends on the width and height ration of the input and output images </dd>
19344<dd>
19345Currently average of the contributing pixels is calculated</dd></dl>
19346<dl class="params"><dt>Parameters</dt><dd>
19347 <table class="params">
19348 <tr><td class="paramdir">[in]</td><td class="paramname">first_pixel_ptr</td><td>Pointer to the first pixel of a single channel U8 image. </td></tr>
19349 <tr><td class="paramdir">[in]</td><td class="paramname">stride</td><td>Stride in bytes of the image </td></tr>
19350 <tr><td class="paramdir">[in]</td><td class="paramname">width</td><td>Width of the image </td></tr>
19351 <tr><td class="paramdir">[in]</td><td class="paramname">height</td><td>Height of the image </td></tr>
19352 <tr><td class="paramdir">[in]</td><td class="paramname">wr</td><td>Width ratio among the input image width and output image width. </td></tr>
19353 <tr><td class="paramdir">[in]</td><td class="paramname">hr</td><td>Height ratio among the input image height and output image height. </td></tr>
19354 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>X position of the wanted pixel </td></tr>
19355 <tr><td class="paramdir">[in]</td><td class="paramname">y</td><td>Y position of the wanted pixel</td></tr>
19356 </table>
19357 </dd>
19358</dl>
19359<dl class="section return"><dt>Returns</dt><dd>The pixel at (x, y) using area interpolation. </dd></dl>
19360
Jenkinsb9abeae2018-11-22 11:58:08 +000019361<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00032">32</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000019362<div class="fragment"><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;{</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(first_pixel_ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="comment">// Calculate sampling position</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keywordtype">float</span> in_x = (x + 0.5f) * wr - 0.5f;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordtype">float</span> in_y = (y + 0.5f) * hr - 0.5f;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="comment">// Get bounding box offsets</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordtype">int</span> x_from = std::floor(x * wr - 0.5f - in_x);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordtype">int</span> y_from = std::floor(y * hr - 0.5f - in_y);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordtype">int</span> x_to = std::ceil((x + 1) * wr - 0.5f - in_x);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordtype">int</span> y_to = std::ceil((y + 1) * hr - 0.5f - in_y);</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="comment">// Clamp position to borders</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; in_x = std::max(-1.f, std::min(in_x, static_cast&lt;float&gt;(width)));</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; in_y = std::max(-1.f, std::min(in_y, static_cast&lt;float&gt;(height)));</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="comment">// Clamp bounding box offsets to borders</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; x_from = ((in_x + x_from) &lt; -1) ? -1 : x_from;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; y_from = ((in_y + y_from) &lt; -1) ? -1 : y_from;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; x_to = ((in_x + x_to) &gt; width) ? (width - in_x) : x_to;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; y_to = ((in_y + y_to) &gt; height) ? (height - in_y) : y_to;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="comment">// Get pixel index</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> xi = std::floor(in_x);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> yi = std::floor(in_y);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="comment">// Bounding box elements in each dimension</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> x_elements = (x_to - x_from + 1);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> y_elements = (y_to - y_from + 1);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(x_elements == 0 || y_elements == 0);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">// Sum pixels in area</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordtype">int</span> <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">sum</a> = 0;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">int</span> j = yi + y_from, je = yi + y_to; j &lt;= je; ++j)</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; {</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">const</span> uint8_t *ptr = first_pixel_ptr + j * stride + xi + x_from;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">sum</a> = <a class="code" href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">std::accumulate</a>(ptr, ptr + x_elements, <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">sum</a>);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; }</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="comment">// Return average</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> <a class="code" href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">sum</a> / (x_elements * y_elements);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;}</div><div class="ttc" id="reduction__operation_8cl_xhtml_ab0df00f5333da51860deb93deb44a782"><div class="ttname"><a href="reduction__operation_8cl.xhtml#ab0df00f5333da51860deb93deb44a782">sum</a></div><div class="ttdeci">DATA_TYPE sum(__global const DATA_TYPE *input)</div><div class="ttdoc">Calculate sum of a vector.</div><div class="ttdef"><b>Definition:</b> <a href="reduction__operation_8cl_source.xhtml#l00052">reduction_operation.cl:52</a></div></div>
19363<div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
19364<div class="ttc" id="accumulate_8cl_xhtml_a00e540076dd545ad59ac7482f8cdf514"><div class="ttname"><a href="accumulate_8cl.xhtml#a00e540076dd545ad59ac7482f8cdf514">accumulate</a></div><div class="ttdeci">__kernel void accumulate(__global uchar *input_ptr, uint input_stride_x, uint input_step_x, uint input_stride_y, uint input_step_y, uint input_offset_first_element_in_bytes, __global uchar *accu_ptr, uint accu_stride_x, uint accu_step_x, uint accu_stride_y, uint accu_step_y, uint accu_offset_first_element_in_bytes)</div><div class="ttdoc">This function accumulates an input image into output image.</div><div class="ttdef"><b>Definition:</b> <a href="accumulate_8cl_source.xhtml#l00041">accumulate.cl:41</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +010019365</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000019366<p class="reference">References <a class="el" href="accumulate_8cl_source.xhtml#l00041">accumulate()</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, and <a class="el" href="reduction__operation_8cl_source.xhtml#l00052">sum()</a>.</p>
19367
Anthony Barbierdbdab852017-06-23 15:42:00 +010019368</div>
19369</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019370<a id="a1c8d639ec2b3086a9506e72605a32333"></a>
19371<h2 class="memtitle"><span class="permalink"><a href="#a1c8d639ec2b3086a9506e72605a32333">&#9670;&nbsp;</a></span>pixel_bilinear_c1()</h2>
19372
Anthony Barbierdbdab852017-06-23 15:42:00 +010019373<div class="memitem">
19374<div class="memproto">
19375<table class="mlabels">
19376 <tr>
19377 <td class="mlabels-left">
19378 <table class="memname">
19379 <tr>
Kaizen8938bd32017-09-28 14:38:23 +010019380 <td class="memname">T arm_compute::pixel_bilinear_c1 </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010019381 <td>(</td>
Kaizen8938bd32017-09-28 14:38:23 +010019382 <td class="paramtype">const T *&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010019383 <td class="paramname"><em>first_pixel_ptr</em>, </td>
19384 </tr>
19385 <tr>
19386 <td class="paramkey"></td>
19387 <td></td>
19388 <td class="paramtype">size_t&#160;</td>
19389 <td class="paramname"><em>stride</em>, </td>
19390 </tr>
19391 <tr>
19392 <td class="paramkey"></td>
19393 <td></td>
19394 <td class="paramtype">float&#160;</td>
19395 <td class="paramname"><em>x</em>, </td>
19396 </tr>
19397 <tr>
19398 <td class="paramkey"></td>
19399 <td></td>
19400 <td class="paramtype">float&#160;</td>
19401 <td class="paramname"><em>y</em>&#160;</td>
19402 </tr>
19403 <tr>
19404 <td></td>
19405 <td>)</td>
19406 <td></td><td></td>
19407 </tr>
19408 </table>
19409 </td>
19410 <td class="mlabels-right">
19411<span class="mlabels"><span class="mlabel">inline</span></span> </td>
19412 </tr>
19413</table>
19414</div><div class="memdoc">
19415
19416<p>Return the pixel at (x,y) using bilinear interpolation. </p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010019417<dl class="section warning"><dt>Warning</dt><dd>Only works if the iterator was created with an IImage</dd></dl>
19418<dl class="params"><dt>Parameters</dt><dd>
19419 <table class="params">
Kaizen8938bd32017-09-28 14:38:23 +010019420 <tr><td class="paramdir">[in]</td><td class="paramname">first_pixel_ptr</td><td>Pointer to the first pixel of a single channel input. </td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +010019421 <tr><td class="paramdir">[in]</td><td class="paramname">stride</td><td>Stride in bytes of the image; </td></tr>
19422 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>X position of the wanted pixel </td></tr>
19423 <tr><td class="paramdir">[in]</td><td class="paramname">y</td><td>Y position of the wanted pixel</td></tr>
19424 </table>
19425 </dd>
19426</dl>
19427<dl class="section return"><dt>Returns</dt><dd>The pixel at (x, y) using bilinear interpolation. </dd></dl>
19428
Jenkins514be652019-02-28 12:25:18 +000019429<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00244">244</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
19430<div class="fragment"><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;{</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(first_pixel_ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keyword">const</span> int32_t xi = std::floor(x);</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keyword">const</span> int32_t yi = std::floor(y);</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> dx = x - xi;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> dy = y - yi;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#ad656a27ce8a507e31096ca45683ba9a5">delta_bilinear_c1</a>(first_pixel_ptr + xi + yi * stride, stride, dx, dy);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
19431<div class="ttc" id="namespacearm__compute_xhtml_ad656a27ce8a507e31096ca45683ba9a5"><div class="ttname"><a href="namespacearm__compute.xhtml#ad656a27ce8a507e31096ca45683ba9a5">arm_compute::delta_bilinear_c1</a></div><div class="ttdeci">T delta_bilinear_c1(const T *pixel_ptr, size_t stride, float dx, float dy)</div><div class="ttdoc">Computes bilinear interpolation using the pointer to the top-left pixel and the pixel's distance betw...</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00127">Helpers.h:127</a></div></div>
19432</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000019433<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00127">delta_bilinear_c1()</a>.</p>
19434
Anthony Barbierdbdab852017-06-23 15:42:00 +010019435</div>
19436</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019437<a id="afa55519774605e5b840fb031fdd7b196"></a>
19438<h2 class="memtitle"><span class="permalink"><a href="#afa55519774605e5b840fb031fdd7b196">&#9670;&nbsp;</a></span>pixel_bilinear_c1_clamp()</h2>
19439
Anthony Barbierdbdab852017-06-23 15:42:00 +010019440<div class="memitem">
19441<div class="memproto">
19442<table class="mlabels">
19443 <tr>
19444 <td class="mlabels-left">
19445 <table class="memname">
19446 <tr>
Kaizen8938bd32017-09-28 14:38:23 +010019447 <td class="memname">uint8_t arm_compute::pixel_bilinear_c1_clamp </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010019448 <td>(</td>
Kaizen8938bd32017-09-28 14:38:23 +010019449 <td class="paramtype">const T *&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010019450 <td class="paramname"><em>first_pixel_ptr</em>, </td>
19451 </tr>
19452 <tr>
19453 <td class="paramkey"></td>
19454 <td></td>
19455 <td class="paramtype">size_t&#160;</td>
19456 <td class="paramname"><em>stride</em>, </td>
19457 </tr>
19458 <tr>
19459 <td class="paramkey"></td>
19460 <td></td>
19461 <td class="paramtype">size_t&#160;</td>
19462 <td class="paramname"><em>width</em>, </td>
19463 </tr>
19464 <tr>
19465 <td class="paramkey"></td>
19466 <td></td>
19467 <td class="paramtype">size_t&#160;</td>
19468 <td class="paramname"><em>height</em>, </td>
19469 </tr>
19470 <tr>
19471 <td class="paramkey"></td>
19472 <td></td>
19473 <td class="paramtype">float&#160;</td>
19474 <td class="paramname"><em>x</em>, </td>
19475 </tr>
19476 <tr>
19477 <td class="paramkey"></td>
19478 <td></td>
19479 <td class="paramtype">float&#160;</td>
19480 <td class="paramname"><em>y</em>&#160;</td>
19481 </tr>
19482 <tr>
19483 <td></td>
19484 <td>)</td>
19485 <td></td><td></td>
19486 </tr>
19487 </table>
19488 </td>
19489 <td class="mlabels-right">
19490<span class="mlabels"><span class="mlabel">inline</span></span> </td>
19491 </tr>
19492</table>
19493</div><div class="memdoc">
19494
19495<p>Return the pixel at (x,y) using bilinear interpolation by clamping when out of borders. </p>
Kaizen8938bd32017-09-28 14:38:23 +010019496<p>The image must be single channel input</p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010019497<dl class="section warning"><dt>Warning</dt><dd>Only works if the iterator was created with an IImage</dd></dl>
19498<dl class="params"><dt>Parameters</dt><dd>
19499 <table class="params">
Kaizen8938bd32017-09-28 14:38:23 +010019500 <tr><td class="paramdir">[in]</td><td class="paramname">first_pixel_ptr</td><td>Pointer to the first pixel of a single channel image. </td></tr>
Anthony Barbierdbdab852017-06-23 15:42:00 +010019501 <tr><td class="paramdir">[in]</td><td class="paramname">stride</td><td>Stride in bytes of the image </td></tr>
19502 <tr><td class="paramdir">[in]</td><td class="paramname">width</td><td>Width of the image </td></tr>
19503 <tr><td class="paramdir">[in]</td><td class="paramname">height</td><td>Height of the image </td></tr>
19504 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>X position of the wanted pixel </td></tr>
19505 <tr><td class="paramdir">[in]</td><td class="paramname">y</td><td>Y position of the wanted pixel</td></tr>
19506 </table>
19507 </dd>
19508</dl>
19509<dl class="section return"><dt>Returns</dt><dd>The pixel at (x, y) using bilinear interpolation. </dd></dl>
19510
Jenkins514be652019-02-28 12:25:18 +000019511<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00271">271</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
19512<div class="fragment"><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;{</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(first_pixel_ptr == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; x = std::max(-1.f, std::min(x, static_cast&lt;float&gt;(width)));</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; y = std::max(-1.f, std::min(y, static_cast&lt;float&gt;(height)));</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> xi = std::floor(x);</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> yi = std::floor(y);</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> dx = x - xi;</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> dy = y - yi;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">if</span>(dx == 0.0f)</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; {</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keywordflow">if</span>(dy == 0.0f)</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; {</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keywordflow">return</span> static_cast&lt;T&gt;(first_pixel_ptr[static_cast&lt;int32_t&gt;(xi) + static_cast&lt;int32_t&gt;(yi) * stride]);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; }</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#ad5fa8bacf824e9538014bfb0dcdaab52">delta_linear_c1_y</a>(first_pixel_ptr + static_cast&lt;int32_t&gt;(xi) + static_cast&lt;int32_t&gt;(yi) * stride, stride, dy);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; }</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keywordflow">if</span>(dy == 0.0f)</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; {</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a6174495b626531de015ae2b810859287">delta_linear_c1_x</a>(first_pixel_ptr + static_cast&lt;int32_t&gt;(xi) + static_cast&lt;int32_t&gt;(yi) * stride, dx);</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; }</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#ad656a27ce8a507e31096ca45683ba9a5">delta_bilinear_c1</a>(first_pixel_ptr + static_cast&lt;int32_t&gt;(xi) + static_cast&lt;int32_t&gt;(yi) * stride, stride, dx, dy);</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a6174495b626531de015ae2b810859287"><div class="ttname"><a href="namespacearm__compute.xhtml#a6174495b626531de015ae2b810859287">arm_compute::delta_linear_c1_x</a></div><div class="ttdeci">T delta_linear_c1_x(const T *pixel_ptr, float dx)</div><div class="ttdoc">Computes linear interpolation using the pointer to the left pixel and the pixel's distance between th...</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00218">Helpers.h:218</a></div></div>
19513<div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
19514<div class="ttc" id="namespacearm__compute_xhtml_ad5fa8bacf824e9538014bfb0dcdaab52"><div class="ttname"><a href="namespacearm__compute.xhtml#ad5fa8bacf824e9538014bfb0dcdaab52">arm_compute::delta_linear_c1_y</a></div><div class="ttdeci">T delta_linear_c1_y(const T *pixel_ptr, size_t stride, float dy)</div><div class="ttdoc">Computes linear interpolation using the pointer to the top pixel and the pixel's distance between the...</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00193">Helpers.h:193</a></div></div>
19515<div class="ttc" id="namespacearm__compute_xhtml_ad656a27ce8a507e31096ca45683ba9a5"><div class="ttname"><a href="namespacearm__compute.xhtml#ad656a27ce8a507e31096ca45683ba9a5">arm_compute::delta_bilinear_c1</a></div><div class="ttdeci">T delta_bilinear_c1(const T *pixel_ptr, size_t stride, float dx, float dy)</div><div class="ttdoc">Computes bilinear interpolation using the pointer to the top-left pixel and the pixel's distance betw...</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_helpers_8h_source.xhtml#l00127">Helpers.h:127</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +010019516</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000019517<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00127">delta_bilinear_c1()</a>, <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00218">delta_linear_c1_x()</a>, and <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00193">delta_linear_c1_y()</a>.</p>
19518
Anthony Barbierdbdab852017-06-23 15:42:00 +010019519</div>
19520</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019521<a id="a4823543d67a2520c98669e2a5608ef6a"></a>
19522<h2 class="memtitle"><span class="permalink"><a href="#a4823543d67a2520c98669e2a5608ef6a">&#9670;&nbsp;</a></span>pixel_size_from_format()</h2>
19523
Anthony Barbier871448e2017-03-24 14:54:29 +000019524<div class="memitem">
19525<div class="memproto">
19526<table class="mlabels">
19527 <tr>
19528 <td class="mlabels-left">
19529 <table class="memname">
19530 <tr>
19531 <td class="memname">size_t arm_compute::pixel_size_from_format </td>
19532 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019533 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000019534 <td class="paramname"><em>format</em></td><td>)</td>
19535 <td></td>
19536 </tr>
19537 </table>
19538 </td>
19539 <td class="mlabels-right">
19540<span class="mlabels"><span class="mlabel">inline</span></span> </td>
19541 </tr>
19542</table>
19543</div><div class="memdoc">
19544
19545<p>The size in bytes of the pixel format. </p>
19546<dl class="params"><dt>Parameters</dt><dd>
19547 <table class="params">
19548 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>Input format</td></tr>
19549 </table>
19550 </dd>
19551</dl>
19552<dl class="section return"><dt>Returns</dt><dd>The size in bytes of the pixel format </dd></dl>
19553
Jenkinsb9abeae2018-11-22 11:58:08 +000019554<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00142">142</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000019555<div class="fragment"><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;{</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; {</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">return</span> 3;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">return</span> 4;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="comment">//Doesn&#39;t make sense for planar formats:</span></div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Undefined pixel size for given format&quot;</span>);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; }</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
19556</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000019557<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
19558
19559<p class="reference">Referenced by <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00678">NEHOGOrientationBinningKernel::run()</a>, and <a class="el" href="_n_e_sobel7x7_kernel_8cpp_source.xhtml#l00355">NESobel7x7VertKernel::run()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000019560
Anthony Barbier871448e2017-03-24 14:54:29 +000019561</div>
19562</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019563<a id="a4f6fe18760340bcec02d095b7099e923"></a>
19564<h2 class="memtitle"><span class="permalink"><a href="#a4f6fe18760340bcec02d095b7099e923">&#9670;&nbsp;</a></span>plane_idx_from_channel()</h2>
19565
Anthony Barbier871448e2017-03-24 14:54:29 +000019566<div class="memitem">
19567<div class="memproto">
19568<table class="mlabels">
19569 <tr>
19570 <td class="mlabels-left">
19571 <table class="memname">
19572 <tr>
19573 <td class="memname">int arm_compute::plane_idx_from_channel </td>
19574 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019575 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000019576 <td class="paramname"><em>format</em>, </td>
19577 </tr>
19578 <tr>
19579 <td class="paramkey"></td>
19580 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019581 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000019582 <td class="paramname"><em>channel</em>&#160;</td>
19583 </tr>
19584 <tr>
19585 <td></td>
19586 <td>)</td>
19587 <td></td><td></td>
19588 </tr>
19589 </table>
19590 </td>
19591 <td class="mlabels-right">
19592<span class="mlabels"><span class="mlabel">inline</span></span> </td>
19593 </tr>
19594</table>
19595</div><div class="memdoc">
19596
19597<p>Return the plane index of a given channel given an input format. </p>
19598<dl class="params"><dt>Parameters</dt><dd>
19599 <table class="params">
19600 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>Input format </td></tr>
19601 <tr><td class="paramdir">[in]</td><td class="paramname">channel</td><td>Input channel</td></tr>
19602 </table>
19603 </dd>
19604</dl>
19605<dl class="section return"><dt>Returns</dt><dd>The plane index of the specific channel of the specific format </dd></dl>
19606
Jenkinsb9abeae2018-11-22 11:58:08 +000019607<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00249">249</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000019608<div class="fragment"><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;{</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">switch</span>(format)</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; {</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="comment">// Single planar formats have a single plane</span></div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">case</span> Format::U8:</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">case</span> Format::U16:</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">case</span> Format::S16:</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">case</span> Format::U32:</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordflow">case</span> Format::S32:</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordflow">case</span> Format::F16:</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keywordflow">case</span> Format::F32:</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">case</span> Format::UV88:</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordflow">case</span> Format::RGB888:</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <span class="keywordflow">case</span> Format::RGBA8888:</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keywordflow">case</span> Format::YUYV422:</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordflow">case</span> Format::UYVY422:</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="comment">// Multi planar formats</span></div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keywordflow">case</span> Format::NV12:</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="keywordflow">case</span> Format::NV21:</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; {</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="comment">// Channel U and V share the same plane of format UV88</span></div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; {</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">Channel::U</a>:</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; }</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">case</span> Format::IYUV:</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">case</span> Format::YUV444:</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; {</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; {</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">case</span> Channel::Y:</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">case</span> <a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">Channel::U</a>:</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">case</span> Channel::V:</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">return</span> 2;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported channel&quot;</span>);</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; }</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; }</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not supported format&quot;</span>);</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; }</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
19609<div class="ttc" id="namespacearm__compute_1_1utils_1_1cast_xhtml_a2ea3d1fc01a3a442900249ca182ffa5e"><div class="ttname"><a href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">arm_compute::utils::cast::U</a></div><div class="ttdeci">U</div><div class="ttdef"><b>Definition:</b> <a href="_saturate_cast_8h_source.xhtml#l00057">SaturateCast.h:57</a></div></div>
19610</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000019611<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
Anthony Barbier06ea0482018-02-22 15:45:35 +000019612
Jenkinsb9abeae2018-11-22 11:58:08 +000019613<p class="reference">Referenced by <a class="el" href="reference_2_channel_extract_8cpp_source.xhtml#l00038">arm_compute::test::validation::reference::channel_extract()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00107">CLChannelExtractKernel::configure()</a>, and <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00126">NEChannelExtractKernel::configure()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000019614
Anthony Barbier871448e2017-03-24 14:54:29 +000019615</div>
19616</div>
Jenkins514be652019-02-28 12:25:18 +000019617<a id="a1bd532ddb5d86290e40c0b482eb476f2"></a>
19618<h2 class="memtitle"><span class="permalink"><a href="#a1bd532ddb5d86290e40c0b482eb476f2">&#9670;&nbsp;</a></span>preferred_vector_width()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000019619
Anthony Barbiera4376382017-04-12 15:12:46 +010019620<div class="memitem">
19621<div class="memproto">
19622 <table class="memname">
19623 <tr>
Jenkins514be652019-02-28 12:25:18 +000019624 <td class="memname">size_t preferred_vector_width </td>
Anthony Barbiera4376382017-04-12 15:12:46 +010019625 <td>(</td>
Jenkins514be652019-02-28 12:25:18 +000019626 <td class="paramtype">const cl::Device &amp;&#160;</td>
19627 <td class="paramname"><em>device</em>, </td>
Anthony Barbiera4376382017-04-12 15:12:46 +010019628 </tr>
19629 <tr>
19630 <td class="paramkey"></td>
19631 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019632 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td>
Jenkins514be652019-02-28 12:25:18 +000019633 <td class="paramname"><em>dt</em>&#160;</td>
Anthony Barbiera4376382017-04-12 15:12:46 +010019634 </tr>
19635 <tr>
19636 <td></td>
19637 <td>)</td>
19638 <td></td><td></td>
19639 </tr>
19640 </table>
19641</div><div class="memdoc">
19642
Jenkins514be652019-02-28 12:25:18 +000019643<p>Helper function to get the preferred native vector width size for built-in scalar types that can be put into vectors. </p>
Anthony Barbiera4376382017-04-12 15:12:46 +010019644<dl class="params"><dt>Parameters</dt><dd>
19645 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000019646 <tr><td class="paramdir">[in]</td><td class="paramname">device</td><td>A CL device </td></tr>
19647 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td>data type</td></tr>
Anthony Barbiera4376382017-04-12 15:12:46 +010019648 </table>
19649 </dd>
19650</dl>
Jenkins514be652019-02-28 12:25:18 +000019651<dl class="section return"><dt>Returns</dt><dd>preferred vector width </dd></dl>
Anthony Barbiera4376382017-04-12 15:12:46 +010019652
Jenkins514be652019-02-28 12:25:18 +000019653<p class="definition">Definition at line <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml#l00234">234</a> of file <a class="el" href="core_2_c_l_2_c_l_helpers_8cpp_source.xhtml">CLHelpers.cpp</a>.</p>
19654<div class="fragment"><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;{</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordflow">switch</span>(dt)</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; {</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">return</span> device.getInfo&lt;CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR&gt;();</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">return</span> device.getInfo&lt;CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT&gt;();</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">return</span> device.getInfo&lt;CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT&gt;();</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keywordflow">return</span> device.getInfo&lt;CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT&gt;();</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordflow">return</span> device.getInfo&lt;CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG&gt;();</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; }</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;}</div></div><!-- fragment -->
19655<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019656
Anthony Barbiera4376382017-04-12 15:12:46 +010019657</div>
19658</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019659<a id="ae0d288429eb20baf6da6109f3a21e6bb"></a>
19660<h2 class="memtitle"><span class="permalink"><a href="#ae0d288429eb20baf6da6109f3a21e6bb">&#9670;&nbsp;</a></span>read_file()</h2>
19661
Anthony Barbier871448e2017-03-24 14:54:29 +000019662<div class="memitem">
19663<div class="memproto">
19664 <table class="memname">
19665 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000019666 <td class="memname">std::string read_file </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000019667 <td>(</td>
19668 <td class="paramtype">const std::string &amp;&#160;</td>
19669 <td class="paramname"><em>filename</em>, </td>
19670 </tr>
19671 <tr>
19672 <td class="paramkey"></td>
19673 <td></td>
19674 <td class="paramtype">bool&#160;</td>
19675 <td class="paramname"><em>binary</em>&#160;</td>
19676 </tr>
19677 <tr>
19678 <td></td>
19679 <td>)</td>
19680 <td></td><td></td>
19681 </tr>
19682 </table>
19683</div><div class="memdoc">
19684
19685<p>Load an entire file in memory. </p>
19686<dl class="params"><dt>Parameters</dt><dd>
19687 <table class="params">
19688 <tr><td class="paramdir">[in]</td><td class="paramname">filename</td><td>Name of the file to read. </td></tr>
19689 <tr><td class="paramdir">[in]</td><td class="paramname">binary</td><td>Is it a binary file ?</td></tr>
19690 </table>
19691 </dd>
19692</dl>
19693<dl class="section return"><dt>Returns</dt><dd>The content of the file. </dd></dl>
19694
Jenkins514be652019-02-28 12:25:18 +000019695<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00047">47</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
19696<div class="fragment"><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;{</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; std::string out;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; std::ifstream fs;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#ifndef ARM_COMPUTE_EXCEPTIONS_DISABLED</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">try</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; {</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* ARM_COMPUTE_EXCEPTIONS_DISABLED */</span><span class="preprocessor"></span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; fs.exceptions(std::ifstream::failbit | std::ifstream::badbit);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; std::ios_base::openmode mode = std::ios::in;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">if</span>(binary)</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; {</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; mode |= std::ios::binary;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; }</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; fs.open(filename, mode);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="comment">// Go to the end of the file</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; fs.seekg(0, std::ios::end);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">// Reserve the memory required to store the file&#39;s content</span></div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; out.reserve(fs.tellg());</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">// Go back to the beginning of the file</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; fs.seekg(0, std::ios::beg);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">// Copy the content of the file</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; out.assign(std::istreambuf_iterator&lt;char&gt;(fs), std::istreambuf_iterator&lt;char&gt;());</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor">#ifndef ARM_COMPUTE_EXCEPTIONS_DISABLED</span></div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; }</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">catch</span>(<span class="keyword">const</span> std::ifstream::failure &amp;e)</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; {</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Accessing %s: %s&quot;</span>, filename.c_str(), e.what());</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; }</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* ARM_COMPUTE_EXCEPTIONS_DISABLED */</span><span class="preprocessor"></span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">return</span> out;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019697</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000019698<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>.</p>
19699
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019700</div>
19701</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019702<a id="aaae2b6b1c3f4404121346a4c27b22647"></a>
19703<h2 class="memtitle"><span class="permalink"><a href="#aaae2b6b1c3f4404121346a4c27b22647">&#9670;&nbsp;</a></span>round()</h2>
19704
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019705<div class="memitem">
19706<div class="memproto">
19707 <table class="memname">
19708 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000019709 <td class="memname">int round </td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019710 <td>(</td>
19711 <td class="paramtype">float&#160;</td>
19712 <td class="paramname"><em>x</em>, </td>
19713 </tr>
19714 <tr>
19715 <td class="paramkey"></td>
19716 <td></td>
19717 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a>&#160;</td>
19718 <td class="paramname"><em>rounding_policy</em>&#160;</td>
19719 </tr>
19720 <tr>
19721 <td></td>
19722 <td>)</td>
19723 <td></td><td></td>
19724 </tr>
19725 </table>
19726</div><div class="memdoc">
19727
19728<p>Return a rounded value of x. </p>
19729<p>Rounding is done according to the rounding_policy.</p>
19730<dl class="params"><dt>Parameters</dt><dd>
19731 <table class="params">
19732 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Float value to be rounded. </td></tr>
19733 <tr><td class="paramdir">[in]</td><td class="paramname">rounding_policy</td><td>Policy determining how rounding is done.</td></tr>
19734 </table>
19735 </dd>
19736</dl>
19737<dl class="section return"><dt>Returns</dt><dd>Rounded value of the argument x. </dd></dl>
19738
Jenkinsb9abeae2018-11-22 11:58:08 +000019739<p class="definition">Definition at line <a class="el" href="_rounding_8cpp_source.xhtml#l00035">35</a> of file <a class="el" href="_rounding_8cpp_source.xhtml">Rounding.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000019740<div class="fragment"><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;{</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keyword">using namespace </span>std;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordtype">int</span> rounded = 0;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a60ad1078faeaf3f59266d69ad937339f">rounding_policy</a>)</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; {</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">case</span> RoundingPolicy::TO_ZERO:</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; {</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; rounded = static_cast&lt;int&gt;(x);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; }</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">case</span> RoundingPolicy::TO_NEAREST_UP:</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; {</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; rounded = static_cast&lt;int&gt;(<a class="code" href="namespacearm__compute.xhtml#aaae2b6b1c3f4404121346a4c27b22647">support::cpp11::round</a>(x));</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; }</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">case</span> RoundingPolicy::TO_NEAREST_EVEN:</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; {</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;TO_NEAREST_EVEN rounding policy is not supported.&quot;</span>);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; }</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; {</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Unsupported rounding policy.&quot;</span>);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; }</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; }</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">return</span> rounded;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
19741<div class="ttc" id="namespacearm__compute_xhtml_aaae2b6b1c3f4404121346a4c27b22647"><div class="ttname"><a href="namespacearm__compute.xhtml#aaae2b6b1c3f4404121346a4c27b22647">arm_compute::round</a></div><div class="ttdeci">int round(float x, RoundingPolicy rounding_policy)</div><div class="ttdoc">Return a rounded value of x.</div><div class="ttdef"><b>Definition:</b> <a href="_rounding_8cpp_source.xhtml#l00035">Rounding.cpp:35</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019742<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a60ad1078faeaf3f59266d69ad937339f"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a60ad1078faeaf3f59266d69ad937339f">arm_compute::test::validation::rounding_policy</a></div><div class="ttdeci">rounding_policy</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">PixelWiseMultiplication.cpp:168</a></div></div>
19743</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000019744<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="_toolchain_support_8h_source.xhtml#l00240">arm_compute::support::cpp11::round()</a>, <a class="el" href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">arm_compute::test::validation::rounding_policy</a>, <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea02ff1fff1812f84c89547fcd6c176150">TO_NEAREST_EVEN</a>, <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea8c0084566b290fa9e5e429f4ae241f95">TO_NEAREST_UP</a>, and <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50bea5631ad8e27788edfca7e13535d862c06">TO_ZERO</a>.</p>
19745
19746<p class="reference">Referenced by <a class="el" href="activation__layer__qa8_8cl_source.xhtml#l00161">activation_layer_logistic_qa8()</a>, <a class="el" href="_asymm_helpers_8cpp_source.xhtml#l00073">arm_compute::quantization::calculate_quantized_multiplier_greater_than_one()</a>, <a class="el" href="_asymm_helpers_8cpp_source.xhtml#l00035">arm_compute::quantization::calculate_quantized_multiplier_less_than_one()</a>, <a class="el" href="optical__flow__pyramid__lk_8cl_source.xhtml#l00157">finalize()</a>, <a class="el" href="optical__flow__pyramid__lk_8cl_source.xhtml#l00211">lktracker_stage0()</a>, <a class="el" href="optical__flow__pyramid__lk_8cl_source.xhtml#l00361">lktracker_stage1()</a>, <a class="el" href="pooling__layer__quantized_8cl_source.xhtml#l00080">pooling_layer_MxN_quantized_nchw()</a>, <a class="el" href="pooling__layer__quantized_8cl_source.xhtml#l00174">pooling_layer_MxN_quantized_nhwc()</a>, and <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00125">roi_pooling_layer()</a>.</p>
19747
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019748</div>
19749</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019750<a id="a5e28a3911204ac952601f512c82b48f1"></a>
19751<h2 class="memtitle"><span class="permalink"><a href="#a5e28a3911204ac952601f512c82b48f1">&#9670;&nbsp;</a></span>rounding_divide_by_pow2()</h2>
19752
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019753<div class="memitem">
19754<div class="memproto">
19755<table class="mlabels">
19756 <tr>
19757 <td class="mlabels-left">
19758 <table class="memname">
19759 <tr>
19760 <td class="memname">int32x4_t rounding_divide_by_pow2 </td>
19761 <td>(</td>
19762 <td class="paramtype">int32x4_t&#160;</td>
19763 <td class="paramname"><em>x</em>, </td>
19764 </tr>
19765 <tr>
19766 <td class="paramkey"></td>
19767 <td></td>
19768 <td class="paramtype">int&#160;</td>
19769 <td class="paramname"><em>exponent</em>&#160;</td>
19770 </tr>
19771 <tr>
19772 <td></td>
19773 <td>)</td>
19774 <td></td><td></td>
19775 </tr>
19776 </table>
19777 </td>
19778 <td class="mlabels-right">
19779<span class="mlabels"><span class="mlabel">inline</span></span> </td>
19780 </tr>
19781</table>
19782</div><div class="memdoc">
19783
19784<p>Round to the nearest division by a power-of-two using exponent. </p>
19785<dl class="section note"><dt>Note</dt><dd>This function calculates the following expression: (x + 2^n -1 ) / 2^n where n = exponent</dd></dl>
19786<dl class="params"><dt>Parameters</dt><dd>
19787 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000019788 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td><a class="el" href="struct_vector.xhtml" title="Structure to hold Vector information.">Vector</a> of 4 elements </td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019789 <tr><td class="paramdir">[in]</td><td class="paramname">exponent</td><td>Integer value used to round to nearest division by a power-of-two</td></tr>
19790 </table>
19791 </dd>
19792</dl>
19793<dl class="section return"><dt>Returns</dt><dd>the nearest division by a power-of-two using exponent </dd></dl>
19794
Jenkinsb9abeae2018-11-22 11:58:08 +000019795<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8inl_source.xhtml#l00026">26</a> of file <a class="el" href="_n_e_asymm_8inl_source.xhtml">NEAsymm.inl</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019796<div class="fragment"><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;{</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keyword">const</span> int32x4_t shift_vec = vdupq_n_s32(-exponent);</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keyword">const</span> int32x4_t fixup = vshrq_n_s32(vandq_s32(x, shift_vec), 31);</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">const</span> int32x4_t fixed_up_x = vqaddq_s32(x, fixup);</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keywordflow">return</span> vrshlq_s32(fixed_up_x, shift_vec);</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000019797<p class="reference">Referenced by <a class="el" href="_n_e_asymm_8h_source.xhtml#l00074">finalize_quantization()</a>.</p>
19798
19799</div>
19800</div>
19801<a id="a57de30d9ebd8eed0393798583555dd16"></a>
19802<h2 class="memtitle"><span class="permalink"><a href="#a57de30d9ebd8eed0393798583555dd16">&#9670;&nbsp;</a></span>run_reverse()</h2>
19803
19804<div class="memitem">
19805<div class="memproto">
19806 <table class="memname">
19807 <tr>
19808 <td class="memname">void arm_compute::run_reverse </td>
19809 <td>(</td>
19810 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
19811 <td class="paramname"><em>window</em>, </td>
19812 </tr>
19813 <tr>
19814 <td class="paramkey"></td>
19815 <td></td>
19816 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
19817 <td class="paramname"><em>input</em>, </td>
19818 </tr>
19819 <tr>
19820 <td class="paramkey"></td>
19821 <td></td>
19822 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
19823 <td class="paramname"><em>axis</em>, </td>
19824 </tr>
19825 <tr>
19826 <td class="paramkey"></td>
19827 <td></td>
19828 <td class="paramtype"><a class="el" href="classarm__compute_1_1_i_tensor.xhtml">ITensor</a> *&#160;</td>
19829 <td class="paramname"><em>output</em>&#160;</td>
19830 </tr>
19831 <tr>
19832 <td></td>
19833 <td>)</td>
19834 <td></td><td></td>
19835 </tr>
19836 </table>
19837</div><div class="memdoc">
19838
19839<p class="definition">Definition at line <a class="el" href="_n_e_reverse_kernel_8cpp_source.xhtml#l00103">103</a> of file <a class="el" href="_n_e_reverse_kernel_8cpp_source.xhtml">NEReverseKernel.cpp</a>.</p>
19840<div class="fragment"><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;{</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordtype">int</span> axis_bit = 0;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#accc088009d44c521706aa98d6387ee21">axis</a>-&gt;info()-&gt;dimension(0); ++i)</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; {</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> axis_i = *(reinterpret_cast&lt;const int *&gt;(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#accc088009d44c521706aa98d6387ee21">axis</a>-&gt;buffer()) + i);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; axis_bit |= 1 &lt;&lt; axis_i;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; }</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="comment">// Check if we need a left-over loop for the y dimension</span></div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> window_step_x = 16 / input-&gt;info()-&gt;element_size();</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> window_start_x = window.x().start();</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> window_end_x = std::min(window.x().end(), static_cast&lt;int&gt;(input-&gt;info()-&gt;dimension(0)));</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> window_end_x_multiple_of = ((window_end_x - window_start_x) / window_step_x) * window_step_x;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordtype">bool</span> left_over_loop_x = (((window_end_x - window_start_x) % window_step_x) != 0);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; Window <a class="code" href="namespacearm__compute_1_1test_1_1validation_1_1reference.xhtml#a548131b3d37da47a2e9d32111c88dfe1">slice</a> = window.first_slice_window_4D();</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">if</span>(left_over_loop_x)</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; {</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="comment">// Check if window_end_y_multiple_of is greater than window_start_y</span></div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">if</span>(window_end_x_multiple_of &gt; window_start_x)</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; {</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation_1_1reference.xhtml#a548131b3d37da47a2e9d32111c88dfe1">slice</a>.set(Window::DimX, Window::Dimension(window_start_x, window_end_x_multiple_of, window_step_x));</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; {</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation_1_1reference.xhtml#a548131b3d37da47a2e9d32111c88dfe1">slice</a>.set(Window::DimX, Window::Dimension(0, 0, 1));</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; }</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">do</span></div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; Iterator input_it(input, <a class="code" href="namespacearm__compute_1_1test_1_1validation_1_1reference.xhtml#a548131b3d37da47a2e9d32111c88dfe1">slice</a>);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation_1_1reference.xhtml#a548131b3d37da47a2e9d32111c88dfe1">slice</a>, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; {</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">auto</span> in = <a class="code" href="namespacearm__compute_1_1wrapper.xhtml#a77f54eded7fef436d3a4f21ad5a00da6">wrapper::vloadq</a>(reinterpret_cast&lt;T *&gt;(input_it.ptr()));</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="comment">// Reverse 0 axis</span></div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">if</span>(axis_bit &amp; 0x1)</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; {</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; in = <a class="code" href="namespacearm__compute_1_1wrapper.xhtml#aa7a641703a9c98932d775d915bf7a3e5">wrapper::vrev64</a>(in);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; in = <a class="code" href="namespacearm__compute_1_1wrapper.xhtml#a1598e7eb12a58fc53559332cd0c3ab6f">wrapper::vcombine</a>(<a class="code" href="namespacearm__compute_1_1wrapper.xhtml#a95ee388aa7c5bccab918235dc538a6b3">wrapper::vgethigh</a>(in), <a class="code" href="namespacearm__compute_1_1wrapper.xhtml#a2902775707bc7bf7d6da1bda1cc15783">wrapper::vgetlow</a>(in));</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; }</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> offset_x = (axis_bit &amp; 0x1) ? output-&gt;info()-&gt;dimension(0) - <span class="keywordtype">id</span>.x() - window_step_x : <span class="keywordtype">id</span>.x();</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> offset_y = (axis_bit &amp; 0x2) ? output-&gt;info()-&gt;dimension(1) - <span class="keywordtype">id</span>.y() - 1 : <span class="keywordtype">id</span>.y();</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> offset_z = (axis_bit &amp; 0x4) ? output-&gt;info()-&gt;dimension(2) - <span class="keywordtype">id</span>.z() - 1 : <span class="keywordtype">id</span>.z();</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> offset_w = (axis_bit &amp; 0x8) ? output-&gt;info()-&gt;dimension(3) - <span class="keywordtype">id</span>[3] - 1 : <span class="keywordtype">id</span>[3];</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keyword">auto</span> out_ptr = reinterpret_cast&lt;T *&gt;(output-&gt;ptr_to_element(Coordinates(offset_x, offset_y, offset_z, offset_w)));</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <a class="code" href="namespacearm__compute_1_1wrapper.xhtml#ae7943ea9c1f74dc72c62d4cc3966a459">wrapper::vstore</a>(out_ptr, in);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; },</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; input_it);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">if</span>(left_over_loop_x)</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; {</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation_1_1reference.xhtml#a548131b3d37da47a2e9d32111c88dfe1">slice</a>.set(Window::DimX, Window::Dimension(window_end_x_multiple_of, window_end_x, 1));</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; Iterator input_it(input, <a class="code" href="namespacearm__compute_1_1test_1_1validation_1_1reference.xhtml#a548131b3d37da47a2e9d32111c88dfe1">slice</a>);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="comment">// Compute left-over elements along the y dimension (1x1)</span></div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">execute_window_loop</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation_1_1reference.xhtml#a548131b3d37da47a2e9d32111c88dfe1">slice</a>, [&amp;](<span class="keyword">const</span> Coordinates &amp; <span class="keywordtype">id</span>)</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; {</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> in = *reinterpret_cast&lt;T *&gt;(input_it.ptr());</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> offset_x = (axis_bit &amp; 0x1) ? output-&gt;info()-&gt;dimension(0) - <span class="keywordtype">id</span>.x() - 1 : <span class="keywordtype">id</span>.x();</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> offset_y = (axis_bit &amp; 0x2) ? output-&gt;info()-&gt;dimension(1) - <span class="keywordtype">id</span>.y() - 1 : <span class="keywordtype">id</span>.y();</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> offset_z = (axis_bit &amp; 0x4) ? output-&gt;info()-&gt;dimension(2) - <span class="keywordtype">id</span>.z() - 1 : <span class="keywordtype">id</span>.z();</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> offset_w = (axis_bit &amp; 0x8) ? output-&gt;info()-&gt;dimension(3) - <span class="keywordtype">id</span>[3] - 1 : <span class="keywordtype">id</span>[3];</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; *reinterpret_cast&lt;T *&gt;(output-&gt;ptr_to_element(Coordinates(offset_x, offset_y, offset_z, offset_w))) = in;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; },</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; input_it);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; }</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; }</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">while</span>(window.slide_window_slice_4D(<a class="code" href="namespacearm__compute_1_1test_1_1validation_1_1reference.xhtml#a548131b3d37da47a2e9d32111c88dfe1">slice</a>));</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1wrapper_xhtml_a77f54eded7fef436d3a4f21ad5a00da6"><div class="ttname"><a href="namespacearm__compute_1_1wrapper.xhtml#a77f54eded7fef436d3a4f21ad5a00da6">arm_compute::wrapper::vloadq</a></div><div class="ttdeci">uint8x16_t vloadq(const uint8_t *ptr)</div><div class="ttdef"><b>Definition:</b> <a href="load_8h_source.xhtml#l00058">load.h:58</a></div></div>
19841<div class="ttc" id="namespacearm__compute_1_1wrapper_xhtml_a2902775707bc7bf7d6da1bda1cc15783"><div class="ttname"><a href="namespacearm__compute_1_1wrapper.xhtml#a2902775707bc7bf7d6da1bda1cc15783">arm_compute::wrapper::vgetlow</a></div><div class="ttdeci">uint8x8_t vgetlow(const uint8x16_t val)</div><div class="ttdef"><b>Definition:</b> <a href="getlow_8h_source.xhtml#l00039">getlow.h:39</a></div></div>
19842<div class="ttc" id="namespacearm__compute_1_1wrapper_xhtml_a1598e7eb12a58fc53559332cd0c3ab6f"><div class="ttname"><a href="namespacearm__compute_1_1wrapper.xhtml#a1598e7eb12a58fc53559332cd0c3ab6f">arm_compute::wrapper::vcombine</a></div><div class="ttdeci">uint8x16_t vcombine(const uint8x8_t &amp;a, const uint8x8_t &amp;b)</div><div class="ttdef"><b>Definition:</b> <a href="combine_8h_source.xhtml#l00039">combine.h:39</a></div></div>
19843<div class="ttc" id="namespacearm__compute_1_1wrapper_xhtml_a95ee388aa7c5bccab918235dc538a6b3"><div class="ttname"><a href="namespacearm__compute_1_1wrapper.xhtml#a95ee388aa7c5bccab918235dc538a6b3">arm_compute::wrapper::vgethigh</a></div><div class="ttdeci">uint8x8_t vgethigh(const uint8x16_t val)</div><div class="ttdef"><b>Definition:</b> <a href="gethigh_8h_source.xhtml#l00039">gethigh.h:39</a></div></div>
19844<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_accc088009d44c521706aa98d6387ee21"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#accc088009d44c521706aa98d6387ee21">arm_compute::test::validation::axis</a></div><div class="ttdeci">axis</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_stack_layer_8cpp_source.xhtml#l00226">StackLayer.cpp:226</a></div></div>
19845<div class="ttc" id="namespacearm__compute_1_1wrapper_xhtml_aa7a641703a9c98932d775d915bf7a3e5"><div class="ttname"><a href="namespacearm__compute_1_1wrapper.xhtml#aa7a641703a9c98932d775d915bf7a3e5">arm_compute::wrapper::vrev64</a></div><div class="ttdeci">uint8x8_t vrev64(const uint8x8_t &amp;a)</div><div class="ttdef"><b>Definition:</b> <a href="rev64_8h_source.xhtml#l00039">rev64.h:39</a></div></div>
19846<div class="ttc" id="namespacearm__compute_1_1wrapper_xhtml_ae7943ea9c1f74dc72c62d4cc3966a459"><div class="ttname"><a href="namespacearm__compute_1_1wrapper.xhtml#ae7943ea9c1f74dc72c62d4cc3966a459">arm_compute::wrapper::vstore</a></div><div class="ttdeci">void vstore(uint8_t *ptr, uint8x8_t val)</div><div class="ttdef"><b>Definition:</b> <a href="store_8h_source.xhtml#l00039">store.h:39</a></div></div>
19847<div class="ttc" id="namespacearm__compute_xhtml_a5002bf7ec46d52971f9526e94172cfee"><div class="ttname"><a href="namespacearm__compute.xhtml#a5002bf7ec46d52971f9526e94172cfee">arm_compute::execute_window_loop</a></div><div class="ttdeci">void execute_window_loop(const Window &amp;w, L &amp;&amp;lambda_function, Ts &amp;&amp;... iterators)</div><div class="ttdoc">Iterate through the passed window, automatically adjusting the iterators and calling the lambda_funct...</div><div class="ttdef"><b>Definition:</b> <a href="_helpers_8inl_source.xhtml#l00122">Helpers.inl:122</a></div></div>
19848<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_1_1reference_xhtml_a548131b3d37da47a2e9d32111c88dfe1"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation_1_1reference.xhtml#a548131b3d37da47a2e9d32111c88dfe1">arm_compute::test::validation::reference::slice</a></div><div class="ttdeci">SimpleTensor&lt; T &gt; slice(const SimpleTensor&lt; T &gt; &amp;src, Coordinates starts, Coordinates ends)</div><div class="ttdef"><b>Definition:</b> <a href="_slice_operations_8cpp_source.xhtml#l00038">SliceOperations.cpp:38</a></div></div>
19849</div><!-- fragment -->
19850<p class="reference">References <a class="el" href="_n_e_o_n_2_stack_layer_8cpp_source.xhtml#l00226">arm_compute::test::validation::axis</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#a178f0d3d87f959e00a743328d95359d2">ITensorInfo::dimension()</a>, <a class="el" href="_window_8h_source.xhtml#l00043">Window::DimX</a>, <a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml#aa459796b5489eca8a9160cb5dcf1a103">ITensorInfo::element_size()</a>, <a class="el" href="_window_8h_source.xhtml#l00090">Window::Dimension::end()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00122">execute_window_loop()</a>, <a class="el" href="_window_8h_source.xhtml#l00276">Window::first_slice_window_4D()</a>, <a class="el" href="classarm__compute_1_1_i_tensor.xhtml#a0e95dc1e53c361348314873b168ae237">ITensor::info()</a>, <a class="el" href="_helpers_8inl_source.xhtml#l00184">Iterator::ptr()</a>, <a class="el" href="_i_tensor_8h_source.xhtml#l00063">ITensor::ptr_to_element()</a>, <a class="el" href="_slice_operations_8cpp_source.xhtml#l00038">arm_compute::test::validation::reference::slice()</a>, <a class="el" href="_window_8h_source.xhtml#l00324">Window::slide_window_slice_4D()</a>, <a class="el" href="_window_8h_source.xhtml#l00085">Window::Dimension::start()</a>, <a class="el" href="combine_8h_source.xhtml#l00039">arm_compute::wrapper::vcombine()</a>, <a class="el" href="gethigh_8h_source.xhtml#l00039">arm_compute::wrapper::vgethigh()</a>, <a class="el" href="getlow_8h_source.xhtml#l00039">arm_compute::wrapper::vgetlow()</a>, <a class="el" href="load_8h_source.xhtml#l00058">arm_compute::wrapper::vloadq()</a>, <a class="el" href="rev64_8h_source.xhtml#l00039">arm_compute::wrapper::vrev64()</a>, <a class="el" href="store_8h_source.xhtml#l00039">arm_compute::wrapper::vstore()</a>, and <a class="el" href="_window_8h_source.xhtml#l00136">Window::x()</a>.</p>
19851
Kaizen8938bd32017-09-28 14:38:23 +010019852</div>
19853</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019854<a id="a546c6bed3c307414e8d0934bc13259e5"></a>
19855<h2 class="memtitle"><span class="permalink"><a href="#a546c6bed3c307414e8d0934bc13259e5">&#9670;&nbsp;</a></span>scaled_dimensions()</h2>
19856
Anthony Barbier871448e2017-03-24 14:54:29 +000019857<div class="memitem">
19858<div class="memproto">
19859 <table class="memname">
19860 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000019861 <td class="memname">const std::pair&lt; unsigned int, unsigned int &gt; scaled_dimensions </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000019862 <td>(</td>
19863 <td class="paramtype">unsigned int&#160;</td>
19864 <td class="paramname"><em>width</em>, </td>
19865 </tr>
19866 <tr>
19867 <td class="paramkey"></td>
19868 <td></td>
19869 <td class="paramtype">unsigned int&#160;</td>
19870 <td class="paramname"><em>height</em>, </td>
19871 </tr>
19872 <tr>
19873 <td class="paramkey"></td>
19874 <td></td>
19875 <td class="paramtype">unsigned int&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010019876 <td class="paramname"><em>kernel_width</em>, </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000019877 </tr>
19878 <tr>
19879 <td class="paramkey"></td>
19880 <td></td>
19881 <td class="paramtype">unsigned int&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010019882 <td class="paramname"><em>kernel_height</em>, </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000019883 </tr>
19884 <tr>
19885 <td class="paramkey"></td>
19886 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019887 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> &amp;&#160;</td>
Jenkinsb3a371b2018-05-23 11:36:53 +010019888 <td class="paramname"><em>pad_stride_info</em>, </td>
19889 </tr>
19890 <tr>
19891 <td class="paramkey"></td>
19892 <td></td>
19893 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;&#160;</td>
19894 <td class="paramname"><em>dilation</em> = <code><a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a>(1U,&#160;1U)</code>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000019895 </tr>
19896 <tr>
19897 <td></td>
19898 <td>)</td>
19899 <td></td><td></td>
19900 </tr>
19901 </table>
19902</div><div class="memdoc">
19903
19904<p>Returns expected width and height of output scaled tensor depending on dimensions rounding mode. </p>
19905<dl class="params"><dt>Parameters</dt><dd>
19906 <table class="params">
Anthony Barbierdbdab852017-06-23 15:42:00 +010019907 <tr><td class="paramdir">[in]</td><td class="paramname">width</td><td>Width of input tensor (Number of columns) </td></tr>
19908 <tr><td class="paramdir">[in]</td><td class="paramname">height</td><td>Height of input tensor (Number of rows) </td></tr>
Jenkins514be652019-02-28 12:25:18 +000019909 <tr><td class="paramdir">[in]</td><td class="paramname">kernel_width</td><td><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> width. </td></tr>
19910 <tr><td class="paramdir">[in]</td><td class="paramname">kernel_height</td><td><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> height. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010019911 <tr><td class="paramdir">[in]</td><td class="paramname">pad_stride_info</td><td>Pad and stride information. </td></tr>
19912 <tr><td class="paramdir">[in]</td><td class="paramname">dilation</td><td>(Optional) Dilation, in elements, across x and y. Defaults to (1, 1).</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000019913 </table>
19914 </dd>
19915</dl>
19916<dl class="section return"><dt>Returns</dt><dd>A pair with the new width in the first position and the new height in the second. </dd></dl>
19917
Jenkins514be652019-02-28 12:25:18 +000019918<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00359">359</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
19919<div class="fragment"><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160;{</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> pad_left = pad_stride_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#a7144874ab401f5c4e249a1115dfb5166">pad_left</a>();</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> pad_top = pad_stride_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#a3fea0ce4e6eeee7bf3a511c31b51d44f">pad_top</a>();</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> pad_right = pad_stride_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#a3860caeeaa259d59ccf69c3aea23f549">pad_right</a>();</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> pad_bottom = pad_stride_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#ac49df0924d183da42cffc04cf9aba1f8">pad_bottom</a>();</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> stride_x = pad_stride_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#a6e324c1bd1111876469ea247da156147">stride</a>().first;</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> stride_y = pad_stride_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#a6e324c1bd1111876469ea247da156147">stride</a>().second;</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> w = 0;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> h = 0;</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="keywordflow">switch</span>(pad_stride_info.<a class="code" href="classarm__compute_1_1_pad_stride_info.xhtml#a711b72c2817604dfbb9d20d142882bab">round</a>())</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; {</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keywordflow">case</span> DimensionRoundingType::FLOOR:</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; w = static_cast&lt;unsigned int&gt;(std::floor((static_cast&lt;float&gt;(width + pad_left + pad_right - (<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad3fd4136244e42ad89b01c02b904336d">dilation</a>.x() * (kernel_width - 1) + 1)) / stride_x) + 1));</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; h = static_cast&lt;unsigned int&gt;(std::floor((static_cast&lt;float&gt;(height + pad_top + pad_bottom - (<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad3fd4136244e42ad89b01c02b904336d">dilation</a>.y() * (kernel_height - 1) + 1)) / stride_y) + 1));</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordflow">case</span> DimensionRoundingType::CEIL:</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; w = static_cast&lt;unsigned int&gt;(std::ceil((static_cast&lt;float&gt;(width + pad_left + pad_right - (<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad3fd4136244e42ad89b01c02b904336d">dilation</a>.x() * (kernel_width - 1) + 1)) / stride_x) + 1));</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; h = static_cast&lt;unsigned int&gt;(std::ceil((static_cast&lt;float&gt;(height + pad_top + pad_bottom - (<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad3fd4136244e42ad89b01c02b904336d">dilation</a>.y() * (kernel_height - 1) + 1)) / stride_y) + 1));</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Unsupported rounding type&quot;</span>);</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; }</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="comment">// Make sure that border operations will start from inside the input and not the padded area</span></div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">if</span>(((w - 1) * stride_x) &gt;= (width + pad_left))</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; {</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; --w;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; }</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">if</span>(((h - 1) * stride_y) &gt;= (height + pad_top))</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; {</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; --h;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; }</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(((w - 1) * stride_x) &gt;= (width + pad_left));</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(((h - 1) * stride_y) &gt;= (height + pad_top));</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">return</span> std::make_pair(w, h);</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
19920<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml_a711b72c2817604dfbb9d20d142882bab"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml#a711b72c2817604dfbb9d20d142882bab">arm_compute::PadStrideInfo::round</a></div><div class="ttdeci">DimensionRoundingType round() const</div><div class="ttdoc">Get the rounding type.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00816">Types.h:816</a></div></div>
19921<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad3fd4136244e42ad89b01c02b904336d"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad3fd4136244e42ad89b01c02b904336d">arm_compute::test::validation::dilation</a></div><div class="ttdeci">dilation</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
19922<div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00337">Error.h:337</a></div></div>
19923<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml_a3fea0ce4e6eeee7bf3a511c31b51d44f"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml#a3fea0ce4e6eeee7bf3a511c31b51d44f">arm_compute::PadStrideInfo::pad_top</a></div><div class="ttdeci">unsigned int pad_top() const</div><div class="ttdoc">Get the top padding.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00805">Types.h:805</a></div></div>
19924<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml_a6e324c1bd1111876469ea247da156147"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml#a6e324c1bd1111876469ea247da156147">arm_compute::PadStrideInfo::stride</a></div><div class="ttdeci">std::pair&lt; unsigned int, unsigned int &gt; stride() const</div><div class="ttdoc">Get the stride.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00769">Types.h:769</a></div></div>
19925<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml_a3860caeeaa259d59ccf69c3aea23f549"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml#a3860caeeaa259d59ccf69c3aea23f549">arm_compute::PadStrideInfo::pad_right</a></div><div class="ttdeci">unsigned int pad_right() const</div><div class="ttdoc">Get the right padding.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00800">Types.h:800</a></div></div>
19926<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml_ac49df0924d183da42cffc04cf9aba1f8"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml#ac49df0924d183da42cffc04cf9aba1f8">arm_compute::PadStrideInfo::pad_bottom</a></div><div class="ttdeci">unsigned int pad_bottom() const</div><div class="ttdoc">Get the bottom padding.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00810">Types.h:810</a></div></div>
19927<div class="ttc" id="classarm__compute_1_1_pad_stride_info_xhtml_a7144874ab401f5c4e249a1115dfb5166"><div class="ttname"><a href="classarm__compute_1_1_pad_stride_info.xhtml#a7144874ab401f5c4e249a1115dfb5166">arm_compute::PadStrideInfo::pad_left</a></div><div class="ttdeci">unsigned int pad_left() const</div><div class="ttdoc">Get the left padding.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00795">Types.h:795</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019928</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000019929<p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00261">ARM_COMPUTE_ERROR</a>, <a class="el" href="_error_8h_source.xhtml#l00337">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa5bdce8e6d9dc3efbbd31e90a8a181dff">CEIL</a>, <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::dilation</a>, <a class="el" href="namespacearm__compute.xhtml#a1fece1bd804e64f39f602d1c3969849aa56c1e354d36beb85b0d881c5b2e24cbe">FLOOR</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00810">PadStrideInfo::pad_bottom()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00795">PadStrideInfo::pad_left()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00800">PadStrideInfo::pad_right()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00805">PadStrideInfo::pad_top()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00816">PadStrideInfo::round()</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00769">PadStrideInfo::stride()</a>.</p>
19930
19931<p class="reference">Referenced by <a class="el" href="_shape_calculator_8h_source.xhtml#l00730">arm_compute::misc::shape_calculator::compute_deep_convolution_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00408">arm_compute::misc::shape_calculator::compute_depthwise_convolution_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00541">arm_compute::misc::shape_calculator::compute_im2col_conv_shape()</a>, <a class="el" href="_pooling_layer_node_8cpp_source.xhtml#l00047">PoolingLayerNode::compute_output_descriptor()</a>, <a class="el" href="_depthwise_convolution_layer_node_8cpp_source.xhtml#l00072">DepthwiseConvolutionLayerNode::compute_output_descriptor()</a>, <a class="el" href="_convolution_layer_node_8cpp_source.xhtml#l00086">ConvolutionLayerNode::compute_output_descriptor()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00779">arm_compute::misc::shape_calculator::compute_pool_shape()</a>, <a class="el" href="_shape_calculator_8h_source.xhtml#l00695">arm_compute::misc::shape_calculator::compute_winograd_output_transform_shape()</a>, <a class="el" href="_g_c_pooling_layer_kernel_8cpp_source.xhtml#l00226">GCPoolingLayerKernel::configure()</a>, <a class="el" href="_n_e_pooling_layer_kernel_8cpp_source.xhtml#l00334">NEPoolingLayerKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_c_l_locally_connected_layer_8cpp_source.xhtml#l00130">CLLocallyConnectedLayer::configure()</a>, <a class="el" href="_n_e_locally_connected_layer_8cpp_source.xhtml#l00124">NELocallyConnectedLayer::configure()</a>, <a class="el" href="_g_c_im2_col_kernel_8cpp_source.xhtml#l00067">GCIm2ColKernel::configure()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00293">CLIm2ColKernel::configure()</a>, <a class="el" href="_n_e_im2_col_kernel_8cpp_source.xhtml#l00334">NEIm2ColKernel::configure()</a>, <a class="el" href="_g_c_convolution_layer_8cpp_source.xhtml#l00090">GCConvolutionLayer::configure()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00173">NEGEMMConvolutionLayer::configure()</a>, <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00169">CLGEMMConvolutionLayer::configure()</a>, <a class="el" href="validation_2reference_2_convolution_layer_8cpp_source.xhtml#l00049">arm_compute::test::validation::reference::convolution_layer_nchw()</a>, <a class="el" href="reference_2_im2_col_8cpp_source.xhtml#l00039">arm_compute::test::validation::reference::im2col_nchw()</a>, <a class="el" href="reference_2_im2_col_8cpp_source.xhtml#l00093">arm_compute::test::validation::reference::im2col_nhwc()</a>, <a class="el" href="reference_2_locally_connected_8cpp_source.xhtml#l00041">arm_compute::test::validation::reference::locally_connected()</a>, <a class="el" href="_n_e_pooling_layer_kernel_8cpp_source.xhtml#l01742">NEPoolingLayerKernel::validate()</a>, <a class="el" href="_c_l_locally_connected_layer_8cpp_source.xhtml#l00086">CLLocallyConnectedLayer::validate()</a>, <a class="el" href="_n_e_locally_connected_layer_8cpp_source.xhtml#l00080">NELocallyConnectedLayer::validate()</a>, <a class="el" href="_n_e_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00377">NEGEMMConvolutionLayer::validate()</a>, and <a class="el" href="_c_l_g_e_m_m_convolution_layer_8cpp_source.xhtml#l00353">CLGEMMConvolutionLayer::validate()</a>.</p>
19932
Anthony Barbier8140e1e2017-12-14 23:48:46 +000019933</div>
19934</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000019935<a id="a18ec57dffc5c26864be77318111dfb2a"></a>
19936<h2 class="memtitle"><span class="permalink"><a href="#a18ec57dffc5c26864be77318111dfb2a">&#9670;&nbsp;</a></span>separate_matrix()</h2>
19937
Anthony Barbier871448e2017-03-24 14:54:29 +000019938<div class="memitem">
19939<div class="memproto">
19940<table class="mlabels">
19941 <tr>
19942 <td class="mlabels-left">
19943 <table class="memname">
19944 <tr>
19945 <td class="memname">bool arm_compute::separate_matrix </td>
19946 <td>(</td>
19947 <td class="paramtype">const int16_t *&#160;</td>
19948 <td class="paramname"><em>conv</em>, </td>
19949 </tr>
19950 <tr>
19951 <td class="paramkey"></td>
19952 <td></td>
19953 <td class="paramtype">int16_t *&#160;</td>
19954 <td class="paramname"><em>conv_col</em>, </td>
19955 </tr>
19956 <tr>
19957 <td class="paramkey"></td>
19958 <td></td>
19959 <td class="paramtype">int16_t *&#160;</td>
19960 <td class="paramname"><em>conv_row</em>, </td>
19961 </tr>
19962 <tr>
19963 <td class="paramkey"></td>
19964 <td></td>
19965 <td class="paramtype">uint8_t&#160;</td>
19966 <td class="paramname"><em>size</em>&#160;</td>
19967 </tr>
19968 <tr>
19969 <td></td>
19970 <td>)</td>
19971 <td></td><td></td>
19972 </tr>
19973 </table>
19974 </td>
19975 <td class="mlabels-right">
19976<span class="mlabels"><span class="mlabel">inline</span></span> </td>
19977 </tr>
19978</table>
19979</div><div class="memdoc">
19980
19981<p>Separate a 2D convolution into two 1D convolutions. </p>
19982<dl class="params"><dt>Parameters</dt><dd>
19983 <table class="params">
19984 <tr><td class="paramdir">[in]</td><td class="paramname">conv</td><td>2D convolution </td></tr>
19985 <tr><td class="paramdir">[out]</td><td class="paramname">conv_col</td><td>1D vertical convolution </td></tr>
19986 <tr><td class="paramdir">[out]</td><td class="paramname">conv_row</td><td>1D horizontal convolution </td></tr>
19987 <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>Size of the 2D convolution</td></tr>
19988 </table>
19989 </dd>
19990</dl>
19991<dl class="section return"><dt>Returns</dt><dd>true if the separation was successful </dd></dl>
19992
Jenkinsb9abeae2018-11-22 11:58:08 +000019993<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l00567">567</a> of file <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml">Utils.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000019994<div class="fragment"><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; int32_t min_col = -1;</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; int16_t min_col_val = -1;</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; <span class="keywordflow">for</span>(int32_t i = 0; i &lt; size; ++i)</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; {</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a>[i] != 0 &amp;&amp; (min_col &lt; 0 || abs(min_col_val) &gt; abs(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a>[i])))</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; {</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; min_col = i;</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; min_col_val = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a>[i];</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; }</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; }</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160;</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <span class="keywordflow">if</span>(min_col &lt; 0)</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; {</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; }</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160;</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; <span class="keywordflow">for</span>(uint32_t j = 0; j &lt; size; ++j)</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; {</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; conv_col[j] = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a>[min_col + j * size];</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; }</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160;</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; <span class="keywordflow">for</span>(uint32_t i = 0; i &lt; size; i++)</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; {</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; <span class="keywordflow">if</span>(static_cast&lt;int&gt;(i) == min_col)</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; {</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; conv_row[i] = 1;</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; }</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; {</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; int16_t coeff = <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a>[i] / <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a>[min_col];</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160;</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; <span class="keywordflow">for</span>(uint32_t j = 1; j &lt; size; ++j)</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; {</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">conv</a>[i + j * size] != (conv_col[j] * coeff))</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; {</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; }</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; }</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160;</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; conv_row[i] = coeff;</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; }</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; }</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_adab2e84e4e20f041fdcd075e2864b132"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#adab2e84e4e20f041fdcd075e2864b132">arm_compute::test::validation::conv</a></div><div class="ttdeci">int16_t conv[25]</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_8cpp_source.xhtml#l00125">Convolution.cpp:125</a></div></div>
19995</div><!-- fragment -->
19996<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_8cpp_source.xhtml#l00125">arm_compute::test::validation::conv</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000019997
19998<p class="reference">Referenced by <a class="el" href="_c_l_convolution_8cpp_source.xhtml#l00056">CLConvolutionSquare&lt; matrix_size &gt;::configure()</a>, and <a class="el" href="_n_e_convolution_8cpp_source.xhtml#l00057">NEConvolutionSquare&lt; matrix_size &gt;::configure()</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000019999
Jenkinsb3a371b2018-05-23 11:36:53 +010020000</div>
20001</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020002<a id="aafd98bfd4651f36d691ddd2631a6e5a0"></a>
20003<h2 class="memtitle"><span class="permalink"><a href="#aafd98bfd4651f36d691ddd2631a6e5a0">&#9670;&nbsp;</a></span>set_data_layout_if_unknown()</h2>
20004
Jenkinsb3a371b2018-05-23 11:36:53 +010020005<div class="memitem">
20006<div class="memproto">
20007<table class="mlabels">
20008 <tr>
20009 <td class="mlabels-left">
20010 <table class="memname">
20011 <tr>
20012 <td class="memname">bool set_data_layout_if_unknown </td>
20013 <td>(</td>
20014 <td class="paramtype"><a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
20015 <td class="paramname"><em>info</em>, </td>
20016 </tr>
20017 <tr>
20018 <td class="paramkey"></td>
20019 <td></td>
20020 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a>&#160;</td>
20021 <td class="paramname"><em>data_layout</em>&#160;</td>
20022 </tr>
20023 <tr>
20024 <td></td>
20025 <td>)</td>
20026 <td></td><td></td>
20027 </tr>
20028 </table>
20029 </td>
20030 <td class="mlabels-right">
20031<span class="mlabels"><span class="mlabel">inline</span></span> </td>
20032 </tr>
20033</table>
20034</div><div class="memdoc">
20035
20036<p>Set the data layout to the specified value if the current data layout is unknown. </p>
20037<dl class="params"><dt>Parameters</dt><dd>
20038 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000020039 <tr><td class="paramdir">[in,out]</td><td class="paramname">info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info used to check and assign. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010020040 <tr><td class="paramdir">[in]</td><td class="paramname">data_layout</td><td>New data layout.</td></tr>
20041 </table>
20042 </dd>
20043</dl>
20044<dl class="section return"><dt>Returns</dt><dd>True if the data type has been changed. </dd></dl>
20045
Jenkinsb9abeae2018-11-22 11:58:08 +000020046<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00267">267</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000020047<div class="fragment"><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;{</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.data_layout() == DataLayout::UNKNOWN)</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; {</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.set_data_layout(data_layout);</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; }</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020048</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000020049<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
20050
Anthony Barbierdbdab852017-06-23 15:42:00 +010020051</div>
20052</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020053<a id="ad19446be52c2c162fa678b9ae236f445"></a>
20054<h2 class="memtitle"><span class="permalink"><a href="#ad19446be52c2c162fa678b9ae236f445">&#9670;&nbsp;</a></span>set_data_type_if_unknown()</h2>
20055
Anthony Barbierdbdab852017-06-23 15:42:00 +010020056<div class="memitem">
20057<div class="memproto">
20058<table class="mlabels">
20059 <tr>
20060 <td class="mlabels-left">
20061 <table class="memname">
20062 <tr>
20063 <td class="memname">bool set_data_type_if_unknown </td>
20064 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020065 <td class="paramtype"><a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020066 <td class="paramname"><em>info</em>, </td>
20067 </tr>
20068 <tr>
20069 <td class="paramkey"></td>
20070 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020071 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020072 <td class="paramname"><em>data_type</em>&#160;</td>
20073 </tr>
20074 <tr>
20075 <td></td>
20076 <td>)</td>
20077 <td></td><td></td>
20078 </tr>
20079 </table>
20080 </td>
20081 <td class="mlabels-right">
20082<span class="mlabels"><span class="mlabel">inline</span></span> </td>
20083 </tr>
20084</table>
20085</div><div class="memdoc">
20086
Jenkinsb3a371b2018-05-23 11:36:53 +010020087<p>Set the data type and number of channels to the specified value if the current data type is unknown. </p>
20088<dl class="params"><dt>Parameters</dt><dd>
20089 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000020090 <tr><td class="paramdir">[in,out]</td><td class="paramname">info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info used to check and assign. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010020091 <tr><td class="paramdir">[in]</td><td class="paramname">data_type</td><td>New data type.</td></tr>
20092 </table>
20093 </dd>
20094</dl>
20095<dl class="section return"><dt>Returns</dt><dd>True if the data type has been changed. </dd></dl>
20096
Jenkinsb9abeae2018-11-22 11:58:08 +000020097<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00256">256</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000020098<div class="fragment"><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;{</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.data_type() == DataType::UNKNOWN)</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; {</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.set_data_type(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>);</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; }</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
20099<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010020100</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000020101<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::data_type</a>, <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
20102
Anthony Barbierdbdab852017-06-23 15:42:00 +010020103</div>
20104</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020105<a id="a8076ba239b6681067b6cfea7f773a39f"></a>
20106<h2 class="memtitle"><span class="permalink"><a href="#a8076ba239b6681067b6cfea7f773a39f">&#9670;&nbsp;</a></span>set_format_if_unknown()</h2>
20107
Anthony Barbierdbdab852017-06-23 15:42:00 +010020108<div class="memitem">
20109<div class="memproto">
20110<table class="mlabels">
20111 <tr>
20112 <td class="mlabels-left">
20113 <table class="memname">
20114 <tr>
20115 <td class="memname">bool set_format_if_unknown </td>
20116 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020117 <td class="paramtype"><a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020118 <td class="paramname"><em>info</em>, </td>
20119 </tr>
20120 <tr>
20121 <td class="paramkey"></td>
20122 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020123 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020124 <td class="paramname"><em>format</em>&#160;</td>
20125 </tr>
20126 <tr>
20127 <td></td>
20128 <td>)</td>
20129 <td></td><td></td>
20130 </tr>
20131 </table>
20132 </td>
20133 <td class="mlabels-right">
20134<span class="mlabels"><span class="mlabel">inline</span></span> </td>
20135 </tr>
20136</table>
20137</div><div class="memdoc">
20138
Jenkinsb3a371b2018-05-23 11:36:53 +010020139<p>Set the format, data type and number of channels to the specified value if the current data type is unknown. </p>
20140<dl class="params"><dt>Parameters</dt><dd>
20141 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000020142 <tr><td class="paramdir">[in,out]</td><td class="paramname">info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info used to check and assign. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010020143 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>New format.</td></tr>
20144 </table>
20145 </dd>
20146</dl>
20147<dl class="section return"><dt>Returns</dt><dd>True if the format has been changed. </dd></dl>
20148
Jenkinsb9abeae2018-11-22 11:58:08 +000020149<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00245">245</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000020150<div class="fragment"><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;{</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.data_type() == DataType::UNKNOWN)</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; {</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.set_format(format);</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; }</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020151</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000020152<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
20153
20154<p class="reference">Referenced by <a class="el" href="_n_e_box3x3_kernel_8cpp_source.xhtml#l00114">NEBox3x3Kernel::configure()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00250">NEAccumulateKernel::configure()</a>, <a class="el" href="_g_c_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00047">GCPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_n_e_bitwise_not_kernel_8cpp_source.xhtml#l00056">NEBitwiseNotKernel::configure()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_bitwise_and_kernel_8cpp_source.xhtml#l00061">NEBitwiseAndKernel::configure()</a>, <a class="el" href="_g_c_arithmetic_addition_kernel_8cpp_source.xhtml#l00091">GCArithmeticAdditionKernel::configure()</a>, <a class="el" href="_n_e_bitwise_or_kernel_8cpp_source.xhtml#l00057">NEBitwiseOrKernel::configure()</a>, <a class="el" href="_n_e_bitwise_xor_kernel_8cpp_source.xhtml#l00057">NEBitwiseXorKernel::configure()</a>, <a class="el" href="_n_e_absolute_difference_kernel_8cpp_source.xhtml#l00133">NEAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00052">NEChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00877">NEGradientKernel::configure()</a>, <a class="el" href="_n_e_cumulative_distribution_kernel_8cpp_source.xhtml#l00050">NECumulativeDistributionKernel::configure()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00286">NEAccumulateWeightedKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00970">NEEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00329">NEAccumulateSquaredKernel::configure()</a>, and <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l01059">NEEdgeTraceKernel::configure()</a>.</p>
20155
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020156</div>
20157</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020158<a id="a75509469ec2689ec143f4a37bbcb4437"></a>
20159<h2 class="memtitle"><span class="permalink"><a href="#a75509469ec2689ec143f4a37bbcb4437">&#9670;&nbsp;</a></span>set_quantization_info_if_empty()</h2>
20160
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020161<div class="memitem">
20162<div class="memproto">
20163<table class="mlabels">
20164 <tr>
20165 <td class="mlabels-left">
20166 <table class="memname">
20167 <tr>
20168 <td class="memname">bool set_quantization_info_if_empty </td>
20169 <td>(</td>
20170 <td class="paramtype"><a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
20171 <td class="paramname"><em>info</em>, </td>
20172 </tr>
20173 <tr>
20174 <td class="paramkey"></td>
20175 <td></td>
20176 <td class="paramtype"><a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a>&#160;</td>
20177 <td class="paramname"><em>quantization_info</em>&#160;</td>
20178 </tr>
20179 <tr>
20180 <td></td>
20181 <td>)</td>
20182 <td></td><td></td>
20183 </tr>
20184 </table>
20185 </td>
20186 <td class="mlabels-right">
20187<span class="mlabels"><span class="mlabel">inline</span></span> </td>
20188 </tr>
20189</table>
20190</div><div class="memdoc">
20191
Jenkinsb3a371b2018-05-23 11:36:53 +010020192<p>Set the quantization info to the specified value if the current quantization info is empty and the data type of asymmetric quantized type. </p>
20193<dl class="params"><dt>Parameters</dt><dd>
20194 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000020195 <tr><td class="paramdir">[in,out]</td><td class="paramname">info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info used to check and assign. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010020196 <tr><td class="paramdir">[in]</td><td class="paramname">quantization_info</td><td>Quantization info</td></tr>
20197 </table>
20198 </dd>
20199</dl>
20200<dl class="section return"><dt>Returns</dt><dd>True if the quantization info has been changed. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020201
Jenkinsb9abeae2018-11-22 11:58:08 +000020202<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00278">278</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000020203<div class="fragment"><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;{</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.quantization_info().empty() &amp;&amp; (<a class="code" href="namespacearm__compute.xhtml#a14f46283f316e7f0fad301d5c1507e9f">is_data_type_quantized_asymmetric</a>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.data_type())))</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; {</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.set_quantization_info(quantization_info);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; }</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a14f46283f316e7f0fad301d5c1507e9f"><div class="ttname"><a href="namespacearm__compute.xhtml#a14f46283f316e7f0fad301d5c1507e9f">arm_compute::is_data_type_quantized_asymmetric</a></div><div class="ttdeci">bool is_data_type_quantized_asymmetric(DataType dt)</div><div class="ttdoc">Check if a given data type is of asymmetric quantized type.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l01014">Utils.h:1014</a></div></div>
20204<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010020205</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000020206<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>, and <a class="el" href="arm__compute_2core_2_utils_8h_source.xhtml#l01014">is_data_type_quantized_asymmetric()</a>.</p>
20207
Anthony Barbierdbdab852017-06-23 15:42:00 +010020208</div>
20209</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020210<a id="a9d1a839c51134b2ae171a2264c541b6f"></a>
20211<h2 class="memtitle"><span class="permalink"><a href="#a9d1a839c51134b2ae171a2264c541b6f">&#9670;&nbsp;</a></span>set_shape_if_empty()</h2>
20212
Anthony Barbierdbdab852017-06-23 15:42:00 +010020213<div class="memitem">
20214<div class="memproto">
20215<table class="mlabels">
20216 <tr>
20217 <td class="mlabels-left">
20218 <table class="memname">
20219 <tr>
20220 <td class="memname">bool set_shape_if_empty </td>
20221 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020222 <td class="paramtype"><a class="el" href="classarm__compute_1_1_i_tensor_info.xhtml">ITensorInfo</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020223 <td class="paramname"><em>info</em>, </td>
20224 </tr>
20225 <tr>
20226 <td class="paramkey"></td>
20227 <td></td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020228 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020229 <td class="paramname"><em>shape</em>&#160;</td>
20230 </tr>
20231 <tr>
20232 <td></td>
20233 <td>)</td>
20234 <td></td><td></td>
20235 </tr>
20236 </table>
20237 </td>
20238 <td class="mlabels-right">
20239<span class="mlabels"><span class="mlabel">inline</span></span> </td>
20240 </tr>
20241</table>
20242</div><div class="memdoc">
20243
Jenkinsb3a371b2018-05-23 11:36:53 +010020244<p>Set the shape to the specified value if the current assignment is empty. </p>
20245<dl class="params"><dt>Parameters</dt><dd>
20246 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000020247 <tr><td class="paramdir">[in,out]</td><td class="paramname">info</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface.">Tensor</a> info used to check and assign. </td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010020248 <tr><td class="paramdir">[in]</td><td class="paramname">shape</td><td>New shape.</td></tr>
20249 </table>
20250 </dd>
20251</dl>
20252<dl class="section return"><dt>Returns</dt><dd>True if the shape has been changed. </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020253
Jenkinsb9abeae2018-11-22 11:58:08 +000020254<p class="definition">Definition at line <a class="el" href="_helpers_8inl_source.xhtml#l00234">234</a> of file <a class="el" href="_helpers_8inl_source.xhtml">Helpers.inl</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000020255<div class="fragment"><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;{</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.tensor_shape().total_size() == 0)</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; {</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.set_tensor_shape(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; }</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">AbsoluteDifference.cpp:97</a></div></div>
20256<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010020257</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000020258<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>, and <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">arm_compute::test::validation::shape</a>.</p>
20259
20260<p class="reference">Referenced by <a class="el" href="_n_e_box3x3_kernel_8cpp_source.xhtml#l00114">NEBox3x3Kernel::configure()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00250">NEAccumulateKernel::configure()</a>, <a class="el" href="_c_l_depth_convert_layer_kernel_8cpp_source.xhtml#l00073">CLDepthConvertLayerKernel::configure()</a>, <a class="el" href="_g_c_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00047">GCPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_bitwise_not_kernel_8cpp_source.xhtml#l00056">NEBitwiseNotKernel::configure()</a>, <a class="el" href="_n_e_bitwise_and_kernel_8cpp_source.xhtml#l00061">NEBitwiseAndKernel::configure()</a>, <a class="el" href="_n_e_bitwise_or_kernel_8cpp_source.xhtml#l00057">NEBitwiseOrKernel::configure()</a>, <a class="el" href="_n_e_bitwise_xor_kernel_8cpp_source.xhtml#l00057">NEBitwiseXorKernel::configure()</a>, <a class="el" href="_g_c_arithmetic_addition_kernel_8cpp_source.xhtml#l00091">GCArithmeticAdditionKernel::configure()</a>, <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00045">NEColorConvertKernel::configure()</a>, <a class="el" href="_n_e_absolute_difference_kernel_8cpp_source.xhtml#l00133">NEAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00052">NEChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00877">NEGradientKernel::configure()</a>, <a class="el" href="_n_e_depth_convert_layer_kernel_8cpp_source.xhtml#l00100">NEDepthConvertLayerKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00324">NEConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00286">NEAccumulateWeightedKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00666">NESeparableConvolutionHorKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00970">NEEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_n_e_accumulate_kernel_8cpp_source.xhtml#l00329">NEAccumulateSquaredKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l01103">NESeparableConvolutionVertKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l01059">NEEdgeTraceKernel::configure()</a>, and <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l01427">NEConvolutionRectangleKernel::configure()</a>.</p>
20261
Anthony Barbierdbdab852017-06-23 15:42:00 +010020262</div>
20263</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020264<a id="a671b1da70aa3efc02c508648ae2d81b5"></a>
20265<h2 class="memtitle"><span class="permalink"><a href="#a671b1da70aa3efc02c508648ae2d81b5">&#9670;&nbsp;</a></span>sqadd()</h2>
20266
Anthony Barbier871448e2017-03-24 14:54:29 +000020267<div class="memitem">
20268<div class="memproto">
20269 <table class="memname">
20270 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000020271 <td class="memname">T arm_compute::sqadd </td>
20272 <td>(</td>
20273 <td class="paramtype">T&#160;</td>
20274 <td class="paramname"><em>a</em>, </td>
20275 </tr>
20276 <tr>
20277 <td class="paramkey"></td>
20278 <td></td>
20279 <td class="paramtype">T&#160;</td>
20280 <td class="paramname"><em>b</em>&#160;</td>
20281 </tr>
20282 <tr>
20283 <td></td>
20284 <td>)</td>
20285 <td></td><td></td>
20286 </tr>
20287 </table>
20288</div><div class="memdoc">
20289
20290</div>
20291</div>
20292<a id="a705ed42150ffbe645f7ba2fb5d0a5bb6"></a>
20293<h2 class="memtitle"><span class="permalink"><a href="#a705ed42150ffbe645f7ba2fb5d0a5bb6">&#9670;&nbsp;</a></span>sqmul()</h2>
20294
20295<div class="memitem">
20296<div class="memproto">
20297 <table class="memname">
20298 <tr>
20299 <td class="memname">T arm_compute::sqmul </td>
20300 <td>(</td>
20301 <td class="paramtype">T&#160;</td>
20302 <td class="paramname"><em>a</em>, </td>
20303 </tr>
20304 <tr>
20305 <td class="paramkey"></td>
20306 <td></td>
20307 <td class="paramtype">T&#160;</td>
20308 <td class="paramname"><em>b</em>&#160;</td>
20309 </tr>
20310 <tr>
20311 <td></td>
20312 <td>)</td>
20313 <td></td><td></td>
20314 </tr>
20315 </table>
20316</div><div class="memdoc">
20317
20318</div>
20319</div>
20320<a id="a7462bb232b41864413a4d8603a660d16"></a>
20321<h2 class="memtitle"><span class="permalink"><a href="#a7462bb232b41864413a4d8603a660d16">&#9670;&nbsp;</a></span>sqsub()</h2>
20322
20323<div class="memitem">
20324<div class="memproto">
20325 <table class="memname">
20326 <tr>
20327 <td class="memname">T arm_compute::sqsub </td>
20328 <td>(</td>
20329 <td class="paramtype">T&#160;</td>
20330 <td class="paramname"><em>a</em>, </td>
20331 </tr>
20332 <tr>
20333 <td class="paramkey"></td>
20334 <td></td>
20335 <td class="paramtype">T&#160;</td>
20336 <td class="paramname"><em>b</em>&#160;</td>
20337 </tr>
20338 <tr>
20339 <td></td>
20340 <td>)</td>
20341 <td></td><td></td>
20342 </tr>
20343 </table>
20344</div><div class="memdoc">
20345
20346</div>
20347</div>
20348<a id="a635f1895d94050329b7da12850d1a056"></a>
20349<h2 class="memtitle"><span class="permalink"><a href="#a635f1895d94050329b7da12850d1a056">&#9670;&nbsp;</a></span>string_from_activation_func()</h2>
20350
20351<div class="memitem">
20352<div class="memproto">
20353 <table class="memname">
20354 <tr>
20355 <td class="memname">const std::string &amp; string_from_activation_func </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020356 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020357 <td class="paramtype"><a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9ea">ActivationLayerInfo::ActivationFunction</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020358 <td class="paramname"><em>act</em></td><td>)</td>
20359 <td></td>
20360 </tr>
20361 </table>
20362</div><div class="memdoc">
20363
20364<p>Translates a given activation function to a string. </p>
20365<dl class="params"><dt>Parameters</dt><dd>
20366 <table class="params">
20367 <tr><td class="paramdir">[in]</td><td class="paramname">act</td><td><a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9ea">ActivationLayerInfo::ActivationFunction</a> to be translated to string.</td></tr>
20368 </table>
20369 </dd>
20370</dl>
20371<dl class="section return"><dt>Returns</dt><dd>The string describing the activation function. </dd></dl>
20372
Jenkins514be652019-02-28 12:25:18 +000020373<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00167">167</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
20374<div class="fragment"><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;{</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keyword">static</span> std::map&lt;ActivationLayerInfo::ActivationFunction, const std::string&gt; act_map =</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; {</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; { ActivationLayerInfo::ActivationFunction::ABS, <span class="stringliteral">&quot;ABS&quot;</span> },</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; { ActivationLayerInfo::ActivationFunction::LINEAR, <span class="stringliteral">&quot;LINEAR&quot;</span> },</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; { ActivationLayerInfo::ActivationFunction::LOGISTIC, <span class="stringliteral">&quot;LOGISTIC&quot;</span> },</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; { ActivationLayerInfo::ActivationFunction::RELU, <span class="stringliteral">&quot;RELU&quot;</span> },</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; { ActivationLayerInfo::ActivationFunction::BOUNDED_RELU, <span class="stringliteral">&quot;BRELU&quot;</span> },</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; { ActivationLayerInfo::ActivationFunction::LU_BOUNDED_RELU, <span class="stringliteral">&quot;LU_BRELU&quot;</span> },</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; { ActivationLayerInfo::ActivationFunction::LEAKY_RELU, <span class="stringliteral">&quot;LRELU&quot;</span> },</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; { ActivationLayerInfo::ActivationFunction::SOFT_RELU, <span class="stringliteral">&quot;SRELU&quot;</span> },</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; { ActivationLayerInfo::ActivationFunction::SQRT, <span class="stringliteral">&quot;SQRT&quot;</span> },</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; { ActivationLayerInfo::ActivationFunction::SQUARE, <span class="stringliteral">&quot;SQUARE&quot;</span> },</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; { ActivationLayerInfo::ActivationFunction::TANH, <span class="stringliteral">&quot;TANH&quot;</span> },</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; };</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">return</span> act_map[act];</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000020375<p class="reference">References <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa7d8a220d2262f9d6c658d549ee12cf2c">ActivationLayerInfo::ABS</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaacc516ab03b98f1c908ddf6ed4a7c45e9">ActivationLayerInfo::BOUNDED_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaac7e80a3de04936f4e423e1b564fdca10">ActivationLayerInfo::LEAKY_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaaaac544aacc3615aada24897a215f5046">ActivationLayerInfo::LINEAR</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa72ee60fba0509af07cbbd91398d8db9d">ActivationLayerInfo::LOGISTIC</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaaab1d4411a9e7f5e82002512cddfdc33a">ActivationLayerInfo::LU_BOUNDED_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaad346bb4679d29be241279f15d7795c1c">ActivationLayerInfo::RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaadcc44a50c791a591c74e00ecdda7c58d">ActivationLayerInfo::SOFT_RELU</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa36875f2500a09ee35d0bb7eb8c0b91b0">ActivationLayerInfo::SQRT</a>, <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa12dec4e1f7ec620651b2b95c440ffac0">ActivationLayerInfo::SQUARE</a>, and <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9eaa143c8c6f51b9bb893ce71e38702e3cc1">ActivationLayerInfo::TANH</a>.</p>
20376
Jenkins514be652019-02-28 12:25:18 +000020377<p class="reference">Referenced by <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel_8cpp_source.xhtml#l00209">CLDepthwiseConvolutionLayer3x3NCHWKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00168">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_g_c_activation_layer_kernel_8cpp_source.xhtml#l00047">GCActivationLayerKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_g_c_batch_normalization_layer_kernel_8cpp_source.xhtml#l00139">GCBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>, and <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00146">CLWinogradOutputTransformKernel::configure()</a>.</p>
20378
Anthony Barbier871448e2017-03-24 14:54:29 +000020379</div>
20380</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020381<a id="ae0204b49ec236bbaedb1cf96def276d4"></a>
20382<h2 class="memtitle"><span class="permalink"><a href="#ae0204b49ec236bbaedb1cf96def276d4">&#9670;&nbsp;</a></span>string_from_border_mode()</h2>
20383
Anthony Barbier871448e2017-03-24 14:54:29 +000020384<div class="memitem">
20385<div class="memproto">
20386 <table class="memname">
20387 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000020388 <td class="memname">const std::string &amp; string_from_border_mode </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020389 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020390 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020391 <td class="paramname"><em>border_mode</em></td><td>)</td>
20392 <td></td>
20393 </tr>
20394 </table>
20395</div><div class="memdoc">
20396
20397<p>Translates a given border mode policy to a string. </p>
20398<dl class="params"><dt>Parameters</dt><dd>
20399 <table class="params">
20400 <tr><td class="paramdir">[in]</td><td class="paramname">border_mode</td><td><a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> to be translated to string.</td></tr>
20401 </table>
20402 </dd>
20403</dl>
20404<dl class="section return"><dt>Returns</dt><dd>The string describing the border mode. </dd></dl>
20405
Jenkins514be652019-02-28 12:25:18 +000020406<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00224">224</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
20407<div class="fragment"><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;{</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keyword">static</span> std::map&lt;BorderMode, const std::string&gt; border_mode_map =</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; {</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; { BorderMode::UNDEFINED, <span class="stringliteral">&quot;UNDEFINED&quot;</span> },</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; { BorderMode::CONSTANT, <span class="stringliteral">&quot;CONSTANT&quot;</span> },</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; { BorderMode::REPLICATE, <span class="stringliteral">&quot;REPLICATE&quot;</span> },</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; };</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keywordflow">return</span> border_mode_map[<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a5471e46933e7a9c4709972d91fc4ea65">border_mode</a>];</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a5471e46933e7a9c4709972d91fc4ea65"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a5471e46933e7a9c4709972d91fc4ea65">arm_compute::test::validation::border_mode</a></div><div class="ttdeci">border_mode</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_8cpp_source.xhtml#l00118">Convolution.cpp:118</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020408</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000020409<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_8cpp_source.xhtml#l00118">arm_compute::test::validation::border_mode</a>, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92">CONSTANT</a>, <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a4ef59320fbe90fe47d40f1f71e4c5daa">REPLICATE</a>, and <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a0db45d2a4141101bdfe48e3314cfbca3">UNDEFINED</a>.</p>
20410
20411<p class="reference">Referenced by <a class="el" href="_c_l_fill_border_kernel_8cpp_source.xhtml#l00062">CLFillBorderKernel::configure()</a>, and <a class="el" href="_g_c_fill_border_kernel_8cpp_source.xhtml#l00060">GCFillBorderKernel::configure()</a>.</p>
20412
Anthony Barbier871448e2017-03-24 14:54:29 +000020413</div>
20414</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020415<a id="af0dfcd19fb6510cd3c303db6c4583ee6"></a>
20416<h2 class="memtitle"><span class="permalink"><a href="#af0dfcd19fb6510cd3c303db6c4583ee6">&#9670;&nbsp;</a></span>string_from_channel()</h2>
20417
Anthony Barbier871448e2017-03-24 14:54:29 +000020418<div class="memitem">
20419<div class="memproto">
20420 <table class="memname">
20421 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000020422 <td class="memname">const std::string &amp; string_from_channel </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020423 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020424 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020425 <td class="paramname"><em>channel</em></td><td>)</td>
20426 <td></td>
20427 </tr>
20428 </table>
20429</div><div class="memdoc">
20430
20431<p>Convert a channel identity into a string. </p>
20432<dl class="params"><dt>Parameters</dt><dd>
20433 <table class="params">
20434 <tr><td class="paramdir">[in]</td><td class="paramname">channel</td><td><a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> to be translated to string.</td></tr>
20435 </table>
20436 </dd>
20437</dl>
20438<dl class="section return"><dt>Returns</dt><dd>The string describing the channel. </dd></dl>
20439
Jenkins514be652019-02-28 12:25:18 +000020440<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00111">111</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
20441<div class="fragment"><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;{</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keyword">static</span> std::map&lt;Channel, const std::string&gt; channels_map =</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; {</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; { Channel::UNKNOWN, <span class="stringliteral">&quot;UNKNOWN&quot;</span> },</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; { Channel::R, <span class="stringliteral">&quot;R&quot;</span> },</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; { Channel::G, <span class="stringliteral">&quot;G&quot;</span> },</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; { Channel::B, <span class="stringliteral">&quot;B&quot;</span> },</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; { Channel::A, <span class="stringliteral">&quot;A&quot;</span> },</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; { Channel::Y, <span class="stringliteral">&quot;Y&quot;</span> },</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; { <a class="code" href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">Channel::U</a>, <span class="stringliteral">&quot;U&quot;</span> },</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; { Channel::V, <span class="stringliteral">&quot;V&quot;</span> },</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; { Channel::C0, <span class="stringliteral">&quot;C0&quot;</span> },</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; { Channel::C1, <span class="stringliteral">&quot;C1&quot;</span> },</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; { Channel::C2, <span class="stringliteral">&quot;C2&quot;</span> },</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; { Channel::C3, <span class="stringliteral">&quot;C3&quot;</span> }</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; };</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">return</span> channels_map[channel];</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1utils_1_1cast_xhtml_a2ea3d1fc01a3a442900249ca182ffa5e"><div class="ttname"><a href="namespacearm__compute_1_1utils_1_1cast.xhtml#a2ea3d1fc01a3a442900249ca182ffa5e">arm_compute::utils::cast::U</a></div><div class="ttdeci">U</div><div class="ttdef"><b>Definition:</b> <a href="_saturate_cast_8h_source.xhtml#l00057">SaturateCast.h:57</a></div></div>
20442</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000020443<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa7fc56270e7a70fa81a5935b72eacbe29">A</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">B</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9c5959e6f08f10d0edbadf5be1f33c53">C0</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa1a2ddc2db4693cfd16d534cde5572cc1">C1</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aaf1a543f5a2c5d49bc5dde298fcf716e4">C2</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa3abe124ecc82bf2c2e22e6058f38c50c">C3</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">G</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">R</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa4c614360da93c0a041b22e537de151eb">U</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa5206560a306a2e085a437fd258eb57ce">V</a>, and <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa57cec4137b614c87cb4e24a3d003a3e0">Y</a>.</p>
20444
Jenkins514be652019-02-28 12:25:18 +000020445<p class="reference">Referenced by <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>.</p>
20446
Jenkinsb3a371b2018-05-23 11:36:53 +010020447</div>
20448</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020449<a id="a56b9e25c2e8731ca5488e7b3ccd66f58"></a>
20450<h2 class="memtitle"><span class="permalink"><a href="#a56b9e25c2e8731ca5488e7b3ccd66f58">&#9670;&nbsp;</a></span>string_from_data_layout()</h2>
20451
Jenkinsb3a371b2018-05-23 11:36:53 +010020452<div class="memitem">
20453<div class="memproto">
20454 <table class="memname">
20455 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000020456 <td class="memname">const std::string &amp; string_from_data_layout </td>
Jenkinsb3a371b2018-05-23 11:36:53 +010020457 <td>(</td>
20458 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a>&#160;</td>
20459 <td class="paramname"><em>dl</em></td><td>)</td>
20460 <td></td>
20461 </tr>
20462 </table>
20463</div><div class="memdoc">
20464
20465<p>Convert a data layout identity into a string. </p>
20466<dl class="params"><dt>Parameters</dt><dd>
20467 <table class="params">
20468 <tr><td class="paramdir">[in]</td><td class="paramname">dl</td><td><a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">DataLayout</a> to be translated to string.</td></tr>
20469 </table>
20470 </dd>
20471</dl>
20472<dl class="section return"><dt>Returns</dt><dd>The string describing the data layout. </dd></dl>
20473
Jenkins514be652019-02-28 12:25:18 +000020474<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00132">132</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
20475<div class="fragment"><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;{</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keyword">static</span> std::map&lt;DataLayout, const std::string&gt; dl_map =</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; { DataLayout::UNKNOWN, <span class="stringliteral">&quot;UNKNOWN&quot;</span> },</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; { DataLayout::NCHW, <span class="stringliteral">&quot;NCHW&quot;</span> },</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; { DataLayout::NHWC, <span class="stringliteral">&quot;NHWC&quot;</span> },</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; };</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">return</span> dl_map[dl];</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000020476<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">NCHW</a>, <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0ad066db54b89b0912e7e7c6da51e2da51">NHWC</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
20477
Jenkins514be652019-02-28 12:25:18 +000020478<p class="reference">Referenced by <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00161">CLScaleKernel::configure()</a>, <a class="el" href="_c_l_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00095">CLChannelShuffleLayerKernel::configure()</a>, <a class="el" href="_c_l_batch_to_space_layer_kernel_8cpp_source.xhtml#l00084">CLBatchToSpaceLayerKernel::configure()</a>, <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00107">CLNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_space_to_batch_layer_kernel_8cpp_source.xhtml#l00089">CLSpaceToBatchLayerKernel::configure()</a>, <a class="el" href="_c_l_upsample_layer_kernel_8cpp_source.xhtml#l00066">CLUpsampleLayerKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_c_l_comparison_kernel_8cpp_source.xhtml#l00113">CLComparisonKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer_reshape_weights_generic_kernel_8cpp_source.xhtml#l00070">CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00098">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00185">CLPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_depthwise_vector_to_tensor_kernel_8cpp_source.xhtml#l00064">CLDepthwiseVectorToTensorKernel::configure()</a>, <a class="el" href="_c_l_depthwise_im2_col_kernel_8cpp_source.xhtml#l00065">CLDepthwiseIm2ColKernel::configure()</a>, <a class="el" href="_c_l_winograd_input_transform_kernel_8cpp_source.xhtml#l00111">CLWinogradInputTransformKernel::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, <a class="el" href="_c_l_winograd_filter_transform_kernel_8cpp_source.xhtml#l00102">CLWinogradFilterTransformKernel::configure()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_output_stage_kernel_8cpp_source.xhtml#l00129">CLDirectConvolutionLayerOutputStageKernel::configure()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00146">CLWinogradOutputTransformKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00293">CLIm2ColKernel::configure()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00708">error_on_data_layout_not_in()</a>.</p>
20479
Anthony Barbier871448e2017-03-24 14:54:29 +000020480</div>
20481</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020482<a id="a142b55a483cadf4e1068a1a09a55e8e9"></a>
20483<h2 class="memtitle"><span class="permalink"><a href="#a142b55a483cadf4e1068a1a09a55e8e9">&#9670;&nbsp;</a></span>string_from_data_type()</h2>
20484
Anthony Barbier871448e2017-03-24 14:54:29 +000020485<div class="memitem">
20486<div class="memproto">
20487 <table class="memname">
20488 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000020489 <td class="memname">const std::string &amp; string_from_data_type </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020490 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020491 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020492 <td class="paramname"><em>dt</em></td><td>)</td>
20493 <td></td>
20494 </tr>
20495 </table>
20496</div><div class="memdoc">
20497
20498<p>Convert a data type identity into a string. </p>
20499<dl class="params"><dt>Parameters</dt><dd>
20500 <table class="params">
20501 <tr><td class="paramdir">[in]</td><td class="paramname">dt</td><td><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> to be translated to string.</td></tr>
20502 </table>
20503 </dd>
20504</dl>
20505<dl class="section return"><dt>Returns</dt><dd>The string describing the data type. </dd></dl>
20506
Jenkins514be652019-02-28 12:25:18 +000020507<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00144">144</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
20508<div class="fragment"><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;{</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keyword">static</span> std::map&lt;DataType, const std::string&gt; dt_map =</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; {</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; { DataType::UNKNOWN, <span class="stringliteral">&quot;UNKNOWN&quot;</span> },</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; { DataType::S8, <span class="stringliteral">&quot;S8&quot;</span> },</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; { DataType::U8, <span class="stringliteral">&quot;U8&quot;</span> },</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; { DataType::S16, <span class="stringliteral">&quot;S16&quot;</span> },</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; { DataType::U16, <span class="stringliteral">&quot;U16&quot;</span> },</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; { DataType::S32, <span class="stringliteral">&quot;S32&quot;</span> },</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; { DataType::U32, <span class="stringliteral">&quot;U32&quot;</span> },</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; { DataType::S64, <span class="stringliteral">&quot;S64&quot;</span> },</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; { DataType::U64, <span class="stringliteral">&quot;U64&quot;</span> },</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; { DataType::F16, <span class="stringliteral">&quot;F16&quot;</span> },</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; { DataType::F32, <span class="stringliteral">&quot;F32&quot;</span> },</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; { DataType::F64, <span class="stringliteral">&quot;F64&quot;</span> },</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; { DataType::SIZET, <span class="stringliteral">&quot;SIZET&quot;</span> },</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; { DataType::QASYMM8, <span class="stringliteral">&quot;QASYMM8&quot;</span> },</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; };</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordflow">return</span> dt_map[dt];</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000020509<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">F64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6af14462d71aa842202c3e4b272c7ec924">QASYMM8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">S8</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">SIZET</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">U64</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, and <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>.</p>
20510
Jenkins514be652019-02-28 12:25:18 +000020511<p class="reference">Referenced by <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_c_h_w_kernel_8cpp_source.xhtml#l00209">CLDepthwiseConvolutionLayer3x3NCHWKernel::configure()</a>, <a class="el" href="_c_l_depthwise_convolution_layer3x3_n_h_w_c_kernel_8cpp_source.xhtml#l00168">CLDepthwiseConvolutionLayer3x3NHWCKernel::configure()</a>, <a class="el" href="_c_l_flatten_layer_kernel_8cpp_source.xhtml#l00086">CLFlattenLayerKernel::configure()</a>, <a class="el" href="_c_l_channel_shuffle_layer_kernel_8cpp_source.xhtml#l00095">CLChannelShuffleLayerKernel::configure()</a>, <a class="el" href="_c_l_reverse_kernel_8cpp_source.xhtml#l00068">CLReverseKernel::configure()</a>, <a class="el" href="_c_l_normalization_layer_kernel_8cpp_source.xhtml#l00107">CLNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_locally_connected_matrix_multiply_kernel_8cpp_source.xhtml#l00084">CLLocallyConnectedMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_reorg_layer_kernel_8cpp_source.xhtml#l00076">CLReorgLayerKernel::configure()</a>, <a class="el" href="_c_l_tile_kernel_8cpp_source.xhtml#l00068">CLTileKernel::configure()</a>, <a class="el" href="_c_l_activation_layer_kernel_8cpp_source.xhtml#l00103">CLActivationLayerKernel::configure()</a>, <a class="el" href="_c_l_comparison_kernel_8cpp_source.xhtml#l00113">CLComparisonKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00043">GCGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_c_l_normalize_planar_y_u_v_layer_kernel_8cpp_source.xhtml#l00098">CLNormalizePlanarYUVLayerKernel::configure()</a>, <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00185">CLPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00079">CLGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate2_tensors_kernel_8cpp_source.xhtml#l00097">CLWidthConcatenate2TensorsKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_reshaped_kernel_8cpp_source.xhtml#l00175">CLGEMMMatrixMultiplyReshapedKernel::configure()</a>, <a class="el" href="_c_l_width_concatenate4_tensors_kernel_8cpp_source.xhtml#l00115">CLWidthConcatenate4TensorsKernel::configure()</a>, <a class="el" href="_c_l_range_kernel_8cpp_source.xhtml#l00093">CLRangeKernel::configure()</a>, <a class="el" href="_c_l_select_kernel_8cpp_source.xhtml#l00109">CLSelectKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_reshape_l_h_s_matrix_kernel_8cpp_source.xhtml#l00121">CLGEMMReshapeLHSMatrixKernel::configure()</a>, <a class="el" href="_c_l_y_o_l_o_layer_kernel_8cpp_source.xhtml#l00103">CLYOLOLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00234">CLGEMMLowpMatrixMultiplyKernel::configure()</a>, <a class="el" href="_c_l_batch_normalization_layer_kernel_8cpp_source.xhtml#l00138">CLBatchNormalizationLayerKernel::configure()</a>, <a class="el" href="_n_e_select_kernel_8cpp_source.xhtml#l00167">NESelectKernel::configure()</a>, <a class="el" href="_c_l_strided_slice_kernel_8cpp_source.xhtml#l00106">CLStridedSliceKernel::configure()</a>, <a class="el" href="_c_l_winograd_output_transform_kernel_8cpp_source.xhtml#l00146">CLWinogradOutputTransformKernel::configure()</a>, <a class="el" href="_c_l_direct_convolution_layer_kernel_8cpp_source.xhtml#l00350">CLDirectConvolutionLayerKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_matrix_multiply_kernel_8cpp_source.xhtml#l00263">CLGEMMMatrixMultiplyKernel::configure()</a>, <a class="el" href="_n_e_arithmetic_subtraction_kernel_8cpp_source.xhtml#l00401">NEArithmeticSubtractionKernel::configure()</a>, <a class="el" href="_c_l_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00119">CLGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_n_e_arithmetic_addition_kernel_8cpp_source.xhtml#l00556">NEArithmeticAdditionKernel::configure()</a>, <a class="el" href="_c_l_col2_im_kernel_8cpp_source.xhtml#l00090">CLCol2ImKernel::configure()</a>, <a class="el" href="_c_l_im2_col_kernel_8cpp_source.xhtml#l00293">CLIm2ColKernel::configure()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00656">error_on_data_type_not_in()</a>.</p>
20512
Anthony Barbier871448e2017-03-24 14:54:29 +000020513</div>
20514</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020515<a id="a8b82da7b5e0f6192f415ac347c9e0555"></a>
20516<h2 class="memtitle"><span class="permalink"><a href="#a8b82da7b5e0f6192f415ac347c9e0555">&#9670;&nbsp;</a></span>string_from_format()</h2>
20517
Anthony Barbier871448e2017-03-24 14:54:29 +000020518<div class="memitem">
20519<div class="memproto">
20520 <table class="memname">
20521 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000020522 <td class="memname">const std::string &amp; string_from_format </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020523 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020524 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020525 <td class="paramname"><em>format</em></td><td>)</td>
20526 <td></td>
20527 </tr>
20528 </table>
20529</div><div class="memdoc">
20530
20531<p>Convert a tensor format into a string. </p>
20532<dl class="params"><dt>Parameters</dt><dd>
20533 <table class="params">
20534 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> to be translated to string.</td></tr>
20535 </table>
20536 </dd>
20537</dl>
20538<dl class="section return"><dt>Returns</dt><dd>The string describing the format. </dd></dl>
20539
Jenkins514be652019-02-28 12:25:18 +000020540<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00085">85</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
20541<div class="fragment"><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;{</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keyword">static</span> std::map&lt;Format, const std::string&gt; formats_map =</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; {</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; { Format::UNKNOWN, <span class="stringliteral">&quot;UNKNOWN&quot;</span> },</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; { Format::U8, <span class="stringliteral">&quot;U8&quot;</span> },</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; { Format::S16, <span class="stringliteral">&quot;S16&quot;</span> },</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; { Format::U16, <span class="stringliteral">&quot;U16&quot;</span> },</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; { Format::S32, <span class="stringliteral">&quot;S32&quot;</span> },</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; { Format::U32, <span class="stringliteral">&quot;U32&quot;</span> },</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; { Format::F16, <span class="stringliteral">&quot;F16&quot;</span> },</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; { Format::F32, <span class="stringliteral">&quot;F32&quot;</span> },</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; { Format::UV88, <span class="stringliteral">&quot;UV88&quot;</span> },</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; { Format::RGB888, <span class="stringliteral">&quot;RGB888&quot;</span> },</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; { Format::RGBA8888, <span class="stringliteral">&quot;RGBA8888&quot;</span> },</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; { Format::YUV444, <span class="stringliteral">&quot;YUV444&quot;</span> },</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; { Format::YUYV422, <span class="stringliteral">&quot;YUYV422&quot;</span> },</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; { Format::NV12, <span class="stringliteral">&quot;NV12&quot;</span> },</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; { Format::NV21, <span class="stringliteral">&quot;NV21&quot;</span> },</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; { Format::IYUV, <span class="stringliteral">&quot;IYUV&quot;</span> },</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; { Format::UYVY422, <span class="stringliteral">&quot;UYVY422&quot;</span> }</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; };</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> formats_map[format];</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000020542<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">F32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ab08f0cb36474118c5bbc03b3a172a778">IYUV</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a202f5d8c2c70d31048154d8b8b28e755">NV12</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a8e9f6aa1af7e0abbc7e64521e6ffe1b4">NV21</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">RGB888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a165f06116e7b8d9b2481dfc805db4619">RGBA8888</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">S32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">U32</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">U8</a>, <a class="el" href="namespacearm__compute.xhtml#a3a440b3893fa10608d4428958be1c52ea696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a079eb95759d2ad31254f659d63651825">UV88</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58af557448a61ad2927194f63442e131dfa">UYVY422</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a11cfa56ee0ddbbc30a2fd189d7475f4c">YUV444</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a481e7a6945eb9f23e87f2de780b2e164">YUYV422</a>.</p>
20543
Jenkins514be652019-02-28 12:25:18 +000020544<p class="reference">Referenced by <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>, <a class="el" href="_c_l_color_convert_kernel_8cpp_source.xhtml#l00048">CLColorConvertKernel::configure()</a>, <a class="el" href="_c_l_channel_combine_kernel_8cpp_source.xhtml#l00049">CLChannelCombineKernel::configure()</a>, and <a class="el" href="_validate_8h_source.xhtml#l00623">error_on_format_not_in()</a>.</p>
20545
Anthony Barbier871448e2017-03-24 14:54:29 +000020546</div>
20547</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020548<a id="a291164a04581bf953aa65ae87cc201a2"></a>
20549<h2 class="memtitle"><span class="permalink"><a href="#a291164a04581bf953aa65ae87cc201a2">&#9670;&nbsp;</a></span>string_from_gemmlowp_output_stage()</h2>
20550
Anthony Barbier871448e2017-03-24 14:54:29 +000020551<div class="memitem">
20552<div class="memproto">
20553 <table class="memname">
20554 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000020555 <td class="memname">const std::string &amp; string_from_gemmlowp_output_stage </td>
20556 <td>(</td>
20557 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864">GEMMLowpOutputStageType</a>&#160;</td>
20558 <td class="paramname"><em>output_stage</em></td><td>)</td>
20559 <td></td>
20560 </tr>
20561 </table>
20562</div><div class="memdoc">
20563
20564<p>Translates a given GEMMLowp output stage to a string. </p>
20565<dl class="params"><dt>Parameters</dt><dd>
20566 <table class="params">
20567 <tr><td class="paramdir">[in]</td><td class="paramname">output_stage</td><td><a class="el" href="structarm__compute_1_1_g_e_m_m_lowp_output_stage_info.xhtml">GEMMLowpOutputStageInfo</a> to be translated to string.</td></tr>
20568 </table>
20569 </dd>
20570</dl>
20571<dl class="section return"><dt>Returns</dt><dd>The string describing the GEMMLowp output stage </dd></dl>
20572
Jenkins514be652019-02-28 12:25:18 +000020573<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00260">260</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
20574<div class="fragment"><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;{</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keyword">static</span> std::map&lt;GEMMLowpOutputStageType, const std::string&gt; output_stage_map =</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; {</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; { GEMMLowpOutputStageType::NONE, <span class="stringliteral">&quot;&quot;</span> },</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; { GEMMLowpOutputStageType::QUANTIZE_DOWN, <span class="stringliteral">&quot;quantize_down&quot;</span> },</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; { GEMMLowpOutputStageType::QUANTIZE_DOWN_FIXEDPOINT, <span class="stringliteral">&quot;quantize_down_fixedpoint&quot;</span> },</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; { GEMMLowpOutputStageType::QUANTIZE_DOWN_FLOAT, <span class="stringliteral">&quot;quantize_down_float&quot;</span> }</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; };</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keywordflow">return</span> output_stage_map[output_stage];</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000020575<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab50339a10e1de285ac99d4c3990b8693">NONE</a>, <a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864a079e2ddc95b344b5cb0188bed9a80d8b">QUANTIZE_DOWN</a>, <a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864ab300cae200f67712c1eb9234e28158ca">QUANTIZE_DOWN_FIXEDPOINT</a>, and <a class="el" href="namespacearm__compute.xhtml#a5558e2cc22f7f4771653d992c8ad8864aad664ac5008f135e38afeb391e524f9c">QUANTIZE_DOWN_FLOAT</a>.</p>
20576
Jenkins514be652019-02-28 12:25:18 +000020577<p class="reference">Referenced by <a class="el" href="_c_l_g_e_m_m_lowp_offset_contribution_output_stage_kernel_8cpp_source.xhtml#l00161">CLGEMMLowpOffsetContributionOutputStageKernel::configure()</a>.</p>
20578
Jenkinsb9abeae2018-11-22 11:58:08 +000020579</div>
20580</div>
20581<a id="a3e4a3ad379526db61e1ebf469b455f83"></a>
20582<h2 class="memtitle"><span class="permalink"><a href="#a3e4a3ad379526db61e1ebf469b455f83">&#9670;&nbsp;</a></span>string_from_interpolation_policy()</h2>
20583
20584<div class="memitem">
20585<div class="memproto">
20586 <table class="memname">
20587 <tr>
20588 <td class="memname">const std::string &amp; string_from_interpolation_policy </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020589 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020590 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020591 <td class="paramname"><em>policy</em></td><td>)</td>
20592 <td></td>
20593 </tr>
20594 </table>
20595</div><div class="memdoc">
20596
20597<p>Translates a given interpolation policy to a string. </p>
20598<dl class="params"><dt>Parameters</dt><dd>
20599 <table class="params">
20600 <tr><td class="paramdir">[in]</td><td class="paramname">policy</td><td><a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> to be translated to string.</td></tr>
20601 </table>
20602 </dd>
20603</dl>
20604<dl class="section return"><dt>Returns</dt><dd>The string describing the interpolation policy. </dd></dl>
20605
Jenkins514be652019-02-28 12:25:18 +000020606<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00212">212</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
20607<div class="fragment"><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;{</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keyword">static</span> std::map&lt;InterpolationPolicy, const std::string&gt; interpolation_policy_map =</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; {</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; { InterpolationPolicy::AREA, <span class="stringliteral">&quot;AREA&quot;</span> },</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; { InterpolationPolicy::BILINEAR, <span class="stringliteral">&quot;BILINEAR&quot;</span> },</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; { InterpolationPolicy::NEAREST_NEIGHBOR, <span class="stringliteral">&quot;NEAREST_NEIGHBOUR&quot;</span> },</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; };</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">return</span> interpolation_policy_map[<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">policy</a>];</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad986b73e9d5f47a623a9b6d773c25e34"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">arm_compute::test::validation::policy</a></div><div class="ttdeci">policy</div><div class="ttdef"><b>Definition:</b> <a href="_cast_8cpp_source.xhtml#l00169">Cast.cpp:169</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020608</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000020609<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a639aaa22a784d5e5cb03a522267e79c4">AREA</a>, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9aad6fddf718ad19b063e02fdd7e8e3e65">BILINEAR</a>, <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9a7f5ccbc3d30c2cd3fd04d567946cbde2">NEAREST_NEIGHBOR</a>, and <a class="el" href="_cast_8cpp_source.xhtml#l00169">arm_compute::test::validation::policy</a>.</p>
20610
20611<p class="reference">Referenced by <a class="el" href="_c_l_warp_perspective_kernel_8cpp_source.xhtml#l00061">CLWarpPerspectiveKernel::configure()</a>, <a class="el" href="_c_l_warp_affine_kernel_8cpp_source.xhtml#l00061">CLWarpAffineKernel::configure()</a>, <a class="el" href="_g_c_scale_kernel_8cpp_source.xhtml#l00047">GCScaleKernel::configure()</a>, <a class="el" href="_c_l_scale_kernel_8cpp_source.xhtml#l00161">CLScaleKernel::configure()</a>, and <a class="el" href="_c_l_remap_kernel_8cpp_source.xhtml#l00050">CLRemapKernel::configure()</a>.</p>
20612
Anthony Barbier871448e2017-03-24 14:54:29 +000020613</div>
20614</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020615<a id="a067481a9a245a2ee831a650e72a377ce"></a>
20616<h2 class="memtitle"><span class="permalink"><a href="#a067481a9a245a2ee831a650e72a377ce">&#9670;&nbsp;</a></span>string_from_matrix_pattern()</h2>
20617
Anthony Barbier871448e2017-03-24 14:54:29 +000020618<div class="memitem">
20619<div class="memproto">
20620 <table class="memname">
20621 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000020622 <td class="memname">const std::string &amp; string_from_matrix_pattern </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020623 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020624 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020625 <td class="paramname"><em>pattern</em></td><td>)</td>
20626 <td></td>
20627 </tr>
20628 </table>
20629</div><div class="memdoc">
20630
20631<p>Convert a matrix pattern into a string. </p>
20632<dl class="params"><dt>Parameters</dt><dd>
20633 <table class="params">
20634 <tr><td class="paramdir">[in]</td><td class="paramname">pattern</td><td><a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a> to be translated to string.</td></tr>
20635 </table>
20636 </dd>
20637</dl>
20638<dl class="section return"><dt>Returns</dt><dd>The string describing the matrix pattern. </dd></dl>
20639
Jenkins514be652019-02-28 12:25:18 +000020640<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00187">187</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
20641<div class="fragment"><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;{</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keyword">static</span> std::map&lt;MatrixPattern, const std::string&gt; pattern_map =</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; {</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; { MatrixPattern::BOX, <span class="stringliteral">&quot;BOX&quot;</span> },</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; { MatrixPattern::CROSS, <span class="stringliteral">&quot;CROSS&quot;</span> },</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; { MatrixPattern::DISK, <span class="stringliteral">&quot;DISK&quot;</span> },</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; { MatrixPattern::OTHER, <span class="stringliteral">&quot;OTHER&quot;</span> },</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; };</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">return</span> pattern_map[pattern];</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000020642<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02ae657cce1913c857166b0475f18668ef5">BOX</a>, <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a04dd53a8e6c2306e9bbf944c1d6047f2">CROSS</a>, <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a290d4b81f4e2b47d86fd1b0170e9aab7">DISK</a>, and <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02a03570470bad94692ce93e32700d2e1cb">OTHER</a>.</p>
20643
Jenkins514be652019-02-28 12:25:18 +000020644<p class="reference">Referenced by <a class="el" href="_c_l_non_linear_filter_kernel_8cpp_source.xhtml#l00056">CLNonLinearFilterKernel::configure()</a>.</p>
20645
Anthony Barbier871448e2017-03-24 14:54:29 +000020646</div>
20647</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020648<a id="a99248d472f05dbf03ac613620f5acbbb"></a>
20649<h2 class="memtitle"><span class="permalink"><a href="#a99248d472f05dbf03ac613620f5acbbb">&#9670;&nbsp;</a></span>string_from_non_linear_filter_function()</h2>
20650
Anthony Barbier871448e2017-03-24 14:54:29 +000020651<div class="memitem">
20652<div class="memproto">
20653 <table class="memname">
20654 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000020655 <td class="memname">const std::string &amp; string_from_non_linear_filter_function </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020656 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020657 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a>&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000020658 <td class="paramname"><em>function</em></td><td>)</td>
20659 <td></td>
20660 </tr>
20661 </table>
20662</div><div class="memdoc">
20663
20664<p>Translates a given non linear function to a string. </p>
20665<dl class="params"><dt>Parameters</dt><dd>
20666 <table class="params">
20667 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td><a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a> to be translated to string.</td></tr>
20668 </table>
20669 </dd>
20670</dl>
20671<dl class="section return"><dt>Returns</dt><dd>The string describing the non linear function. </dd></dl>
20672
Jenkins514be652019-02-28 12:25:18 +000020673<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00200">200</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
20674<div class="fragment"><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;{</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keyword">static</span> std::map&lt;NonLinearFilterFunction, const std::string&gt; func_map =</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; {</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; { <a class="code" href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">NonLinearFilterFunction::MAX</a>, <span class="stringliteral">&quot;MAX&quot;</span> },</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; { NonLinearFilterFunction::MEDIAN, <span class="stringliteral">&quot;MEDIAN&quot;</span> },</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; { <a class="code" href="elementwise__operation_8cl.xhtml#a74e75242132eaabbc1c512488a135926">NonLinearFilterFunction::MIN</a>, <span class="stringliteral">&quot;MIN&quot;</span> },</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; };</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordflow">return</span> func_map[<span class="keyword">function</span>];</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;}</div><div class="ttc" id="elementwise__operation_8cl_xhtml_a74e75242132eaabbc1c512488a135926"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#a74e75242132eaabbc1c512488a135926">MIN</a></div><div class="ttdeci">#define MIN(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00037">elementwise_operation.cl:37</a></div></div>
20675<div class="ttc" id="elementwise__operation_8cl_xhtml_aacc3ee1a7f283f8ef65cea31f4436a95"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">MAX</a></div><div class="ttdeci">#define MAX(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00036">elementwise_operation.cl:36</a></div></div>
20676</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000020677<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>, <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a8ab0c3a037e882577dec378985477074">MEDIAN</a>, and <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858ace31e2a082d17e038fcc6e3006166653">MIN</a>.</p>
20678
Jenkins514be652019-02-28 12:25:18 +000020679<p class="reference">Referenced by <a class="el" href="_c_l_non_linear_filter_kernel_8cpp_source.xhtml#l00056">CLNonLinearFilterKernel::configure()</a>.</p>
20680
Anthony Barbierdbdab852017-06-23 15:42:00 +010020681</div>
20682</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020683<a id="a0569839ee85ad0e35edaaf3b4c80d706"></a>
20684<h2 class="memtitle"><span class="permalink"><a href="#a0569839ee85ad0e35edaaf3b4c80d706">&#9670;&nbsp;</a></span>string_from_norm_type()</h2>
20685
Anthony Barbierdbdab852017-06-23 15:42:00 +010020686<div class="memitem">
20687<div class="memproto">
20688 <table class="memname">
20689 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000020690 <td class="memname">const std::string &amp; string_from_norm_type </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020691 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020692 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">NormType</a>&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020693 <td class="paramname"><em>type</em></td><td>)</td>
20694 <td></td>
20695 </tr>
20696 </table>
20697</div><div class="memdoc">
20698
20699<p>Translates a given normalization type to a string. </p>
20700<dl class="params"><dt>Parameters</dt><dd>
20701 <table class="params">
20702 <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td><a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">NormType</a> to be translated to string.</td></tr>
20703 </table>
20704 </dd>
20705</dl>
20706<dl class="section return"><dt>Returns</dt><dd>The string describing the normalization type. </dd></dl>
20707
Jenkins514be652019-02-28 12:25:18 +000020708<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00236">236</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
20709<div class="fragment"><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;{</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keyword">static</span> std::map&lt;NormType, const std::string&gt; norm_type_map =</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; {</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; { NormType::IN_MAP_1D, <span class="stringliteral">&quot;IN_MAP_1D&quot;</span> },</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; { NormType::IN_MAP_2D, <span class="stringliteral">&quot;IN_MAP_2D&quot;</span> },</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; { NormType::CROSS_MAP, <span class="stringliteral">&quot;CROSS_MAP&quot;</span> },</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; };</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">return</span> norm_type_map[type];</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000020710<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa980fef040549733973683b1a868f96e5">CROSS_MAP</a>, <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caaca2475ab7883ebb9f125241141896190">IN_MAP_1D</a>, and <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59caa6ff8bd96743aae9fd283cd822b84278e">IN_MAP_2D</a>.</p>
20711
Kaizen8938bd32017-09-28 14:38:23 +010020712</div>
20713</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020714<a id="ad6eaf2181f8a8c418acaf3af76239997"></a>
20715<h2 class="memtitle"><span class="permalink"><a href="#ad6eaf2181f8a8c418acaf3af76239997">&#9670;&nbsp;</a></span>string_from_pixel_value()</h2>
20716
Kaizen8938bd32017-09-28 14:38:23 +010020717<div class="memitem">
20718<div class="memproto">
20719 <table class="memname">
20720 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000020721 <td class="memname">std::string string_from_pixel_value </td>
20722 <td>(</td>
20723 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_pixel_value.xhtml">PixelValue</a> &amp;&#160;</td>
20724 <td class="paramname"><em>value</em>, </td>
20725 </tr>
20726 <tr>
20727 <td class="paramkey"></td>
20728 <td></td>
20729 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td>
20730 <td class="paramname"><em>data_type</em>&#160;</td>
20731 </tr>
20732 <tr>
20733 <td></td>
20734 <td>)</td>
20735 <td></td><td></td>
20736 </tr>
20737 </table>
20738</div><div class="memdoc">
20739
Jenkins514be652019-02-28 12:25:18 +000020740<p>Convert a <a class="el" href="classarm__compute_1_1_pixel_value.xhtml" title="Class describing the value of a pixel for any image format.">PixelValue</a> to a string, represented through the specific data type. </p>
Jenkinsb9abeae2018-11-22 11:58:08 +000020741<dl class="params"><dt>Parameters</dt><dd>
20742 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000020743 <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The <a class="el" href="classarm__compute_1_1_pixel_value.xhtml" title="Class describing the value of a pixel for any image format.">PixelValue</a> to convert </td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000020744 <tr><td class="paramdir">[in]</td><td class="paramname">data_type</td><td>The type to be used to convert the <code>value</code> </td></tr>
20745 </table>
20746 </dd>
20747</dl>
Jenkins514be652019-02-28 12:25:18 +000020748<dl class="section return"><dt>Returns</dt><dd>String representation of the <a class="el" href="classarm__compute_1_1_pixel_value.xhtml" title="Class describing the value of a pixel for any image format.">PixelValue</a> through the given data type. </dd></dl>
Jenkinsb9abeae2018-11-22 11:58:08 +000020749
Jenkins514be652019-02-28 12:25:18 +000020750<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00273">273</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
20751<div class="fragment"><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;{</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; std::stringstream ss;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; std::string converted_string;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordflow">switch</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>)</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; {</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">case</span> DataType::QASYMM8:</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="comment">// Needs conversion to 32 bit, otherwise interpreted as ASCII values</span></div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; ss &lt;&lt; uint32_t(value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;uint8_t&gt;());</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; converted_string = ss.str();</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="comment">// Needs conversion to 32 bit, otherwise interpreted as ASCII values</span></div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; ss &lt;&lt; int32_t(value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;int8_t&gt;());</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; converted_string = ss.str();</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; ss &lt;&lt; value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;uint16_t&gt;();</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; converted_string = ss.str();</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; ss &lt;&lt; value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;int16_t&gt;();</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; converted_string = ss.str();</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; ss &lt;&lt; value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;uint32_t&gt;();</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; converted_string = ss.str();</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; ss &lt;&lt; value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;int32_t&gt;();</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; converted_string = ss.str();</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; converted_string = <a class="code" href="namespacearm__compute.xhtml#a9cd394c15b73f79ca1d98f5328064be2">float_to_string_with_full_precision</a>(value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;<span class="keywordtype">float</span>&gt;());</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; static_assert(<span class="keyword">sizeof</span>(<a class="code" href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">half</a>) == 2, <span class="stringliteral">&quot;Half must be 16 bit&quot;</span>);</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; ss &lt;&lt; value.<a class="code" href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">get</a>&lt;<a class="code" href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">half</a>&gt;();</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; converted_string = ss.str();</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;Not handled&quot;</span>);</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; }</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">return</span> converted_string;</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error.</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00261">Error.h:261</a></div></div>
20752<div class="ttc" id="classarm__compute_1_1_pixel_value_xhtml_a66c4c1f8b1962d71162d7ac0b3ef65bc"><div class="ttname"><a href="classarm__compute_1_1_pixel_value.xhtml#a66c4c1f8b1962d71162d7ac0b3ef65bc">arm_compute::PixelValue::get</a></div><div class="ttdeci">void get(uint8_t &amp;v) const</div><div class="ttdoc">Interpret the pixel value as a U8.</div><div class="ttdef"><b>Definition:</b> <a href="_pixel_value_8h_source.xhtml#l00209">PixelValue.h:209</a></div></div>
20753<div class="ttc" id="namespacearm__compute_xhtml_a73e2825fd61d349c5ca2f5313e3c8ea1"><div class="ttname"><a href="namespacearm__compute.xhtml#a73e2825fd61d349c5ca2f5313e3c8ea1">arm_compute::half</a></div><div class="ttdeci">half_float::half half</div><div class="ttdoc">16-bit floating point type</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_types_8h_source.xhtml#l00044">Types.h:44</a></div></div>
20754<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
20755<div class="ttc" id="namespacearm__compute_xhtml_a9cd394c15b73f79ca1d98f5328064be2"><div class="ttname"><a href="namespacearm__compute.xhtml#a9cd394c15b73f79ca1d98f5328064be2">arm_compute::float_to_string_with_full_precision</a></div><div class="ttdeci">std::string float_to_string_with_full_precision(float val)</div><div class="ttdoc">Create a string with the float in full precision.</div><div class="ttdef"><b>Definition:</b> <a href="arm__compute_2core_2_utils_8h_source.xhtml#l01031">Utils.h:1031</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020756</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000020757<p class="reference">Referenced by <a class="el" href="_c_l_memset_kernel_8cpp_source.xhtml#l00042">CLMemsetKernel::configure()</a>.</p>
20758
Jenkinsb9abeae2018-11-22 11:58:08 +000020759</div>
20760</div>
20761<a id="a1040394085749e4d02a0d4350493ec94"></a>
20762<h2 class="memtitle"><span class="permalink"><a href="#a1040394085749e4d02a0d4350493ec94">&#9670;&nbsp;</a></span>string_from_pooling_type()</h2>
20763
20764<div class="memitem">
20765<div class="memproto">
20766 <table class="memname">
20767 <tr>
20768 <td class="memname">const std::string &amp; string_from_pooling_type </td>
Kaizen8938bd32017-09-28 14:38:23 +010020769 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020770 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">PoolingType</a>&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010020771 <td class="paramname"><em>type</em></td><td>)</td>
20772 <td></td>
20773 </tr>
20774 </table>
20775</div><div class="memdoc">
20776
20777<p>Translates a given pooling type to a string. </p>
20778<dl class="params"><dt>Parameters</dt><dd>
20779 <table class="params">
20780 <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td><a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">PoolingType</a> to be translated to string.</td></tr>
20781 </table>
20782 </dd>
20783</dl>
20784<dl class="section return"><dt>Returns</dt><dd>The string describing the pooling type. </dd></dl>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020785
Jenkins514be652019-02-28 12:25:18 +000020786<p class="definition">Definition at line <a class="el" href="src_2core_2_utils_8cpp_source.xhtml#l00248">248</a> of file <a class="el" href="src_2core_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
20787<div class="fragment"><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;{</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keyword">static</span> std::map&lt;PoolingType, const std::string&gt; pool_type_map =</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; {</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; { <a class="code" href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">PoolingType::MAX</a>, <span class="stringliteral">&quot;MAX&quot;</span> },</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; { PoolingType::AVG, <span class="stringliteral">&quot;AVG&quot;</span> },</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; { PoolingType::L2, <span class="stringliteral">&quot;L2&quot;</span> },</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; };</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">return</span> pool_type_map[type];</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;}</div><div class="ttc" id="elementwise__operation_8cl_xhtml_aacc3ee1a7f283f8ef65cea31f4436a95"><div class="ttname"><a href="elementwise__operation_8cl.xhtml#aacc3ee1a7f283f8ef65cea31f4436a95">MAX</a></div><div class="ttdeci">#define MAX(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="elementwise__operation_8cl_source.xhtml#l00036">elementwise_operation.cl:36</a></div></div>
20788</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000020789<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93afcefd647d6a866603c627b11347c707a">AVG</a>, <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93a7e6aa2d53f6ee2b1a34b017fa403cb76">L2</a>, and <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858a26a4b44a837bf97b972628509912b4a5">MAX</a>.</p>
20790
Jenkins514be652019-02-28 12:25:18 +000020791<p class="reference">Referenced by <a class="el" href="_g_c_pooling_layer_kernel_8cpp_source.xhtml#l00226">GCPoolingLayerKernel::configure()</a>, and <a class="el" href="_c_l_pooling_layer_kernel_8cpp_source.xhtml#l00185">CLPoolingLayerKernel::configure()</a>.</p>
20792
Anthony Barbierdbdab852017-06-23 15:42:00 +010020793</div>
20794</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020795<a id="a192c7cf59b34ae925eb1c8c315a06225"></a>
20796<h2 class="memtitle"><span class="permalink"><a href="#a192c7cf59b34ae925eb1c8c315a06225">&#9670;&nbsp;</a></span>string_from_scheduler_type()</h2>
20797
Anthony Barbierdbdab852017-06-23 15:42:00 +010020798<div class="memitem">
20799<div class="memproto">
20800 <table class="memname">
20801 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000020802 <td class="memname">const std::string &amp; string_from_scheduler_type </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020803 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020804 <td class="paramtype"><a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7">Scheduler::Type</a>&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020805 <td class="paramname"><em>t</em></td><td>)</td>
20806 <td></td>
20807 </tr>
20808 </table>
20809</div><div class="memdoc">
20810
Jenkins514be652019-02-28 12:25:18 +000020811<p>Convert a <a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7" title="Scheduler type.">Scheduler::Type</a> into a string. </p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020812<dl class="params"><dt>Parameters</dt><dd>
20813 <table class="params">
20814 <tr><td class="paramdir">[in]</td><td class="paramname">t</td><td><a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7">Scheduler::Type</a> to be translated to string.</td></tr>
20815 </table>
20816 </dd>
20817</dl>
20818<dl class="section return"><dt>Returns</dt><dd>The string describing the scheduler type. </dd></dl>
20819
Jenkinsb9abeae2018-11-22 11:58:08 +000020820<p class="definition">Definition at line <a class="el" href="src_2runtime_2_utils_8cpp_source.xhtml#l00035">35</a> of file <a class="el" href="src_2runtime_2_utils_8cpp_source.xhtml">Utils.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000020821<div class="fragment"><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;{</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keyword">static</span> std::map&lt;Scheduler::Type, const std::string&gt; scheduler_type_map =</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; {</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; { Scheduler::Type::ST, <span class="stringliteral">&quot;Single Thread&quot;</span> },</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; { Scheduler::Type::CPP, <span class="stringliteral">&quot;C++11 Threads&quot;</span> },</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; { Scheduler::Type::OMP, <span class="stringliteral">&quot;OpenMP Threads&quot;</span> },</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; { Scheduler::Type::CUSTOM, <span class="stringliteral">&quot;Custom&quot;</span> }</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; };</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordflow">return</span> scheduler_type_map[t];</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000020822<p class="reference">References <a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7a4c162442ef22c58f6f1e330e6b692c7e">Scheduler::CPP</a>, <a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7a72baef04098f035e8a320b03ad197818">Scheduler::CUSTOM</a>, <a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7a6a1f3212967c1a0ff6774f09de77330f">Scheduler::OMP</a>, and <a class="el" href="classarm__compute_1_1_scheduler.xhtml#a1d1cfd8ffb84e947f82999c682b666a7aec8e57d71f07e31203035548b79d03c8">Scheduler::ST</a>.</p>
20823
Anthony Barbierdbdab852017-06-23 15:42:00 +010020824</div>
20825</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020826<a id="af7795707992825c309fe846740dc8cf8"></a>
20827<h2 class="memtitle"><span class="permalink"><a href="#af7795707992825c309fe846740dc8cf8">&#9670;&nbsp;</a></span>string_from_target()</h2>
20828
Anthony Barbierdbdab852017-06-23 15:42:00 +010020829<div class="memitem">
20830<div class="memproto">
20831 <table class="memname">
20832 <tr>
Jenkinsb9abeae2018-11-22 11:58:08 +000020833 <td class="memname">const std::string &amp; string_from_target </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020834 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020835 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a>&#160;</td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010020836 <td class="paramname"><em>target</em></td><td>)</td>
20837 <td></td>
20838 </tr>
20839 </table>
20840</div><div class="memdoc">
20841
20842<p>Translates a given gpu device target to string. </p>
20843<dl class="params"><dt>Parameters</dt><dd>
20844 <table class="params">
20845 <tr><td class="paramdir">[in]</td><td class="paramname">target</td><td>Given gpu target.</td></tr>
20846 </table>
20847 </dd>
20848</dl>
20849<dl class="section return"><dt>Returns</dt><dd>The string describing the target. </dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000020850
Jenkinsb9abeae2018-11-22 11:58:08 +000020851<p class="definition">Definition at line <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml#l00103">103</a> of file <a class="el" href="src_2core_2_g_p_u_target_8cpp_source.xhtml">GPUTarget.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000020852<div class="fragment"><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;{</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">static</span> std::map&lt;GPUTarget, const std::string&gt; gpu_target_map =</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; {</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; { GPUTarget::MIDGARD, <span class="stringliteral">&quot;midgard&quot;</span> },</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; { GPUTarget::BIFROST, <span class="stringliteral">&quot;bifrost&quot;</span> },</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; { GPUTarget::T600, <span class="stringliteral">&quot;t600&quot;</span> },</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; { GPUTarget::T700, <span class="stringliteral">&quot;t700&quot;</span> },</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; { GPUTarget::T800, <span class="stringliteral">&quot;t800&quot;</span> },</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; { GPUTarget::G71, <span class="stringliteral">&quot;g71&quot;</span> },</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; { GPUTarget::G72, <span class="stringliteral">&quot;g72&quot;</span> },</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; { GPUTarget::G51, <span class="stringliteral">&quot;g51&quot;</span> },</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; { GPUTarget::G51BIG, <span class="stringliteral">&quot;g51big&quot;</span> },</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; { GPUTarget::G51LIT, <span class="stringliteral">&quot;g51lit&quot;</span> },</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; { GPUTarget::G52, <span class="stringliteral">&quot;g52&quot;</span> },</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; { GPUTarget::G52LIT, <span class="stringliteral">&quot;g52lit&quot;</span> },</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; { GPUTarget::G76, <span class="stringliteral">&quot;g76&quot;</span> },</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; { GPUTarget::TTRX, <span class="stringliteral">&quot;ttrx&quot;</span> },</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; { GPUTarget::TBOX, <span class="stringliteral">&quot;tbox&quot;</span> }</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; };</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">return</span> gpu_target_map[target];</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000020853<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa78cc0fd1cab24af0fad71dc4c256f8e">BIFROST</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a0a2d4856ae75ec5a7b78851f6e5875f0">G51</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afc99dd3bc5650c5116886eefd3d18988">G51BIG</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a9d0acedfece9dfaf5cc3e63bfbeecf2f">G51LIT</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a3731064380218cfc2b9613d2b6293cfb">G52</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a4b3e9b93a7e833f9d7ab01d4cf9f7837">G52LIT</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a79515d904f73cf1711207de1b2aa6ac6">G71</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab2ac2aea42c95ccc70260ceeb02ec4fc">G72</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aa46ce37da51477a1af33a8810e0ed04d">G76</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3afa362f4daec88442a387ff7cda411a38">MIDGARD</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a6855a4342969d2b58c96d95385d6e673">T600</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a664a94fa85b127eabc7bed25091843fd">T700</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3aae926a8537ded0221329aa9a89b84048">T800</a>, <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3a53e518b6393904e797819c7a941f9ddc">TBOX</a>, and <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3ab39f7e42574174cf9ee7da726bdb13b4">TTRX</a>.</p>
20854
Jenkins514be652019-02-28 12:25:18 +000020855<p class="reference">Referenced by <a class="el" href="_c_l_g_e_m_m_lowp_matrix_multiply_kernel_8cpp_source.xhtml#l00234">CLGEMMLowpMatrixMultiplyKernel::configure()</a>.</p>
20856
Anthony Barbier871448e2017-03-24 14:54:29 +000020857</div>
20858</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020859<a id="ab75d8ff29ba9b398d5740b3efd156e71"></a>
Jenkins514be652019-02-28 12:25:18 +000020860<h2 class="memtitle"><span class="permalink"><a href="#ab75d8ff29ba9b398d5740b3efd156e71">&#9670;&nbsp;</a></span>to_string() <span class="overload">[1/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000020861
Jenkins52ba29e2018-08-29 15:32:11 +000020862<div class="memitem">
20863<div class="memproto">
20864<table class="mlabels">
20865 <tr>
20866 <td class="mlabels-left">
20867 <table class="memname">
20868 <tr>
20869 <td class="memname">std::string arm_compute::to_string </td>
20870 <td>(</td>
20871 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ae46abc5ecac309cbece5c06cb80daaf7">arm_compute::GradientDimension</a> &amp;&#160;</td>
20872 <td class="paramname"><em>type</em></td><td>)</td>
20873 <td></td>
20874 </tr>
20875 </table>
20876 </td>
20877 <td class="mlabels-right">
20878<span class="mlabels"><span class="mlabel">inline</span></span> </td>
20879 </tr>
20880</table>
20881</div><div class="memdoc">
20882
20883<p>Formatted output of the GradientDimension type. </p>
20884<dl class="params"><dt>Parameters</dt><dd>
20885 <table class="params">
20886 <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>Type to output</td></tr>
20887 </table>
20888 </dd>
20889</dl>
20890<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
20891
Jenkinsb9abeae2018-11-22 11:58:08 +000020892<p class="definition">Definition at line <a class="el" href="tests_2_type_printer_8h_source.xhtml#l00064">64</a> of file <a class="el" href="tests_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins52ba29e2018-08-29 15:32:11 +000020893<div class="fragment"><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;{</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; std::stringstream str;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; str &lt;&lt; type;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;}</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000020894<p class="reference">Referenced by <a class="el" href="_function_helpers_8h_source.xhtml#l00133">arm_compute::graph::backends::detail::create_batch_normalization_layer()</a>, <a class="el" href="_function_helpers_8h_source.xhtml#l00296">arm_compute::graph::backends::detail::create_convolution_layer()</a>, <a class="el" href="_g_c_functions_factory_8cpp_source.xhtml#l00109">arm_compute::graph::backends::detail::create_convolution_layer&lt; GCConvolutionLayerFunctions, GCTargetInfo &gt;()</a>, <a class="el" href="_n_e_function_factory_8cpp_source.xhtml#l00083">arm_compute::graph::backends::detail::create_convolution_layer&lt; NEConvolutionLayerFunctions, NETargetInfo &gt;()</a>, <a class="el" href="_function_helpers_8h_source.xhtml#l00431">arm_compute::graph::backends::detail::create_depthwise_convolution_layer()</a>, <a class="el" href="_g_c_functions_factory_8cpp_source.xhtml#l00162">arm_compute::graph::backends::detail::create_depthwise_convolution_layer&lt; GCDepthwiseConvolutionLayerFunctions, GCTargetInfo &gt;()</a>, <a class="el" href="_initializer_list_dataset_8h_source.xhtml#l00085">InitializerListDataset&lt; T &gt;::iterator::description()</a>, <a class="el" href="main_8cpp_source.xhtml#l00090">main()</a>, <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00051">to_string_if_not_null()</a>, and <a class="el" href="_dot_graph_printer_8cpp_source.xhtml#l00043">DotGraphVisitor::visit()</a>.</p>
20895
Jenkins52ba29e2018-08-29 15:32:11 +000020896</div>
20897</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020898<a id="aabe16be22edb41656e66ed9eae3b69e6"></a>
Jenkins514be652019-02-28 12:25:18 +000020899<h2 class="memtitle"><span class="permalink"><a href="#aabe16be22edb41656e66ed9eae3b69e6">&#9670;&nbsp;</a></span>to_string() <span class="overload">[2/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000020900
Kaizen8938bd32017-09-28 14:38:23 +010020901<div class="memitem">
20902<div class="memproto">
20903<table class="mlabels">
20904 <tr>
20905 <td class="mlabels-left">
20906 <table class="memname">
20907 <tr>
20908 <td class="memname">std::string arm_compute::to_string </td>
20909 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020910 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#adf2ced65e536375a1c96425d9fced858">NonLinearFilterFunction</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010020911 <td class="paramname"><em>function</em></td><td>)</td>
20912 <td></td>
20913 </tr>
20914 </table>
20915 </td>
20916 <td class="mlabels-right">
20917<span class="mlabels"><span class="mlabel">inline</span></span> </td>
20918 </tr>
20919</table>
20920</div><div class="memdoc">
20921
Jenkinsb3a371b2018-05-23 11:36:53 +010020922<p>Formatted output of the NonLinearFilterFunction type. </p>
20923<dl class="params"><dt>Parameters</dt><dd>
20924 <table class="params">
20925 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Type to output.</td></tr>
20926 </table>
20927 </dd>
20928</dl>
20929<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010020930
Jenkinsb9abeae2018-11-22 11:58:08 +000020931<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00118">118</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins52ba29e2018-08-29 15:32:11 +000020932<div class="fragment"><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;{</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; std::stringstream str;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; str &lt;&lt; <span class="keyword">function</span>;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;}</div></div><!-- fragment -->
Kaizen8938bd32017-09-28 14:38:23 +010020933</div>
20934</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020935<a id="a27f0ebddef1b83e0ac31c7a7a23a8d36"></a>
Jenkins514be652019-02-28 12:25:18 +000020936<h2 class="memtitle"><span class="permalink"><a href="#a27f0ebddef1b83e0ac31c7a7a23a8d36">&#9670;&nbsp;</a></span>to_string() <span class="overload">[3/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000020937
Kaizen8938bd32017-09-28 14:38:23 +010020938<div class="memitem">
20939<div class="memproto">
20940<table class="mlabels">
20941 <tr>
20942 <td class="mlabels-left">
20943 <table class="memname">
20944 <tr>
20945 <td class="memname">std::string arm_compute::to_string </td>
20946 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020947 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#afdda916edc7502967bbec17ea3c06c02">MatrixPattern</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010020948 <td class="paramname"><em>pattern</em></td><td>)</td>
20949 <td></td>
20950 </tr>
20951 </table>
20952 </td>
20953 <td class="mlabels-right">
20954<span class="mlabels"><span class="mlabel">inline</span></span> </td>
20955 </tr>
20956</table>
20957</div><div class="memdoc">
20958
Jenkinsb3a371b2018-05-23 11:36:53 +010020959<p>Formatted output of the MatrixPattern type. </p>
20960<dl class="params"><dt>Parameters</dt><dd>
20961 <table class="params">
20962 <tr><td class="paramdir">[in]</td><td class="paramname">pattern</td><td>Type to output.</td></tr>
20963 </table>
20964 </dd>
20965</dl>
20966<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020967
Jenkinsb9abeae2018-11-22 11:58:08 +000020968<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00161">161</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins52ba29e2018-08-29 15:32:11 +000020969<div class="fragment"><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;{</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; std::stringstream str;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; str &lt;&lt; pattern;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;}</div></div><!-- fragment -->
Anthony Barbier8140e1e2017-12-14 23:48:46 +000020970</div>
20971</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000020972<a id="ac7e5dca61375f7583860ab07d951a323"></a>
Jenkins514be652019-02-28 12:25:18 +000020973<h2 class="memtitle"><span class="permalink"><a href="#ac7e5dca61375f7583860ab07d951a323">&#9670;&nbsp;</a></span>to_string() <span class="overload">[4/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000020974
20975<div class="memitem">
20976<div class="memproto">
20977<table class="mlabels">
20978 <tr>
20979 <td class="mlabels-left">
20980 <table class="memname">
20981 <tr>
20982 <td class="memname">std::string arm_compute::to_string </td>
20983 <td>(</td>
20984 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_r_o_i_pooling_layer_info.xhtml">ROIPoolingLayerInfo</a> &amp;&#160;</td>
20985 <td class="paramname"><em>pool_info</em></td><td>)</td>
20986 <td></td>
20987 </tr>
20988 </table>
20989 </td>
20990 <td class="mlabels-right">
20991<span class="mlabels"><span class="mlabel">inline</span></span> </td>
20992 </tr>
20993</table>
20994</div><div class="memdoc">
20995
20996<p>Formatted output of the ROIPoolingInfo type. </p>
20997<dl class="params"><dt>Parameters</dt><dd>
20998 <table class="params">
20999 <tr><td class="paramdir">[in]</td><td class="paramname">pool_info</td><td>Type to output.</td></tr>
21000 </table>
21001 </dd>
21002</dl>
21003<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
21004
21005<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00229">229</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21006<div class="fragment"><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;{</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; std::stringstream str;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; str &lt;&lt; pool_info;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;}</div></div><!-- fragment -->
21007</div>
21008</div>
21009<a id="aadd27b86f0ff4fbb03ed673a549e91a8"></a>
Jenkins514be652019-02-28 12:25:18 +000021010<h2 class="memtitle"><span class="permalink"><a href="#aadd27b86f0ff4fbb03ed673a549e91a8">&#9670;&nbsp;</a></span>to_string() <span class="overload">[5/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021011
21012<div class="memitem">
21013<div class="memproto">
21014<table class="mlabels">
21015 <tr>
21016 <td class="mlabels-left">
21017 <table class="memname">
21018 <tr>
21019 <td class="memname">std::string arm_compute::to_string </td>
21020 <td>(</td>
21021 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml">BoundingBoxTransformInfo</a> &amp;&#160;</td>
21022 <td class="paramname"><em>bbox_info</em></td><td>)</td>
21023 <td></td>
21024 </tr>
21025 </table>
21026 </td>
21027 <td class="mlabels-right">
21028<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21029 </tr>
21030</table>
21031</div><div class="memdoc">
21032
Jenkins514be652019-02-28 12:25:18 +000021033<p>Formatted output of the <a class="el" href="classarm__compute_1_1_bounding_box_transform_info.xhtml" title="Bounding Box Transform information class.">BoundingBoxTransformInfo</a> type. </p>
Jenkinsb9abeae2018-11-22 11:58:08 +000021034<dl class="params"><dt>Parameters</dt><dd>
21035 <table class="params">
21036 <tr><td class="paramdir">[in]</td><td class="paramname">bbox_info</td><td>Type to output.</td></tr>
21037 </table>
21038 </dd>
21039</dl>
21040<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
21041
21042<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00257">257</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21043<div class="fragment"><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;{</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; std::stringstream str;</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; str &lt;&lt; bbox_info;</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;}</div></div><!-- fragment -->
21044</div>
21045</div>
21046<a id="a24bc4de5c636b56f9b59533fead920c2"></a>
Jenkins514be652019-02-28 12:25:18 +000021047<h2 class="memtitle"><span class="permalink"><a href="#a24bc4de5c636b56f9b59533fead920c2">&#9670;&nbsp;</a></span>to_string() <span class="overload">[6/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021048
21049<div class="memitem">
21050<div class="memproto">
21051<table class="mlabels">
21052 <tr>
21053 <td class="mlabels-left">
21054 <table class="memname">
21055 <tr>
21056 <td class="memname">std::string arm_compute::to_string </td>
21057 <td>(</td>
21058 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml">ComputeAnchorsInfo</a> &amp;&#160;</td>
21059 <td class="paramname"><em>anchors_info</em></td><td>)</td>
21060 <td></td>
21061 </tr>
21062 </table>
21063 </td>
21064 <td class="mlabels-right">
21065<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21066 </tr>
21067</table>
21068</div><div class="memdoc">
21069
Jenkins514be652019-02-28 12:25:18 +000021070<p>Formatted output of the <a class="el" href="classarm__compute_1_1_compute_anchors_info.xhtml" title="ComputeAnchors information class.">ComputeAnchorsInfo</a> type. </p>
Jenkinsb9abeae2018-11-22 11:58:08 +000021071<dl class="params"><dt>Parameters</dt><dd>
21072 <table class="params">
21073 <tr><td class="paramdir">[in]</td><td class="paramname">anchors_info</td><td>Type to output.</td></tr>
21074 </table>
21075 </dd>
21076</dl>
21077<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
21078
21079<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00283">283</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21080<div class="fragment"><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;{</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; std::stringstream str;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; str &lt;&lt; anchors_info;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;}</div></div><!-- fragment -->
21081</div>
21082</div>
21083<a id="aa597016c0aaa2990ed31b8aaa6f2ccc3"></a>
Jenkins514be652019-02-28 12:25:18 +000021084<h2 class="memtitle"><span class="permalink"><a href="#aa597016c0aaa2990ed31b8aaa6f2ccc3">&#9670;&nbsp;</a></span>to_string() <span class="overload">[7/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021085
21086<div class="memitem">
21087<div class="memproto">
21088<table class="mlabels">
21089 <tr>
21090 <td class="mlabels-left">
21091 <table class="memname">
21092 <tr>
21093 <td class="memname">std::string arm_compute::to_string </td>
21094 <td>(</td>
21095 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml">GenerateProposalsInfo</a> &amp;&#160;</td>
21096 <td class="paramname"><em>proposals_info</em></td><td>)</td>
21097 <td></td>
21098 </tr>
21099 </table>
21100 </td>
21101 <td class="mlabels-right">
21102<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21103 </tr>
21104</table>
21105</div><div class="memdoc">
21106
Jenkins514be652019-02-28 12:25:18 +000021107<p>Formatted output of the <a class="el" href="classarm__compute_1_1_generate_proposals_info.xhtml" title="Generate Proposals Information class.">GenerateProposalsInfo</a> type. </p>
Jenkinsb9abeae2018-11-22 11:58:08 +000021108<dl class="params"><dt>Parameters</dt><dd>
21109 <table class="params">
21110 <tr><td class="paramdir">[in]</td><td class="paramname">proposals_info</td><td>Type to output.</td></tr>
21111 </table>
21112 </dd>
21113</dl>
21114<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
21115
21116<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00309">309</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21117<div class="fragment"><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;{</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; std::stringstream str;</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; str &lt;&lt; proposals_info;</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;}</div></div><!-- fragment -->
21118</div>
21119</div>
21120<a id="ad9fd48b3c01116b217a684aaeaf8b24f"></a>
Jenkins514be652019-02-28 12:25:18 +000021121<h2 class="memtitle"><span class="permalink"><a href="#ad9fd48b3c01116b217a684aaeaf8b24f">&#9670;&nbsp;</a></span>to_string() <span class="overload">[8/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021122
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021123<div class="memitem">
21124<div class="memproto">
21125<table class="mlabels">
21126 <tr>
21127 <td class="mlabels-left">
21128 <table class="memname">
21129 <tr>
21130 <td class="memname">std::string arm_compute::to_string </td>
21131 <td>(</td>
21132 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> &amp;&#160;</td>
21133 <td class="paramname"><em>quantization_info</em></td><td>)</td>
21134 <td></td>
21135 </tr>
21136 </table>
21137 </td>
21138 <td class="mlabels-right">
21139<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21140 </tr>
21141</table>
21142</div><div class="memdoc">
21143
Jenkins514be652019-02-28 12:25:18 +000021144<p>Formatted output of the <a class="el" href="structarm__compute_1_1_quantization_info.xhtml" title="Quantization settings (used for QASYMM8 data type)">QuantizationInfo</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010021145<dl class="params"><dt>Parameters</dt><dd>
21146 <table class="params">
21147 <tr><td class="paramdir">[in]</td><td class="paramname">quantization_info</td><td>Type to output.</td></tr>
21148 </table>
21149 </dd>
21150</dl>
21151<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021152
Jenkinsb9abeae2018-11-22 11:58:08 +000021153<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00336">336</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21154<div class="fragment"><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160;{</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; std::stringstream str;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; str &lt;&lt; quantization_info;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;}</div></div><!-- fragment -->
Kaizen8938bd32017-09-28 14:38:23 +010021155</div>
21156</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021157<a id="a72626d2cca3922127c41526e37e9e623"></a>
Jenkins514be652019-02-28 12:25:18 +000021158<h2 class="memtitle"><span class="permalink"><a href="#a72626d2cca3922127c41526e37e9e623">&#9670;&nbsp;</a></span>to_string() <span class="overload">[9/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021159
Kaizen8938bd32017-09-28 14:38:23 +010021160<div class="memitem">
21161<div class="memproto">
21162<table class="mlabels">
21163 <tr>
21164 <td class="mlabels-left">
21165 <table class="memname">
21166 <tr>
21167 <td class="memname">std::string arm_compute::to_string </td>
21168 <td>(</td>
21169 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml">arm_compute::ActivationLayerInfo</a> &amp;&#160;</td>
21170 <td class="paramname"><em>info</em></td><td>)</td>
21171 <td></td>
21172 </tr>
21173 </table>
21174 </td>
21175 <td class="mlabels-right">
21176<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21177 </tr>
21178</table>
21179</div><div class="memdoc">
21180
Jenkinsb3a371b2018-05-23 11:36:53 +010021181<p>Formatted output of the activation function info type. </p>
21182<dl class="params"><dt>Parameters</dt><dd>
21183 <table class="params">
21184 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
21185 </table>
21186 </dd>
21187</dl>
21188<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010021189
Jenkinsb9abeae2018-11-22 11:58:08 +000021190<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00400">400</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000021191<div class="fragment"><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160;{</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; std::stringstream str;</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.enabled())</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; {</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.activation();</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; }</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010021192</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000021193<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
21194
Kaizen8938bd32017-09-28 14:38:23 +010021195</div>
21196</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021197<a id="a8a18c453150ab547c1add44b3ed3bc56"></a>
Jenkins514be652019-02-28 12:25:18 +000021198<h2 class="memtitle"><span class="permalink"><a href="#a8a18c453150ab547c1add44b3ed3bc56">&#9670;&nbsp;</a></span>to_string() <span class="overload">[10/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021199
Kaizen8938bd32017-09-28 14:38:23 +010021200<div class="memitem">
21201<div class="memproto">
21202<table class="mlabels">
21203 <tr>
21204 <td class="mlabels-left">
21205 <table class="memname">
21206 <tr>
21207 <td class="memname">std::string arm_compute::to_string </td>
21208 <td>(</td>
21209 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_activation_layer_info.xhtml#a56297e0f7b215eea46c818cb7528d9ea">arm_compute::ActivationLayerInfo::ActivationFunction</a> &amp;&#160;</td>
21210 <td class="paramname"><em>function</em></td><td>)</td>
21211 <td></td>
21212 </tr>
21213 </table>
21214 </td>
21215 <td class="mlabels-right">
21216<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21217 </tr>
21218</table>
21219</div><div class="memdoc">
21220
Jenkinsb3a371b2018-05-23 11:36:53 +010021221<p>Formatted output of the activation function type. </p>
21222<dl class="params"><dt>Parameters</dt><dd>
21223 <table class="params">
21224 <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>Type to output.</td></tr>
21225 </table>
21226 </dd>
21227</dl>
21228<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021229
Jenkinsb9abeae2018-11-22 11:58:08 +000021230<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00416">416</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21231<div class="fragment"><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;{</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; std::stringstream str;</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; str &lt;&lt; <span class="keyword">function</span>;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;}</div></div><!-- fragment -->
Kaizen8938bd32017-09-28 14:38:23 +010021232</div>
21233</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021234<a id="a45dd771bdecbafb975fd267c2ae320a7"></a>
Jenkins514be652019-02-28 12:25:18 +000021235<h2 class="memtitle"><span class="permalink"><a href="#a45dd771bdecbafb975fd267c2ae320a7">&#9670;&nbsp;</a></span>to_string() <span class="overload">[11/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021236
Kaizen8938bd32017-09-28 14:38:23 +010021237<div class="memitem">
21238<div class="memproto">
21239<table class="mlabels">
21240 <tr>
21241 <td class="mlabels-left">
21242 <table class="memname">
21243 <tr>
21244 <td class="memname">std::string arm_compute::to_string </td>
21245 <td>(</td>
21246 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">arm_compute::NormalizationLayerInfo</a> &amp;&#160;</td>
21247 <td class="paramname"><em>info</em></td><td>)</td>
21248 <td></td>
21249 </tr>
21250 </table>
21251 </td>
21252 <td class="mlabels-right">
21253<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21254 </tr>
21255</table>
21256</div><div class="memdoc">
21257
Jenkinsb3a371b2018-05-23 11:36:53 +010021258<p>Formatted output of <a class="el" href="classarm__compute_1_1_normalization_layer_info.xhtml">NormalizationLayerInfo</a>. </p>
21259<dl class="params"><dt>Parameters</dt><dd>
21260 <table class="params">
21261 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
21262 </table>
21263 </dd>
21264</dl>
21265<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010021266
Jenkinsb9abeae2018-11-22 11:58:08 +000021267<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00456">456</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000021268<div class="fragment"><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;{</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; std::stringstream str;</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.type() &lt;&lt; <span class="stringliteral">&quot;:NormSize=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.norm_size();</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021269</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000021270<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
21271
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021272</div>
21273</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021274<a id="a25dac68b6321b9e53027e79222a0eb7f"></a>
Jenkins514be652019-02-28 12:25:18 +000021275<h2 class="memtitle"><span class="permalink"><a href="#a25dac68b6321b9e53027e79222a0eb7f">&#9670;&nbsp;</a></span>to_string() <span class="overload">[12/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021276
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021277<div class="memitem">
21278<div class="memproto">
21279<table class="mlabels">
21280 <tr>
21281 <td class="mlabels-left">
21282 <table class="memname">
21283 <tr>
21284 <td class="memname">std::string arm_compute::to_string </td>
21285 <td>(</td>
21286 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a> &amp;&#160;</td>
21287 <td class="paramname"><em>rounding_policy</em></td><td>)</td>
21288 <td></td>
21289 </tr>
21290 </table>
21291 </td>
21292 <td class="mlabels-right">
21293<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21294 </tr>
21295</table>
21296</div><div class="memdoc">
21297
Jenkinsb3a371b2018-05-23 11:36:53 +010021298<p>Formatted output of <a class="el" href="namespacearm__compute.xhtml#add6426cbf2e057a195846d4ba09a50be">RoundingPolicy</a>. </p>
21299<dl class="params"><dt>Parameters</dt><dd>
21300 <table class="params">
21301 <tr><td class="paramdir">[in]</td><td class="paramname">rounding_policy</td><td>Type to output.</td></tr>
21302 </table>
21303 </dd>
21304</dl>
21305<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021306
Jenkinsb9abeae2018-11-22 11:58:08 +000021307<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00523">523</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000021308<div class="fragment"><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160;{</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; std::stringstream str;</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a60ad1078faeaf3f59266d69ad937339f">rounding_policy</a>;</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a60ad1078faeaf3f59266d69ad937339f"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a60ad1078faeaf3f59266d69ad937339f">arm_compute::test::validation::rounding_policy</a></div><div class="ttdeci">rounding_policy</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">PixelWiseMultiplication.cpp:168</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010021309</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000021310<p class="reference">References <a class="el" href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">arm_compute::test::validation::rounding_policy</a>.</p>
21311
Kaizen8938bd32017-09-28 14:38:23 +010021312</div>
21313</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021314<a id="ae1240e4698e8a901179e519102b5e033"></a>
Jenkins514be652019-02-28 12:25:18 +000021315<h2 class="memtitle"><span class="permalink"><a href="#ae1240e4698e8a901179e519102b5e033">&#9670;&nbsp;</a></span>to_string() <span class="overload">[13/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021316
Jenkinsb3a371b2018-05-23 11:36:53 +010021317<div class="memitem">
21318<div class="memproto">
21319<table class="mlabels">
21320 <tr>
21321 <td class="mlabels-left">
21322 <table class="memname">
21323 <tr>
21324 <td class="memname">std::string arm_compute::to_string </td>
21325 <td>(</td>
21326 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad1d5cce2d9e9a5d61c243e5c989112e0">arm_compute::DataLayout</a> &amp;&#160;</td>
21327 <td class="paramname"><em>data_layout</em></td><td>)</td>
21328 <td></td>
21329 </tr>
21330 </table>
21331 </td>
21332 <td class="mlabels-right">
21333<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21334 </tr>
21335</table>
21336</div><div class="memdoc">
21337
21338<p>Formatted output of the DataLayout type. </p>
21339<dl class="params"><dt>Parameters</dt><dd>
21340 <table class="params">
21341 <tr><td class="paramdir">[in]</td><td class="paramname">data_layout</td><td>Type to output.</td></tr>
21342 </table>
21343 </dd>
21344</dl>
21345<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
21346
Jenkinsb9abeae2018-11-22 11:58:08 +000021347<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00564">564</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000021348<div class="fragment"><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; std::stringstream str;</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; str &lt;&lt; data_layout;</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;}</div></div><!-- fragment -->
Jenkinsb3a371b2018-05-23 11:36:53 +010021349</div>
21350</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021351<a id="a96b47511b549b48d2ead05b5c757ccc9"></a>
Jenkins514be652019-02-28 12:25:18 +000021352<h2 class="memtitle"><span class="permalink"><a href="#a96b47511b549b48d2ead05b5c757ccc9">&#9670;&nbsp;</a></span>to_string() <span class="overload">[14/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021353
Kaizen8938bd32017-09-28 14:38:23 +010021354<div class="memitem">
21355<div class="memproto">
21356<table class="mlabels">
21357 <tr>
21358 <td class="mlabels-left">
21359 <table class="memname">
21360 <tr>
21361 <td class="memname">std::string arm_compute::to_string </td>
21362 <td>(</td>
21363 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">arm_compute::DataType</a> &amp;&#160;</td>
21364 <td class="paramname"><em>data_type</em></td><td>)</td>
21365 <td></td>
21366 </tr>
21367 </table>
21368 </td>
21369 <td class="mlabels-right">
21370<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21371 </tr>
21372</table>
21373</div><div class="memdoc">
21374
Jenkinsb3a371b2018-05-23 11:36:53 +010021375<p>Formatted output of the DataType type. </p>
21376<dl class="params"><dt>Parameters</dt><dd>
21377 <table class="params">
21378 <tr><td class="paramdir">[in]</td><td class="paramname">data_type</td><td>Type to output.</td></tr>
21379 </table>
21380 </dd>
21381</dl>
21382<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010021383
Jenkinsb9abeae2018-11-22 11:58:08 +000021384<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00667">667</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000021385<div class="fragment"><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160;{</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; std::stringstream str;</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">data_type</a>;</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ac2ad7f431e3446fddcd9b6b9f93c4c14"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ac2ad7f431e3446fddcd9b6b9f93c4c14">arm_compute::test::validation::data_type</a></div><div class="ttdeci">data_type</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010021386</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000021387<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::data_type</a>.</p>
21388
Kaizen8938bd32017-09-28 14:38:23 +010021389</div>
21390</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021391<a id="ab0e6381843dc9901bb59285ec846dc5d"></a>
Jenkins514be652019-02-28 12:25:18 +000021392<h2 class="memtitle"><span class="permalink"><a href="#ab0e6381843dc9901bb59285ec846dc5d">&#9670;&nbsp;</a></span>to_string() <span class="overload">[15/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021393
Kaizen8938bd32017-09-28 14:38:23 +010021394<div class="memitem">
21395<div class="memproto">
21396<table class="mlabels">
21397 <tr>
21398 <td class="mlabels-left">
21399 <table class="memname">
21400 <tr>
21401 <td class="memname">std::string arm_compute::to_string </td>
21402 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021403 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010021404 <td class="paramname"><em>format</em></td><td>)</td>
21405 <td></td>
21406 </tr>
21407 </table>
21408 </td>
21409 <td class="mlabels-right">
21410<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21411 </tr>
21412</table>
21413</div><div class="memdoc">
21414
Jenkinsb3a371b2018-05-23 11:36:53 +010021415<p>Formatted output of the Format type. </p>
21416<dl class="params"><dt>Parameters</dt><dd>
21417 <table class="params">
21418 <tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>Type to output.</td></tr>
21419 </table>
21420 </dd>
21421</dl>
21422<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021423
Jenkinsb9abeae2018-11-22 11:58:08 +000021424<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00749">749</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21425<div class="fragment"><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160;{</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; std::stringstream str;</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; str &lt;&lt; format;</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160;}</div></div><!-- fragment -->
Anthony Barbier06ea0482018-02-22 15:45:35 +000021426</div>
21427</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021428<a id="a813e71cd70c2bbcbf0743fa83a3608b9"></a>
Jenkins514be652019-02-28 12:25:18 +000021429<h2 class="memtitle"><span class="permalink"><a href="#a813e71cd70c2bbcbf0743fa83a3608b9">&#9670;&nbsp;</a></span>to_string() <span class="overload">[16/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021430
Anthony Barbier06ea0482018-02-22 15:45:35 +000021431<div class="memitem">
21432<div class="memproto">
21433<table class="mlabels">
21434 <tr>
21435 <td class="mlabels-left">
21436 <table class="memname">
21437 <tr>
21438 <td class="memname">std::string arm_compute::to_string </td>
21439 <td>(</td>
21440 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> &amp;&#160;</td>
21441 <td class="paramname"><em>channel</em></td><td>)</td>
21442 <td></td>
21443 </tr>
21444 </table>
21445 </td>
21446 <td class="mlabels-right">
21447<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21448 </tr>
21449</table>
21450</div><div class="memdoc">
21451
Jenkinsb3a371b2018-05-23 11:36:53 +010021452<p>Formatted output of the Channel type. </p>
21453<dl class="params"><dt>Parameters</dt><dd>
21454 <table class="params">
21455 <tr><td class="paramdir">[in]</td><td class="paramname">channel</td><td>Type to output.</td></tr>
21456 </table>
21457 </dd>
21458</dl>
21459<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier06ea0482018-02-22 15:45:35 +000021460
Jenkinsb9abeae2018-11-22 11:58:08 +000021461<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00816">816</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21462<div class="fragment"><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160;{</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; std::stringstream str;</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; str &lt;&lt; channel;</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160;}</div></div><!-- fragment -->
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021463</div>
21464</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021465<a id="a48fd5e28bdb4975c141841f0b96f8707"></a>
Jenkins514be652019-02-28 12:25:18 +000021466<h2 class="memtitle"><span class="permalink"><a href="#a48fd5e28bdb4975c141841f0b96f8707">&#9670;&nbsp;</a></span>to_string() <span class="overload">[17/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021467
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021468<div class="memitem">
21469<div class="memproto">
21470<table class="mlabels">
21471 <tr>
21472 <td class="mlabels-left">
21473 <table class="memname">
21474 <tr>
21475 <td class="memname">std::string arm_compute::to_string </td>
21476 <td>(</td>
21477 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_info.xhtml">TensorInfo</a> &amp;&#160;</td>
21478 <td class="paramname"><em>info</em></td><td>)</td>
21479 <td></td>
21480 </tr>
21481 </table>
21482 </td>
21483 <td class="mlabels-right">
21484<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21485 </tr>
21486</table>
21487</div><div class="memdoc">
21488
Jenkins514be652019-02-28 12:25:18 +000021489<p>Formatted output of the <a class="el" href="classarm__compute_1_1_tensor_info.xhtml" title="Store the tensor&#39;s metadata.">TensorInfo</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010021490<dl class="params"><dt>Parameters</dt><dd>
21491 <table class="params">
21492 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
21493 </table>
21494 </dd>
21495</dl>
21496<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021497
Jenkins514be652019-02-28 12:25:18 +000021498<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00974">974</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21499<div class="fragment"><div class="line"><a name="l00975"></a><span class="lineno"> 975</span>&#160;{</div><div class="line"><a name="l00976"></a><span class="lineno"> 976</span>&#160; std::stringstream str;</div><div class="line"><a name="l00977"></a><span class="lineno"> 977</span>&#160; str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>;</div><div class="line"><a name="l00978"></a><span class="lineno"> 978</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010021500</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000021501<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
21502
Kaizen8938bd32017-09-28 14:38:23 +010021503</div>
21504</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021505<a id="aa32488ee1dd78e0464ed23e8cc2b6e49"></a>
Jenkins514be652019-02-28 12:25:18 +000021506<h2 class="memtitle"><span class="permalink"><a href="#aa32488ee1dd78e0464ed23e8cc2b6e49">&#9670;&nbsp;</a></span>to_string() <span class="overload">[18/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021507
Kaizen8938bd32017-09-28 14:38:23 +010021508<div class="memitem">
21509<div class="memproto">
21510<table class="mlabels">
21511 <tr>
21512 <td class="mlabels-left">
21513 <table class="memname">
21514 <tr>
21515 <td class="memname">std::string arm_compute::to_string </td>
21516 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021517 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_dimensions.xhtml">Dimensions</a>&lt; T &gt; &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010021518 <td class="paramname"><em>dimensions</em></td><td>)</td>
21519 <td></td>
21520 </tr>
21521 </table>
21522 </td>
21523 <td class="mlabels-right">
21524<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21525 </tr>
21526</table>
21527</div><div class="memdoc">
21528
Jenkins514be652019-02-28 12:25:18 +000021529<p>Formatted output of the <a class="el" href="classarm__compute_1_1_dimensions.xhtml" title="Dimensions with dimensionality.">Dimensions</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010021530<dl class="params"><dt>Parameters</dt><dd>
21531 <table class="params">
21532 <tr><td class="paramdir">[in]</td><td class="paramname">dimensions</td><td>Type to output.</td></tr>
21533 </table>
21534 </dd>
21535</dl>
21536<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021537
Jenkins514be652019-02-28 12:25:18 +000021538<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00989">989</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21539<div class="fragment"><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160;{</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160; std::stringstream str;</div><div class="line"><a name="l00992"></a><span class="lineno"> 992</span>&#160; str &lt;&lt; dimensions;</div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160;}</div></div><!-- fragment -->
Kaizenbf8b01d2017-10-12 14:26:51 +010021540</div>
21541</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021542<a id="a1c4486f45128be7156e38e6dea345a16"></a>
Jenkins514be652019-02-28 12:25:18 +000021543<h2 class="memtitle"><span class="permalink"><a href="#a1c4486f45128be7156e38e6dea345a16">&#9670;&nbsp;</a></span>to_string() <span class="overload">[19/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021544
Kaizenbf8b01d2017-10-12 14:26:51 +010021545<div class="memitem">
21546<div class="memproto">
21547<table class="mlabels">
21548 <tr>
21549 <td class="mlabels-left">
21550 <table class="memname">
21551 <tr>
21552 <td class="memname">std::string arm_compute::to_string </td>
21553 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021554 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_strides.xhtml">Strides</a> &amp;&#160;</td>
Kaizenbf8b01d2017-10-12 14:26:51 +010021555 <td class="paramname"><em>stride</em></td><td>)</td>
21556 <td></td>
21557 </tr>
21558 </table>
21559 </td>
21560 <td class="mlabels-right">
21561<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21562 </tr>
21563</table>
21564</div><div class="memdoc">
21565
Jenkins514be652019-02-28 12:25:18 +000021566<p>Formatted output of the <a class="el" href="classarm__compute_1_1_strides.xhtml" title="Strides of an item in bytes.">Strides</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010021567<dl class="params"><dt>Parameters</dt><dd>
21568 <table class="params">
21569 <tr><td class="paramdir">[in]</td><td class="paramname">stride</td><td>Type to output.</td></tr>
21570 </table>
21571 </dd>
21572</dl>
21573<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021574
Jenkins514be652019-02-28 12:25:18 +000021575<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01002">1002</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21576<div class="fragment"><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;{</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160; std::stringstream str;</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160; str &lt;&lt; stride;</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;}</div></div><!-- fragment -->
Kaizen8938bd32017-09-28 14:38:23 +010021577</div>
21578</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021579<a id="a9d9b56d1b106b79fc5c5411372222d0f"></a>
Jenkins514be652019-02-28 12:25:18 +000021580<h2 class="memtitle"><span class="permalink"><a href="#a9d9b56d1b106b79fc5c5411372222d0f">&#9670;&nbsp;</a></span>to_string() <span class="overload">[20/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021581
Kaizen8938bd32017-09-28 14:38:23 +010021582<div class="memitem">
21583<div class="memproto">
21584<table class="mlabels">
21585 <tr>
21586 <td class="mlabels-left">
21587 <table class="memname">
21588 <tr>
21589 <td class="memname">std::string arm_compute::to_string </td>
21590 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021591 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010021592 <td class="paramname"><em>shape</em></td><td>)</td>
21593 <td></td>
21594 </tr>
21595 </table>
21596 </td>
21597 <td class="mlabels-right">
21598<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21599 </tr>
21600</table>
21601</div><div class="memdoc">
21602
Jenkins514be652019-02-28 12:25:18 +000021603<p>Formatted output of the <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml" title="Shape of a tensor.">TensorShape</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010021604<dl class="params"><dt>Parameters</dt><dd>
21605 <table class="params">
21606 <tr><td class="paramdir">[in]</td><td class="paramname">shape</td><td>Type to output.</td></tr>
21607 </table>
21608 </dd>
21609</dl>
21610<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010021611
Jenkins514be652019-02-28 12:25:18 +000021612<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01015">1015</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21613<div class="fragment"><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160;{</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160; std::stringstream str;</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160; str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">shape</a>;</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a45cde9abb508c62d67c3bb2b9bf566a5"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a45cde9abb508c62d67c3bb2b9bf566a5">arm_compute::test::validation::shape</a></div><div class="ttdeci">shape</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">AbsoluteDifference.cpp:97</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010021614</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000021615<p class="reference">References <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00097">arm_compute::test::validation::shape</a>.</p>
21616
Kaizen8938bd32017-09-28 14:38:23 +010021617</div>
21618</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021619<a id="a805a74997e303d29108845956a674387"></a>
Jenkins514be652019-02-28 12:25:18 +000021620<h2 class="memtitle"><span class="permalink"><a href="#a805a74997e303d29108845956a674387">&#9670;&nbsp;</a></span>to_string() <span class="overload">[21/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021621
Kaizenbf8b01d2017-10-12 14:26:51 +010021622<div class="memitem">
21623<div class="memproto">
21624<table class="mlabels">
21625 <tr>
21626 <td class="mlabels-left">
21627 <table class="memname">
21628 <tr>
21629 <td class="memname">std::string arm_compute::to_string </td>
21630 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021631 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;&#160;</td>
Kaizenbf8b01d2017-10-12 14:26:51 +010021632 <td class="paramname"><em>coord</em></td><td>)</td>
21633 <td></td>
21634 </tr>
21635 </table>
21636 </td>
21637 <td class="mlabels-right">
21638<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21639 </tr>
21640</table>
21641</div><div class="memdoc">
21642
Jenkins514be652019-02-28 12:25:18 +000021643<p>Formatted output of the <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010021644<dl class="params"><dt>Parameters</dt><dd>
21645 <table class="params">
21646 <tr><td class="paramdir">[in]</td><td class="paramname">coord</td><td>Type to output.</td></tr>
21647 </table>
21648 </dd>
21649</dl>
21650<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Kaizenbf8b01d2017-10-12 14:26:51 +010021651
Jenkins514be652019-02-28 12:25:18 +000021652<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01028">1028</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21653<div class="fragment"><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160;{</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160; std::stringstream str;</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160; str &lt;&lt; coord;</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;}</div></div><!-- fragment -->
Jenkins52ba29e2018-08-29 15:32:11 +000021654</div>
21655</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021656<a id="a26a595cd5522bae4fa1c4f2fb9b8f4d5"></a>
Jenkins514be652019-02-28 12:25:18 +000021657<h2 class="memtitle"><span class="permalink"><a href="#a26a595cd5522bae4fa1c4f2fb9b8f4d5">&#9670;&nbsp;</a></span>to_string() <span class="overload">[22/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021658
Jenkins52ba29e2018-08-29 15:32:11 +000021659<div class="memitem">
21660<div class="memproto">
21661<table class="mlabels">
21662 <tr>
21663 <td class="mlabels-left">
21664 <table class="memname">
21665 <tr>
21666 <td class="memname">std::string arm_compute::to_string </td>
21667 <td>(</td>
21668 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_weights_info.xhtml">WeightsInfo</a> &amp;&#160;</td>
21669 <td class="paramname"><em>info</em></td><td>)</td>
21670 <td></td>
21671 </tr>
21672 </table>
21673 </td>
21674 <td class="mlabels-right">
21675<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21676 </tr>
21677</table>
21678</div><div class="memdoc">
21679
Jenkins514be652019-02-28 12:25:18 +000021680<p>Formatted output of the <a class="el" href="classarm__compute_1_1_weights_info.xhtml" title="Convolution Layer Weights Information class.">WeightsInfo</a> type. </p>
Jenkins52ba29e2018-08-29 15:32:11 +000021681<dl class="params"><dt>Parameters</dt><dd>
21682 <table class="params">
21683 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
21684 </table>
21685 </dd>
21686</dl>
21687<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
21688
Jenkins514be652019-02-28 12:25:18 +000021689<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01113">1113</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21690<div class="fragment"><div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>&#160;{</div><div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160; std::stringstream str;</div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160; str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>;</div><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000021691</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000021692<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
21693
Jenkins52ba29e2018-08-29 15:32:11 +000021694</div>
21695</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021696<a id="adac3c1908846c6361e664a353ad1c3cf"></a>
Jenkins514be652019-02-28 12:25:18 +000021697<h2 class="memtitle"><span class="permalink"><a href="#adac3c1908846c6361e664a353ad1c3cf">&#9670;&nbsp;</a></span>to_string() <span class="overload">[23/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021698
Jenkins52ba29e2018-08-29 15:32:11 +000021699<div class="memitem">
21700<div class="memproto">
21701<table class="mlabels">
21702 <tr>
21703 <td class="mlabels-left">
21704 <table class="memname">
21705 <tr>
21706 <td class="memname">std::string arm_compute::to_string </td>
21707 <td>(</td>
21708 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_g_e_m_m_reshape_info.xhtml">GEMMReshapeInfo</a> &amp;&#160;</td>
21709 <td class="paramname"><em>info</em></td><td>)</td>
21710 <td></td>
21711 </tr>
21712 </table>
21713 </td>
21714 <td class="mlabels-right">
21715<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21716 </tr>
21717</table>
21718</div><div class="memdoc">
21719
Jenkins514be652019-02-28 12:25:18 +000021720<p>Formatted output of the <a class="el" href="classarm__compute_1_1_g_e_m_m_reshape_info.xhtml" title="GEMM reshape information class.">GEMMReshapeInfo</a> type. </p>
Jenkins52ba29e2018-08-29 15:32:11 +000021721<dl class="params"><dt>Parameters</dt><dd>
21722 <table class="params">
21723 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
21724 </table>
21725 </dd>
21726</dl>
21727<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
21728
Jenkins514be652019-02-28 12:25:18 +000021729<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01126">1126</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21730<div class="fragment"><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160;{</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160; std::stringstream str;</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160; str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>;</div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000021731</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000021732<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
21733
Jenkins52ba29e2018-08-29 15:32:11 +000021734</div>
21735</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021736<a id="a8ac2dfdfad6db71a5cf2ecee6b70f722"></a>
Jenkins514be652019-02-28 12:25:18 +000021737<h2 class="memtitle"><span class="permalink"><a href="#a8ac2dfdfad6db71a5cf2ecee6b70f722">&#9670;&nbsp;</a></span>to_string() <span class="overload">[24/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021738
Jenkins52ba29e2018-08-29 15:32:11 +000021739<div class="memitem">
21740<div class="memproto">
21741<table class="mlabels">
21742 <tr>
21743 <td class="mlabels-left">
21744 <table class="memname">
21745 <tr>
21746 <td class="memname">std::string arm_compute::to_string </td>
21747 <td>(</td>
21748 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_g_e_m_m_info.xhtml">GEMMInfo</a> &amp;&#160;</td>
21749 <td class="paramname"><em>info</em></td><td>)</td>
21750 <td></td>
21751 </tr>
21752 </table>
21753 </td>
21754 <td class="mlabels-right">
21755<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21756 </tr>
21757</table>
21758</div><div class="memdoc">
21759
Jenkins514be652019-02-28 12:25:18 +000021760<p>Formatted output of the <a class="el" href="classarm__compute_1_1_g_e_m_m_info.xhtml" title="GEMM information class.">GEMMInfo</a> type. </p>
Jenkins52ba29e2018-08-29 15:32:11 +000021761<dl class="params"><dt>Parameters</dt><dd>
21762 <table class="params">
21763 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
21764 </table>
21765 </dd>
21766</dl>
21767<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
21768
Jenkins514be652019-02-28 12:25:18 +000021769<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01139">1139</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21770<div class="fragment"><div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160;{</div><div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160; std::stringstream str;</div><div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>&#160; str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>;</div><div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000021771</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000021772<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
21773
Jenkins52ba29e2018-08-29 15:32:11 +000021774</div>
21775</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021776<a id="ab6ea50ec0a98c2180e6530cfcb5eb366"></a>
Jenkins514be652019-02-28 12:25:18 +000021777<h2 class="memtitle"><span class="permalink"><a href="#ab6ea50ec0a98c2180e6530cfcb5eb366">&#9670;&nbsp;</a></span>to_string() <span class="overload">[25/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021778
Jenkins52ba29e2018-08-29 15:32:11 +000021779<div class="memitem">
21780<div class="memproto">
21781<table class="mlabels">
21782 <tr>
21783 <td class="mlabels-left">
21784 <table class="memname">
21785 <tr>
21786 <td class="memname">std::string arm_compute::to_string </td>
21787 <td>(</td>
21788 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window_1_1_dimension.xhtml">Window::Dimension</a> &amp;&#160;</td>
21789 <td class="paramname"><em>dim</em></td><td>)</td>
21790 <td></td>
21791 </tr>
21792 </table>
21793 </td>
21794 <td class="mlabels-right">
21795<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21796 </tr>
21797</table>
21798</div><div class="memdoc">
21799
Jenkins514be652019-02-28 12:25:18 +000021800<p>Formatted output of the <a class="el" href="classarm__compute_1_1_window_1_1_dimension.xhtml" title="Describe one of the image&#39;s dimensions with a start, end and step.">Window::Dimension</a> type. </p>
Jenkins52ba29e2018-08-29 15:32:11 +000021801<dl class="params"><dt>Parameters</dt><dd>
21802 <table class="params">
21803 <tr><td class="paramdir">[in]</td><td class="paramname">dim</td><td>Type to output.</td></tr>
21804 </table>
21805 </dd>
21806</dl>
21807<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
21808
Jenkins514be652019-02-28 12:25:18 +000021809<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01152">1152</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21810<div class="fragment"><div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160;{</div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160; std::stringstream str;</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160; str &lt;&lt; dim;</div><div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160;}</div></div><!-- fragment -->
Jenkins52ba29e2018-08-29 15:32:11 +000021811</div>
21812</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021813<a id="a99aba2774f142d36c6a286cbfe027772"></a>
Jenkins514be652019-02-28 12:25:18 +000021814<h2 class="memtitle"><span class="permalink"><a href="#a99aba2774f142d36c6a286cbfe027772">&#9670;&nbsp;</a></span>to_string() <span class="overload">[26/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021815
Jenkins52ba29e2018-08-29 15:32:11 +000021816<div class="memitem">
21817<div class="memproto">
21818<table class="mlabels">
21819 <tr>
21820 <td class="mlabels-left">
21821 <table class="memname">
21822 <tr>
21823 <td class="memname">std::string arm_compute::to_string </td>
21824 <td>(</td>
21825 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
21826 <td class="paramname"><em>win</em></td><td>)</td>
21827 <td></td>
21828 </tr>
21829 </table>
21830 </td>
21831 <td class="mlabels-right">
21832<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21833 </tr>
21834</table>
21835</div><div class="memdoc">
21836
Jenkins514be652019-02-28 12:25:18 +000021837<p>Formatted output of the <a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> type. </p>
Jenkins52ba29e2018-08-29 15:32:11 +000021838<dl class="params"><dt>Parameters</dt><dd>
21839 <table class="params">
21840 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td>Type to output.</td></tr>
21841 </table>
21842 </dd>
21843</dl>
21844<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
21845
Jenkins514be652019-02-28 12:25:18 +000021846<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01164">1164</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21847<div class="fragment"><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;{</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160; std::stringstream str;</div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160; str &lt;&lt; win;</div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160;}</div></div><!-- fragment -->
Kaizenbf8b01d2017-10-12 14:26:51 +010021848</div>
21849</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021850<a id="a2c0e6c1c4cf10da25e7a7362ba151ba2"></a>
Jenkins514be652019-02-28 12:25:18 +000021851<h2 class="memtitle"><span class="permalink"><a href="#a2c0e6c1c4cf10da25e7a7362ba151ba2">&#9670;&nbsp;</a></span>to_string() <span class="overload">[27/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021852
Kaizen8938bd32017-09-28 14:38:23 +010021853<div class="memitem">
21854<div class="memproto">
21855<table class="mlabels">
21856 <tr>
21857 <td class="mlabels-left">
21858 <table class="memname">
21859 <tr>
21860 <td class="memname">std::string arm_compute::to_string </td>
21861 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021862 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml">PadStrideInfo</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010021863 <td class="paramname"><em>pad_stride_info</em></td><td>)</td>
21864 <td></td>
21865 </tr>
21866 </table>
21867 </td>
21868 <td class="mlabels-right">
21869<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21870 </tr>
21871</table>
21872</div><div class="memdoc">
21873
Jenkins514be652019-02-28 12:25:18 +000021874<p>Formatted output of the <a class="el" href="classarm__compute_1_1_pad_stride_info.xhtml" title="Padding and stride information class.">PadStrideInfo</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010021875<dl class="params"><dt>Parameters</dt><dd>
21876 <table class="params">
21877 <tr><td class="paramdir">[in]</td><td class="paramname">pad_stride_info</td><td>Type to output.</td></tr>
21878 </table>
21879 </dd>
21880</dl>
21881<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021882
Jenkins514be652019-02-28 12:25:18 +000021883<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01209">1209</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21884<div class="fragment"><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160;{</div><div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>&#160; std::stringstream str;</div><div class="line"><a name="l01212"></a><span class="lineno"> 1212</span>&#160; str &lt;&lt; pad_stride_info;</div><div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160;}</div></div><!-- fragment -->
Kaizen8938bd32017-09-28 14:38:23 +010021885</div>
21886</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021887<a id="a0604106dd269acd58152a81ba87cc265"></a>
Jenkins514be652019-02-28 12:25:18 +000021888<h2 class="memtitle"><span class="permalink"><a href="#a0604106dd269acd58152a81ba87cc265">&#9670;&nbsp;</a></span>to_string() <span class="overload">[28/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021889
Kaizen8938bd32017-09-28 14:38:23 +010021890<div class="memitem">
21891<div class="memproto">
21892<table class="mlabels">
21893 <tr>
21894 <td class="mlabels-left">
21895 <table class="memname">
21896 <tr>
21897 <td class="memname">std::string arm_compute::to_string </td>
21898 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021899 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327">BorderMode</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010021900 <td class="paramname"><em>mode</em></td><td>)</td>
21901 <td></td>
21902 </tr>
21903 </table>
21904 </td>
21905 <td class="mlabels-right">
21906<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21907 </tr>
21908</table>
21909</div><div class="memdoc">
21910
Jenkinsb3a371b2018-05-23 11:36:53 +010021911<p>Formatted output of the BorderMode type. </p>
21912<dl class="params"><dt>Parameters</dt><dd>
21913 <table class="params">
21914 <tr><td class="paramdir">[in]</td><td class="paramname">mode</td><td>Type to output.</td></tr>
21915 </table>
21916 </dd>
21917</dl>
21918<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021919
Jenkins514be652019-02-28 12:25:18 +000021920<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01222">1222</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21921<div class="fragment"><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160;{</div><div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160; std::stringstream str;</div><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160; str &lt;&lt; mode;</div><div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>&#160;}</div></div><!-- fragment -->
Kaizenbf8b01d2017-10-12 14:26:51 +010021922</div>
21923</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021924<a id="a5c9cde9144eaeceaf086377b9bc5a5be"></a>
Jenkins514be652019-02-28 12:25:18 +000021925<h2 class="memtitle"><span class="permalink"><a href="#a5c9cde9144eaeceaf086377b9bc5a5be">&#9670;&nbsp;</a></span>to_string() <span class="overload">[29/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021926
Kaizenbf8b01d2017-10-12 14:26:51 +010021927<div class="memitem">
21928<div class="memproto">
21929<table class="mlabels">
21930 <tr>
21931 <td class="mlabels-left">
21932 <table class="memname">
21933 <tr>
21934 <td class="memname">std::string arm_compute::to_string </td>
21935 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021936 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> &amp;&#160;</td>
Kaizenbf8b01d2017-10-12 14:26:51 +010021937 <td class="paramname"><em>border</em></td><td>)</td>
21938 <td></td>
21939 </tr>
21940 </table>
21941 </td>
21942 <td class="mlabels-right">
21943<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21944 </tr>
21945</table>
21946</div><div class="memdoc">
21947
Jenkins514be652019-02-28 12:25:18 +000021948<p>Formatted output of the <a class="el" href="structarm__compute_1_1_border_size.xhtml" title="Container for 2D border size.">BorderSize</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010021949<dl class="params"><dt>Parameters</dt><dd>
21950 <table class="params">
21951 <tr><td class="paramdir">[in]</td><td class="paramname">border</td><td>Type to output.</td></tr>
21952 </table>
21953 </dd>
21954</dl>
21955<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000021956
Jenkins514be652019-02-28 12:25:18 +000021957<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01235">1235</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21958<div class="fragment"><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160;{</div><div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160; std::stringstream str;</div><div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>&#160; str &lt;&lt; border;</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160;}</div></div><!-- fragment -->
Kaizen8938bd32017-09-28 14:38:23 +010021959</div>
21960</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021961<a id="a09b674dcee4a1b59f9c7c51ecaae40a6"></a>
Jenkins514be652019-02-28 12:25:18 +000021962<h2 class="memtitle"><span class="permalink"><a href="#a09b674dcee4a1b59f9c7c51ecaae40a6">&#9670;&nbsp;</a></span>to_string() <span class="overload">[30/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000021963
21964<div class="memitem">
21965<div class="memproto">
21966<table class="mlabels">
21967 <tr>
21968 <td class="mlabels-left">
21969 <table class="memname">
21970 <tr>
21971 <td class="memname">std::string arm_compute::to_string </td>
21972 <td>(</td>
21973 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ac1a1b012674e0f1de071a611391828ad">PaddingList</a> &amp;&#160;</td>
21974 <td class="paramname"><em>padding</em></td><td>)</td>
21975 <td></td>
21976 </tr>
21977 </table>
21978 </td>
21979 <td class="mlabels-right">
21980<span class="mlabels"><span class="mlabel">inline</span></span> </td>
21981 </tr>
21982</table>
21983</div><div class="memdoc">
21984
21985<p>Formatted output of the PaddingList type. </p>
21986<dl class="params"><dt>Parameters</dt><dd>
21987 <table class="params">
21988 <tr><td class="paramdir">[in]</td><td class="paramname">padding</td><td>Type to output.</td></tr>
21989 </table>
21990 </dd>
21991</dl>
21992<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
21993
Jenkins514be652019-02-28 12:25:18 +000021994<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01248">1248</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
21995<div class="fragment"><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160;{</div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160; std::stringstream str;</div><div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160; str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a735a025fce26c1ef147b54426df18181">padding</a>;</div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a735a025fce26c1ef147b54426df18181"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a735a025fce26c1ef147b54426df18181">arm_compute::test::validation::padding</a></div><div class="ttdeci">const PaddingSize padding</div><div class="ttdef"><b>Definition:</b> <a href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00113">AbsoluteDifference.cpp:113</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000021996</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000021997<p class="reference">References <a class="el" href="_c_l_2_absolute_difference_8cpp_source.xhtml#l00113">arm_compute::test::validation::padding</a>.</p>
21998
21999</div>
22000</div>
22001<a id="ad710fdad147ab4ab21e14a7c49b3516a"></a>
22002<h2 class="memtitle"><span class="permalink"><a href="#ad710fdad147ab4ab21e14a7c49b3516a">&#9670;&nbsp;</a></span>to_string() <span class="overload">[31/57]</span></h2>
22003
22004<div class="memitem">
22005<div class="memproto">
22006<table class="mlabels">
22007 <tr>
22008 <td class="mlabels-left">
22009 <table class="memname">
22010 <tr>
22011 <td class="memname">std::string arm_compute::to_string </td>
22012 <td>(</td>
22013 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#afe9e10e5fdfd1e2665ac17c75c0cacd8">Multiples</a> &amp;&#160;</td>
22014 <td class="paramname"><em>multiples</em></td><td>)</td>
22015 <td></td>
22016 </tr>
22017 </table>
22018 </td>
22019 <td class="mlabels-right">
22020<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22021 </tr>
22022</table>
22023</div><div class="memdoc">
22024
22025<p>Formatted output of the Multiples type. </p>
22026<dl class="params"><dt>Parameters</dt><dd>
22027 <table class="params">
22028 <tr><td class="paramdir">[in]</td><td class="paramname">multiples</td><td>Type to output.</td></tr>
22029 </table>
22030 </dd>
22031</dl>
22032<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
22033
22034<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01261">1261</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22035<div class="fragment"><div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>&#160;{</div><div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>&#160; std::stringstream str;</div><div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160; str &lt;&lt; multiples;</div><div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000022036</div>
22037</div>
22038<a id="a94bd78942b683c05cba85048537d3ee7"></a>
Jenkins514be652019-02-28 12:25:18 +000022039<h2 class="memtitle"><span class="permalink"><a href="#a94bd78942b683c05cba85048537d3ee7">&#9670;&nbsp;</a></span>to_string() <span class="overload">[32/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022040
Kaizen8938bd32017-09-28 14:38:23 +010022041<div class="memitem">
22042<div class="memproto">
22043<table class="mlabels">
22044 <tr>
22045 <td class="mlabels-left">
22046 <table class="memname">
22047 <tr>
22048 <td class="memname">std::string arm_compute::to_string </td>
22049 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022050 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a966a9c417ce5e94dca08d9b5e745c0c9">InterpolationPolicy</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010022051 <td class="paramname"><em>policy</em></td><td>)</td>
22052 <td></td>
22053 </tr>
22054 </table>
22055 </td>
22056 <td class="mlabels-right">
22057<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22058 </tr>
22059</table>
22060</div><div class="memdoc">
22061
Jenkinsb3a371b2018-05-23 11:36:53 +010022062<p>Formatted output of the InterpolationPolicy type. </p>
22063<dl class="params"><dt>Parameters</dt><dd>
22064 <table class="params">
22065 <tr><td class="paramdir">[in]</td><td class="paramname">policy</td><td>Type to output.</td></tr>
22066 </table>
22067 </dd>
22068</dl>
22069<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022070
Jenkins514be652019-02-28 12:25:18 +000022071<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01274">1274</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22072<div class="fragment"><div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>&#160;{</div><div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>&#160; std::stringstream str;</div><div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>&#160; str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">policy</a>;</div><div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01279"></a><span class="lineno"> 1279</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad986b73e9d5f47a623a9b6d773c25e34"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">arm_compute::test::validation::policy</a></div><div class="ttdeci">policy</div><div class="ttdef"><b>Definition:</b> <a href="_cast_8cpp_source.xhtml#l00169">Cast.cpp:169</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022073</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000022074<p class="reference">References <a class="el" href="_cast_8cpp_source.xhtml#l00169">arm_compute::test::validation::policy</a>.</p>
22075
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022076</div>
22077</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022078<a id="a5b8e815072ae54278cb1c91e254be4d3"></a>
Jenkins514be652019-02-28 12:25:18 +000022079<h2 class="memtitle"><span class="permalink"><a href="#a5b8e815072ae54278cb1c91e254be4d3">&#9670;&nbsp;</a></span>to_string() <span class="overload">[33/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022080
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022081<div class="memitem">
22082<div class="memproto">
22083<table class="mlabels">
22084 <tr>
22085 <td class="mlabels-left">
22086 <table class="memname">
22087 <tr>
22088 <td class="memname">std::string arm_compute::to_string </td>
22089 <td>(</td>
22090 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a16a59381d4d74d17d86d69eb4d286d7b">SamplingPolicy</a> &amp;&#160;</td>
22091 <td class="paramname"><em>policy</em></td><td>)</td>
22092 <td></td>
22093 </tr>
22094 </table>
22095 </td>
22096 <td class="mlabels-right">
22097<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22098 </tr>
22099</table>
22100</div><div class="memdoc">
22101
Jenkinsb3a371b2018-05-23 11:36:53 +010022102<p>Formatted output of the SamplingPolicy type. </p>
22103<dl class="params"><dt>Parameters</dt><dd>
22104 <table class="params">
22105 <tr><td class="paramdir">[in]</td><td class="paramname">policy</td><td>Type to output.</td></tr>
22106 </table>
22107 </dd>
22108</dl>
22109<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022110
Jenkins514be652019-02-28 12:25:18 +000022111<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01287">1287</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22112<div class="fragment"><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160;{</div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160; std::stringstream str;</div><div class="line"><a name="l01290"></a><span class="lineno"> 1290</span>&#160; str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">policy</a>;</div><div class="line"><a name="l01291"></a><span class="lineno"> 1291</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01292"></a><span class="lineno"> 1292</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad986b73e9d5f47a623a9b6d773c25e34"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">arm_compute::test::validation::policy</a></div><div class="ttdeci">policy</div><div class="ttdef"><b>Definition:</b> <a href="_cast_8cpp_source.xhtml#l00169">Cast.cpp:169</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022113</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000022114<p class="reference">References <a class="el" href="_cast_8cpp_source.xhtml#l00169">arm_compute::test::validation::policy</a>.</p>
22115
Kaizen8938bd32017-09-28 14:38:23 +010022116</div>
22117</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022118<a id="adcc7e107e7dbd2ffac02189089c33e4f"></a>
Jenkins514be652019-02-28 12:25:18 +000022119<h2 class="memtitle"><span class="permalink"><a href="#adcc7e107e7dbd2ffac02189089c33e4f">&#9670;&nbsp;</a></span>to_string() <span class="overload">[34/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022120
Kaizen8938bd32017-09-28 14:38:23 +010022121<div class="memitem">
22122<div class="memproto">
22123<table class="mlabels">
22124 <tr>
22125 <td class="mlabels-left">
22126 <table class="memname">
22127 <tr>
22128 <td class="memname">std::string arm_compute::to_string </td>
22129 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022130 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a82b8ac759c804bc1fb4e2d21e178fb6f">ConvertPolicy</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010022131 <td class="paramname"><em>policy</em></td><td>)</td>
22132 <td></td>
22133 </tr>
22134 </table>
22135 </td>
22136 <td class="mlabels-right">
22137<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22138 </tr>
22139</table>
22140</div><div class="memdoc">
22141
Jenkins514be652019-02-28 12:25:18 +000022142<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01318">1318</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22143<div class="fragment"><div class="line"><a name="l01319"></a><span class="lineno"> 1319</span>&#160;{</div><div class="line"><a name="l01320"></a><span class="lineno"> 1320</span>&#160; std::stringstream str;</div><div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>&#160; str &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">policy</a>;</div><div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_ad986b73e9d5f47a623a9b6d773c25e34"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#ad986b73e9d5f47a623a9b6d773c25e34">arm_compute::test::validation::policy</a></div><div class="ttdeci">policy</div><div class="ttdef"><b>Definition:</b> <a href="_cast_8cpp_source.xhtml#l00169">Cast.cpp:169</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022144</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000022145<p class="reference">References <a class="el" href="_cast_8cpp_source.xhtml#l00169">arm_compute::test::validation::policy</a>.</p>
22146
22147</div>
22148</div>
22149<a id="aca516517d47534e06d4c57e7bc706b2a"></a>
22150<h2 class="memtitle"><span class="permalink"><a href="#aca516517d47534e06d4c57e7bc706b2a">&#9670;&nbsp;</a></span>to_string() <span class="overload">[35/57]</span></h2>
22151
22152<div class="memitem">
22153<div class="memproto">
22154<table class="mlabels">
22155 <tr>
22156 <td class="mlabels-left">
22157 <table class="memname">
22158 <tr>
22159 <td class="memname">std::string arm_compute::to_string </td>
22160 <td>(</td>
22161 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a23d9f0c01c9e120dfb828ee922b7a8ae">ArithmeticOperation</a> &amp;&#160;</td>
22162 <td class="paramname"><em>op</em></td><td>)</td>
22163 <td></td>
22164 </tr>
22165 </table>
22166 </td>
22167 <td class="mlabels-right">
22168<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22169 </tr>
22170</table>
22171</div><div class="memdoc">
22172
22173<p>Formatted output of the Arithmetic Operation. </p>
22174<dl class="params"><dt>Parameters</dt><dd>
22175 <table class="params">
22176 <tr><td class="paramdir">[in]</td><td class="paramname">op</td><td>Type to output.</td></tr>
22177 </table>
22178 </dd>
22179</dl>
22180<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
22181
22182<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01367">1367</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22183<div class="fragment"><div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>&#160;{</div><div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160; std::stringstream str;</div><div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160; str &lt;&lt; op;</div><div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>&#160;}</div></div><!-- fragment -->
Kaizen8938bd32017-09-28 14:38:23 +010022184</div>
22185</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022186<a id="aae534105c7ea67999ccbb34a0ed567cd"></a>
Jenkins514be652019-02-28 12:25:18 +000022187<h2 class="memtitle"><span class="permalink"><a href="#aae534105c7ea67999ccbb34a0ed567cd">&#9670;&nbsp;</a></span>to_string() <span class="overload">[36/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022188
Kaizen8938bd32017-09-28 14:38:23 +010022189<div class="memitem">
22190<div class="memproto">
22191<table class="mlabels">
22192 <tr>
22193 <td class="mlabels-left">
22194 <table class="memname">
22195 <tr>
22196 <td class="memname">std::string arm_compute::to_string </td>
22197 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022198 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a5827eb9cb394e74af87f74bd354fb45b">ReductionOperation</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010022199 <td class="paramname"><em>op</em></td><td>)</td>
22200 <td></td>
22201 </tr>
22202 </table>
22203 </td>
22204 <td class="mlabels-right">
22205<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22206 </tr>
22207</table>
22208</div><div class="memdoc">
22209
Jenkinsb3a371b2018-05-23 11:36:53 +010022210<p>Formatted output of the Reduction Operations. </p>
22211<dl class="params"><dt>Parameters</dt><dd>
22212 <table class="params">
22213 <tr><td class="paramdir">[in]</td><td class="paramname">op</td><td>Type to output.</td></tr>
22214 </table>
22215 </dd>
22216</dl>
22217<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022218
Jenkins514be652019-02-28 12:25:18 +000022219<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01416">1416</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22220<div class="fragment"><div class="line"><a name="l01417"></a><span class="lineno"> 1417</span>&#160;{</div><div class="line"><a name="l01418"></a><span class="lineno"> 1418</span>&#160; std::stringstream str;</div><div class="line"><a name="l01419"></a><span class="lineno"> 1419</span>&#160; str &lt;&lt; op;</div><div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>&#160;}</div></div><!-- fragment -->
22221</div>
22222</div>
22223<a id="a77007283b591963074b8398202e90f5a"></a>
22224<h2 class="memtitle"><span class="permalink"><a href="#a77007283b591963074b8398202e90f5a">&#9670;&nbsp;</a></span>to_string() <span class="overload">[37/57]</span></h2>
22225
22226<div class="memitem">
22227<div class="memproto">
22228<table class="mlabels">
22229 <tr>
22230 <td class="mlabels-left">
22231 <table class="memname">
22232 <tr>
22233 <td class="memname">std::string arm_compute::to_string </td>
22234 <td>(</td>
22235 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a2d299363c9fc33334c571fa29ca4f58c">ComparisonOperation</a> &amp;&#160;</td>
22236 <td class="paramname"><em>op</em></td><td>)</td>
22237 <td></td>
22238 </tr>
22239 </table>
22240 </td>
22241 <td class="mlabels-right">
22242<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22243 </tr>
22244</table>
22245</div><div class="memdoc">
22246
22247<p>Formatted output of the Comparison Operations. </p>
22248<dl class="params"><dt>Parameters</dt><dd>
22249 <table class="params">
22250 <tr><td class="paramdir">[in]</td><td class="paramname">op</td><td>Type to output.</td></tr>
22251 </table>
22252 </dd>
22253</dl>
22254<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
22255
22256<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01489">1489</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22257<div class="fragment"><div class="line"><a name="l01490"></a><span class="lineno"> 1490</span>&#160;{</div><div class="line"><a name="l01491"></a><span class="lineno"> 1491</span>&#160; std::stringstream str;</div><div class="line"><a name="l01492"></a><span class="lineno"> 1492</span>&#160; str &lt;&lt; op;</div><div class="line"><a name="l01493"></a><span class="lineno"> 1493</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01494"></a><span class="lineno"> 1494</span>&#160;}</div></div><!-- fragment -->
22258</div>
22259</div>
22260<a id="ab76157462925ad1b13149317ded2e404"></a>
22261<h2 class="memtitle"><span class="permalink"><a href="#ab76157462925ad1b13149317ded2e404">&#9670;&nbsp;</a></span>to_string() <span class="overload">[38/57]</span></h2>
22262
22263<div class="memitem">
22264<div class="memproto">
22265<table class="mlabels">
22266 <tr>
22267 <td class="mlabels-left">
22268 <table class="memname">
22269 <tr>
22270 <td class="memname">std::string arm_compute::to_string </td>
22271 <td>(</td>
22272 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a5dad01b7eab116403241313417e0936d">ElementWiseUnary</a> &amp;&#160;</td>
22273 <td class="paramname"><em>op</em></td><td>)</td>
22274 <td></td>
22275 </tr>
22276 </table>
22277 </td>
22278 <td class="mlabels-right">
22279<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22280 </tr>
22281</table>
22282</div><div class="memdoc">
22283
22284<p>Formatted output of the Elementwise unary Operations. </p>
22285<dl class="params"><dt>Parameters</dt><dd>
22286 <table class="params">
22287 <tr><td class="paramdir">[in]</td><td class="paramname">op</td><td>Type to output.</td></tr>
22288 </table>
22289 </dd>
22290</dl>
22291<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
22292
22293<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01502">1502</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22294<div class="fragment"><div class="line"><a name="l01503"></a><span class="lineno"> 1503</span>&#160;{</div><div class="line"><a name="l01504"></a><span class="lineno"> 1504</span>&#160; std::stringstream str;</div><div class="line"><a name="l01505"></a><span class="lineno"> 1505</span>&#160; str &lt;&lt; op;</div><div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160;}</div></div><!-- fragment -->
Kaizen8938bd32017-09-28 14:38:23 +010022295</div>
22296</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022297<a id="ad8b676c38d9b8d9d9bde7caec5720bd9"></a>
Jenkins514be652019-02-28 12:25:18 +000022298<h2 class="memtitle"><span class="permalink"><a href="#ad8b676c38d9b8d9d9bde7caec5720bd9">&#9670;&nbsp;</a></span>to_string() <span class="overload">[39/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022299
Kaizen8938bd32017-09-28 14:38:23 +010022300<div class="memitem">
22301<div class="memproto">
22302<table class="mlabels">
22303 <tr>
22304 <td class="mlabels-left">
22305 <table class="memname">
22306 <tr>
22307 <td class="memname">std::string arm_compute::to_string </td>
22308 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022309 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad4bb8dabdbf8ad75e34220cc666b59ca">NormType</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010022310 <td class="paramname"><em>type</em></td><td>)</td>
22311 <td></td>
22312 </tr>
22313 </table>
22314 </td>
22315 <td class="mlabels-right">
22316<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22317 </tr>
22318</table>
22319</div><div class="memdoc">
22320
Jenkinsb3a371b2018-05-23 11:36:53 +010022321<p>Formatted output of the Norm Type. </p>
22322<dl class="params"><dt>Parameters</dt><dd>
22323 <table class="params">
22324 <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>Type to output.</td></tr>
22325 </table>
22326 </dd>
22327</dl>
22328<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010022329
Jenkins514be652019-02-28 12:25:18 +000022330<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01515">1515</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22331<div class="fragment"><div class="line"><a name="l01516"></a><span class="lineno"> 1516</span>&#160;{</div><div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>&#160; std::stringstream str;</div><div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>&#160; str &lt;&lt; type;</div><div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>&#160;}</div></div><!-- fragment -->
Kaizen8938bd32017-09-28 14:38:23 +010022332</div>
22333</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022334<a id="a2872d19dd10dc3117813d291c08e0383"></a>
Jenkins514be652019-02-28 12:25:18 +000022335<h2 class="memtitle"><span class="permalink"><a href="#a2872d19dd10dc3117813d291c08e0383">&#9670;&nbsp;</a></span>to_string() <span class="overload">[40/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022336
Kaizen8938bd32017-09-28 14:38:23 +010022337<div class="memitem">
22338<div class="memproto">
22339<table class="mlabels">
22340 <tr>
22341 <td class="mlabels-left">
22342 <table class="memname">
22343 <tr>
22344 <td class="memname">std::string arm_compute::to_string </td>
22345 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022346 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a9172da722f0a434e5cc07c0a3c115d93">PoolingType</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010022347 <td class="paramname"><em>type</em></td><td>)</td>
22348 <td></td>
22349 </tr>
22350 </table>
22351 </td>
22352 <td class="mlabels-right">
22353<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22354 </tr>
22355</table>
22356</div><div class="memdoc">
22357
Jenkinsb3a371b2018-05-23 11:36:53 +010022358<p>Formatted output of the Pooling Type. </p>
22359<dl class="params"><dt>Parameters</dt><dd>
22360 <table class="params">
22361 <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>Type to output.</td></tr>
22362 </table>
22363 </dd>
22364</dl>
22365<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010022366
Jenkins514be652019-02-28 12:25:18 +000022367<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01528">1528</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22368<div class="fragment"><div class="line"><a name="l01529"></a><span class="lineno"> 1529</span>&#160;{</div><div class="line"><a name="l01530"></a><span class="lineno"> 1530</span>&#160; std::stringstream str;</div><div class="line"><a name="l01531"></a><span class="lineno"> 1531</span>&#160; str &lt;&lt; type;</div><div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>&#160;}</div></div><!-- fragment -->
Kaizen8938bd32017-09-28 14:38:23 +010022369</div>
22370</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022371<a id="acef515348c5f7f73c89aa4b8a47a02bc"></a>
Jenkins514be652019-02-28 12:25:18 +000022372<h2 class="memtitle"><span class="permalink"><a href="#acef515348c5f7f73c89aa4b8a47a02bc">&#9670;&nbsp;</a></span>to_string() <span class="overload">[41/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022373
Kaizen8938bd32017-09-28 14:38:23 +010022374<div class="memitem">
22375<div class="memproto">
22376<table class="mlabels">
22377 <tr>
22378 <td class="mlabels-left">
22379 <table class="memname">
22380 <tr>
22381 <td class="memname">std::string arm_compute::to_string </td>
22382 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022383 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_pooling_layer_info.xhtml">PoolingLayerInfo</a> &amp;&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +010022384 <td class="paramname"><em>info</em></td><td>)</td>
22385 <td></td>
22386 </tr>
22387 </table>
22388 </td>
22389 <td class="mlabels-right">
22390<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22391 </tr>
22392</table>
22393</div><div class="memdoc">
22394
Jenkinsb3a371b2018-05-23 11:36:53 +010022395<p>Formatted output of the Pooling Layer Info. </p>
22396<dl class="params"><dt>Parameters</dt><dd>
22397 <table class="params">
22398 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
22399 </table>
22400 </dd>
22401</dl>
22402<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Kaizen8938bd32017-09-28 14:38:23 +010022403
Jenkins514be652019-02-28 12:25:18 +000022404<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01541">1541</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22405<div class="fragment"><div class="line"><a name="l01542"></a><span class="lineno"> 1542</span>&#160;{</div><div class="line"><a name="l01543"></a><span class="lineno"> 1543</span>&#160; std::stringstream str;</div><div class="line"><a name="l01544"></a><span class="lineno"> 1544</span>&#160; str &lt;&lt; <span class="stringliteral">&quot;{Type=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.pool_type() &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01545"></a><span class="lineno"> 1545</span>&#160; &lt;&lt; <span class="stringliteral">&quot;IsGlobalPooling=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.is_global_pooling();</div><div class="line"><a name="l01546"></a><span class="lineno"> 1546</span>&#160; <span class="keywordflow">if</span>(!<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.is_global_pooling())</div><div class="line"><a name="l01547"></a><span class="lineno"> 1547</span>&#160; {</div><div class="line"><a name="l01548"></a><span class="lineno"> 1548</span>&#160; str &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01549"></a><span class="lineno"> 1549</span>&#160; &lt;&lt; <span class="stringliteral">&quot;PoolSize=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.pool_size().width &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.pool_size().height &lt;&lt; <span class="stringliteral">&quot;,&quot;</span></div><div class="line"><a name="l01550"></a><span class="lineno"> 1550</span>&#160; &lt;&lt; <span class="stringliteral">&quot;PadStride=&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.pad_stride_info();</div><div class="line"><a name="l01551"></a><span class="lineno"> 1551</span>&#160; }</div><div class="line"><a name="l01552"></a><span class="lineno"> 1552</span>&#160; str &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01553"></a><span class="lineno"> 1553</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01554"></a><span class="lineno"> 1554</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022406</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000022407<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
22408
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022409</div>
22410</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022411<a id="ae62747a5179626328bf7e67c709d5fcf"></a>
Jenkins514be652019-02-28 12:25:18 +000022412<h2 class="memtitle"><span class="permalink"><a href="#ae62747a5179626328bf7e67c709d5fcf">&#9670;&nbsp;</a></span>to_string() <span class="overload">[42/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022413
22414<div class="memitem">
22415<div class="memproto">
22416<table class="mlabels">
22417 <tr>
22418 <td class="mlabels-left">
22419 <table class="memname">
22420 <tr>
22421 <td class="memname">std::string arm_compute::to_string </td>
22422 <td>(</td>
22423 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml">PriorBoxLayerInfo</a> &amp;&#160;</td>
22424 <td class="paramname"><em>info</em></td><td>)</td>
22425 <td></td>
22426 </tr>
22427 </table>
22428 </td>
22429 <td class="mlabels-right">
22430<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22431 </tr>
22432</table>
22433</div><div class="memdoc">
22434
Jenkins514be652019-02-28 12:25:18 +000022435<p>Formatted output of the <a class="el" href="classarm__compute_1_1_prior_box_layer_info.xhtml" title="PriorBox layer info.">PriorBoxLayerInfo</a>. </p>
Jenkinsb9abeae2018-11-22 11:58:08 +000022436<dl class="params"><dt>Parameters</dt><dd>
22437 <table class="params">
22438 <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>Type to output.</td></tr>
22439 </table>
22440 </dd>
22441</dl>
22442<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
22443
Jenkins514be652019-02-28 12:25:18 +000022444<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01562">1562</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22445<div class="fragment"><div class="line"><a name="l01563"></a><span class="lineno"> 1563</span>&#160;{</div><div class="line"><a name="l01564"></a><span class="lineno"> 1564</span>&#160; std::stringstream str;</div><div class="line"><a name="l01565"></a><span class="lineno"> 1565</span>&#160; str &lt;&lt; <span class="stringliteral">&quot;{&quot;</span>;</div><div class="line"><a name="l01566"></a><span class="lineno"> 1566</span>&#160; str &lt;&lt; <span class="stringliteral">&quot;Clip:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.clip()</div><div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>&#160; &lt;&lt; <span class="stringliteral">&quot;Flip:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.flip()</div><div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>&#160; &lt;&lt; <span class="stringliteral">&quot;StepX:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.steps()[0]</div><div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160; &lt;&lt; <span class="stringliteral">&quot;StepY:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.steps()[1]</div><div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>&#160; &lt;&lt; <span class="stringliteral">&quot;MinSizes:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.min_sizes().size()</div><div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160; &lt;&lt; <span class="stringliteral">&quot;MaxSizes:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.max_sizes().size()</div><div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160; &lt;&lt; <span class="stringliteral">&quot;ImgSizeX:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.img_size().x</div><div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>&#160; &lt;&lt; <span class="stringliteral">&quot;ImgSizeY:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.img_size().y</div><div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>&#160; &lt;&lt; <span class="stringliteral">&quot;Offset:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.offset()</div><div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>&#160; &lt;&lt; <span class="stringliteral">&quot;Variances:&quot;</span> &lt;&lt; <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">info</a>.variances().size();</div><div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>&#160; str &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01578"></a><span class="lineno"> 1578</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_a4f4125dba5283887b34f889b1c615c0c"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#a4f4125dba5283887b34f889b1c615c0c">arm_compute::test::validation::info</a></div><div class="ttdeci">info</div><div class="ttdef"><b>Definition:</b> <a href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">ConvolutionLayer.cpp:174</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022446</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000022447<p class="reference">References <a class="el" href="validation_2_c_l_2_convolution_layer_8cpp_source.xhtml#l00174">arm_compute::test::validation::info</a>.</p>
22448
Jenkinsb9abeae2018-11-22 11:58:08 +000022449</div>
22450</div>
22451<a id="ae4ead564f3c96ea5f1ec7fe035b941f3"></a>
Jenkins514be652019-02-28 12:25:18 +000022452<h2 class="memtitle"><span class="permalink"><a href="#ae4ead564f3c96ea5f1ec7fe035b941f3">&#9670;&nbsp;</a></span>to_string() <span class="overload">[43/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022453
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022454<div class="memitem">
22455<div class="memproto">
22456<table class="mlabels">
22457 <tr>
22458 <td class="mlabels-left">
22459 <table class="memname">
22460 <tr>
22461 <td class="memname">std::string arm_compute::to_string </td>
22462 <td>(</td>
22463 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#af00a42ecad444bbda75cde1b64bd7e72">arm_compute::PhaseType</a> &amp;&#160;</td>
22464 <td class="paramname"><em>type</em></td><td>)</td>
22465 <td></td>
22466 </tr>
22467 </table>
22468 </td>
22469 <td class="mlabels-right">
22470<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22471 </tr>
22472</table>
22473</div><div class="memdoc">
22474
Jenkinsb3a371b2018-05-23 11:36:53 +010022475<p>Formatted output of the PhaseType type. </p>
22476<dl class="params"><dt>Parameters</dt><dd>
22477 <table class="params">
22478 <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>Type to output.</td></tr>
22479 </table>
22480 </dd>
22481</dl>
22482<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022483
Jenkins514be652019-02-28 12:25:18 +000022484<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01630">1630</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22485<div class="fragment"><div class="line"><a name="l01631"></a><span class="lineno"> 1631</span>&#160;{</div><div class="line"><a name="l01632"></a><span class="lineno"> 1632</span>&#160; std::stringstream str;</div><div class="line"><a name="l01633"></a><span class="lineno"> 1633</span>&#160; str &lt;&lt; type;</div><div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01635"></a><span class="lineno"> 1635</span>&#160;}</div></div><!-- fragment -->
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022486</div>
22487</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022488<a id="a42e6f8761f01b5846f56c3b8025c8c0a"></a>
Jenkins514be652019-02-28 12:25:18 +000022489<h2 class="memtitle"><span class="permalink"><a href="#a42e6f8761f01b5846f56c3b8025c8c0a">&#9670;&nbsp;</a></span>to_string() <span class="overload">[44/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022490
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022491<div class="memitem">
22492<div class="memproto">
22493<table class="mlabels">
22494 <tr>
22495 <td class="mlabels-left">
22496 <table class="memname">
22497 <tr>
22498 <td class="memname">std::string arm_compute::to_string </td>
22499 <td>(</td>
22500 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a7b3ec6413f000b02fdb4e39a951d9f8a">arm_compute::MagnitudeType</a> &amp;&#160;</td>
22501 <td class="paramname"><em>type</em></td><td>)</td>
22502 <td></td>
22503 </tr>
22504 </table>
22505 </td>
22506 <td class="mlabels-right">
22507<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22508 </tr>
22509</table>
22510</div><div class="memdoc">
22511
Jenkinsb3a371b2018-05-23 11:36:53 +010022512<p>Formatted output of the MagnitudeType type. </p>
22513<dl class="params"><dt>Parameters</dt><dd>
22514 <table class="params">
22515 <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>Type to output.</td></tr>
22516 </table>
22517 </dd>
22518</dl>
22519<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022520
Jenkins514be652019-02-28 12:25:18 +000022521<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01667">1667</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22522<div class="fragment"><div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>&#160;{</div><div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>&#160; std::stringstream str;</div><div class="line"><a name="l01670"></a><span class="lineno"> 1670</span>&#160; str &lt;&lt; type;</div><div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160;}</div></div><!-- fragment -->
Anthony Barbierf45d5a92018-01-24 16:23:15 +000022523</div>
22524</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022525<a id="a950ba288e8136db4bf52f7c51dea20eb"></a>
Jenkins514be652019-02-28 12:25:18 +000022526<h2 class="memtitle"><span class="permalink"><a href="#a950ba288e8136db4bf52f7c51dea20eb">&#9670;&nbsp;</a></span>to_string() <span class="overload">[45/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022527
Anthony Barbierf45d5a92018-01-24 16:23:15 +000022528<div class="memitem">
22529<div class="memproto">
22530<table class="mlabels">
22531 <tr>
22532 <td class="mlabels-left">
22533 <table class="memname">
22534 <tr>
22535 <td class="memname">std::string arm_compute::to_string </td>
22536 <td>(</td>
22537 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a673665b4587a2956fcbad5f0e9ba89d3">HOGNormType</a> &amp;&#160;</td>
22538 <td class="paramname"><em>type</em></td><td>)</td>
22539 <td></td>
22540 </tr>
22541 </table>
22542 </td>
22543 <td class="mlabels-right">
22544<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22545 </tr>
22546</table>
22547</div><div class="memdoc">
22548
Jenkinsb3a371b2018-05-23 11:36:53 +010022549<p>Formatted output of the HOGNormType type. </p>
22550<dl class="params"><dt>Parameters</dt><dd>
22551 <table class="params">
22552 <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>Type to output</td></tr>
22553 </table>
22554 </dd>
22555</dl>
22556<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbierf45d5a92018-01-24 16:23:15 +000022557
Jenkins514be652019-02-28 12:25:18 +000022558<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01707">1707</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22559<div class="fragment"><div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>&#160;{</div><div class="line"><a name="l01709"></a><span class="lineno"> 1709</span>&#160; std::stringstream str;</div><div class="line"><a name="l01710"></a><span class="lineno"> 1710</span>&#160; str &lt;&lt; type;</div><div class="line"><a name="l01711"></a><span class="lineno"> 1711</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01712"></a><span class="lineno"> 1712</span>&#160;}</div></div><!-- fragment -->
Anthony Barbierf45d5a92018-01-24 16:23:15 +000022560</div>
22561</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022562<a id="aee88a2c259879eb9dc18cb5965e87c29"></a>
Jenkins514be652019-02-28 12:25:18 +000022563<h2 class="memtitle"><span class="permalink"><a href="#aee88a2c259879eb9dc18cb5965e87c29">&#9670;&nbsp;</a></span>to_string() <span class="overload">[46/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022564
Anthony Barbierf45d5a92018-01-24 16:23:15 +000022565<div class="memitem">
22566<div class="memproto">
22567<table class="mlabels">
22568 <tr>
22569 <td class="mlabels-left">
22570 <table class="memname">
22571 <tr>
22572 <td class="memname">std::string arm_compute::to_string </td>
22573 <td>(</td>
22574 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_size2_d.xhtml">Size2D</a> &amp;&#160;</td>
22575 <td class="paramname"><em>type</em></td><td>)</td>
22576 <td></td>
22577 </tr>
22578 </table>
22579 </td>
22580 <td class="mlabels-right">
22581<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22582 </tr>
22583</table>
22584</div><div class="memdoc">
22585
Jenkins514be652019-02-28 12:25:18 +000022586<p>Formatted output of the <a class="el" href="classarm__compute_1_1_size2_d.xhtml" title="Class for specifying the size of an image or rectangle.">Size2D</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010022587<dl class="params"><dt>Parameters</dt><dd>
22588 <table class="params">
22589 <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>Type to output</td></tr>
22590 </table>
22591 </dd>
22592</dl>
22593<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbierf45d5a92018-01-24 16:23:15 +000022594
Jenkins514be652019-02-28 12:25:18 +000022595<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01734">1734</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22596<div class="fragment"><div class="line"><a name="l01735"></a><span class="lineno"> 1735</span>&#160;{</div><div class="line"><a name="l01736"></a><span class="lineno"> 1736</span>&#160; std::stringstream str;</div><div class="line"><a name="l01737"></a><span class="lineno"> 1737</span>&#160; str &lt;&lt; type;</div><div class="line"><a name="l01738"></a><span class="lineno"> 1738</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01739"></a><span class="lineno"> 1739</span>&#160;}</div></div><!-- fragment -->
Anthony Barbierf45d5a92018-01-24 16:23:15 +000022597</div>
22598</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022599<a id="a3cf43a216912b361eaffc3c71452a31e"></a>
Jenkins514be652019-02-28 12:25:18 +000022600<h2 class="memtitle"><span class="permalink"><a href="#a3cf43a216912b361eaffc3c71452a31e">&#9670;&nbsp;</a></span>to_string() <span class="overload">[47/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022601
Anthony Barbierf45d5a92018-01-24 16:23:15 +000022602<div class="memitem">
22603<div class="memproto">
22604<table class="mlabels">
22605 <tr>
22606 <td class="mlabels-left">
22607 <table class="memname">
22608 <tr>
22609 <td class="memname">std::string arm_compute::to_string </td>
22610 <td>(</td>
22611 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml">HOGInfo</a> &amp;&#160;</td>
22612 <td class="paramname"><em>type</em></td><td>)</td>
22613 <td></td>
22614 </tr>
22615 </table>
22616 </td>
22617 <td class="mlabels-right">
22618<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22619 </tr>
22620</table>
22621</div><div class="memdoc">
22622
Jenkins514be652019-02-28 12:25:18 +000022623<p>Formatted output of the <a class="el" href="classarm__compute_1_1_h_o_g_info.xhtml" title="Store the HOG&#39;s metadata.">HOGInfo</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010022624<dl class="params"><dt>Parameters</dt><dd>
22625 <table class="params">
22626 <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>Type to output</td></tr>
22627 </table>
22628 </dd>
22629</dl>
22630<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbierf45d5a92018-01-24 16:23:15 +000022631
Jenkins514be652019-02-28 12:25:18 +000022632<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01768">1768</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22633<div class="fragment"><div class="line"><a name="l01769"></a><span class="lineno"> 1769</span>&#160;{</div><div class="line"><a name="l01770"></a><span class="lineno"> 1770</span>&#160; std::stringstream str;</div><div class="line"><a name="l01771"></a><span class="lineno"> 1771</span>&#160; str &lt;&lt; type;</div><div class="line"><a name="l01772"></a><span class="lineno"> 1772</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01773"></a><span class="lineno"> 1773</span>&#160;}</div></div><!-- fragment -->
Kaizen8938bd32017-09-28 14:38:23 +010022634</div>
22635</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022636<a id="a853d44a32a328fb4455f6200a11c4785"></a>
Jenkins514be652019-02-28 12:25:18 +000022637<h2 class="memtitle"><span class="permalink"><a href="#a853d44a32a328fb4455f6200a11c4785">&#9670;&nbsp;</a></span>to_string() <span class="overload">[48/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022638
Anthony Barbier06ea0482018-02-22 15:45:35 +000022639<div class="memitem">
22640<div class="memproto">
22641<table class="mlabels">
22642 <tr>
22643 <td class="mlabels-left">
22644 <table class="memname">
22645 <tr>
22646 <td class="memname">std::string arm_compute::to_string </td>
22647 <td>(</td>
22648 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a683661ae75dcb7aef16b9c9bde31517d">ConvolutionMethod</a> &amp;&#160;</td>
22649 <td class="paramname"><em>conv_method</em></td><td>)</td>
22650 <td></td>
22651 </tr>
22652 </table>
22653 </td>
22654 <td class="mlabels-right">
22655<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22656 </tr>
22657</table>
22658</div><div class="memdoc">
22659
Jenkinsb3a371b2018-05-23 11:36:53 +010022660<p>Formatted output of the ConvolutionMethod type. </p>
22661<dl class="params"><dt>Parameters</dt><dd>
22662 <table class="params">
22663 <tr><td class="paramdir">[in]</td><td class="paramname">conv_method</td><td>Type to output</td></tr>
22664 </table>
22665 </dd>
22666</dl>
22667<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier06ea0482018-02-22 15:45:35 +000022668
Jenkins514be652019-02-28 12:25:18 +000022669<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01808">1808</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22670<div class="fragment"><div class="line"><a name="l01809"></a><span class="lineno"> 1809</span>&#160;{</div><div class="line"><a name="l01810"></a><span class="lineno"> 1810</span>&#160; std::stringstream str;</div><div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>&#160; str &lt;&lt; conv_method;</div><div class="line"><a name="l01812"></a><span class="lineno"> 1812</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01813"></a><span class="lineno"> 1813</span>&#160;}</div></div><!-- fragment -->
Anthony Barbier06ea0482018-02-22 15:45:35 +000022671</div>
22672</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022673<a id="aee29ccfc095313663fc954f581ddf40a"></a>
Jenkins514be652019-02-28 12:25:18 +000022674<h2 class="memtitle"><span class="permalink"><a href="#aee29ccfc095313663fc954f581ddf40a">&#9670;&nbsp;</a></span>to_string() <span class="overload">[49/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022675
Anthony Barbier06ea0482018-02-22 15:45:35 +000022676<div class="memitem">
22677<div class="memproto">
22678<table class="mlabels">
22679 <tr>
22680 <td class="mlabels-left">
22681 <table class="memname">
22682 <tr>
22683 <td class="memname">std::string arm_compute::to_string </td>
22684 <td>(</td>
22685 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a735ac6c2a02e320969625308810444f3">GPUTarget</a> &amp;&#160;</td>
22686 <td class="paramname"><em>gpu_target</em></td><td>)</td>
22687 <td></td>
22688 </tr>
22689 </table>
22690 </td>
22691 <td class="mlabels-right">
22692<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22693 </tr>
22694</table>
22695</div><div class="memdoc">
22696
Jenkinsb3a371b2018-05-23 11:36:53 +010022697<p>Formatted output of the GPUTarget type. </p>
22698<dl class="params"><dt>Parameters</dt><dd>
22699 <table class="params">
22700 <tr><td class="paramdir">[in]</td><td class="paramname">gpu_target</td><td>Type to output</td></tr>
22701 </table>
22702 </dd>
22703</dl>
22704<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
Anthony Barbier06ea0482018-02-22 15:45:35 +000022705
Jenkins514be652019-02-28 12:25:18 +000022706<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01881">1881</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22707<div class="fragment"><div class="line"><a name="l01882"></a><span class="lineno"> 1882</span>&#160;{</div><div class="line"><a name="l01883"></a><span class="lineno"> 1883</span>&#160; std::stringstream str;</div><div class="line"><a name="l01884"></a><span class="lineno"> 1884</span>&#160; str &lt;&lt; gpu_target;</div><div class="line"><a name="l01885"></a><span class="lineno"> 1885</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01886"></a><span class="lineno"> 1886</span>&#160;}</div></div><!-- fragment -->
22708</div>
22709</div>
22710<a id="a41c7dc2aa88c4e30effb2e3f550de481"></a>
22711<h2 class="memtitle"><span class="permalink"><a href="#a41c7dc2aa88c4e30effb2e3f550de481">&#9670;&nbsp;</a></span>to_string() <span class="overload">[50/57]</span></h2>
22712
22713<div class="memitem">
22714<div class="memproto">
22715<table class="mlabels">
22716 <tr>
22717 <td class="mlabels-left">
22718 <table class="memname">
22719 <tr>
22720 <td class="memname">std::string arm_compute::to_string </td>
22721 <td>(</td>
22722 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#ad818ba0ecd4a87d8f1bb0d5b17f07830">DetectionOutputLayerCodeType</a> &amp;&#160;</td>
22723 <td class="paramname"><em>detection_code</em></td><td>)</td>
22724 <td></td>
22725 </tr>
22726 </table>
22727 </td>
22728 <td class="mlabels-right">
22729<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22730 </tr>
22731</table>
22732</div><div class="memdoc">
22733
22734<p>Formatted output of the DetectionOutputLayerCodeType type. </p>
22735<dl class="params"><dt>Parameters</dt><dd>
22736 <table class="params">
22737 <tr><td class="paramdir">[in]</td><td class="paramname">detection_code</td><td>Type to output</td></tr>
22738 </table>
22739 </dd>
22740</dl>
22741<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
22742
22743<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01942">1942</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22744<div class="fragment"><div class="line"><a name="l01943"></a><span class="lineno"> 1943</span>&#160;{</div><div class="line"><a name="l01944"></a><span class="lineno"> 1944</span>&#160; std::stringstream str;</div><div class="line"><a name="l01945"></a><span class="lineno"> 1945</span>&#160; str &lt;&lt; detection_code;</div><div class="line"><a name="l01946"></a><span class="lineno"> 1946</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01947"></a><span class="lineno"> 1947</span>&#160;}</div></div><!-- fragment -->
22745</div>
22746</div>
22747<a id="a4084858fda1caec39457dd70322e6bd6"></a>
22748<h2 class="memtitle"><span class="permalink"><a href="#a4084858fda1caec39457dd70322e6bd6">&#9670;&nbsp;</a></span>to_string() <span class="overload">[51/57]</span></h2>
22749
22750<div class="memitem">
22751<div class="memproto">
22752<table class="mlabels">
22753 <tr>
22754 <td class="mlabels-left">
22755 <table class="memname">
22756 <tr>
22757 <td class="memname">std::string arm_compute::to_string </td>
22758 <td>(</td>
22759 <td class="paramtype">const <a class="el" href="classarm__compute_1_1_detection_output_layer_info.xhtml">DetectionOutputLayerInfo</a> &amp;&#160;</td>
22760 <td class="paramname"><em>detection_info</em></td><td>)</td>
22761 <td></td>
22762 </tr>
22763 </table>
22764 </td>
22765 <td class="mlabels-right">
22766<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22767 </tr>
22768</table>
22769</div><div class="memdoc">
22770
22771<p>Formatted output of the <a class="el" href="classarm__compute_1_1_detection_output_layer_info.xhtml" title="Detection Output layer info.">DetectionOutputLayerInfo</a> type. </p>
22772<dl class="params"><dt>Parameters</dt><dd>
22773 <table class="params">
22774 <tr><td class="paramdir">[in]</td><td class="paramname">detection_info</td><td>Type to output</td></tr>
22775 </table>
22776 </dd>
22777</dl>
22778<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
22779
22780<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01980">1980</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22781<div class="fragment"><div class="line"><a name="l01981"></a><span class="lineno"> 1981</span>&#160;{</div><div class="line"><a name="l01982"></a><span class="lineno"> 1982</span>&#160; std::stringstream str;</div><div class="line"><a name="l01983"></a><span class="lineno"> 1983</span>&#160; str &lt;&lt; detection_info;</div><div class="line"><a name="l01984"></a><span class="lineno"> 1984</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01985"></a><span class="lineno"> 1985</span>&#160;}</div></div><!-- fragment -->
Jenkinsb3a371b2018-05-23 11:36:53 +010022782</div>
22783</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022784<a id="a905d7ec8787e8c4b7e88b0a2faaccd1f"></a>
Jenkins514be652019-02-28 12:25:18 +000022785<h2 class="memtitle"><span class="permalink"><a href="#a905d7ec8787e8c4b7e88b0a2faaccd1f">&#9670;&nbsp;</a></span>to_string() <span class="overload">[52/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022786
Jenkinsb3a371b2018-05-23 11:36:53 +010022787<div class="memitem">
22788<div class="memproto">
22789<table class="mlabels">
22790 <tr>
22791 <td class="mlabels-left">
22792 <table class="memname">
22793 <tr>
22794 <td class="memname">std::string arm_compute::to_string </td>
22795 <td>(</td>
22796 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_detection_window.xhtml">DetectionWindow</a> &amp;&#160;</td>
22797 <td class="paramname"><em>detection_window</em></td><td>)</td>
22798 <td></td>
22799 </tr>
22800 </table>
22801 </td>
22802 <td class="mlabels-right">
22803<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22804 </tr>
22805</table>
22806</div><div class="memdoc">
22807
Jenkins514be652019-02-28 12:25:18 +000022808<p>Formatted output of the <a class="el" href="structarm__compute_1_1_detection_window.xhtml" title="Detection window used for the object detection.">DetectionWindow</a> type. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010022809<dl class="params"><dt>Parameters</dt><dd>
22810 <table class="params">
22811 <tr><td class="paramdir">[in]</td><td class="paramname">detection_window</td><td>Type to output</td></tr>
22812 </table>
22813 </dd>
22814</dl>
22815<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
22816
Jenkins514be652019-02-28 12:25:18 +000022817<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l01992">1992</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22818<div class="fragment"><div class="line"><a name="l01993"></a><span class="lineno"> 1993</span>&#160;{</div><div class="line"><a name="l01994"></a><span class="lineno"> 1994</span>&#160; std::stringstream str;</div><div class="line"><a name="l01995"></a><span class="lineno"> 1995</span>&#160; str &lt;&lt; detection_window;</div><div class="line"><a name="l01996"></a><span class="lineno"> 1996</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l01997"></a><span class="lineno"> 1997</span>&#160;}</div></div><!-- fragment -->
Jenkinsb3a371b2018-05-23 11:36:53 +010022819</div>
22820</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022821<a id="a51fc944d872cf00c1e8e71ccdf8be264"></a>
Jenkins514be652019-02-28 12:25:18 +000022822<h2 class="memtitle"><span class="permalink"><a href="#a51fc944d872cf00c1e8e71ccdf8be264">&#9670;&nbsp;</a></span>to_string() <span class="overload">[53/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022823
Jenkinsb3a371b2018-05-23 11:36:53 +010022824<div class="memitem">
22825<div class="memproto">
22826<table class="mlabels">
22827 <tr>
22828 <td class="mlabels-left">
22829 <table class="memname">
22830 <tr>
22831 <td class="memname">std::string arm_compute::to_string </td>
22832 <td>(</td>
22833 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#a08c1503414e23f5dd10ff83492685453">Termination</a> &amp;&#160;</td>
22834 <td class="paramname"><em>termination</em></td><td>)</td>
22835 <td></td>
22836 </tr>
22837 </table>
22838 </td>
22839 <td class="mlabels-right">
22840<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22841 </tr>
22842</table>
22843</div><div class="memdoc">
22844
22845<p>Formatted output of the Termination type. </p>
22846<dl class="params"><dt>Parameters</dt><dd>
22847 <table class="params">
22848 <tr><td class="paramdir">[in]</td><td class="paramname">termination</td><td>Type to output</td></tr>
22849 </table>
22850 </dd>
22851</dl>
22852<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
22853
Jenkins514be652019-02-28 12:25:18 +000022854<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l02032">2032</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22855<div class="fragment"><div class="line"><a name="l02033"></a><span class="lineno"> 2033</span>&#160;{</div><div class="line"><a name="l02034"></a><span class="lineno"> 2034</span>&#160; std::stringstream str;</div><div class="line"><a name="l02035"></a><span class="lineno"> 2035</span>&#160; str &lt;&lt; termination;</div><div class="line"><a name="l02036"></a><span class="lineno"> 2036</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l02037"></a><span class="lineno"> 2037</span>&#160;}</div></div><!-- fragment -->
Jenkins52ba29e2018-08-29 15:32:11 +000022856</div>
22857</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022858<a id="add33a9d992aeaa69d6940fd896ee5e75"></a>
Jenkins514be652019-02-28 12:25:18 +000022859<h2 class="memtitle"><span class="permalink"><a href="#add33a9d992aeaa69d6940fd896ee5e75">&#9670;&nbsp;</a></span>to_string() <span class="overload">[54/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022860
Jenkins52ba29e2018-08-29 15:32:11 +000022861<div class="memitem">
22862<div class="memproto">
22863<table class="mlabels">
22864 <tr>
22865 <td class="mlabels-left">
22866 <table class="memname">
22867 <tr>
22868 <td class="memname">std::string arm_compute::to_string </td>
22869 <td>(</td>
22870 <td class="paramtype">const <a class="el" href="namespacearm__compute.xhtml#aa41d7415a5386798147cccae2333d5d4">CPUModel</a> &amp;&#160;</td>
22871 <td class="paramname"><em>cpu_model</em></td><td>)</td>
22872 <td></td>
22873 </tr>
22874 </table>
22875 </td>
22876 <td class="mlabels-right">
22877<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22878 </tr>
22879</table>
22880</div><div class="memdoc">
22881
22882<p>Formatted output of the CPUModel type. </p>
22883<dl class="params"><dt>Parameters</dt><dd>
22884 <table class="params">
22885 <tr><td class="paramdir">[in]</td><td class="paramname">cpu_model</td><td>Model to output</td></tr>
22886 </table>
22887 </dd>
22888</dl>
22889<dl class="section return"><dt>Returns</dt><dd>Formatted string. </dd></dl>
22890
Jenkins514be652019-02-28 12:25:18 +000022891<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l02081">2081</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22892<div class="fragment"><div class="line"><a name="l02082"></a><span class="lineno"> 2082</span>&#160;{</div><div class="line"><a name="l02083"></a><span class="lineno"> 2083</span>&#160; std::stringstream str;</div><div class="line"><a name="l02084"></a><span class="lineno"> 2084</span>&#160; str &lt;&lt; cpu_model;</div><div class="line"><a name="l02085"></a><span class="lineno"> 2085</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l02086"></a><span class="lineno"> 2086</span>&#160;}</div></div><!-- fragment -->
Jenkins52ba29e2018-08-29 15:32:11 +000022893</div>
22894</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022895<a id="a6411da4e87e64e8859f8b725645ee9aa"></a>
Jenkins514be652019-02-28 12:25:18 +000022896<h2 class="memtitle"><span class="permalink"><a href="#a6411da4e87e64e8859f8b725645ee9aa">&#9670;&nbsp;</a></span>to_string() <span class="overload">[55/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022897
Jenkins52ba29e2018-08-29 15:32:11 +000022898<div class="memitem">
22899<div class="memproto">
22900 <table class="memname">
22901 <tr>
22902 <td class="memname">std::string arm_compute::to_string </td>
22903 <td>(</td>
22904 <td class="paramtype">const std::vector&lt; T &gt; &amp;&#160;</td>
22905 <td class="paramname"><em>args</em></td><td>)</td>
22906 <td></td>
22907 </tr>
22908 </table>
22909</div><div class="memdoc">
22910
22911<p>Formatted output of a vector of objects. </p>
22912<dl class="params"><dt>Parameters</dt><dd>
22913 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000022914 <tr><td class="paramdir">[in]</td><td class="paramname">args</td><td><a class="el" href="struct_vector.xhtml" title="Structure to hold Vector information.">Vector</a> of objects to print</td></tr>
Jenkins52ba29e2018-08-29 15:32:11 +000022915 </table>
22916 </dd>
22917</dl>
22918<dl class="section return"><dt>Returns</dt><dd>String representing args. </dd></dl>
22919
Jenkins514be652019-02-28 12:25:18 +000022920<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l02145">2145</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22921<div class="fragment"><div class="line"><a name="l02146"></a><span class="lineno"> 2146</span>&#160;{</div><div class="line"><a name="l02147"></a><span class="lineno"> 2147</span>&#160; std::stringstream str;</div><div class="line"><a name="l02148"></a><span class="lineno"> 2148</span>&#160; str &lt;&lt; args;</div><div class="line"><a name="l02149"></a><span class="lineno"> 2149</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l02150"></a><span class="lineno"> 2150</span>&#160;}</div></div><!-- fragment -->
Jenkinsb3a371b2018-05-23 11:36:53 +010022922</div>
22923</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022924<a id="a37cc282b0852aab04b13a6e6566adda7"></a>
Jenkins514be652019-02-28 12:25:18 +000022925<h2 class="memtitle"><span class="permalink"><a href="#a37cc282b0852aab04b13a6e6566adda7">&#9670;&nbsp;</a></span>to_string() <span class="overload">[56/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022926
Jenkinsb3a371b2018-05-23 11:36:53 +010022927<div class="memitem">
22928<div class="memproto">
22929<table class="mlabels">
22930 <tr>
22931 <td class="mlabels-left">
22932 <table class="memname">
22933 <tr>
22934 <td class="memname">std::string arm_compute::to_string </td>
22935 <td>(</td>
22936 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_winograd_info.xhtml">WinogradInfo</a> &amp;&#160;</td>
22937 <td class="paramname"><em>type</em></td><td>)</td>
22938 <td></td>
22939 </tr>
22940 </table>
22941 </td>
22942 <td class="mlabels-right">
22943<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22944 </tr>
22945</table>
22946</div><div class="memdoc">
22947
Jenkins514be652019-02-28 12:25:18 +000022948<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l02163">2163</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22949<div class="fragment"><div class="line"><a name="l02164"></a><span class="lineno"> 2164</span>&#160;{</div><div class="line"><a name="l02165"></a><span class="lineno"> 2165</span>&#160; std::stringstream str;</div><div class="line"><a name="l02166"></a><span class="lineno"> 2166</span>&#160; str &lt;&lt; type;</div><div class="line"><a name="l02167"></a><span class="lineno"> 2167</span>&#160; <span class="keywordflow">return</span> str.str();</div><div class="line"><a name="l02168"></a><span class="lineno"> 2168</span>&#160;}</div></div><!-- fragment -->
Jenkins52ba29e2018-08-29 15:32:11 +000022950</div>
22951</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022952<a id="a1d8c24abe3cf6edd704d126d1d2a5420"></a>
Jenkins514be652019-02-28 12:25:18 +000022953<h2 class="memtitle"><span class="permalink"><a href="#a1d8c24abe3cf6edd704d126d1d2a5420">&#9670;&nbsp;</a></span>to_string() <span class="overload">[57/57]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000022954
Jenkins52ba29e2018-08-29 15:32:11 +000022955<div class="memitem">
22956<div class="memproto">
22957<table class="mlabels">
22958 <tr>
22959 <td class="mlabels-left">
22960 <table class="memname">
22961 <tr>
22962 <td class="memname">std::string arm_compute::to_string </td>
22963 <td>(</td>
22964 <td class="paramtype">const T &amp;&#160;</td>
22965 <td class="paramname"><em>val</em></td><td>)</td>
22966 <td></td>
22967 </tr>
22968 </table>
22969 </td>
22970 <td class="mlabels-right">
22971<span class="mlabels"><span class="mlabel">inline</span></span> </td>
22972 </tr>
22973</table>
22974</div><div class="memdoc">
22975
22976<p>Fallback method: try to use std::to_string: </p>
22977<dl class="params"><dt>Parameters</dt><dd>
22978 <table class="params">
22979 <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>Value to convert to string</td></tr>
22980 </table>
22981 </dd>
22982</dl>
22983<dl class="section return"><dt>Returns</dt><dd>String representing val. </dd></dl>
22984
Jenkins514be652019-02-28 12:25:18 +000022985<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l02177">2177</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
22986<div class="fragment"><div class="line"><a name="l02178"></a><span class="lineno"> 2178</span>&#160;{</div><div class="line"><a name="l02179"></a><span class="lineno"> 2179</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a1d8c24abe3cf6edd704d126d1d2a5420">support::cpp11::to_string</a>(val);</div><div class="line"><a name="l02180"></a><span class="lineno"> 2180</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a1d8c24abe3cf6edd704d126d1d2a5420"><div class="ttname"><a href="namespacearm__compute.xhtml#a1d8c24abe3cf6edd704d126d1d2a5420">arm_compute::to_string</a></div><div class="ttdeci">std::string to_string(const T &amp;val)</div><div class="ttdoc">Fallback method: try to use std::to_string:</div><div class="ttdef"><b>Definition:</b> <a href="utils_2_type_printer_8h_source.xhtml#l02177">TypePrinter.h:2177</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000022987</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000022988<p class="reference">References <a class="el" href="_toolchain_support_8h_source.xhtml#l00210">arm_compute::support::cpp11::to_string()</a>.</p>
22989
Jenkins52ba29e2018-08-29 15:32:11 +000022990</div>
22991</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000022992<a id="ad023d4ca1d3facf3975c941fd728a6f4"></a>
22993<h2 class="memtitle"><span class="permalink"><a href="#ad023d4ca1d3facf3975c941fd728a6f4">&#9670;&nbsp;</a></span>to_string_if_not_null()</h2>
22994
Jenkins52ba29e2018-08-29 15:32:11 +000022995<div class="memitem">
22996<div class="memproto">
22997 <table class="memname">
22998 <tr>
22999 <td class="memname">std::string arm_compute::to_string_if_not_null </td>
23000 <td>(</td>
23001 <td class="paramtype">T *&#160;</td>
23002 <td class="paramname"><em>arg</em></td><td>)</td>
23003 <td></td>
23004 </tr>
23005 </table>
23006</div><div class="memdoc">
23007
23008<p>Formatted output if arg is not null. </p>
23009<dl class="params"><dt>Parameters</dt><dd>
23010 <table class="params">
23011 <tr><td class="paramdir">[in]</td><td class="paramname">arg</td><td>Object to print</td></tr>
23012 </table>
23013 </dd>
23014</dl>
23015<dl class="section return"><dt>Returns</dt><dd>String representing arg. </dd></dl>
23016
Jenkinsb9abeae2018-11-22 11:58:08 +000023017<p class="definition">Definition at line <a class="el" href="utils_2_type_printer_8h_source.xhtml#l00051">51</a> of file <a class="el" href="utils_2_type_printer_8h_source.xhtml">TypePrinter.h</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000023018<div class="fragment"><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;{</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">if</span>(arg == <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; {</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;nullptr&quot;</span>;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; }</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; {</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#a1d8c24abe3cf6edd704d126d1d2a5420">to_string</a>(*arg);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; }</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_a1d8c24abe3cf6edd704d126d1d2a5420"><div class="ttname"><a href="namespacearm__compute.xhtml#a1d8c24abe3cf6edd704d126d1d2a5420">arm_compute::to_string</a></div><div class="ttdeci">std::string to_string(const T &amp;val)</div><div class="ttdoc">Fallback method: try to use std::to_string:</div><div class="ttdef"><b>Definition:</b> <a href="utils_2_type_printer_8h_source.xhtml#l02177">TypePrinter.h:2177</a></div></div>
Jenkins52ba29e2018-08-29 15:32:11 +000023019</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000023020<p class="reference">References <a class="el" href="tests_2_type_printer_8h_source.xhtml#l00064">to_string()</a>.</p>
23021
Anthony Barbier06ea0482018-02-22 15:45:35 +000023022</div>
23023</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000023024<a id="afc4bd8e872567d9c4c57d89eb0bb3da1"></a>
23025<h2 class="memtitle"><span class="permalink"><a href="#afc4bd8e872567d9c4c57d89eb0bb3da1">&#9670;&nbsp;</a></span>update_window_and_padding()</h2>
23026
Anthony Barbier871448e2017-03-24 14:54:29 +000023027<div class="memitem">
23028<div class="memproto">
23029 <table class="memname">
23030 <tr>
23031 <td class="memname">bool arm_compute::update_window_and_padding </td>
23032 <td>(</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000023033 <td class="paramtype"><a class="el" href="classarm__compute_1_1_window.xhtml">Window</a> &amp;&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000023034 <td class="paramname"><em>win</em>, </td>
23035 </tr>
23036 <tr>
23037 <td class="paramkey"></td>
23038 <td></td>
23039 <td class="paramtype">Ts &amp;&amp;...&#160;</td>
23040 <td class="paramname"><em>patterns</em>&#160;</td>
23041 </tr>
23042 <tr>
23043 <td></td>
23044 <td>)</td>
23045 <td></td><td></td>
23046 </tr>
23047 </table>
23048</div><div class="memdoc">
23049
23050<p>Update window and padding size for each of the access patterns. </p>
23051<p>First the window size is reduced based on all access patterns that are not allowed to modify the padding of the underlying tensor. Then the padding of the remaining tensors is increased to match the window.</p>
23052<dl class="params"><dt>Parameters</dt><dd>
23053 <table class="params">
Jenkins514be652019-02-28 12:25:18 +000023054 <tr><td class="paramdir">[in]</td><td class="paramname">win</td><td><a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a> that is used by the kernel. </td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000023055 <tr><td class="paramdir">[in]</td><td class="paramname">patterns</td><td>Access patterns used to calculate the final window and padding.</td></tr>
23056 </table>
23057 </dd>
23058</dl>
23059<dl class="section return"><dt>Returns</dt><dd>True if the window has been changed. Changes to the padding do not influence the returned value. </dd></dl>
23060
Jenkins514be652019-02-28 12:25:18 +000023061<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00402">402</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
23062<div class="fragment"><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;{</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordtype">bool</span> window_changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <a class="code" href="namespacearm__compute_1_1utility.xhtml#a067ebd28103d827b6ec17032e2344064">utility::for_each</a>([&amp;](<span class="keyword">const</span> IAccessWindow &amp; w)</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; {</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; window_changed |= w.update_window_if_needed(win);</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; },</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; patterns...);</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordtype">bool</span> padding_changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <a class="code" href="namespacearm__compute_1_1utility.xhtml#a067ebd28103d827b6ec17032e2344064">utility::for_each</a>([&amp;](IAccessWindow &amp; w)</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; {</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; padding_changed |= w.update_padding_if_needed(win);</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; },</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; patterns...);</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">return</span> window_changed;</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1utility_xhtml_a067ebd28103d827b6ec17032e2344064"><div class="ttname"><a href="namespacearm__compute_1_1utility.xhtml#a067ebd28103d827b6ec17032e2344064">arm_compute::utility::for_each</a></div><div class="ttdeci">void for_each(F &amp;&amp;)</div><div class="ttdoc">Base case of for_each.</div><div class="ttdef"><b>Definition:</b> <a href="_utility_8h_source.xhtml#l00093">Utility.h:93</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +010023063</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000023064<p class="reference">References <a class="el" href="_utility_8h_source.xhtml#l00093">arm_compute::utility::for_each()</a>, <a class="el" href="classarm__compute_1_1_i_access_window.xhtml#a5a5f3d4d4461121db2e4e3b4d3ee587f">IAccessWindow::update_padding_if_needed()</a>, and <a class="el" href="classarm__compute_1_1_i_access_window.xhtml#a5b6940395e0168f3f00da892ded537aa">IAccessWindow::update_window_if_needed()</a>.</p>
23065
23066<p class="reference">Referenced by <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00042">GCLogits1DMaxKernel::configure()</a>, <a class="el" href="_c_l_integral_image_kernel_8cpp_source.xhtml#l00039">CLIntegralImageHorKernel::configure()</a>, <a class="el" href="_c_l_warp_perspective_kernel_8cpp_source.xhtml#l00061">CLWarpPerspectiveKernel::configure()</a>, <a class="el" href="_c_l_dilate_kernel_8cpp_source.xhtml#l00039">CLDilateKernel::configure()</a>, <a class="el" href="_c_l_erode_kernel_8cpp_source.xhtml#l00039">CLErodeKernel::configure()</a>, <a class="el" href="_c_l_median3x3_kernel_8cpp_source.xhtml#l00039">CLMedian3x3Kernel::configure()</a>, <a class="el" href="_c_l_gaussian3x3_kernel_8cpp_source.xhtml#l00042">CLGaussian3x3Kernel::configure()</a>, <a class="el" href="_c_l_box3x3_kernel_8cpp_source.xhtml#l00043">CLBox3x3Kernel::configure()</a>, <a class="el" href="_g_c_transpose_kernel_8cpp_source.xhtml#l00040">GCTransposeKernel::configure()</a>, <a class="el" href="_c_l_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00044">CLNonMaximaSuppression3x3Kernel::configure()</a>, <a class="el" href="_c_l_warp_affine_kernel_8cpp_source.xhtml#l00061">CLWarpAffineKernel::configure()</a>, <a class="el" href="_n_e_integral_image_kernel_8cpp_source.xhtml#l00038">NEIntegralImageKernel::configure()</a>, <a class="el" href="_g_c_scale_kernel_8cpp_source.xhtml#l00047">GCScaleKernel::configure()</a>, <a class="el" href="_n_e_box3x3_kernel_8cpp_source.xhtml#l00114">NEBox3x3Kernel::configure()</a>, <a class="el" href="_n_e_dilate_kernel_8cpp_source.xhtml#l00048">NEDilateKernel::configure()</a>, <a class="el" href="_n_e_erode_kernel_8cpp_source.xhtml#l00048">NEErodeKernel::configure()</a>, <a class="el" href="_n_e_gaussian3x3_kernel_8cpp_source.xhtml#l00041">NEGaussian3x3Kernel::configure()</a>, <a class="el" href="_n_e_median3x3_kernel_8cpp_source.xhtml#l00054">NEMedian3x3Kernel::configure()</a>, <a class="el" href="_n_e_gaussian5x5_kernel_8cpp_source.xhtml#l00050">NEGaussian5x5HorKernel::configure()</a>, <a class="el" href="_c_l_non_linear_filter_kernel_8cpp_source.xhtml#l00056">CLNonLinearFilterKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_accumulate_biases_kernel_8cpp_source.xhtml#l00044">GCGEMMMatrixAccumulateBiasesKernel::configure()</a>, <a class="el" href="_c_l_gaussian_pyramid_kernel_8cpp_source.xhtml#l00044">CLGaussianPyramidHorKernel::configure()</a>, <a class="el" href="_c_l_histogram_kernel_8cpp_source.xhtml#l00053">CLHistogramKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00040">CLGradientKernel::configure()</a>, <a class="el" href="_c_l_bitwise_or_kernel_8cpp_source.xhtml#l00041">CLBitwiseOrKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00062">CLMinMaxKernel::configure()</a>, <a class="el" href="_c_l_remap_kernel_8cpp_source.xhtml#l00050">CLRemapKernel::configure()</a>, <a class="el" href="_c_l_bitwise_xor_kernel_8cpp_source.xhtml#l00041">CLBitwiseXorKernel::configure()</a>, <a class="el" href="_c_l_bitwise_and_kernel_8cpp_source.xhtml#l00040">CLBitwiseAndKernel::configure()</a>, <a class="el" href="_g_c_pixel_wise_multiplication_kernel_8cpp_source.xhtml#l00047">GCPixelWiseMultiplicationKernel::configure()</a>, <a class="el" href="_c_l_derivative_kernel_8cpp_source.xhtml#l00050">CLDerivativeKernel::configure()</a>, <a class="el" href="_c_l_sobel3x3_kernel_8cpp_source.xhtml#l00050">CLSobel3x3Kernel::configure()</a>, <a class="el" href="_i_c_l_simple_kernel_8cpp_source.xhtml#l00038">ICLSimpleKernel::configure()</a>, <a class="el" href="_i_g_c_simple_kernel_8cpp_source.xhtml#l00038">IGCSimpleKernel::configure()</a>, <a class="el" href="_g_c_activation_layer_kernel_8cpp_source.xhtml#l00047">GCActivationLayerKernel::configure()</a>, <a class="el" href="_g_c_depthwise_convolution_layer3x3_kernel_8cpp_source.xhtml#l00051">GCDepthwiseConvolutionLayer3x3Kernel::configure()</a>, <a class="el" href="_g_c_normalization_layer_kernel_8cpp_source.xhtml#l00049">GCNormalizationLayerKernel::configure()</a>, <a class="el" href="_c_l_sobel5x5_kernel_8cpp_source.xhtml#l00050">CLSobel5x5HorKernel::configure()</a>, <a class="el" href="_c_l_sobel7x7_kernel_8cpp_source.xhtml#l00050">CLSobel7x7HorKernel::configure()</a>, <a class="el" href="_n_e_gaussian_pyramid_kernel_8cpp_source.xhtml#l00053">NEGaussianPyramidHorKernel::configure()</a>, <a class="el" href="_c_l_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00048">CLHOGOrientationBinningKernel::configure()</a>, <a class="el" href="_n_e_warp_kernel_8cpp_source.xhtml#l00067">INEWarpKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_matrix_addition_kernel_8cpp_source.xhtml#l00043">GCGEMMMatrixAdditionKernel::configure()</a>, <a class="el" href="_c_l_absolute_difference_kernel_8cpp_source.xhtml#l00047">CLAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_bitwise_not_kernel_8cpp_source.xhtml#l00056">NEBitwiseNotKernel::configure()</a>, <a class="el" href="_c_l_channel_extract_kernel_8cpp_source.xhtml#l00050">CLChannelExtractKernel::configure()</a>, <a class="el" href="_g_c_absolute_difference_kernel_8cpp_source.xhtml#l00047">GCAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_bitwise_xor_kernel_8cpp_source.xhtml#l00057">NEBitwiseXorKernel::configure()</a>, <a class="el" href="_c_l_magnitude_phase_kernel_8cpp_source.xhtml#l00046">CLMagnitudePhaseKernel::configure()</a>, <a class="el" href="_n_e_bitwise_and_kernel_8cpp_source.xhtml#l00061">NEBitwiseAndKernel::configure()</a>, <a class="el" href="_c_l_mean_std_dev_kernel_8cpp_source.xhtml#l00066">CLMeanStdDevKernel::configure()</a>, <a class="el" href="_n_e_bitwise_or_kernel_8cpp_source.xhtml#l00057">NEBitwiseOrKernel::configure()</a>, <a class="el" href="_c_l_color_convert_kernel_8cpp_source.xhtml#l00048">CLColorConvertKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_transpose1x_w_kernel_8cpp_source.xhtml#l00041">GCGEMMTranspose1xWKernel::configure()</a>, <a class="el" href="_c_l_channel_combine_kernel_8cpp_source.xhtml#l00049">CLChannelCombineKernel::configure()</a>, <a class="el" href="_n_e_derivative_kernel_8cpp_source.xhtml#l00054">NEDerivativeKernel::configure()</a>, <a class="el" href="_n_e_color_convert_kernel_8cpp_source.xhtml#l00045">NEColorConvertKernel::configure()</a>, <a class="el" href="_n_e_fast_corners_kernel_8cpp_source.xhtml#l00361">NEFastCornersKernel::configure()</a>, <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00632">NEHOGOrientationBinningKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00057">CLConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_remap_kernel_8cpp_source.xhtml#l00076">NERemapKernel::configure()</a>, <a class="el" href="_g_c_depth_concatenate_layer_kernel_8cpp_source.xhtml#l00050">GCDepthConcatenateLayerKernel::configure()</a>, <a class="el" href="_g_c_direct_convolution_layer_kernel_8cpp_source.xhtml#l00053">GCDirectConvolutionLayerKernel&lt; kernel_size &gt;::configure()</a>, <a class="el" href="_c_l_integral_image_kernel_8cpp_source.xhtml#l00071">CLIntegralImageVertKernel::configure()</a>, <a class="el" href="_n_e_threshold_kernel_8cpp_source.xhtml#l00045">NEThresholdKernel::configure()</a>, <a class="el" href="_n_e_absolute_difference_kernel_8cpp_source.xhtml#l00133">NEAbsoluteDifferenceKernel::configure()</a>, <a class="el" href="_n_e_non_linear_filter_kernel_8cpp_source.xhtml#l00353">NENonLinearFilterKernel::configure()</a>, <a class="el" href="_n_e_sobel7x7_kernel_8cpp_source.xhtml#l00153">NESobel7x7HorKernel::configure()</a>, <a class="el" href="_n_e_fill_array_kernel_8cpp_source.xhtml#l00039">NEFillArrayKernel::configure()</a>, <a class="el" href="_n_e_channel_extract_kernel_8cpp_source.xhtml#l00052">NEChannelExtractKernel::configure()</a>, <a class="el" href="_n_e_non_maxima_suppression3x3_kernel_8cpp_source.xhtml#l00462">NENonMaximaSuppression3x3Kernel::configure()</a>, <a class="el" href="_n_e_magnitude_phase_kernel_8cpp_source.xhtml#l00250">NEMagnitudePhaseKernel&lt; mag_type, phase_type &gt;::configure()</a>, <a class="el" href="_n_e_sobel5x5_kernel_8cpp_source.xhtml#l00050">NESobel5x5HorKernel::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00107">GCLogits1DShiftExpSumKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00877">NEGradientKernel::configure()</a>, <a class="el" href="_n_e_mean_std_dev_kernel_8cpp_source.xhtml#l00097">NEMeanStdDevKernel::configure()</a>, <a class="el" href="_c_p_p_corner_candidates_kernel_8cpp_source.xhtml#l00074">CPPCornerCandidatesKernel::configure()</a>, <a class="el" href="_n_e_channel_combine_kernel_8cpp_source.xhtml#l00052">NEChannelCombineKernel::configure()</a>, <a class="el" href="_n_e_h_o_g_detector_kernel_8cpp_source.xhtml#l00042">NEHOGDetectorKernel::configure()</a>, <a class="el" href="_c_l_harris_corners_kernel_8cpp_source.xhtml#l00054">CLHarrisScoreKernel::configure()</a>, <a class="el" href="_c_l_fast_corners_kernel_8cpp_source.xhtml#l00050">CLFastCornersKernel::configure()</a>, <a class="el" href="_n_e_r_o_i_pooling_layer_kernel_8cpp_source.xhtml#l00046">NEROIPoolingLayerKernel::configure()</a>, <a class="el" href="_c_l_h_o_g_detector_kernel_8cpp_source.xhtml#l00044">CLHOGDetectorKernel::configure()</a>, <a class="el" href="_g_c_g_e_m_m_interleave4x4_kernel_8cpp_source.xhtml#l00044">GCGEMMInterleave4x4Kernel::configure()</a>, <a class="el" href="_c_l_scharr3x3_kernel_8cpp_source.xhtml#l00050">CLScharr3x3Kernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00324">NEConvolutionKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_sobel3x3_kernel_8cpp_source.xhtml#l00048">NESobel3x3Kernel::configure()</a>, <a class="el" href="_n_e_scharr3x3_kernel_8cpp_source.xhtml#l00090">NEScharr3x3Kernel::configure()</a>, <a class="el" href="_n_e_gaussian5x5_kernel_8cpp_source.xhtml#l00118">NEGaussian5x5VertKernel::configure()</a>, <a class="el" href="_g_c_col2_im_kernel_8cpp_source.xhtml#l00044">GCCol2ImKernel::configure()</a>, <a class="el" href="_g_c_im2_col_kernel_8cpp_source.xhtml#l00067">GCIm2ColKernel::configure()</a>, <a class="el" href="_c_l_histogram_kernel_8cpp_source.xhtml#l00149">CLHistogramBorderKernel::configure()</a>, <a class="el" href="_c_l_gaussian_pyramid_kernel_8cpp_source.xhtml#l00136">CLGaussianPyramidVertKernel::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00111">CLEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_c_l_min_max_location_kernel_8cpp_source.xhtml#l00169">CLMinMaxLocationKernel::configure()</a>, <a class="el" href="_n_e_harris_corners_kernel_8cpp_source.xhtml#l00736">NEHarrisScoreKernel&lt; block_size &gt;::configure()</a>, <a class="el" href="_c_l_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00125">CLHOGBlockNormalizationKernel::configure()</a>, <a class="el" href="_n_e_gaussian_pyramid_kernel_8cpp_source.xhtml#l00161">NEGaussianPyramidVertKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00127">CLSeparableConvolutionHorKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_g_c_softmax_layer_kernel_8cpp_source.xhtml#l00201">GCLogits1DNormKernel::configure()</a>, <a class="el" href="_c_l_sobel7x7_kernel_8cpp_source.xhtml#l00147">CLSobel7x7VertKernel::configure()</a>, <a class="el" href="_c_l_sobel5x5_kernel_8cpp_source.xhtml#l00144">CLSobel5x5VertKernel::configure()</a>, <a class="el" href="_c_l_fast_corners_kernel_8cpp_source.xhtml#l00115">CLCopyToArrayKernel::configure()</a>, <a class="el" href="_n_e_sobel5x5_kernel_8cpp_source.xhtml#l00217">NESobel5x5VertKernel::configure()</a>, <a class="el" href="_n_e_sobel7x7_kernel_8cpp_source.xhtml#l00307">NESobel7x7VertKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l00666">NESeparableConvolutionHorKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_n_e_h_o_g_descriptor_kernel_8cpp_source.xhtml#l00714">NEHOGBlockNormalizationKernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l00970">NEEdgeNonMaxSuppressionKernel::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00180">CLSeparableConvolutionVertKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_canny_edge_kernel_8cpp_source.xhtml#l00173">CLEdgeTraceKernel::configure()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00123">CLLKTrackerStage0Kernel::configure()</a>, <a class="el" href="_n_e_min_max_location_kernel_8cpp_source.xhtml#l00335">NEMinMaxLocationKernel::configure()</a>, <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l01103">NESeparableConvolutionVertKernel&lt; matrix_size &gt;::configure()</a>, <a class="el" href="_c_l_convolution_kernel_8cpp_source.xhtml#l00246">CLConvolutionRectangleKernel::configure()</a>, <a class="el" href="_c_l_l_k_tracker_kernel_8cpp_source.xhtml#l00213">CLLKTrackerStage1Kernel::configure()</a>, <a class="el" href="_n_e_canny_edge_kernel_8cpp_source.xhtml#l01059">NEEdgeTraceKernel::configure()</a>, and <a class="el" href="_n_e_convolution_kernel_8cpp_source.xhtml#l01427">NEConvolutionRectangleKernel::configure()</a>.</p>
23067
Kaizen8938bd32017-09-28 14:38:23 +010023068</div>
23069</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000023070<a id="abe949a509da417044624d62a73057441"></a>
23071<h2 class="memtitle"><span class="permalink"><a href="#abe949a509da417044624d62a73057441">&#9670;&nbsp;</a></span>vadd() <span class="overload">[1/3]</span></h2>
23072
23073<div class="memitem">
23074<div class="memproto">
23075<table class="mlabels">
23076 <tr>
23077 <td class="mlabels-left">
23078 <table class="memname">
23079 <tr>
23080 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; arm_compute::vadd </td>
23081 <td>(</td>
23082 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td>
23083 <td class="paramname"><em>a</em>, </td>
23084 </tr>
23085 <tr>
23086 <td class="paramkey"></td>
23087 <td></td>
23088 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td>
23089 <td class="paramname"><em>b</em>&#160;</td>
23090 </tr>
23091 <tr>
23092 <td></td>
23093 <td>)</td>
23094 <td></td><td></td>
23095 </tr>
23096 </table>
23097 </td>
23098 <td class="mlabels-right">
23099<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23100 </tr>
23101</table>
23102</div><div class="memdoc">
23103
23104<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00232">232</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000023105<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23106</div>
23107</div>
23108<a id="ab11431f1a64a618e5ed1d37634d0e0fe"></a>
23109<h2 class="memtitle"><span class="permalink"><a href="#ab11431f1a64a618e5ed1d37634d0e0fe">&#9670;&nbsp;</a></span>vadd() <span class="overload">[2/3]</span></h2>
23110
23111<div class="memitem">
23112<div class="memproto">
23113<table class="mlabels">
23114 <tr>
23115 <td class="mlabels-left">
23116 <table class="memname">
23117 <tr>
23118 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; arm_compute::vadd </td>
23119 <td>(</td>
23120 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
23121 <td class="paramname"><em>a</em>, </td>
23122 </tr>
23123 <tr>
23124 <td class="paramkey"></td>
23125 <td></td>
23126 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
23127 <td class="paramname"><em>b</em>&#160;</td>
23128 </tr>
23129 <tr>
23130 <td></td>
23131 <td>)</td>
23132 <td></td><td></td>
23133 </tr>
23134 </table>
23135 </td>
23136 <td class="mlabels-right">
23137<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23138 </tr>
23139</table>
23140</div><div class="memdoc">
23141
23142<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00232">232</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23143<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23144</div>
23145</div>
23146<a id="a4cc9ed76f48e918e73249c894380f91b"></a>
23147<h2 class="memtitle"><span class="permalink"><a href="#a4cc9ed76f48e918e73249c894380f91b">&#9670;&nbsp;</a></span>vadd() <span class="overload">[3/3]</span></h2>
23148
23149<div class="memitem">
23150<div class="memproto">
23151 <table class="memname">
23152 <tr>
23153 <td class="memname">float32x4x4_t arm_compute::vadd </td>
23154 <td>(</td>
23155 <td class="paramtype">float32x4x4_t&#160;</td>
23156 <td class="paramname"><em>a</em>, </td>
23157 </tr>
23158 <tr>
23159 <td class="paramkey"></td>
23160 <td></td>
23161 <td class="paramtype">float32x4x4_t&#160;</td>
23162 <td class="paramname"><em>b</em>&#160;</td>
23163 </tr>
23164 <tr>
23165 <td></td>
23166 <td>)</td>
23167 <td></td><td></td>
23168 </tr>
23169 </table>
23170</div><div class="memdoc">
23171
23172<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00324">324</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000023173<div class="fragment"><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;{</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; float32x4x4_t res = { {</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; vaddq_f32(a.val[0], b.val[0]),</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; vaddq_f32(a.val[1], b.val[1]),</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; vaddq_f32(a.val[2], b.val[2]),</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; vaddq_f32(a.val[3], b.val[3])</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; }</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; };</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">return</span> res;</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;}</div></div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000023174</div>
23175</div>
23176<a id="a6cb464349a8f184ffb8eded9ae9e5925"></a>
23177<h2 class="memtitle"><span class="permalink"><a href="#a6cb464349a8f184ffb8eded9ae9e5925">&#9670;&nbsp;</a></span>vcvt()</h2>
23178
23179<div class="memitem">
23180<div class="memproto">
23181 <table class="memname">
23182 <tr>
23183 <td class="memname">VO arm_compute::vcvt </td>
23184 <td>(</td>
23185 <td class="paramtype">VI&#160;</td>
23186 <td class="paramname"><em>vec</em></td><td>)</td>
23187 <td></td>
23188 </tr>
23189 </table>
23190</div><div class="memdoc">
23191
23192</div>
23193</div>
23194<a id="a146b84422a0eaf6c66ba8156425b5bdf"></a>
Jenkins514be652019-02-28 12:25:18 +000023195<h2 class="memtitle"><span class="permalink"><a href="#a146b84422a0eaf6c66ba8156425b5bdf">&#9670;&nbsp;</a></span>vcvt&lt; float32x4x4_t &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023196
23197<div class="memitem">
23198<div class="memproto">
23199 <table class="memname">
23200 <tr>
23201 <td class="memname">float32x4x4_t <a class="el" href="namespacearm__compute.xhtml#a6cb464349a8f184ffb8eded9ae9e5925">arm_compute::vcvt</a>&lt; float32x4x4_t &gt; </td>
23202 <td>(</td>
23203 <td class="paramtype">uint8x16_t&#160;</td>
23204 <td class="paramname"><em>vec</em></td><td>)</td>
23205 <td></td>
23206 </tr>
23207 </table>
23208</div><div class="memdoc">
23209
23210<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00238">238</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000023211<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> low = vmovl_u8(<a class="code" href="namespacearm__compute.xhtml#ae83ce5db69a7a14f5c0ee9d9326e1a40">vget_low</a>(vec));</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> high = vmovl_u8(<a class="code" href="namespacearm__compute.xhtml#abc735b1b07e30e093dd39507606a1e35">vget_high</a>(vec));</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; float32x4x4_t res = { {</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; vcvtq_f32_u32(vmovl_u16(<a class="code" href="namespacearm__compute.xhtml#ae83ce5db69a7a14f5c0ee9d9326e1a40">vget_low</a>(low))),</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; vcvtq_f32_u32(vmovl_u16(<a class="code" href="namespacearm__compute.xhtml#abc735b1b07e30e093dd39507606a1e35">vget_high</a>(low))),</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; vcvtq_f32_u32(vmovl_u16(<a class="code" href="namespacearm__compute.xhtml#ae83ce5db69a7a14f5c0ee9d9326e1a40">vget_low</a>(high))),</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; vcvtq_f32_u32(vmovl_u16(<a class="code" href="namespacearm__compute.xhtml#abc735b1b07e30e093dd39507606a1e35">vget_high</a>(high)))</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; }</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; };</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">return</span> res;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_abc735b1b07e30e093dd39507606a1e35"><div class="ttname"><a href="namespacearm__compute.xhtml#abc735b1b07e30e093dd39507606a1e35">arm_compute::vget_high</a></div><div class="ttdeci">vec_8_byte_t&lt; float &gt; vget_high(vec_16_byte_t&lt; float &gt; vec)</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">NESoftmaxLayerKernel.cpp:227</a></div></div>
23212<div class="ttc" id="namespacearm__compute_xhtml_ae83ce5db69a7a14f5c0ee9d9326e1a40"><div class="ttname"><a href="namespacearm__compute.xhtml#ae83ce5db69a7a14f5c0ee9d9326e1a40">arm_compute::vget_low</a></div><div class="ttdeci">vec_8_byte_t&lt; float &gt; vget_low(vec_16_byte_t&lt; float &gt; vec)</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">NESoftmaxLayerKernel.cpp:227</a></div></div>
23213</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000023214<p class="reference">References <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">vget_high()</a>, and <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">vget_low()</a>.</p>
23215
Jenkinsb9abeae2018-11-22 11:58:08 +000023216</div>
23217</div>
23218<a id="ab6bc00d6c4503a0bc303dd363e021476"></a>
Jenkins514be652019-02-28 12:25:18 +000023219<h2 class="memtitle"><span class="permalink"><a href="#ab6bc00d6c4503a0bc303dd363e021476">&#9670;&nbsp;</a></span>vcvt&lt; uint8x16_t &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023220
23221<div class="memitem">
23222<div class="memproto">
23223 <table class="memname">
23224 <tr>
23225 <td class="memname">uint8x16_t <a class="el" href="namespacearm__compute.xhtml#a6cb464349a8f184ffb8eded9ae9e5925">arm_compute::vcvt</a>&lt; uint8x16_t &gt; </td>
23226 <td>(</td>
23227 <td class="paramtype">float32x4x4_t&#160;</td>
23228 <td class="paramname"><em>vec</em></td><td>)</td>
23229 <td></td>
23230 </tr>
23231 </table>
23232</div><div class="memdoc">
23233
23234<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00253">253</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23235<div class="fragment"><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;{</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; uint16x8x2_t resU16 = { {</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; vcombine_u16(vqmovn_u32(vcvtq_u32_f32(vec.val[0])),</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; vqmovn_u32(vcvtq_u32_f32(vec.val[1]))),</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; vcombine_u16(vqmovn_u32(vcvtq_u32_f32(vec.val[2])),</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; vqmovn_u32(vcvtq_u32_f32(vec.val[3])))</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; }</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; };</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; uint8x16_t res = vcombine_u8(vqmovn_u16(resU16.val[0]), vqmovn_u16(resU16.val[1]));</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keywordflow">return</span> res;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;}</div></div><!-- fragment -->
23236</div>
23237</div>
Jenkins514be652019-02-28 12:25:18 +000023238<a id="a04ae4ae815c47d443852428a0528a7d2"></a>
23239<h2 class="memtitle"><span class="permalink"><a href="#a04ae4ae815c47d443852428a0528a7d2">&#9670;&nbsp;</a></span>vdequantize()</h2>
23240
23241<div class="memitem">
23242<div class="memproto">
23243<table class="mlabels">
23244 <tr>
23245 <td class="mlabels-left">
23246 <table class="memname">
23247 <tr>
23248 <td class="memname">float32x4x4_t arm_compute::vdequantize </td>
23249 <td>(</td>
23250 <td class="paramtype">const uint8x16_t &amp;&#160;</td>
23251 <td class="paramname"><em>qv</em>, </td>
23252 </tr>
23253 <tr>
23254 <td class="paramkey"></td>
23255 <td></td>
23256 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> &amp;&#160;</td>
23257 <td class="paramname"><em>qi</em>&#160;</td>
23258 </tr>
23259 <tr>
23260 <td></td>
23261 <td>)</td>
23262 <td></td><td></td>
23263 </tr>
23264 </table>
23265 </td>
23266 <td class="mlabels-right">
23267<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23268 </tr>
23269</table>
23270</div><div class="memdoc">
23271
23272<p>Dequantize a neon vector holding 16 quantized values. </p>
23273<dl class="params"><dt>Parameters</dt><dd>
23274 <table class="params">
23275 <tr><td class="paramname">qv</td><td>Input values to be dequantized. </td></tr>
23276 <tr><td class="paramname">qi</td><td>Quantization information to be used in the computation.</td></tr>
23277 </table>
23278 </dd>
23279</dl>
23280<dl class="section return"><dt>Returns</dt><dd>Dequantized values in a neon vector </dd></dl>
23281
23282<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00135">135</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
23283<div class="fragment"><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;{</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">scale</a> = qi.scale;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a> = qi.offset;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">const</span> int32x4_t voffset = vdupq_n_s32(<a class="code" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a>);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keyword">const</span> float32x4_t vscale = vdupq_n_f32(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">scale</a>);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keyword">const</span> float32x4x4_t vdequantized_input =</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; {</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; {</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; vmulq_f32(vcvtq_f32_s32(vsubq_s32(vreinterpretq_s32_u32(vmovl_u16(vget_low_u16(vmovl_u8(vget_low_u8(qv))))), voffset)), vscale),</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; vmulq_f32(vcvtq_f32_s32(vsubq_s32(vreinterpretq_s32_u32(vmovl_u16(vget_high_u16(vmovl_u8(vget_low_u8(qv))))), voffset)), vscale),</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; vmulq_f32(vcvtq_f32_s32(vsubq_s32(vreinterpretq_s32_u32(vmovl_u16(vget_low_u16(vmovl_u8(vget_high_u8(qv))))), voffset)), vscale),</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; vmulq_f32(vcvtq_f32_s32(vsubq_s32(vreinterpretq_s32_u32(vmovl_u16(vget_high_u16(vmovl_u8(vget_high_u8(qv))))), voffset)), vscale),</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; }</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; };</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">return</span> vdequantized_input;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;}</div><div class="ttc" id="src_2core_2_c_l_2cl__kernels_2_helpers_8h_xhtml_a009469e4d9b8fce3b6d5e97d2077827d"><div class="ttname"><a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a></div><div class="ttdeci">__global uchar * offset(const Image *img, int x, int y)</div><div class="ttdoc">Get the pointer position of a Image.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00312">helpers.h:312</a></div></div>
23284<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_acec6d8ad52a28972fa74e071c1a63b6a"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">arm_compute::test::validation::scale</a></div><div class="ttdeci">scale</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">PixelWiseMultiplication.cpp:168</a></div></div>
23285</div><!-- fragment -->
23286<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00190">QuantizationInfo::offset</a>, <a class="el" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00312">offset()</a>, <a class="el" href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">arm_compute::test::validation::scale</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00189">QuantizationInfo::scale</a>.</p>
23287
23288<p class="reference">Referenced by <a class="el" href="_n_e_width_concatenate_layer_kernel_8cpp_source.xhtml#l00105">NEWidthConcatenateLayerKernel::run()</a>.</p>
23289
23290</div>
23291</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000023292<a id="a2603e5f72e3fa052025c189c1a6647ce"></a>
23293<h2 class="memtitle"><span class="permalink"><a href="#a2603e5f72e3fa052025c189c1a6647ce">&#9670;&nbsp;</a></span>vdup_n()</h2>
23294
23295<div class="memitem">
23296<div class="memproto">
23297 <table class="memname">
23298 <tr>
23299 <td class="memname">V arm_compute::vdup_n </td>
23300 <td>(</td>
23301 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a534a101b6176c3e065eba4b4cde7a40e">elem_type_t</a>&lt; V &gt;&#160;</td>
23302 <td class="paramname"><em>val</em></td><td>)</td>
23303 <td></td>
23304 </tr>
23305 </table>
23306</div><div class="memdoc">
23307
Jenkinsb9abeae2018-11-22 11:58:08 +000023308</div>
23309</div>
23310<a id="aeabe5dd1c5751f380322a841d7ad8d7a"></a>
Jenkins514be652019-02-28 12:25:18 +000023311<h2 class="memtitle"><span class="permalink"><a href="#aeabe5dd1c5751f380322a841d7ad8d7a">&#9670;&nbsp;</a></span>vdup_n&lt; float32x4x4_t &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023312
23313<div class="memitem">
23314<div class="memproto">
23315 <table class="memname">
23316 <tr>
23317 <td class="memname">float32x4x4_t <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; float32x4x4_t &gt; </td>
23318 <td>(</td>
23319 <td class="paramtype">float&#160;</td>
23320 <td class="paramname"><em>val</em></td><td>)</td>
23321 <td></td>
23322 </tr>
23323 </table>
23324</div><div class="memdoc">
23325
23326<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00300">300</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000023327<div class="fragment"><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;{</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; float32x4x4_t res = { {</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; vdupq_n_f32(val),</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; vdupq_n_f32(val),</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; vdupq_n_f32(val),</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; vdupq_n_f32(val)</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; }</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; };</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordflow">return</span> res;</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;}</div></div><!-- fragment -->
23328</div>
23329</div>
23330<a id="ace69f5de3783f9cd924dac392710facf"></a>
Jenkins514be652019-02-28 12:25:18 +000023331<h2 class="memtitle"><span class="permalink"><a href="#ace69f5de3783f9cd924dac392710facf">&#9670;&nbsp;</a></span>vdup_n&lt; vec_16_byte_t&lt; float &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023332
23333<div class="memitem">
23334<div class="memproto">
23335<table class="mlabels">
23336 <tr>
23337 <td class="mlabels-left">
23338 <table class="memname">
23339 <tr>
23340 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; &gt; </td>
23341 <td>(</td>
23342 <td class="paramtype">float&#160;</td>
23343 <td class="paramname"><em>val</em></td><td>)</td>
23344 <td></td>
23345 </tr>
23346 </table>
23347 </td>
23348 <td class="mlabels-right">
23349<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23350 </tr>
23351</table>
23352</div><div class="memdoc">
23353
23354<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23355<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23356</div>
23357</div>
23358<a id="aa6ec87dc4f97241833eace4b1784cc50"></a>
Jenkins514be652019-02-28 12:25:18 +000023359<h2 class="memtitle"><span class="permalink"><a href="#aa6ec87dc4f97241833eace4b1784cc50">&#9670;&nbsp;</a></span>vdup_n&lt; vec_16_byte_t&lt; int16_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023360
23361<div class="memitem">
23362<div class="memproto">
23363<table class="mlabels">
23364 <tr>
23365 <td class="mlabels-left">
23366 <table class="memname">
23367 <tr>
23368 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; &gt; </td>
23369 <td>(</td>
23370 <td class="paramtype">int16_t&#160;</td>
23371 <td class="paramname"><em>val</em></td><td>)</td>
23372 <td></td>
23373 </tr>
23374 </table>
23375 </td>
23376 <td class="mlabels-right">
23377<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23378 </tr>
23379</table>
23380</div><div class="memdoc">
23381
23382<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23383<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23384</div>
23385</div>
23386<a id="a434a14d651e75e624bfed91646a9582e"></a>
Jenkins514be652019-02-28 12:25:18 +000023387<h2 class="memtitle"><span class="permalink"><a href="#a434a14d651e75e624bfed91646a9582e">&#9670;&nbsp;</a></span>vdup_n&lt; vec_16_byte_t&lt; int32_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023388
23389<div class="memitem">
23390<div class="memproto">
23391<table class="mlabels">
23392 <tr>
23393 <td class="mlabels-left">
23394 <table class="memname">
23395 <tr>
23396 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; &gt; </td>
23397 <td>(</td>
23398 <td class="paramtype">int32_t&#160;</td>
23399 <td class="paramname"><em>val</em></td><td>)</td>
23400 <td></td>
23401 </tr>
23402 </table>
23403 </td>
23404 <td class="mlabels-right">
23405<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23406 </tr>
23407</table>
23408</div><div class="memdoc">
23409
23410<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23411<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23412</div>
23413</div>
23414<a id="a3c5a58b994f82b7eb24e85803fdd08c1"></a>
Jenkins514be652019-02-28 12:25:18 +000023415<h2 class="memtitle"><span class="permalink"><a href="#a3c5a58b994f82b7eb24e85803fdd08c1">&#9670;&nbsp;</a></span>vdup_n&lt; vec_16_byte_t&lt; int8_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023416
23417<div class="memitem">
23418<div class="memproto">
23419<table class="mlabels">
23420 <tr>
23421 <td class="mlabels-left">
23422 <table class="memname">
23423 <tr>
23424 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; &gt; </td>
23425 <td>(</td>
23426 <td class="paramtype">int8_t&#160;</td>
23427 <td class="paramname"><em>val</em></td><td>)</td>
23428 <td></td>
23429 </tr>
23430 </table>
23431 </td>
23432 <td class="mlabels-right">
23433<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23434 </tr>
23435</table>
23436</div><div class="memdoc">
23437
23438<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23439<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23440</div>
23441</div>
23442<a id="a93020987fbede1b8da7db6a1a855ddd4"></a>
Jenkins514be652019-02-28 12:25:18 +000023443<h2 class="memtitle"><span class="permalink"><a href="#a93020987fbede1b8da7db6a1a855ddd4">&#9670;&nbsp;</a></span>vdup_n&lt; vec_16_byte_t&lt; uint16_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023444
23445<div class="memitem">
23446<div class="memproto">
23447<table class="mlabels">
23448 <tr>
23449 <td class="mlabels-left">
23450 <table class="memname">
23451 <tr>
23452 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; &gt; </td>
23453 <td>(</td>
23454 <td class="paramtype">uint16_t&#160;</td>
23455 <td class="paramname"><em>val</em></td><td>)</td>
23456 <td></td>
23457 </tr>
23458 </table>
23459 </td>
23460 <td class="mlabels-right">
23461<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23462 </tr>
23463</table>
23464</div><div class="memdoc">
23465
23466<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23467<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23468</div>
23469</div>
23470<a id="aacce75282b76aeb1eda5375b6dcef231"></a>
Jenkins514be652019-02-28 12:25:18 +000023471<h2 class="memtitle"><span class="permalink"><a href="#aacce75282b76aeb1eda5375b6dcef231">&#9670;&nbsp;</a></span>vdup_n&lt; vec_16_byte_t&lt; uint32_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023472
23473<div class="memitem">
23474<div class="memproto">
23475<table class="mlabels">
23476 <tr>
23477 <td class="mlabels-left">
23478 <table class="memname">
23479 <tr>
23480 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; &gt; </td>
23481 <td>(</td>
23482 <td class="paramtype">uint32_t&#160;</td>
23483 <td class="paramname"><em>val</em></td><td>)</td>
23484 <td></td>
23485 </tr>
23486 </table>
23487 </td>
23488 <td class="mlabels-right">
23489<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23490 </tr>
23491</table>
23492</div><div class="memdoc">
23493
23494<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23495<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23496</div>
23497</div>
23498<a id="a84aacbb969d72f3b89aa93cc87af9bdf"></a>
Jenkins514be652019-02-28 12:25:18 +000023499<h2 class="memtitle"><span class="permalink"><a href="#a84aacbb969d72f3b89aa93cc87af9bdf">&#9670;&nbsp;</a></span>vdup_n&lt; vec_16_byte_t&lt; uint8_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023500
23501<div class="memitem">
23502<div class="memproto">
23503<table class="mlabels">
23504 <tr>
23505 <td class="mlabels-left">
23506 <table class="memname">
23507 <tr>
23508 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; &gt; </td>
23509 <td>(</td>
23510 <td class="paramtype">uint8_t&#160;</td>
23511 <td class="paramname"><em>val</em></td><td>)</td>
23512 <td></td>
23513 </tr>
23514 </table>
23515 </td>
23516 <td class="mlabels-right">
23517<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23518 </tr>
23519</table>
23520</div><div class="memdoc">
23521
23522<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23523<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23524</div>
23525</div>
23526<a id="ae23d199254b002d668fde87246f2f6f7"></a>
Jenkins514be652019-02-28 12:25:18 +000023527<h2 class="memtitle"><span class="permalink"><a href="#ae23d199254b002d668fde87246f2f6f7">&#9670;&nbsp;</a></span>vdup_n&lt; vec_8_byte_t&lt; float &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023528
23529<div class="memitem">
23530<div class="memproto">
23531<table class="mlabels">
23532 <tr>
23533 <td class="mlabels-left">
23534 <table class="memname">
23535 <tr>
23536 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; &gt; </td>
23537 <td>(</td>
23538 <td class="paramtype">float&#160;</td>
23539 <td class="paramname"><em>val</em></td><td>)</td>
23540 <td></td>
23541 </tr>
23542 </table>
23543 </td>
23544 <td class="mlabels-right">
23545<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23546 </tr>
23547</table>
23548</div><div class="memdoc">
23549
23550<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23551<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23552</div>
23553</div>
23554<a id="a10a9088cc35ece085610063eec583ad1"></a>
Jenkins514be652019-02-28 12:25:18 +000023555<h2 class="memtitle"><span class="permalink"><a href="#a10a9088cc35ece085610063eec583ad1">&#9670;&nbsp;</a></span>vdup_n&lt; vec_8_byte_t&lt; int16_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023556
23557<div class="memitem">
23558<div class="memproto">
23559<table class="mlabels">
23560 <tr>
23561 <td class="mlabels-left">
23562 <table class="memname">
23563 <tr>
23564 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; &gt; </td>
23565 <td>(</td>
23566 <td class="paramtype">int16_t&#160;</td>
23567 <td class="paramname"><em>val</em></td><td>)</td>
23568 <td></td>
23569 </tr>
23570 </table>
23571 </td>
23572 <td class="mlabels-right">
23573<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23574 </tr>
23575</table>
23576</div><div class="memdoc">
23577
23578<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23579<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23580</div>
23581</div>
23582<a id="aee16a2b366642146ef353e0939a71b83"></a>
Jenkins514be652019-02-28 12:25:18 +000023583<h2 class="memtitle"><span class="permalink"><a href="#aee16a2b366642146ef353e0939a71b83">&#9670;&nbsp;</a></span>vdup_n&lt; vec_8_byte_t&lt; int32_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023584
23585<div class="memitem">
23586<div class="memproto">
23587<table class="mlabels">
23588 <tr>
23589 <td class="mlabels-left">
23590 <table class="memname">
23591 <tr>
23592 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; &gt; </td>
23593 <td>(</td>
23594 <td class="paramtype">int32_t&#160;</td>
23595 <td class="paramname"><em>val</em></td><td>)</td>
23596 <td></td>
23597 </tr>
23598 </table>
23599 </td>
23600 <td class="mlabels-right">
23601<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23602 </tr>
23603</table>
23604</div><div class="memdoc">
23605
23606<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23607<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23608</div>
23609</div>
23610<a id="afbcedeccc32a67996ea90a0a97c94269"></a>
Jenkins514be652019-02-28 12:25:18 +000023611<h2 class="memtitle"><span class="permalink"><a href="#afbcedeccc32a67996ea90a0a97c94269">&#9670;&nbsp;</a></span>vdup_n&lt; vec_8_byte_t&lt; int8_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023612
23613<div class="memitem">
23614<div class="memproto">
23615<table class="mlabels">
23616 <tr>
23617 <td class="mlabels-left">
23618 <table class="memname">
23619 <tr>
23620 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; &gt; </td>
23621 <td>(</td>
23622 <td class="paramtype">int8_t&#160;</td>
23623 <td class="paramname"><em>val</em></td><td>)</td>
23624 <td></td>
23625 </tr>
23626 </table>
23627 </td>
23628 <td class="mlabels-right">
23629<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23630 </tr>
23631</table>
23632</div><div class="memdoc">
23633
23634<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23635<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23636</div>
23637</div>
23638<a id="aca706ca8cd2fec97cf6b3ab747c40dc6"></a>
Jenkins514be652019-02-28 12:25:18 +000023639<h2 class="memtitle"><span class="permalink"><a href="#aca706ca8cd2fec97cf6b3ab747c40dc6">&#9670;&nbsp;</a></span>vdup_n&lt; vec_8_byte_t&lt; uint16_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023640
23641<div class="memitem">
23642<div class="memproto">
23643<table class="mlabels">
23644 <tr>
23645 <td class="mlabels-left">
23646 <table class="memname">
23647 <tr>
23648 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; &gt; </td>
23649 <td>(</td>
23650 <td class="paramtype">uint16_t&#160;</td>
23651 <td class="paramname"><em>val</em></td><td>)</td>
23652 <td></td>
23653 </tr>
23654 </table>
23655 </td>
23656 <td class="mlabels-right">
23657<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23658 </tr>
23659</table>
23660</div><div class="memdoc">
23661
23662<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23663<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23664</div>
23665</div>
23666<a id="af8c50d8dac4fe454183078d34515b50a"></a>
Jenkins514be652019-02-28 12:25:18 +000023667<h2 class="memtitle"><span class="permalink"><a href="#af8c50d8dac4fe454183078d34515b50a">&#9670;&nbsp;</a></span>vdup_n&lt; vec_8_byte_t&lt; uint32_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023668
23669<div class="memitem">
23670<div class="memproto">
23671<table class="mlabels">
23672 <tr>
23673 <td class="mlabels-left">
23674 <table class="memname">
23675 <tr>
23676 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; &gt; </td>
23677 <td>(</td>
23678 <td class="paramtype">uint32_t&#160;</td>
23679 <td class="paramname"><em>val</em></td><td>)</td>
23680 <td></td>
23681 </tr>
23682 </table>
23683 </td>
23684 <td class="mlabels-right">
23685<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23686 </tr>
23687</table>
23688</div><div class="memdoc">
23689
23690<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23691<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23692</div>
23693</div>
23694<a id="a194e168c19bf049bd3e903552f112d5c"></a>
Jenkins514be652019-02-28 12:25:18 +000023695<h2 class="memtitle"><span class="permalink"><a href="#a194e168c19bf049bd3e903552f112d5c">&#9670;&nbsp;</a></span>vdup_n&lt; vec_8_byte_t&lt; uint8_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000023696
23697<div class="memitem">
23698<div class="memproto">
23699<table class="mlabels">
23700 <tr>
23701 <td class="mlabels-left">
23702 <table class="memname">
23703 <tr>
23704 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a2603e5f72e3fa052025c189c1a6647ce">arm_compute::vdup_n</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; &gt; </td>
23705 <td>(</td>
23706 <td class="paramtype">uint8_t&#160;</td>
23707 <td class="paramname"><em>val</em></td><td>)</td>
23708 <td></td>
23709 </tr>
23710 </table>
23711 </td>
23712 <td class="mlabels-right">
23713<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23714 </tr>
23715</table>
23716</div><div class="memdoc">
23717
23718<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23719<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23720</div>
23721</div>
23722<a id="af4b13d125dfe1bec25b8df8840c6dd8f"></a>
23723<h2 class="memtitle"><span class="permalink"><a href="#af4b13d125dfe1bec25b8df8840c6dd8f">&#9670;&nbsp;</a></span>vec_size_of()</h2>
23724
23725<div class="memitem">
23726<div class="memproto">
23727 <table class="memname">
23728 <tr>
23729 <td class="memname">constexpr size_t arm_compute::vec_size_of </td>
23730 <td>(</td>
23731 <td class="paramtype">const V &amp;&#160;</td>
23732 <td class="paramname"><em>vec</em></td><td>)</td>
23733 <td></td>
23734 </tr>
23735 </table>
23736</div><div class="memdoc">
23737
23738<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00123">123</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000023739<div class="fragment"><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;{</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">return</span> <span class="keyword">sizeof</span>(vec) / <span class="keyword">sizeof</span>(elem_type_t&lt;V&gt;);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;}</div></div><!-- fragment -->
23740</div>
23741</div>
23742<a id="a91d2c1f68de68401d1aa465e27f78ab0"></a>
23743<h2 class="memtitle"><span class="permalink"><a href="#a91d2c1f68de68401d1aa465e27f78ab0">&#9670;&nbsp;</a></span>vexp() <span class="overload">[1/2]</span></h2>
23744
23745<div class="memitem">
23746<div class="memproto">
23747 <table class="memname">
23748 <tr>
23749 <td class="memname">float32x4x4_t arm_compute::vexp </td>
23750 <td>(</td>
23751 <td class="paramtype">float32x4x4_t&#160;</td>
23752 <td class="paramname"><em>vec</em></td><td>)</td>
23753 <td></td>
23754 </tr>
23755 </table>
23756</div><div class="memdoc">
23757
23758<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00267">267</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000023759<div class="fragment"><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;{</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; float32x4x4_t res = { {</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32</a>(vec.val[0]),</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32</a>(vec.val[1]),</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32</a>(vec.val[2]),</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <a class="code" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32</a>(vec.val[3])</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; }</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; };</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordflow">return</span> res;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_ab55486f1153a4c5f507d4923b59fc6a0"><div class="ttname"><a href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">arm_compute::vexpq_f32</a></div><div class="ttdeci">float32x4_t vexpq_f32(float32x4_t x)</div><div class="ttdoc">Calculate exponential.</div></div>
23760</div><!-- fragment -->
Jenkinsb9abeae2018-11-22 11:58:08 +000023761<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32()</a>.</p>
23762
Jenkinsb9abeae2018-11-22 11:58:08 +000023763</div>
23764</div>
23765<a id="adcb77ffd576a7addf3be8508e50451d2"></a>
23766<h2 class="memtitle"><span class="permalink"><a href="#adcb77ffd576a7addf3be8508e50451d2">&#9670;&nbsp;</a></span>vexp() <span class="overload">[2/2]</span></h2>
23767
23768<div class="memitem">
23769<div class="memproto">
23770 <table class="memname">
23771 <tr>
23772 <td class="memname">float32x4_t arm_compute::vexp </td>
23773 <td>(</td>
23774 <td class="paramtype">const float32x4_t &amp;&#160;</td>
23775 <td class="paramname"><em>vec</em></td><td>)</td>
23776 <td></td>
23777 </tr>
23778 </table>
23779</div><div class="memdoc">
23780
23781<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00279">279</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
Jenkins514be652019-02-28 12:25:18 +000023782<div class="fragment"><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;{</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32</a>(vec);</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;}</div><div class="ttc" id="namespacearm__compute_xhtml_ab55486f1153a4c5f507d4923b59fc6a0"><div class="ttname"><a href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">arm_compute::vexpq_f32</a></div><div class="ttdeci">float32x4_t vexpq_f32(float32x4_t x)</div><div class="ttdoc">Calculate exponential.</div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +000023783</div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000023784<p class="reference">References <a class="el" href="namespacearm__compute.xhtml#ab55486f1153a4c5f507d4923b59fc6a0">vexpq_f32()</a>.</p>
23785
Jenkinsb9abeae2018-11-22 11:58:08 +000023786</div>
23787</div>
23788<a id="ab55486f1153a4c5f507d4923b59fc6a0"></a>
23789<h2 class="memtitle"><span class="permalink"><a href="#ab55486f1153a4c5f507d4923b59fc6a0">&#9670;&nbsp;</a></span>vexpq_f32()</h2>
23790
Anthony Barbierdbdab852017-06-23 15:42:00 +010023791<div class="memitem">
23792<div class="memproto">
Anthony Barbierdbdab852017-06-23 15:42:00 +010023793 <table class="memname">
23794 <tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010023795 <td class="memname">float32x4_t arm_compute::vexpq_f32 </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010023796 <td>(</td>
23797 <td class="paramtype">float32x4_t&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000023798 <td class="paramname"><em>x</em></td><td>)</td>
23799 <td></td>
23800 </tr>
23801 </table>
Anthony Barbier871448e2017-03-24 14:54:29 +000023802</div><div class="memdoc">
23803
23804<p>Calculate exponential. </p>
23805<dl class="params"><dt>Parameters</dt><dd>
23806 <table class="params">
Anthony Barbierdbdab852017-06-23 15:42:00 +010023807 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Input vector value in F32 format.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000023808 </table>
23809 </dd>
23810</dl>
23811<dl class="section return"><dt>Returns</dt><dd>The calculated exponent. </dd></dl>
23812
Jenkinsb9abeae2018-11-22 11:58:08 +000023813<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00267">vexp()</a>.</p>
23814
Kaizen8938bd32017-09-28 14:38:23 +010023815</div>
23816</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000023817<a id="af7a0f3e622aa4bc8c6077d2262a04e2e"></a>
23818<h2 class="memtitle"><span class="permalink"><a href="#af7a0f3e622aa4bc8c6077d2262a04e2e">&#9670;&nbsp;</a></span>vfloorq_f32()</h2>
23819
Kaizen8938bd32017-09-28 14:38:23 +010023820<div class="memitem">
23821<div class="memproto">
Kaizen8938bd32017-09-28 14:38:23 +010023822 <table class="memname">
23823 <tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010023824 <td class="memname">float32x4_t arm_compute::vfloorq_f32 </td>
Kaizen8938bd32017-09-28 14:38:23 +010023825 <td>(</td>
23826 <td class="paramtype">float32x4_t&#160;</td>
23827 <td class="paramname"><em>val</em></td><td>)</td>
23828 <td></td>
23829 </tr>
23830 </table>
Kaizen8938bd32017-09-28 14:38:23 +010023831</div><div class="memdoc">
23832
23833<p>Calculate floor of a vector. </p>
23834<dl class="params"><dt>Parameters</dt><dd>
23835 <table class="params">
23836 <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>Input vector value in F32 format.</td></tr>
23837 </table>
23838 </dd>
23839</dl>
23840<dl class="section return"><dt>Returns</dt><dd>The calculated floor vector. </dd></dl>
23841
Jenkinsb9abeae2018-11-22 11:58:08 +000023842<p class="reference">Referenced by <a class="el" href="_n_e_floor_kernel_8cpp_source.xhtml#l00101">NEFloorKernel::run()</a>.</p>
23843
Kaizen8938bd32017-09-28 14:38:23 +010023844</div>
23845</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000023846<a id="af311129b4dccf2fbd9307a7d644876d1"></a>
23847<h2 class="memtitle"><span class="permalink"><a href="#af311129b4dccf2fbd9307a7d644876d1">&#9670;&nbsp;</a></span>vget_high() <span class="overload">[1/7]</span></h2>
23848
23849<div class="memitem">
23850<div class="memproto">
23851<table class="mlabels">
23852 <tr>
23853 <td class="mlabels-left">
23854 <table class="memname">
23855 <tr>
23856 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; arm_compute::vget_high </td>
23857 <td>(</td>
23858 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td>
23859 <td class="paramname"><em>vec</em></td><td>)</td>
23860 <td></td>
23861 </tr>
23862 </table>
23863 </td>
23864 <td class="mlabels-right">
23865<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23866 </tr>
23867</table>
23868</div><div class="memdoc">
23869
23870<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000023871<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000023872<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00238">vcvt&lt; float32x4x4_t &gt;()</a>.</p>
23873
Jenkinsb9abeae2018-11-22 11:58:08 +000023874</div>
23875</div>
23876<a id="abfb64320f5b05fc08dffafc2b039e559"></a>
23877<h2 class="memtitle"><span class="permalink"><a href="#abfb64320f5b05fc08dffafc2b039e559">&#9670;&nbsp;</a></span>vget_high() <span class="overload">[2/7]</span></h2>
23878
23879<div class="memitem">
23880<div class="memproto">
23881<table class="mlabels">
23882 <tr>
23883 <td class="mlabels-left">
23884 <table class="memname">
23885 <tr>
23886 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; arm_compute::vget_high </td>
23887 <td>(</td>
23888 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td>
23889 <td class="paramname"><em>vec</em></td><td>)</td>
23890 <td></td>
23891 </tr>
23892 </table>
23893 </td>
23894 <td class="mlabels-right">
23895<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23896 </tr>
23897</table>
23898</div><div class="memdoc">
23899
23900<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23901<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23902</div>
23903</div>
23904<a id="aebe61fd1828294b9794b3c87174649b2"></a>
23905<h2 class="memtitle"><span class="permalink"><a href="#aebe61fd1828294b9794b3c87174649b2">&#9670;&nbsp;</a></span>vget_high() <span class="overload">[3/7]</span></h2>
23906
23907<div class="memitem">
23908<div class="memproto">
23909<table class="mlabels">
23910 <tr>
23911 <td class="mlabels-left">
23912 <table class="memname">
23913 <tr>
23914 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; arm_compute::vget_high </td>
23915 <td>(</td>
23916 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td>
23917 <td class="paramname"><em>vec</em></td><td>)</td>
23918 <td></td>
23919 </tr>
23920 </table>
23921 </td>
23922 <td class="mlabels-right">
23923<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23924 </tr>
23925</table>
23926</div><div class="memdoc">
23927
23928<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23929<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23930</div>
23931</div>
23932<a id="afc14b8933176ce40c7b99a1ef0f6a062"></a>
23933<h2 class="memtitle"><span class="permalink"><a href="#afc14b8933176ce40c7b99a1ef0f6a062">&#9670;&nbsp;</a></span>vget_high() <span class="overload">[4/7]</span></h2>
23934
23935<div class="memitem">
23936<div class="memproto">
23937<table class="mlabels">
23938 <tr>
23939 <td class="mlabels-left">
23940 <table class="memname">
23941 <tr>
23942 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; arm_compute::vget_high </td>
23943 <td>(</td>
23944 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td>
23945 <td class="paramname"><em>vec</em></td><td>)</td>
23946 <td></td>
23947 </tr>
23948 </table>
23949 </td>
23950 <td class="mlabels-right">
23951<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23952 </tr>
23953</table>
23954</div><div class="memdoc">
23955
23956<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23957<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23958</div>
23959</div>
23960<a id="a94683a211fef1215ec7576bc74a1cc68"></a>
23961<h2 class="memtitle"><span class="permalink"><a href="#a94683a211fef1215ec7576bc74a1cc68">&#9670;&nbsp;</a></span>vget_high() <span class="overload">[5/7]</span></h2>
23962
23963<div class="memitem">
23964<div class="memproto">
23965<table class="mlabels">
23966 <tr>
23967 <td class="mlabels-left">
23968 <table class="memname">
23969 <tr>
23970 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; arm_compute::vget_high </td>
23971 <td>(</td>
23972 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td>
23973 <td class="paramname"><em>vec</em></td><td>)</td>
23974 <td></td>
23975 </tr>
23976 </table>
23977 </td>
23978 <td class="mlabels-right">
23979<span class="mlabels"><span class="mlabel">inline</span></span> </td>
23980 </tr>
23981</table>
23982</div><div class="memdoc">
23983
23984<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
23985<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
23986</div>
23987</div>
23988<a id="aeaf3494a0fcf8be9555194a8e7a18a07"></a>
23989<h2 class="memtitle"><span class="permalink"><a href="#aeaf3494a0fcf8be9555194a8e7a18a07">&#9670;&nbsp;</a></span>vget_high() <span class="overload">[6/7]</span></h2>
23990
23991<div class="memitem">
23992<div class="memproto">
23993<table class="mlabels">
23994 <tr>
23995 <td class="mlabels-left">
23996 <table class="memname">
23997 <tr>
23998 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; arm_compute::vget_high </td>
23999 <td>(</td>
24000 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td>
24001 <td class="paramname"><em>vec</em></td><td>)</td>
24002 <td></td>
24003 </tr>
24004 </table>
24005 </td>
24006 <td class="mlabels-right">
24007<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24008 </tr>
24009</table>
24010</div><div class="memdoc">
24011
24012<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24013<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24014</div>
24015</div>
24016<a id="abc735b1b07e30e093dd39507606a1e35"></a>
24017<h2 class="memtitle"><span class="permalink"><a href="#abc735b1b07e30e093dd39507606a1e35">&#9670;&nbsp;</a></span>vget_high() <span class="overload">[7/7]</span></h2>
24018
24019<div class="memitem">
24020<div class="memproto">
24021<table class="mlabels">
24022 <tr>
24023 <td class="mlabels-left">
24024 <table class="memname">
24025 <tr>
24026 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; arm_compute::vget_high </td>
24027 <td>(</td>
24028 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
24029 <td class="paramname"><em>vec</em></td><td>)</td>
24030 <td></td>
24031 </tr>
24032 </table>
24033 </td>
24034 <td class="mlabels-right">
24035<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24036 </tr>
24037</table>
24038</div><div class="memdoc">
24039
24040<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24041<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24042</div>
24043</div>
24044<a id="a40552ea65ee3fc6d7fa7f1fb17baebe7"></a>
24045<h2 class="memtitle"><span class="permalink"><a href="#a40552ea65ee3fc6d7fa7f1fb17baebe7">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[1/15]</span></h2>
24046
24047<div class="memitem">
24048<div class="memproto">
24049<table class="mlabels">
24050 <tr>
24051 <td class="mlabels-left">
24052 <table class="memname">
24053 <tr>
24054 <td class="memname">uint8_t vget_lane </td>
24055 <td>(</td>
24056 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td>
24057 <td class="paramname"><em>vec</em></td><td>)</td>
24058 <td></td>
24059 </tr>
24060 </table>
24061 </td>
24062 <td class="mlabels-right">
24063<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24064 </tr>
24065</table>
24066</div><div class="memdoc">
24067
24068<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24069<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24070</div>
24071</div>
24072<a id="a5229f4c7a2c8d07ebc247c3e5075af2b"></a>
24073<h2 class="memtitle"><span class="permalink"><a href="#a5229f4c7a2c8d07ebc247c3e5075af2b">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[2/15]</span></h2>
24074
24075<div class="memitem">
24076<div class="memproto">
24077<table class="mlabels">
24078 <tr>
24079 <td class="mlabels-left">
24080 <table class="memname">
24081 <tr>
24082 <td class="memname">uint8_t vget_lane </td>
24083 <td>(</td>
24084 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td>
24085 <td class="paramname"><em>vec</em></td><td>)</td>
24086 <td></td>
24087 </tr>
24088 </table>
24089 </td>
24090 <td class="mlabels-right">
24091<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24092 </tr>
24093</table>
24094</div><div class="memdoc">
24095
24096<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24097<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24098</div>
24099</div>
24100<a id="a2cb9483082ea29427722db15d23ec130"></a>
24101<h2 class="memtitle"><span class="permalink"><a href="#a2cb9483082ea29427722db15d23ec130">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[3/15]</span></h2>
24102
24103<div class="memitem">
24104<div class="memproto">
24105<table class="mlabels">
24106 <tr>
24107 <td class="mlabels-left">
24108 <table class="memname">
24109 <tr>
24110 <td class="memname">int8_t vget_lane </td>
24111 <td>(</td>
24112 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td>
24113 <td class="paramname"><em>vec</em></td><td>)</td>
24114 <td></td>
24115 </tr>
24116 </table>
24117 </td>
24118 <td class="mlabels-right">
24119<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24120 </tr>
24121</table>
24122</div><div class="memdoc">
24123
24124<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24125<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24126</div>
24127</div>
24128<a id="a46b08aeab78badc7365668e0051e7fac"></a>
24129<h2 class="memtitle"><span class="permalink"><a href="#a46b08aeab78badc7365668e0051e7fac">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[4/15]</span></h2>
24130
24131<div class="memitem">
24132<div class="memproto">
24133<table class="mlabels">
24134 <tr>
24135 <td class="mlabels-left">
24136 <table class="memname">
24137 <tr>
24138 <td class="memname">int8_t vget_lane </td>
24139 <td>(</td>
24140 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td>
24141 <td class="paramname"><em>vec</em></td><td>)</td>
24142 <td></td>
24143 </tr>
24144 </table>
24145 </td>
24146 <td class="mlabels-right">
24147<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24148 </tr>
24149</table>
24150</div><div class="memdoc">
24151
24152<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24153<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24154</div>
24155</div>
24156<a id="aaa7aea48ed8a5c267d4631ad6884e0bd"></a>
24157<h2 class="memtitle"><span class="permalink"><a href="#aaa7aea48ed8a5c267d4631ad6884e0bd">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[5/15]</span></h2>
24158
24159<div class="memitem">
24160<div class="memproto">
24161<table class="mlabels">
24162 <tr>
24163 <td class="mlabels-left">
24164 <table class="memname">
24165 <tr>
24166 <td class="memname">uint16_t vget_lane </td>
24167 <td>(</td>
24168 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td>
24169 <td class="paramname"><em>vec</em></td><td>)</td>
24170 <td></td>
24171 </tr>
24172 </table>
24173 </td>
24174 <td class="mlabels-right">
24175<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24176 </tr>
24177</table>
24178</div><div class="memdoc">
24179
24180<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24181<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24182</div>
24183</div>
24184<a id="ab2aef7b4b81a6108c8d7a8f782340850"></a>
24185<h2 class="memtitle"><span class="permalink"><a href="#ab2aef7b4b81a6108c8d7a8f782340850">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[6/15]</span></h2>
24186
24187<div class="memitem">
24188<div class="memproto">
24189<table class="mlabels">
24190 <tr>
24191 <td class="mlabels-left">
24192 <table class="memname">
24193 <tr>
24194 <td class="memname">uint16_t vget_lane </td>
24195 <td>(</td>
24196 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td>
24197 <td class="paramname"><em>vec</em></td><td>)</td>
24198 <td></td>
24199 </tr>
24200 </table>
24201 </td>
24202 <td class="mlabels-right">
24203<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24204 </tr>
24205</table>
24206</div><div class="memdoc">
24207
24208<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24209<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24210</div>
24211</div>
24212<a id="aab831e66636598a49c321c248da55108"></a>
24213<h2 class="memtitle"><span class="permalink"><a href="#aab831e66636598a49c321c248da55108">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[7/15]</span></h2>
24214
24215<div class="memitem">
24216<div class="memproto">
24217<table class="mlabels">
24218 <tr>
24219 <td class="mlabels-left">
24220 <table class="memname">
24221 <tr>
24222 <td class="memname">int16_t vget_lane </td>
24223 <td>(</td>
24224 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td>
24225 <td class="paramname"><em>vec</em></td><td>)</td>
24226 <td></td>
24227 </tr>
24228 </table>
24229 </td>
24230 <td class="mlabels-right">
24231<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24232 </tr>
24233</table>
24234</div><div class="memdoc">
24235
24236<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24237<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24238</div>
24239</div>
24240<a id="a21a10c0d7629ac794f59a6e06dad8b7c"></a>
24241<h2 class="memtitle"><span class="permalink"><a href="#a21a10c0d7629ac794f59a6e06dad8b7c">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[8/15]</span></h2>
24242
24243<div class="memitem">
24244<div class="memproto">
24245<table class="mlabels">
24246 <tr>
24247 <td class="mlabels-left">
24248 <table class="memname">
24249 <tr>
24250 <td class="memname">int16_t vget_lane </td>
24251 <td>(</td>
24252 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td>
24253 <td class="paramname"><em>vec</em></td><td>)</td>
24254 <td></td>
24255 </tr>
24256 </table>
24257 </td>
24258 <td class="mlabels-right">
24259<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24260 </tr>
24261</table>
24262</div><div class="memdoc">
24263
24264<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24265<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24266</div>
24267</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000024268<a id="a6e766d98a0e130be624d6dee74c8fb29"></a>
Jenkins514be652019-02-28 12:25:18 +000024269<h2 class="memtitle"><span class="permalink"><a href="#a6e766d98a0e130be624d6dee74c8fb29">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[9/15]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000024270
24271<div class="memitem">
24272<div class="memproto">
24273<table class="mlabels">
24274 <tr>
24275 <td class="mlabels-left">
24276 <table class="memname">
24277 <tr>
24278 <td class="memname">uint32_t vget_lane </td>
24279 <td>(</td>
24280 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td>
24281 <td class="paramname"><em>vec</em></td><td>)</td>
24282 <td></td>
24283 </tr>
24284 </table>
24285 </td>
24286 <td class="mlabels-right">
24287<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24288 </tr>
24289</table>
24290</div><div class="memdoc">
24291
24292<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24293<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24294</div>
24295</div>
Jenkins514be652019-02-28 12:25:18 +000024296<a id="a1050dd97652f516c036f54173d3cce10"></a>
24297<h2 class="memtitle"><span class="permalink"><a href="#a1050dd97652f516c036f54173d3cce10">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[10/15]</span></h2>
24298
24299<div class="memitem">
24300<div class="memproto">
24301<table class="mlabels">
24302 <tr>
24303 <td class="mlabels-left">
24304 <table class="memname">
24305 <tr>
24306 <td class="memname">uint32_t vget_lane </td>
24307 <td>(</td>
24308 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td>
24309 <td class="paramname"><em>vec</em></td><td>)</td>
24310 <td></td>
24311 </tr>
24312 </table>
24313 </td>
24314 <td class="mlabels-right">
24315<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24316 </tr>
24317</table>
24318</div><div class="memdoc">
24319
24320<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24321<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24322</div>
24323</div>
24324<a id="adc187f0eff944013383bdc28e8d1e713"></a>
24325<h2 class="memtitle"><span class="permalink"><a href="#adc187f0eff944013383bdc28e8d1e713">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[11/15]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000024326
24327<div class="memitem">
24328<div class="memproto">
24329<table class="mlabels">
24330 <tr>
24331 <td class="mlabels-left">
24332 <table class="memname">
24333 <tr>
24334 <td class="memname">int32_t vget_lane </td>
24335 <td>(</td>
Jenkins514be652019-02-28 12:25:18 +000024336 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td>
Jenkinsb9abeae2018-11-22 11:58:08 +000024337 <td class="paramname"><em>vec</em></td><td>)</td>
24338 <td></td>
24339 </tr>
24340 </table>
24341 </td>
24342 <td class="mlabels-right">
24343<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24344 </tr>
24345</table>
24346</div><div class="memdoc">
24347
24348<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24349<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24350</div>
24351</div>
Jenkins514be652019-02-28 12:25:18 +000024352<a id="a61f87c089f50e7016ac74d79bbc417eb"></a>
24353<h2 class="memtitle"><span class="permalink"><a href="#a61f87c089f50e7016ac74d79bbc417eb">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[12/15]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000024354
24355<div class="memitem">
24356<div class="memproto">
24357<table class="mlabels">
24358 <tr>
24359 <td class="mlabels-left">
24360 <table class="memname">
24361 <tr>
24362 <td class="memname">int32_t vget_lane </td>
24363 <td>(</td>
Jenkins514be652019-02-28 12:25:18 +000024364 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td>
Jenkinsb9abeae2018-11-22 11:58:08 +000024365 <td class="paramname"><em>vec</em></td><td>)</td>
24366 <td></td>
24367 </tr>
24368 </table>
24369 </td>
24370 <td class="mlabels-right">
24371<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24372 </tr>
24373</table>
24374</div><div class="memdoc">
24375
24376<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24377<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24378</div>
24379</div>
24380<a id="a2b122d56b7bf307cf06ec05b4bdeea63"></a>
24381<h2 class="memtitle"><span class="permalink"><a href="#a2b122d56b7bf307cf06ec05b4bdeea63">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[13/15]</span></h2>
24382
24383<div class="memitem">
24384<div class="memproto">
24385<table class="mlabels">
24386 <tr>
24387 <td class="mlabels-left">
24388 <table class="memname">
24389 <tr>
24390 <td class="memname">float vget_lane </td>
24391 <td>(</td>
24392 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
24393 <td class="paramname"><em>vec</em></td><td>)</td>
24394 <td></td>
24395 </tr>
24396 </table>
24397 </td>
24398 <td class="mlabels-right">
24399<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24400 </tr>
24401</table>
24402</div><div class="memdoc">
24403
24404<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24405<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24406</div>
24407</div>
24408<a id="a696409f1f3c572c8a899605e36b87e9a"></a>
24409<h2 class="memtitle"><span class="permalink"><a href="#a696409f1f3c572c8a899605e36b87e9a">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[14/15]</span></h2>
24410
24411<div class="memitem">
24412<div class="memproto">
24413<table class="mlabels">
24414 <tr>
24415 <td class="mlabels-left">
24416 <table class="memname">
24417 <tr>
24418 <td class="memname">float vget_lane </td>
24419 <td>(</td>
24420 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td>
24421 <td class="paramname"><em>vec</em></td><td>)</td>
24422 <td></td>
24423 </tr>
24424 </table>
24425 </td>
24426 <td class="mlabels-right">
24427<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24428 </tr>
24429</table>
24430</div><div class="memdoc">
24431
24432<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24433<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24434</div>
24435</div>
24436<a id="a45617be0c289f11c60f659f3123fb210"></a>
24437<h2 class="memtitle"><span class="permalink"><a href="#a45617be0c289f11c60f659f3123fb210">&#9670;&nbsp;</a></span>vget_lane() <span class="overload">[15/15]</span></h2>
24438
24439<div class="memitem">
24440<div class="memproto">
24441 <table class="memname">
24442 <tr>
24443 <td class="memname">float arm_compute::vget_lane </td>
24444 <td>(</td>
24445 <td class="paramtype">float32x4x4_t&#160;</td>
24446 <td class="paramname"><em>vec</em></td><td>)</td>
24447 <td></td>
24448 </tr>
24449 </table>
24450</div><div class="memdoc">
24451
24452</div>
24453</div>
24454<a id="a3bb60064e505cfd3a0d43528a3c1845d"></a>
24455<h2 class="memtitle"><span class="permalink"><a href="#a3bb60064e505cfd3a0d43528a3c1845d">&#9670;&nbsp;</a></span>vget_low() <span class="overload">[1/7]</span></h2>
24456
24457<div class="memitem">
24458<div class="memproto">
24459<table class="mlabels">
24460 <tr>
24461 <td class="mlabels-left">
24462 <table class="memname">
24463 <tr>
24464 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; arm_compute::vget_low </td>
24465 <td>(</td>
24466 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td>
24467 <td class="paramname"><em>vec</em></td><td>)</td>
24468 <td></td>
24469 </tr>
24470 </table>
24471 </td>
24472 <td class="mlabels-right">
24473<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24474 </tr>
24475</table>
24476</div><div class="memdoc">
24477
24478<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000024479<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
Jenkins514be652019-02-28 12:25:18 +000024480<p class="reference">Referenced by <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00238">vcvt&lt; float32x4x4_t &gt;()</a>.</p>
24481
Jenkinsb9abeae2018-11-22 11:58:08 +000024482</div>
24483</div>
24484<a id="a2a0a49e26931849079897f0a225589cb"></a>
24485<h2 class="memtitle"><span class="permalink"><a href="#a2a0a49e26931849079897f0a225589cb">&#9670;&nbsp;</a></span>vget_low() <span class="overload">[2/7]</span></h2>
24486
24487<div class="memitem">
24488<div class="memproto">
24489<table class="mlabels">
24490 <tr>
24491 <td class="mlabels-left">
24492 <table class="memname">
24493 <tr>
24494 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; arm_compute::vget_low </td>
24495 <td>(</td>
24496 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td>
24497 <td class="paramname"><em>vec</em></td><td>)</td>
24498 <td></td>
24499 </tr>
24500 </table>
24501 </td>
24502 <td class="mlabels-right">
24503<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24504 </tr>
24505</table>
24506</div><div class="memdoc">
24507
24508<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24509<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24510</div>
24511</div>
24512<a id="a5b825f82ef9a09db968b003310b44030"></a>
24513<h2 class="memtitle"><span class="permalink"><a href="#a5b825f82ef9a09db968b003310b44030">&#9670;&nbsp;</a></span>vget_low() <span class="overload">[3/7]</span></h2>
24514
24515<div class="memitem">
24516<div class="memproto">
24517<table class="mlabels">
24518 <tr>
24519 <td class="mlabels-left">
24520 <table class="memname">
24521 <tr>
24522 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; arm_compute::vget_low </td>
24523 <td>(</td>
24524 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td>
24525 <td class="paramname"><em>vec</em></td><td>)</td>
24526 <td></td>
24527 </tr>
24528 </table>
24529 </td>
24530 <td class="mlabels-right">
24531<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24532 </tr>
24533</table>
24534</div><div class="memdoc">
24535
24536<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24537<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24538</div>
24539</div>
24540<a id="a264ecd01ca0763d79aa4ad5515ce7b65"></a>
24541<h2 class="memtitle"><span class="permalink"><a href="#a264ecd01ca0763d79aa4ad5515ce7b65">&#9670;&nbsp;</a></span>vget_low() <span class="overload">[4/7]</span></h2>
24542
24543<div class="memitem">
24544<div class="memproto">
24545<table class="mlabels">
24546 <tr>
24547 <td class="mlabels-left">
24548 <table class="memname">
24549 <tr>
24550 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; arm_compute::vget_low </td>
24551 <td>(</td>
24552 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td>
24553 <td class="paramname"><em>vec</em></td><td>)</td>
24554 <td></td>
24555 </tr>
24556 </table>
24557 </td>
24558 <td class="mlabels-right">
24559<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24560 </tr>
24561</table>
24562</div><div class="memdoc">
24563
24564<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24565<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24566</div>
24567</div>
24568<a id="a0477c495757cd6c2bdf6f151aa26a542"></a>
24569<h2 class="memtitle"><span class="permalink"><a href="#a0477c495757cd6c2bdf6f151aa26a542">&#9670;&nbsp;</a></span>vget_low() <span class="overload">[5/7]</span></h2>
24570
24571<div class="memitem">
24572<div class="memproto">
24573<table class="mlabels">
24574 <tr>
24575 <td class="mlabels-left">
24576 <table class="memname">
24577 <tr>
24578 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; arm_compute::vget_low </td>
24579 <td>(</td>
24580 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td>
24581 <td class="paramname"><em>vec</em></td><td>)</td>
24582 <td></td>
24583 </tr>
24584 </table>
24585 </td>
24586 <td class="mlabels-right">
24587<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24588 </tr>
24589</table>
24590</div><div class="memdoc">
24591
24592<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24593<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24594</div>
24595</div>
24596<a id="a4624ac629ac1199b9482f01334fe93a8"></a>
24597<h2 class="memtitle"><span class="permalink"><a href="#a4624ac629ac1199b9482f01334fe93a8">&#9670;&nbsp;</a></span>vget_low() <span class="overload">[6/7]</span></h2>
24598
24599<div class="memitem">
24600<div class="memproto">
24601<table class="mlabels">
24602 <tr>
24603 <td class="mlabels-left">
24604 <table class="memname">
24605 <tr>
24606 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; arm_compute::vget_low </td>
24607 <td>(</td>
24608 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td>
24609 <td class="paramname"><em>vec</em></td><td>)</td>
24610 <td></td>
24611 </tr>
24612 </table>
24613 </td>
24614 <td class="mlabels-right">
24615<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24616 </tr>
24617</table>
24618</div><div class="memdoc">
24619
24620<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24621<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24622</div>
24623</div>
24624<a id="ae83ce5db69a7a14f5c0ee9d9326e1a40"></a>
24625<h2 class="memtitle"><span class="permalink"><a href="#ae83ce5db69a7a14f5c0ee9d9326e1a40">&#9670;&nbsp;</a></span>vget_low() <span class="overload">[7/7]</span></h2>
24626
24627<div class="memitem">
24628<div class="memproto">
24629<table class="mlabels">
24630 <tr>
24631 <td class="mlabels-left">
24632 <table class="memname">
24633 <tr>
24634 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; arm_compute::vget_low </td>
24635 <td>(</td>
24636 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
24637 <td class="paramname"><em>vec</em></td><td>)</td>
24638 <td></td>
24639 </tr>
24640 </table>
24641 </td>
24642 <td class="mlabels-right">
24643<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24644 </tr>
24645</table>
24646</div><div class="memdoc">
24647
24648<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24649<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24650</div>
24651</div>
24652<a id="acc6fd1bcd12ef1141e15401a04d31187"></a>
24653<h2 class="memtitle"><span class="permalink"><a href="#acc6fd1bcd12ef1141e15401a04d31187">&#9670;&nbsp;</a></span>vinv_f32()</h2>
24654
Kaizen8938bd32017-09-28 14:38:23 +010024655<div class="memitem">
24656<div class="memproto">
Kaizen8938bd32017-09-28 14:38:23 +010024657 <table class="memname">
24658 <tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010024659 <td class="memname">float32x2_t arm_compute::vinv_f32 </td>
Kaizen8938bd32017-09-28 14:38:23 +010024660 <td>(</td>
24661 <td class="paramtype">float32x2_t&#160;</td>
24662 <td class="paramname"><em>x</em></td><td>)</td>
24663 <td></td>
24664 </tr>
24665 </table>
Kaizen8938bd32017-09-28 14:38:23 +010024666</div><div class="memdoc">
24667
24668<p>Calculate reciprocal. </p>
24669<dl class="params"><dt>Parameters</dt><dd>
24670 <table class="params">
24671 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Input value.</td></tr>
24672 </table>
24673 </dd>
24674</dl>
24675<dl class="section return"><dt>Returns</dt><dd>The calculated reciprocal. </dd></dl>
24676
Anthony Barbierdbdab852017-06-23 15:42:00 +010024677</div>
24678</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000024679<a id="a2e0f2412b4d1302272d1aeb85d21ab25"></a>
24680<h2 class="memtitle"><span class="permalink"><a href="#a2e0f2412b4d1302272d1aeb85d21ab25">&#9670;&nbsp;</a></span>vinvq_f32()</h2>
24681
Anthony Barbierdbdab852017-06-23 15:42:00 +010024682<div class="memitem">
24683<div class="memproto">
Anthony Barbierdbdab852017-06-23 15:42:00 +010024684 <table class="memname">
24685 <tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010024686 <td class="memname">float32x4_t arm_compute::vinvq_f32 </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010024687 <td>(</td>
24688 <td class="paramtype">float32x4_t&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000024689 <td class="paramname"><em>x</em></td><td>)</td>
24690 <td></td>
24691 </tr>
24692 </table>
Anthony Barbier871448e2017-03-24 14:54:29 +000024693</div><div class="memdoc">
24694
24695<p>Calculate reciprocal. </p>
24696<dl class="params"><dt>Parameters</dt><dd>
24697 <table class="params">
Anthony Barbierdbdab852017-06-23 15:42:00 +010024698 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Input value.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000024699 </table>
24700 </dd>
24701</dl>
24702<dl class="section return"><dt>Returns</dt><dd>The calculated reciprocal. </dd></dl>
24703
Jenkins514be652019-02-28 12:25:18 +000024704<p class="reference">Referenced by <a class="el" href="_n_e_depth_convert_layer_kernel_8cpp_source.xhtml#l00128">NEDepthConvertLayerKernel::run()</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000024705
Kaizen8938bd32017-09-28 14:38:23 +010024706</div>
24707</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000024708<a id="afc415e7fc5e633a0b85b08b2bba5b5cf"></a>
24709<h2 class="memtitle"><span class="permalink"><a href="#afc415e7fc5e633a0b85b08b2bba5b5cf">&#9670;&nbsp;</a></span>vinvsqrt_f32()</h2>
24710
Kaizen8938bd32017-09-28 14:38:23 +010024711<div class="memitem">
24712<div class="memproto">
Kaizen8938bd32017-09-28 14:38:23 +010024713 <table class="memname">
24714 <tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010024715 <td class="memname">float32x2_t arm_compute::vinvsqrt_f32 </td>
Kaizen8938bd32017-09-28 14:38:23 +010024716 <td>(</td>
24717 <td class="paramtype">float32x2_t&#160;</td>
24718 <td class="paramname"><em>x</em></td><td>)</td>
24719 <td></td>
24720 </tr>
24721 </table>
Kaizen8938bd32017-09-28 14:38:23 +010024722</div><div class="memdoc">
24723
24724<p>Calculate inverse square root. </p>
24725<dl class="params"><dt>Parameters</dt><dd>
24726 <table class="params">
24727 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Input value.</td></tr>
24728 </table>
24729 </dd>
24730</dl>
24731<dl class="section return"><dt>Returns</dt><dd>The calculated inverse square root. </dd></dl>
24732
Kaizen8938bd32017-09-28 14:38:23 +010024733</div>
24734</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000024735<a id="ab8970d7aed07d8649f5e3088455948b8"></a>
24736<h2 class="memtitle"><span class="permalink"><a href="#ab8970d7aed07d8649f5e3088455948b8">&#9670;&nbsp;</a></span>vinvsqrtq_f32()</h2>
24737
Anthony Barbierdbdab852017-06-23 15:42:00 +010024738<div class="memitem">
24739<div class="memproto">
Anthony Barbierdbdab852017-06-23 15:42:00 +010024740 <table class="memname">
24741 <tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010024742 <td class="memname">float32x4_t arm_compute::vinvsqrtq_f32 </td>
Anthony Barbier871448e2017-03-24 14:54:29 +000024743 <td>(</td>
24744 <td class="paramtype">float32x4_t&#160;</td>
24745 <td class="paramname"><em>x</em></td><td>)</td>
24746 <td></td>
24747 </tr>
24748 </table>
Anthony Barbier871448e2017-03-24 14:54:29 +000024749</div><div class="memdoc">
24750
24751<p>Calculate inverse square root. </p>
24752<dl class="params"><dt>Parameters</dt><dd>
24753 <table class="params">
Anthony Barbierdbdab852017-06-23 15:42:00 +010024754 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Input value.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000024755 </table>
24756 </dd>
24757</dl>
24758<dl class="section return"><dt>Returns</dt><dd>The calculated inverse square root. </dd></dl>
24759
Kaizen8938bd32017-09-28 14:38:23 +010024760</div>
24761</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000024762<a id="a85d0b4103385d996d4014691d2df0cf1"></a>
24763<h2 class="memtitle"><span class="permalink"><a href="#a85d0b4103385d996d4014691d2df0cf1">&#9670;&nbsp;</a></span>vld()</h2>
24764
24765<div class="memitem">
24766<div class="memproto">
24767 <table class="memname">
24768 <tr>
24769 <td class="memname">V arm_compute::vld </td>
24770 <td>(</td>
24771 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; <a class="el" href="namespacearm__compute.xhtml#a534a101b6176c3e065eba4b4cde7a40e">elem_type_t</a>&lt; V &gt;&gt;&#160;</td>
24772 <td class="paramname"><em>ptr</em></td><td>)</td>
24773 <td></td>
24774 </tr>
24775 </table>
24776</div><div class="memdoc">
24777
Jenkinsb9abeae2018-11-22 11:58:08 +000024778</div>
24779</div>
24780<a id="aa8e2f6d1e361e3ac707595f1092b9103"></a>
Jenkins514be652019-02-28 12:25:18 +000024781<h2 class="memtitle"><span class="permalink"><a href="#aa8e2f6d1e361e3ac707595f1092b9103">&#9670;&nbsp;</a></span>vld&lt; vec_16_byte_t&lt; float &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000024782
24783<div class="memitem">
24784<div class="memproto">
24785<table class="mlabels">
24786 <tr>
24787 <td class="mlabels-left">
24788 <table class="memname">
24789 <tr>
24790 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; &gt; </td>
24791 <td>(</td>
24792 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; float &gt;&#160;</td>
24793 <td class="paramname"><em>ptr</em></td><td>)</td>
24794 <td></td>
24795 </tr>
24796 </table>
24797 </td>
24798 <td class="mlabels-right">
24799<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24800 </tr>
24801</table>
24802</div><div class="memdoc">
24803
24804<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24805<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24806</div>
24807</div>
24808<a id="afd4981f6532c3a76716e3053d119e269"></a>
Jenkins514be652019-02-28 12:25:18 +000024809<h2 class="memtitle"><span class="permalink"><a href="#afd4981f6532c3a76716e3053d119e269">&#9670;&nbsp;</a></span>vld&lt; vec_16_byte_t&lt; int16_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000024810
24811<div class="memitem">
24812<div class="memproto">
24813<table class="mlabels">
24814 <tr>
24815 <td class="mlabels-left">
24816 <table class="memname">
24817 <tr>
24818 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; &gt; </td>
24819 <td>(</td>
24820 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int16_t &gt;&#160;</td>
24821 <td class="paramname"><em>ptr</em></td><td>)</td>
24822 <td></td>
24823 </tr>
24824 </table>
24825 </td>
24826 <td class="mlabels-right">
24827<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24828 </tr>
24829</table>
24830</div><div class="memdoc">
24831
24832<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24833<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24834</div>
24835</div>
24836<a id="a1acc117060f7ad740f059fbb97359d6b"></a>
Jenkins514be652019-02-28 12:25:18 +000024837<h2 class="memtitle"><span class="permalink"><a href="#a1acc117060f7ad740f059fbb97359d6b">&#9670;&nbsp;</a></span>vld&lt; vec_16_byte_t&lt; int32_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000024838
24839<div class="memitem">
24840<div class="memproto">
24841<table class="mlabels">
24842 <tr>
24843 <td class="mlabels-left">
24844 <table class="memname">
24845 <tr>
24846 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; &gt; </td>
24847 <td>(</td>
24848 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int32_t &gt;&#160;</td>
24849 <td class="paramname"><em>ptr</em></td><td>)</td>
24850 <td></td>
24851 </tr>
24852 </table>
24853 </td>
24854 <td class="mlabels-right">
24855<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24856 </tr>
24857</table>
24858</div><div class="memdoc">
24859
24860<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24861<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24862</div>
24863</div>
24864<a id="a9d896907abfbde0613b952bb4db5897a"></a>
Jenkins514be652019-02-28 12:25:18 +000024865<h2 class="memtitle"><span class="permalink"><a href="#a9d896907abfbde0613b952bb4db5897a">&#9670;&nbsp;</a></span>vld&lt; vec_16_byte_t&lt; int8_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000024866
24867<div class="memitem">
24868<div class="memproto">
24869<table class="mlabels">
24870 <tr>
24871 <td class="mlabels-left">
24872 <table class="memname">
24873 <tr>
24874 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; &gt; </td>
24875 <td>(</td>
24876 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int8_t &gt;&#160;</td>
24877 <td class="paramname"><em>ptr</em></td><td>)</td>
24878 <td></td>
24879 </tr>
24880 </table>
24881 </td>
24882 <td class="mlabels-right">
24883<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24884 </tr>
24885</table>
24886</div><div class="memdoc">
24887
24888<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24889<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24890</div>
24891</div>
24892<a id="ad2174760efe31f80528b5a4cf8ebed66"></a>
Jenkins514be652019-02-28 12:25:18 +000024893<h2 class="memtitle"><span class="permalink"><a href="#ad2174760efe31f80528b5a4cf8ebed66">&#9670;&nbsp;</a></span>vld&lt; vec_16_byte_t&lt; uint16_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000024894
24895<div class="memitem">
24896<div class="memproto">
24897<table class="mlabels">
24898 <tr>
24899 <td class="mlabels-left">
24900 <table class="memname">
24901 <tr>
24902 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; &gt; </td>
24903 <td>(</td>
24904 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint16_t &gt;&#160;</td>
24905 <td class="paramname"><em>ptr</em></td><td>)</td>
24906 <td></td>
24907 </tr>
24908 </table>
24909 </td>
24910 <td class="mlabels-right">
24911<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24912 </tr>
24913</table>
24914</div><div class="memdoc">
24915
24916<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24917<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24918</div>
24919</div>
24920<a id="a13a69ef04626a27771a6e19542cac767"></a>
Jenkins514be652019-02-28 12:25:18 +000024921<h2 class="memtitle"><span class="permalink"><a href="#a13a69ef04626a27771a6e19542cac767">&#9670;&nbsp;</a></span>vld&lt; vec_16_byte_t&lt; uint32_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000024922
24923<div class="memitem">
24924<div class="memproto">
24925<table class="mlabels">
24926 <tr>
24927 <td class="mlabels-left">
24928 <table class="memname">
24929 <tr>
24930 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; &gt; </td>
24931 <td>(</td>
24932 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint32_t &gt;&#160;</td>
24933 <td class="paramname"><em>ptr</em></td><td>)</td>
24934 <td></td>
24935 </tr>
24936 </table>
24937 </td>
24938 <td class="mlabels-right">
24939<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24940 </tr>
24941</table>
24942</div><div class="memdoc">
24943
24944<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24945<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24946</div>
24947</div>
24948<a id="a70cff70817eb6a40e893331c4df276a5"></a>
Jenkins514be652019-02-28 12:25:18 +000024949<h2 class="memtitle"><span class="permalink"><a href="#a70cff70817eb6a40e893331c4df276a5">&#9670;&nbsp;</a></span>vld&lt; vec_16_byte_t&lt; uint8_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000024950
24951<div class="memitem">
24952<div class="memproto">
24953<table class="mlabels">
24954 <tr>
24955 <td class="mlabels-left">
24956 <table class="memname">
24957 <tr>
24958 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; &gt; </td>
24959 <td>(</td>
24960 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint8_t &gt;&#160;</td>
24961 <td class="paramname"><em>ptr</em></td><td>)</td>
24962 <td></td>
24963 </tr>
24964 </table>
24965 </td>
24966 <td class="mlabels-right">
24967<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24968 </tr>
24969</table>
24970</div><div class="memdoc">
24971
24972<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
24973<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
24974</div>
24975</div>
24976<a id="a323be126777e57614c5dc57ee1345c7e"></a>
Jenkins514be652019-02-28 12:25:18 +000024977<h2 class="memtitle"><span class="permalink"><a href="#a323be126777e57614c5dc57ee1345c7e">&#9670;&nbsp;</a></span>vld&lt; vec_8_byte_t&lt; float &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000024978
24979<div class="memitem">
24980<div class="memproto">
24981<table class="mlabels">
24982 <tr>
24983 <td class="mlabels-left">
24984 <table class="memname">
24985 <tr>
24986 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; &gt; </td>
24987 <td>(</td>
24988 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; float &gt;&#160;</td>
24989 <td class="paramname"><em>ptr</em></td><td>)</td>
24990 <td></td>
24991 </tr>
24992 </table>
24993 </td>
24994 <td class="mlabels-right">
24995<span class="mlabels"><span class="mlabel">inline</span></span> </td>
24996 </tr>
24997</table>
24998</div><div class="memdoc">
24999
25000<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25001<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25002</div>
25003</div>
25004<a id="a1b29ca880e2b7282c9318d6c36f07140"></a>
Jenkins514be652019-02-28 12:25:18 +000025005<h2 class="memtitle"><span class="permalink"><a href="#a1b29ca880e2b7282c9318d6c36f07140">&#9670;&nbsp;</a></span>vld&lt; vec_8_byte_t&lt; int16_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000025006
25007<div class="memitem">
25008<div class="memproto">
25009<table class="mlabels">
25010 <tr>
25011 <td class="mlabels-left">
25012 <table class="memname">
25013 <tr>
25014 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; &gt; </td>
25015 <td>(</td>
25016 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int16_t &gt;&#160;</td>
25017 <td class="paramname"><em>ptr</em></td><td>)</td>
25018 <td></td>
25019 </tr>
25020 </table>
25021 </td>
25022 <td class="mlabels-right">
25023<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25024 </tr>
25025</table>
25026</div><div class="memdoc">
25027
25028<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25029<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25030</div>
25031</div>
25032<a id="a10449c2936e1986b131e8c070db9c16b"></a>
Jenkins514be652019-02-28 12:25:18 +000025033<h2 class="memtitle"><span class="permalink"><a href="#a10449c2936e1986b131e8c070db9c16b">&#9670;&nbsp;</a></span>vld&lt; vec_8_byte_t&lt; int32_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000025034
25035<div class="memitem">
25036<div class="memproto">
25037<table class="mlabels">
25038 <tr>
25039 <td class="mlabels-left">
25040 <table class="memname">
25041 <tr>
25042 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; &gt; </td>
25043 <td>(</td>
25044 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int32_t &gt;&#160;</td>
25045 <td class="paramname"><em>ptr</em></td><td>)</td>
25046 <td></td>
25047 </tr>
25048 </table>
25049 </td>
25050 <td class="mlabels-right">
25051<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25052 </tr>
25053</table>
25054</div><div class="memdoc">
25055
25056<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25057<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25058</div>
25059</div>
25060<a id="add42730b56d7b3614fc39f525eb55286"></a>
Jenkins514be652019-02-28 12:25:18 +000025061<h2 class="memtitle"><span class="permalink"><a href="#add42730b56d7b3614fc39f525eb55286">&#9670;&nbsp;</a></span>vld&lt; vec_8_byte_t&lt; int8_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000025062
25063<div class="memitem">
25064<div class="memproto">
25065<table class="mlabels">
25066 <tr>
25067 <td class="mlabels-left">
25068 <table class="memname">
25069 <tr>
25070 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; &gt; </td>
25071 <td>(</td>
25072 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; int8_t &gt;&#160;</td>
25073 <td class="paramname"><em>ptr</em></td><td>)</td>
25074 <td></td>
25075 </tr>
25076 </table>
25077 </td>
25078 <td class="mlabels-right">
25079<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25080 </tr>
25081</table>
25082</div><div class="memdoc">
25083
25084<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25085<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25086</div>
25087</div>
25088<a id="ab764431d90825796c5060d85810781fa"></a>
Jenkins514be652019-02-28 12:25:18 +000025089<h2 class="memtitle"><span class="permalink"><a href="#ab764431d90825796c5060d85810781fa">&#9670;&nbsp;</a></span>vld&lt; vec_8_byte_t&lt; uint16_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000025090
25091<div class="memitem">
25092<div class="memproto">
25093<table class="mlabels">
25094 <tr>
25095 <td class="mlabels-left">
25096 <table class="memname">
25097 <tr>
25098 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; &gt; </td>
25099 <td>(</td>
25100 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint16_t &gt;&#160;</td>
25101 <td class="paramname"><em>ptr</em></td><td>)</td>
25102 <td></td>
25103 </tr>
25104 </table>
25105 </td>
25106 <td class="mlabels-right">
25107<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25108 </tr>
25109</table>
25110</div><div class="memdoc">
25111
25112<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25113<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25114</div>
25115</div>
25116<a id="ac7a8e67b90d2c99626733ea9bdc60a1d"></a>
Jenkins514be652019-02-28 12:25:18 +000025117<h2 class="memtitle"><span class="permalink"><a href="#ac7a8e67b90d2c99626733ea9bdc60a1d">&#9670;&nbsp;</a></span>vld&lt; vec_8_byte_t&lt; uint32_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000025118
25119<div class="memitem">
25120<div class="memproto">
25121<table class="mlabels">
25122 <tr>
25123 <td class="mlabels-left">
25124 <table class="memname">
25125 <tr>
25126 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; &gt; </td>
25127 <td>(</td>
25128 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint32_t &gt;&#160;</td>
25129 <td class="paramname"><em>ptr</em></td><td>)</td>
25130 <td></td>
25131 </tr>
25132 </table>
25133 </td>
25134 <td class="mlabels-right">
25135<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25136 </tr>
25137</table>
25138</div><div class="memdoc">
25139
25140<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25141<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25142</div>
25143</div>
25144<a id="abcfc5b1ed91557ba1b6edf2eae8533e7"></a>
Jenkins514be652019-02-28 12:25:18 +000025145<h2 class="memtitle"><span class="permalink"><a href="#abcfc5b1ed91557ba1b6edf2eae8533e7">&#9670;&nbsp;</a></span>vld&lt; vec_8_byte_t&lt; uint8_t &gt; &gt;()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000025146
25147<div class="memitem">
25148<div class="memproto">
25149<table class="mlabels">
25150 <tr>
25151 <td class="mlabels-left">
25152 <table class="memname">
25153 <tr>
25154 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; <a class="el" href="namespacearm__compute.xhtml#a85d0b4103385d996d4014691d2df0cf1">arm_compute::vld</a>&lt; <a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; &gt; </td>
25155 <td>(</td>
25156 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a926fa1a0e7fd320cff5ba6c6f62f463b">const_ptr_t</a>&lt; uint8_t &gt;&#160;</td>
25157 <td class="paramname"><em>ptr</em></td><td>)</td>
25158 <td></td>
25159 </tr>
25160 </table>
25161 </td>
25162 <td class="mlabels-right">
25163<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25164 </tr>
25165</table>
25166</div><div class="memdoc">
25167
25168<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25169<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25170</div>
25171</div>
25172<a id="a1d090b80b655e7f8fd8977bb93808b04"></a>
25173<h2 class="memtitle"><span class="permalink"><a href="#a1d090b80b655e7f8fd8977bb93808b04">&#9670;&nbsp;</a></span>vlogq_f32()</h2>
25174
Anthony Barbierdbdab852017-06-23 15:42:00 +010025175<div class="memitem">
25176<div class="memproto">
Anthony Barbierdbdab852017-06-23 15:42:00 +010025177 <table class="memname">
25178 <tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010025179 <td class="memname">float32x4_t arm_compute::vlogq_f32 </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010025180 <td>(</td>
25181 <td class="paramtype">float32x4_t&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000025182 <td class="paramname"><em>x</em></td><td>)</td>
25183 <td></td>
25184 </tr>
25185 </table>
Anthony Barbier871448e2017-03-24 14:54:29 +000025186</div><div class="memdoc">
25187
25188<p>Calculate logarithm. </p>
25189<dl class="params"><dt>Parameters</dt><dd>
25190 <table class="params">
Anthony Barbierdbdab852017-06-23 15:42:00 +010025191 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Input vector value in F32 format.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000025192 </table>
25193 </dd>
25194</dl>
25195<dl class="section return"><dt>Returns</dt><dd>The calculated logarithm. </dd></dl>
25196
Anthony Barbier871448e2017-03-24 14:54:29 +000025197</div>
25198</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000025199<a id="a1cb1c90103d83ca052919e98dbaac553"></a>
25200<h2 class="memtitle"><span class="permalink"><a href="#a1cb1c90103d83ca052919e98dbaac553">&#9670;&nbsp;</a></span>vmax() <span class="overload">[1/7]</span></h2>
25201
25202<div class="memitem">
25203<div class="memproto">
25204<table class="mlabels">
25205 <tr>
25206 <td class="mlabels-left">
25207 <table class="memname">
25208 <tr>
25209 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt; arm_compute::vmax </td>
25210 <td>(</td>
25211 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td>
25212 <td class="paramname"><em>a</em>, </td>
25213 </tr>
25214 <tr>
25215 <td class="paramkey"></td>
25216 <td></td>
25217 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td>
25218 <td class="paramname"><em>b</em>&#160;</td>
25219 </tr>
25220 <tr>
25221 <td></td>
25222 <td>)</td>
25223 <td></td><td></td>
25224 </tr>
25225 </table>
25226 </td>
25227 <td class="mlabels-right">
25228<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25229 </tr>
25230</table>
25231</div><div class="memdoc">
25232
25233<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000025234<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25235</div>
25236</div>
25237<a id="a2ee044b41b71a344cad69a08aecb1d5f"></a>
25238<h2 class="memtitle"><span class="permalink"><a href="#a2ee044b41b71a344cad69a08aecb1d5f">&#9670;&nbsp;</a></span>vmax() <span class="overload">[2/7]</span></h2>
25239
25240<div class="memitem">
25241<div class="memproto">
25242<table class="mlabels">
25243 <tr>
25244 <td class="mlabels-left">
25245 <table class="memname">
25246 <tr>
25247 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt; arm_compute::vmax </td>
25248 <td>(</td>
25249 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td>
25250 <td class="paramname"><em>a</em>, </td>
25251 </tr>
25252 <tr>
25253 <td class="paramkey"></td>
25254 <td></td>
25255 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td>
25256 <td class="paramname"><em>b</em>&#160;</td>
25257 </tr>
25258 <tr>
25259 <td></td>
25260 <td>)</td>
25261 <td></td><td></td>
25262 </tr>
25263 </table>
25264 </td>
25265 <td class="mlabels-right">
25266<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25267 </tr>
25268</table>
25269</div><div class="memdoc">
25270
25271<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25272<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25273</div>
25274</div>
25275<a id="a7c4bfe1c9c07571952a81783fa8540de"></a>
25276<h2 class="memtitle"><span class="permalink"><a href="#a7c4bfe1c9c07571952a81783fa8540de">&#9670;&nbsp;</a></span>vmax() <span class="overload">[3/7]</span></h2>
25277
25278<div class="memitem">
25279<div class="memproto">
25280<table class="mlabels">
25281 <tr>
25282 <td class="mlabels-left">
25283 <table class="memname">
25284 <tr>
25285 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt; arm_compute::vmax </td>
25286 <td>(</td>
25287 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td>
25288 <td class="paramname"><em>a</em>, </td>
25289 </tr>
25290 <tr>
25291 <td class="paramkey"></td>
25292 <td></td>
25293 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td>
25294 <td class="paramname"><em>b</em>&#160;</td>
25295 </tr>
25296 <tr>
25297 <td></td>
25298 <td>)</td>
25299 <td></td><td></td>
25300 </tr>
25301 </table>
25302 </td>
25303 <td class="mlabels-right">
25304<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25305 </tr>
25306</table>
25307</div><div class="memdoc">
25308
25309<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25310<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25311</div>
25312</div>
25313<a id="abe221c26fe4f91102c0f7b5e2336c070"></a>
25314<h2 class="memtitle"><span class="permalink"><a href="#abe221c26fe4f91102c0f7b5e2336c070">&#9670;&nbsp;</a></span>vmax() <span class="overload">[4/7]</span></h2>
25315
25316<div class="memitem">
25317<div class="memproto">
25318<table class="mlabels">
25319 <tr>
25320 <td class="mlabels-left">
25321 <table class="memname">
25322 <tr>
25323 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt; arm_compute::vmax </td>
25324 <td>(</td>
25325 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td>
25326 <td class="paramname"><em>a</em>, </td>
25327 </tr>
25328 <tr>
25329 <td class="paramkey"></td>
25330 <td></td>
25331 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td>
25332 <td class="paramname"><em>b</em>&#160;</td>
25333 </tr>
25334 <tr>
25335 <td></td>
25336 <td>)</td>
25337 <td></td><td></td>
25338 </tr>
25339 </table>
25340 </td>
25341 <td class="mlabels-right">
25342<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25343 </tr>
25344</table>
25345</div><div class="memdoc">
25346
25347<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25348<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25349</div>
25350</div>
25351<a id="a1bb4dd507d55db5ae8fafab84d31b870"></a>
25352<h2 class="memtitle"><span class="permalink"><a href="#a1bb4dd507d55db5ae8fafab84d31b870">&#9670;&nbsp;</a></span>vmax() <span class="overload">[5/7]</span></h2>
25353
25354<div class="memitem">
25355<div class="memproto">
25356<table class="mlabels">
25357 <tr>
25358 <td class="mlabels-left">
25359 <table class="memname">
25360 <tr>
25361 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt; arm_compute::vmax </td>
25362 <td>(</td>
25363 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td>
25364 <td class="paramname"><em>a</em>, </td>
25365 </tr>
25366 <tr>
25367 <td class="paramkey"></td>
25368 <td></td>
25369 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td>
25370 <td class="paramname"><em>b</em>&#160;</td>
25371 </tr>
25372 <tr>
25373 <td></td>
25374 <td>)</td>
25375 <td></td><td></td>
25376 </tr>
25377 </table>
25378 </td>
25379 <td class="mlabels-right">
25380<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25381 </tr>
25382</table>
25383</div><div class="memdoc">
25384
25385<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25386<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25387</div>
25388</div>
25389<a id="a4e2374d1a63f2e9433b7965eede927af"></a>
25390<h2 class="memtitle"><span class="permalink"><a href="#a4e2374d1a63f2e9433b7965eede927af">&#9670;&nbsp;</a></span>vmax() <span class="overload">[6/7]</span></h2>
25391
25392<div class="memitem">
25393<div class="memproto">
25394<table class="mlabels">
25395 <tr>
25396 <td class="mlabels-left">
25397 <table class="memname">
25398 <tr>
25399 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt; arm_compute::vmax </td>
25400 <td>(</td>
25401 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td>
25402 <td class="paramname"><em>a</em>, </td>
25403 </tr>
25404 <tr>
25405 <td class="paramkey"></td>
25406 <td></td>
25407 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td>
25408 <td class="paramname"><em>b</em>&#160;</td>
25409 </tr>
25410 <tr>
25411 <td></td>
25412 <td>)</td>
25413 <td></td><td></td>
25414 </tr>
25415 </table>
25416 </td>
25417 <td class="mlabels-right">
25418<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25419 </tr>
25420</table>
25421</div><div class="memdoc">
25422
25423<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25424<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25425</div>
25426</div>
25427<a id="a837afab6fd85e34f2bd6e267f4c9e849"></a>
25428<h2 class="memtitle"><span class="permalink"><a href="#a837afab6fd85e34f2bd6e267f4c9e849">&#9670;&nbsp;</a></span>vmax() <span class="overload">[7/7]</span></h2>
25429
25430<div class="memitem">
25431<div class="memproto">
25432<table class="mlabels">
25433 <tr>
25434 <td class="mlabels-left">
25435 <table class="memname">
25436 <tr>
25437 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; arm_compute::vmax </td>
25438 <td>(</td>
25439 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
25440 <td class="paramname"><em>a</em>, </td>
25441 </tr>
25442 <tr>
25443 <td class="paramkey"></td>
25444 <td></td>
25445 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
25446 <td class="paramname"><em>b</em>&#160;</td>
25447 </tr>
25448 <tr>
25449 <td></td>
25450 <td>)</td>
25451 <td></td><td></td>
25452 </tr>
25453 </table>
25454 </td>
25455 <td class="mlabels-right">
25456<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25457 </tr>
25458</table>
25459</div><div class="memdoc">
25460
25461<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25462<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25463</div>
25464</div>
25465<a id="ace593813d742d127296b09fa8ab3f85e"></a>
25466<h2 class="memtitle"><span class="permalink"><a href="#ace593813d742d127296b09fa8ab3f85e">&#9670;&nbsp;</a></span>vmax2q_f32()</h2>
25467
Kaizen8938bd32017-09-28 14:38:23 +010025468<div class="memitem">
25469<div class="memproto">
Kaizen8938bd32017-09-28 14:38:23 +010025470 <table class="memname">
25471 <tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010025472 <td class="memname">float32x4x2_t arm_compute::vmax2q_f32 </td>
Kaizen8938bd32017-09-28 14:38:23 +010025473 <td>(</td>
25474 <td class="paramtype">float32x4x2_t&#160;</td>
25475 <td class="paramname"><em>a</em>, </td>
25476 </tr>
25477 <tr>
25478 <td class="paramkey"></td>
25479 <td></td>
25480 <td class="paramtype">float32x4x2_t&#160;</td>
25481 <td class="paramname"><em>b</em>&#160;</td>
25482 </tr>
25483 <tr>
25484 <td></td>
25485 <td>)</td>
25486 <td></td><td></td>
25487 </tr>
25488 </table>
Kaizen8938bd32017-09-28 14:38:23 +010025489</div><div class="memdoc">
25490
25491<p>Compute lane-by-lane maximum between elements of a float vector with 4x2 elements. </p>
25492<dl class="params"><dt>Parameters</dt><dd>
25493 <table class="params">
25494 <tr><td class="paramdir">[in]</td><td class="paramname">a</td><td>Float input vector </td></tr>
25495 <tr><td class="paramdir">[in]</td><td class="paramname">b</td><td>Float input vector</td></tr>
25496 </table>
25497 </dd>
25498</dl>
25499<dl class="section return"><dt>Returns</dt><dd>The lane-by-lane maximum -&gt; float32x4x2 </dd></dl>
25500
Kaizen8938bd32017-09-28 14:38:23 +010025501</div>
25502</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000025503<a id="aba8de9eaa10a7cb45c5aa603585d0e4c"></a>
25504<h2 class="memtitle"><span class="permalink"><a href="#aba8de9eaa10a7cb45c5aa603585d0e4c">&#9670;&nbsp;</a></span>vmlaq_qasymm8()</h2>
25505
Anthony Barbier8140e1e2017-12-14 23:48:46 +000025506<div class="memitem">
25507<div class="memproto">
25508<table class="mlabels">
25509 <tr>
25510 <td class="mlabels-left">
25511 <table class="memname">
25512 <tr>
25513 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ac7e1832b8c58f07a98fc8d390b16ac27">qasymm8x16_t</a> vmlaq_qasymm8 </td>
25514 <td>(</td>
25515 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ac7e1832b8c58f07a98fc8d390b16ac27">qasymm8x16_t</a>&#160;</td>
25516 <td class="paramname"><em>vd</em>, </td>
25517 </tr>
25518 <tr>
25519 <td class="paramkey"></td>
25520 <td></td>
25521 <td class="paramtype">float32x4_t&#160;</td>
25522 <td class="paramname"><em>vs</em>, </td>
25523 </tr>
25524 <tr>
25525 <td class="paramkey"></td>
25526 <td></td>
25527 <td class="paramtype">float32x4_t&#160;</td>
25528 <td class="paramname"><em>vo</em>&#160;</td>
25529 </tr>
25530 <tr>
25531 <td></td>
25532 <td>)</td>
25533 <td></td><td></td>
25534 </tr>
25535 </table>
25536 </td>
25537 <td class="mlabels-right">
25538<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25539 </tr>
25540</table>
25541</div><div class="memdoc">
25542
25543<p>Perform a multiply-accumulate on all 16 components of a QASYMM8 vector. </p>
25544<p>vd*vs + vo</p>
25545<dl class="params"><dt>Parameters</dt><dd>
25546 <table class="params">
25547 <tr><td class="paramdir">[in]</td><td class="paramname">vd</td><td>Input vector value in QASYMM8 format </td></tr>
Jenkins514be652019-02-28 12:25:18 +000025548 <tr><td class="paramdir">[in]</td><td class="paramname">vs</td><td><a class="el" href="struct_vector.xhtml" title="Structure to hold Vector information.">Vector</a> multiplier in F32 format. The multiplier value must be duplicated across all four lanes. </td></tr>
25549 <tr><td class="paramdir">[in]</td><td class="paramname">vo</td><td><a class="el" href="struct_vector.xhtml" title="Structure to hold Vector information.">Vector</a> addend in F32 format. The addend value must be duplicated across all four lanes.</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000025550 </table>
25551 </dd>
25552</dl>
25553<dl class="section return"><dt>Returns</dt><dd>A 16-component vector in QASYMM8 format, saturated to fit </dd></dl>
25554
Jenkinsb9abeae2018-11-22 11:58:08 +000025555<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8inl_source.xhtml#l00034">34</a> of file <a class="el" href="_n_e_asymm_8inl_source.xhtml">NEAsymm.inl</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000025556<div class="fragment"><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;{</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="comment">// Convert uint8 vectors to uint16 vectors</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keyword">const</span> uint8x8_t vd_low = vget_low_u8(vd);</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">const</span> uint8x8_t vd_high = vget_high_u8(vd);</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; uint16x8_t vd_low_u16x8 = vmovl_u8(vd_low);</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; uint16x8_t vd_high_u16x8 = vmovl_u8(vd_high);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="comment">// Convert uint16 vectors to uint32 vectors</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; uint32x4_t A_u32x4 = vmovl_u16(vget_low_u16(vd_low_u16x8));</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; uint32x4_t B_u32x4 = vmovl_u16(vget_high_u16(vd_low_u16x8));</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; uint32x4_t C_u32x4 = vmovl_u16(vget_low_u16(vd_high_u16x8));</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; uint32x4_t D_u32x4 = vmovl_u16(vget_high_u16(vd_high_u16x8));</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="comment">// Convert uint32 vectors to float32 vectors</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; float32x4_t A_f32x4 = vcvtq_f32_u32(A_u32x4);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; float32x4_t B_f32x4 = vcvtq_f32_u32(B_u32x4);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; float32x4_t C_f32x4 = vcvtq_f32_u32(C_u32x4);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; float32x4_t D_f32x4 = vcvtq_f32_u32(D_u32x4);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="comment">// vd = vd*vs + vo</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; A_f32x4 = vmlaq_f32(vo, A_f32x4, vs);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; B_f32x4 = vmlaq_f32(vo, B_f32x4, vs);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; C_f32x4 = vmlaq_f32(vo, C_f32x4, vs);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; D_f32x4 = vmlaq_f32(vo, D_f32x4, vs);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="comment">// Convert float32 vectors to uint32 vectors</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; A_u32x4 = vcvtq_u32_f32(A_f32x4);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; B_u32x4 = vcvtq_u32_f32(B_f32x4);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; C_u32x4 = vcvtq_u32_f32(C_f32x4);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; D_u32x4 = vcvtq_u32_f32(D_f32x4);</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="comment">// Convert uint32 vectors to uint16 vectors (with saturation)</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; vd_low_u16x8 = vcombine_u16(vqmovn_u32(A_u32x4), vqmovn_u32(B_u32x4));</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; vd_high_u16x8 = vcombine_u16(vqmovn_u32(C_u32x4), vqmovn_u32(D_u32x4));</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="comment">// convert uint16 vectors to uint8 vectors (with saturation)</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">return</span> vcombine_u8(vqmovn_u16(vd_low_u16x8), vqmovn_u16(vd_high_u16x8));</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;}</div></div><!-- fragment -->
25557</div>
25558</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000025559<a id="a5dce3fda8114a32a2c8f1f517adca368"></a>
25560<h2 class="memtitle"><span class="permalink"><a href="#a5dce3fda8114a32a2c8f1f517adca368">&#9670;&nbsp;</a></span>vmul_n() <span class="overload">[1/2]</span></h2>
25561
25562<div class="memitem">
25563<div class="memproto">
25564<table class="mlabels">
25565 <tr>
25566 <td class="mlabels-left">
25567 <table class="memname">
25568 <tr>
25569 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; arm_compute::vmul_n </td>
25570 <td>(</td>
25571 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
25572 <td class="paramname"><em>vec</em>, </td>
25573 </tr>
25574 <tr>
25575 <td class="paramkey"></td>
25576 <td></td>
25577 <td class="paramtype">float&#160;</td>
25578 <td class="paramname"><em>val</em>&#160;</td>
25579 </tr>
25580 <tr>
25581 <td></td>
25582 <td>)</td>
25583 <td></td><td></td>
25584 </tr>
25585 </table>
25586 </td>
25587 <td class="mlabels-right">
25588<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25589 </tr>
25590</table>
25591</div><div class="memdoc">
25592
25593<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00232">232</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000025594<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25595</div>
25596</div>
25597<a id="abc9f4323a93d34d19bab7cc371649441"></a>
25598<h2 class="memtitle"><span class="permalink"><a href="#abc9f4323a93d34d19bab7cc371649441">&#9670;&nbsp;</a></span>vmul_n() <span class="overload">[2/2]</span></h2>
25599
25600<div class="memitem">
25601<div class="memproto">
25602 <table class="memname">
25603 <tr>
25604 <td class="memname">float32x4x4_t arm_compute::vmul_n </td>
25605 <td>(</td>
25606 <td class="paramtype">float32x4x4_t&#160;</td>
25607 <td class="paramname"><em>vec</em>, </td>
25608 </tr>
25609 <tr>
25610 <td class="paramkey"></td>
25611 <td></td>
25612 <td class="paramtype">float&#160;</td>
25613 <td class="paramname"><em>val</em>&#160;</td>
25614 </tr>
25615 <tr>
25616 <td></td>
25617 <td>)</td>
25618 <td></td><td></td>
25619 </tr>
25620 </table>
25621</div><div class="memdoc">
25622
25623<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00312">312</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25624<div class="fragment"><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;{</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; float32x4x4_t res = { {</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; vmulq_n_f32(vec.val[0], val),</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; vmulq_n_f32(vec.val[1], val),</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; vmulq_n_f32(vec.val[2], val),</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; vmulq_n_f32(vec.val[3], val)</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; }</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; };</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keywordflow">return</span> res;</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;}</div></div><!-- fragment -->
25625</div>
25626</div>
25627<a id="aae85042ef273ca700734604b5488f2ff"></a>
25628<h2 class="memtitle"><span class="permalink"><a href="#aae85042ef273ca700734604b5488f2ff">&#9670;&nbsp;</a></span>vpmax() <span class="overload">[1/7]</span></h2>
25629
25630<div class="memitem">
25631<div class="memproto">
25632<table class="mlabels">
25633 <tr>
25634 <td class="mlabels-left">
25635 <table class="memname">
25636 <tr>
25637 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt; arm_compute::vpmax </td>
25638 <td>(</td>
25639 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td>
25640 <td class="paramname"><em>a</em>, </td>
25641 </tr>
25642 <tr>
25643 <td class="paramkey"></td>
25644 <td></td>
25645 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td>
25646 <td class="paramname"><em>b</em>&#160;</td>
25647 </tr>
25648 <tr>
25649 <td></td>
25650 <td>)</td>
25651 <td></td><td></td>
25652 </tr>
25653 </table>
25654 </td>
25655 <td class="mlabels-right">
25656<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25657 </tr>
25658</table>
25659</div><div class="memdoc">
25660
25661<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000025662<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25663</div>
25664</div>
25665<a id="a0d9a679f8dfa41f17d46f6c1e56ca82d"></a>
25666<h2 class="memtitle"><span class="permalink"><a href="#a0d9a679f8dfa41f17d46f6c1e56ca82d">&#9670;&nbsp;</a></span>vpmax() <span class="overload">[2/7]</span></h2>
25667
25668<div class="memitem">
25669<div class="memproto">
25670<table class="mlabels">
25671 <tr>
25672 <td class="mlabels-left">
25673 <table class="memname">
25674 <tr>
25675 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt; arm_compute::vpmax </td>
25676 <td>(</td>
25677 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td>
25678 <td class="paramname"><em>a</em>, </td>
25679 </tr>
25680 <tr>
25681 <td class="paramkey"></td>
25682 <td></td>
25683 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td>
25684 <td class="paramname"><em>b</em>&#160;</td>
25685 </tr>
25686 <tr>
25687 <td></td>
25688 <td>)</td>
25689 <td></td><td></td>
25690 </tr>
25691 </table>
25692 </td>
25693 <td class="mlabels-right">
25694<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25695 </tr>
25696</table>
25697</div><div class="memdoc">
25698
25699<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25700<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25701</div>
25702</div>
25703<a id="a2bc9036a2d288d7a4ad2d015d91ba5d9"></a>
25704<h2 class="memtitle"><span class="permalink"><a href="#a2bc9036a2d288d7a4ad2d015d91ba5d9">&#9670;&nbsp;</a></span>vpmax() <span class="overload">[3/7]</span></h2>
25705
25706<div class="memitem">
25707<div class="memproto">
25708<table class="mlabels">
25709 <tr>
25710 <td class="mlabels-left">
25711 <table class="memname">
25712 <tr>
25713 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt; arm_compute::vpmax </td>
25714 <td>(</td>
25715 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td>
25716 <td class="paramname"><em>a</em>, </td>
25717 </tr>
25718 <tr>
25719 <td class="paramkey"></td>
25720 <td></td>
25721 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td>
25722 <td class="paramname"><em>b</em>&#160;</td>
25723 </tr>
25724 <tr>
25725 <td></td>
25726 <td>)</td>
25727 <td></td><td></td>
25728 </tr>
25729 </table>
25730 </td>
25731 <td class="mlabels-right">
25732<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25733 </tr>
25734</table>
25735</div><div class="memdoc">
25736
25737<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25738<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25739</div>
25740</div>
25741<a id="ab831eb6268e8d3dcfd9ce6e1e7daf598"></a>
25742<h2 class="memtitle"><span class="permalink"><a href="#ab831eb6268e8d3dcfd9ce6e1e7daf598">&#9670;&nbsp;</a></span>vpmax() <span class="overload">[4/7]</span></h2>
25743
25744<div class="memitem">
25745<div class="memproto">
25746<table class="mlabels">
25747 <tr>
25748 <td class="mlabels-left">
25749 <table class="memname">
25750 <tr>
25751 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt; arm_compute::vpmax </td>
25752 <td>(</td>
25753 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td>
25754 <td class="paramname"><em>a</em>, </td>
25755 </tr>
25756 <tr>
25757 <td class="paramkey"></td>
25758 <td></td>
25759 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td>
25760 <td class="paramname"><em>b</em>&#160;</td>
25761 </tr>
25762 <tr>
25763 <td></td>
25764 <td>)</td>
25765 <td></td><td></td>
25766 </tr>
25767 </table>
25768 </td>
25769 <td class="mlabels-right">
25770<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25771 </tr>
25772</table>
25773</div><div class="memdoc">
25774
25775<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25776<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25777</div>
25778</div>
25779<a id="aacd10f0e821aff266057a1fc443c6344"></a>
25780<h2 class="memtitle"><span class="permalink"><a href="#aacd10f0e821aff266057a1fc443c6344">&#9670;&nbsp;</a></span>vpmax() <span class="overload">[5/7]</span></h2>
25781
25782<div class="memitem">
25783<div class="memproto">
25784<table class="mlabels">
25785 <tr>
25786 <td class="mlabels-left">
25787 <table class="memname">
25788 <tr>
25789 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt; arm_compute::vpmax </td>
25790 <td>(</td>
25791 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td>
25792 <td class="paramname"><em>a</em>, </td>
25793 </tr>
25794 <tr>
25795 <td class="paramkey"></td>
25796 <td></td>
25797 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td>
25798 <td class="paramname"><em>b</em>&#160;</td>
25799 </tr>
25800 <tr>
25801 <td></td>
25802 <td>)</td>
25803 <td></td><td></td>
25804 </tr>
25805 </table>
25806 </td>
25807 <td class="mlabels-right">
25808<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25809 </tr>
25810</table>
25811</div><div class="memdoc">
25812
25813<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25814<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25815</div>
25816</div>
25817<a id="aeb42b9eb65ed0207ddcdb9c870fd5697"></a>
25818<h2 class="memtitle"><span class="permalink"><a href="#aeb42b9eb65ed0207ddcdb9c870fd5697">&#9670;&nbsp;</a></span>vpmax() <span class="overload">[6/7]</span></h2>
25819
25820<div class="memitem">
25821<div class="memproto">
25822<table class="mlabels">
25823 <tr>
25824 <td class="mlabels-left">
25825 <table class="memname">
25826 <tr>
25827 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt; arm_compute::vpmax </td>
25828 <td>(</td>
25829 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td>
25830 <td class="paramname"><em>a</em>, </td>
25831 </tr>
25832 <tr>
25833 <td class="paramkey"></td>
25834 <td></td>
25835 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td>
25836 <td class="paramname"><em>b</em>&#160;</td>
25837 </tr>
25838 <tr>
25839 <td></td>
25840 <td>)</td>
25841 <td></td><td></td>
25842 </tr>
25843 </table>
25844 </td>
25845 <td class="mlabels-right">
25846<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25847 </tr>
25848</table>
25849</div><div class="memdoc">
25850
25851<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25852<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25853</div>
25854</div>
25855<a id="af8efc828ccf4a8f2c6b26cfe3813952d"></a>
25856<h2 class="memtitle"><span class="permalink"><a href="#af8efc828ccf4a8f2c6b26cfe3813952d">&#9670;&nbsp;</a></span>vpmax() <span class="overload">[7/7]</span></h2>
25857
25858<div class="memitem">
25859<div class="memproto">
25860<table class="mlabels">
25861 <tr>
25862 <td class="mlabels-left">
25863 <table class="memname">
25864 <tr>
25865 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt; arm_compute::vpmax </td>
25866 <td>(</td>
25867 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td>
25868 <td class="paramname"><em>a</em>, </td>
25869 </tr>
25870 <tr>
25871 <td class="paramkey"></td>
25872 <td></td>
25873 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td>
25874 <td class="paramname"><em>b</em>&#160;</td>
25875 </tr>
25876 <tr>
25877 <td></td>
25878 <td>)</td>
25879 <td></td><td></td>
25880 </tr>
25881 </table>
25882 </td>
25883 <td class="mlabels-right">
25884<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25885 </tr>
25886</table>
25887</div><div class="memdoc">
25888
25889<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
25890<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
25891</div>
25892</div>
25893<a id="aa6465367a67af2bae4ca46750231dae0"></a>
25894<h2 class="memtitle"><span class="permalink"><a href="#aa6465367a67af2bae4ca46750231dae0">&#9670;&nbsp;</a></span>vpowq_f32()</h2>
25895
Anthony Barbierdbdab852017-06-23 15:42:00 +010025896<div class="memitem">
25897<div class="memproto">
Anthony Barbierdbdab852017-06-23 15:42:00 +010025898 <table class="memname">
25899 <tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010025900 <td class="memname">float32x4_t arm_compute::vpowq_f32 </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010025901 <td>(</td>
25902 <td class="paramtype">float32x4_t&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000025903 <td class="paramname"><em>val</em>, </td>
25904 </tr>
25905 <tr>
25906 <td class="paramkey"></td>
25907 <td></td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010025908 <td class="paramtype">float32x4_t&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000025909 <td class="paramname"><em>n</em>&#160;</td>
25910 </tr>
25911 <tr>
25912 <td></td>
25913 <td>)</td>
25914 <td></td><td></td>
25915 </tr>
25916 </table>
Anthony Barbier871448e2017-03-24 14:54:29 +000025917</div><div class="memdoc">
25918
25919<p>Calculate n power of a number. </p>
25920<p>pow(x,n) = e^(n*log(x))</p>
25921<dl class="params"><dt>Parameters</dt><dd>
25922 <table class="params">
Anthony Barbierdbdab852017-06-23 15:42:00 +010025923 <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>Input vector value in F32 format. </td></tr>
25924 <tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>Powers to raise the input to.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000025925 </table>
25926 </dd>
25927</dl>
25928<dl class="section return"><dt>Returns</dt><dd>The calculated power. </dd></dl>
25929
Kaizen8938bd32017-09-28 14:38:23 +010025930</div>
25931</div>
Jenkins514be652019-02-28 12:25:18 +000025932<a id="a6554986624335b7c05f968342630f530"></a>
25933<h2 class="memtitle"><span class="permalink"><a href="#a6554986624335b7c05f968342630f530">&#9670;&nbsp;</a></span>vquantize()</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000025934
25935<div class="memitem">
25936<div class="memproto">
25937<table class="mlabels">
25938 <tr>
25939 <td class="mlabels-left">
25940 <table class="memname">
25941 <tr>
Jenkins514be652019-02-28 12:25:18 +000025942 <td class="memname">uint8x16_t arm_compute::vquantize </td>
Jenkinsb9abeae2018-11-22 11:58:08 +000025943 <td>(</td>
Jenkins514be652019-02-28 12:25:18 +000025944 <td class="paramtype">const float32x4x4_t &amp;&#160;</td>
25945 <td class="paramname"><em>qv</em>, </td>
Jenkinsb9abeae2018-11-22 11:58:08 +000025946 </tr>
25947 <tr>
25948 <td class="paramkey"></td>
25949 <td></td>
Jenkins514be652019-02-28 12:25:18 +000025950 <td class="paramtype">const <a class="el" href="structarm__compute_1_1_quantization_info.xhtml">QuantizationInfo</a> &amp;&#160;</td>
25951 <td class="paramname"><em>qi</em>&#160;</td>
Jenkinsb9abeae2018-11-22 11:58:08 +000025952 </tr>
25953 <tr>
25954 <td></td>
25955 <td>)</td>
25956 <td></td><td></td>
25957 </tr>
25958 </table>
25959 </td>
25960 <td class="mlabels-right">
25961<span class="mlabels"><span class="mlabel">inline</span></span> </td>
25962 </tr>
25963</table>
25964</div><div class="memdoc">
25965
Jenkins514be652019-02-28 12:25:18 +000025966<p>Quantize a neon vector holding 16 floating point values. </p>
25967<dl class="params"><dt>Parameters</dt><dd>
25968 <table class="params">
25969 <tr><td class="paramname">qv</td><td>Input values to be quantized. </td></tr>
25970 <tr><td class="paramname">qi</td><td>Quantization information to be used in the computation.</td></tr>
25971 </table>
25972 </dd>
25973</dl>
25974<dl class="section return"><dt>Returns</dt><dd>A neon vector holding the quantized values </dd></dl>
Jenkinsb9abeae2018-11-22 11:58:08 +000025975
Jenkins514be652019-02-28 12:25:18 +000025976<p class="definition">Definition at line <a class="el" href="_n_e_asymm_8h_source.xhtml#l00160">160</a> of file <a class="el" href="_n_e_asymm_8h_source.xhtml">NEAsymm.h</a>.</p>
25977<div class="fragment"><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;{</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">scale</a> = qi.scale;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a> = qi.offset;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keyword">const</span> float32x4_t voffset = vdupq_n_f32(<a class="code" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a>);</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keyword">const</span> float32x4_t vinvscale = vdupq_n_f32(1.f / <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">scale</a>);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keyword">const</span> int32x4x4_t rf =</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; {</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; {</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="preprocessor">#ifdef __aarch64__</span></div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; vcvtnq_s32_f32(vmlaq_f32(voffset, qv.val[0], vinvscale)),</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; vcvtnq_s32_f32(vmlaq_f32(voffset, qv.val[1], vinvscale)),</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; vcvtnq_s32_f32(vmlaq_f32(voffset, qv.val[2], vinvscale)),</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; vcvtnq_s32_f32(vmlaq_f32(voffset, qv.val[3], vinvscale)),</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="preprocessor">#else //__aarch64__</span></div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; vcvtq_s32_f32(vmlaq_f32(voffset, qv.val[0], vinvscale)),</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; vcvtq_s32_f32(vmlaq_f32(voffset, qv.val[1], vinvscale)),</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; vcvtq_s32_f32(vmlaq_f32(voffset, qv.val[2], vinvscale)),</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; vcvtq_s32_f32(vmlaq_f32(voffset, qv.val[3], vinvscale)),</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="preprocessor">#endif //__aarch64__</span></div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; }</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; };</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keyword">const</span> uint8x8_t pa = vqmovun_s16(vcombine_s16(vqmovn_s32(rf.val[0]), vqmovn_s32(rf.val[1])));</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keyword">const</span> uint8x8_t pb = vqmovun_s16(vcombine_s16(vqmovn_s32(rf.val[2]), vqmovn_s32(rf.val[3])));</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">return</span> vcombine_u8(pa, pb);</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;}</div><div class="ttc" id="src_2core_2_c_l_2cl__kernels_2_helpers_8h_xhtml_a009469e4d9b8fce3b6d5e97d2077827d"><div class="ttname"><a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a></div><div class="ttdeci">__global uchar * offset(const Image *img, int x, int y)</div><div class="ttdoc">Get the pointer position of a Image.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00312">helpers.h:312</a></div></div>
25978<div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_acec6d8ad52a28972fa74e071c1a63b6a"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">arm_compute::test::validation::scale</a></div><div class="ttdeci">scale</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">PixelWiseMultiplication.cpp:168</a></div></div>
25979</div><!-- fragment -->
25980<p class="reference">References <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00190">QuantizationInfo::offset</a>, <a class="el" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00312">offset()</a>, <a class="el" href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00168">arm_compute::test::validation::scale</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00189">QuantizationInfo::scale</a>.</p>
25981
25982<p class="reference">Referenced by <a class="el" href="_n_e_width_concatenate_layer_kernel_8cpp_source.xhtml#l00105">NEWidthConcatenateLayerKernel::run()</a>.</p>
25983
Jenkinsb9abeae2018-11-22 11:58:08 +000025984</div>
25985</div>
25986<a id="aa17a7667769390f153ad5289d5390341"></a>
Jenkins514be652019-02-28 12:25:18 +000025987<h2 class="memtitle"><span class="permalink"><a href="#aa17a7667769390f153ad5289d5390341">&#9670;&nbsp;</a></span>vst() <span class="overload">[1/14]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000025988
25989<div class="memitem">
25990<div class="memproto">
25991<table class="mlabels">
25992 <tr>
25993 <td class="mlabels-left">
25994 <table class="memname">
25995 <tr>
25996 <td class="memname">void arm_compute::vst </td>
25997 <td>(</td>
25998 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint8_t &gt;&#160;</td>
25999 <td class="paramname"><em>ptr</em>, </td>
26000 </tr>
26001 <tr>
26002 <td class="paramkey"></td>
26003 <td></td>
26004 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint8_t &gt;&#160;</td>
26005 <td class="paramname"><em>vec</em>&#160;</td>
26006 </tr>
26007 <tr>
26008 <td></td>
26009 <td>)</td>
26010 <td></td><td></td>
26011 </tr>
26012 </table>
26013 </td>
26014 <td class="mlabels-right">
26015<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26016 </tr>
26017</table>
26018</div><div class="memdoc">
26019
26020<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
26021<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26022</div>
26023</div>
Jenkins514be652019-02-28 12:25:18 +000026024<a id="a3753b9d735032ba72e7df0c5cbba31a1"></a>
26025<h2 class="memtitle"><span class="permalink"><a href="#a3753b9d735032ba72e7df0c5cbba31a1">&#9670;&nbsp;</a></span>vst() <span class="overload">[2/14]</span></h2>
26026
26027<div class="memitem">
26028<div class="memproto">
26029<table class="mlabels">
26030 <tr>
26031 <td class="mlabels-left">
26032 <table class="memname">
26033 <tr>
26034 <td class="memname">void arm_compute::vst </td>
26035 <td>(</td>
26036 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint8_t &gt;&#160;</td>
26037 <td class="paramname"><em>ptr</em>, </td>
26038 </tr>
26039 <tr>
26040 <td class="paramkey"></td>
26041 <td></td>
26042 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint8_t &gt;&#160;</td>
26043 <td class="paramname"><em>vec</em>&#160;</td>
26044 </tr>
26045 <tr>
26046 <td></td>
26047 <td>)</td>
26048 <td></td><td></td>
26049 </tr>
26050 </table>
26051 </td>
26052 <td class="mlabels-right">
26053<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26054 </tr>
26055</table>
26056</div><div class="memdoc">
26057
26058<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00218">218</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
26059<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26060</div>
26061</div>
26062<a id="ab2c29d96efc44a4163d8f594cd836d1e"></a>
26063<h2 class="memtitle"><span class="permalink"><a href="#ab2c29d96efc44a4163d8f594cd836d1e">&#9670;&nbsp;</a></span>vst() <span class="overload">[3/14]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000026064
26065<div class="memitem">
26066<div class="memproto">
26067<table class="mlabels">
26068 <tr>
26069 <td class="mlabels-left">
26070 <table class="memname">
26071 <tr>
26072 <td class="memname">void arm_compute::vst </td>
26073 <td>(</td>
26074 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int8_t &gt;&#160;</td>
26075 <td class="paramname"><em>ptr</em>, </td>
26076 </tr>
26077 <tr>
26078 <td class="paramkey"></td>
26079 <td></td>
Jenkins514be652019-02-28 12:25:18 +000026080 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int8_t &gt;&#160;</td>
Jenkinsb9abeae2018-11-22 11:58:08 +000026081 <td class="paramname"><em>vec</em>&#160;</td>
26082 </tr>
26083 <tr>
26084 <td></td>
26085 <td>)</td>
26086 <td></td><td></td>
26087 </tr>
26088 </table>
26089 </td>
26090 <td class="mlabels-right">
26091<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26092 </tr>
26093</table>
26094</div><div class="memdoc">
26095
26096<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
26097<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26098</div>
26099</div>
Jenkins514be652019-02-28 12:25:18 +000026100<a id="acec5b4ba08b0ab7d080e2177e4b3deb1"></a>
26101<h2 class="memtitle"><span class="permalink"><a href="#acec5b4ba08b0ab7d080e2177e4b3deb1">&#9670;&nbsp;</a></span>vst() <span class="overload">[4/14]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000026102
26103<div class="memitem">
26104<div class="memproto">
26105<table class="mlabels">
26106 <tr>
26107 <td class="mlabels-left">
26108 <table class="memname">
26109 <tr>
26110 <td class="memname">void arm_compute::vst </td>
26111 <td>(</td>
26112 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int8_t &gt;&#160;</td>
26113 <td class="paramname"><em>ptr</em>, </td>
26114 </tr>
26115 <tr>
26116 <td class="paramkey"></td>
26117 <td></td>
Jenkins514be652019-02-28 12:25:18 +000026118 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int8_t &gt;&#160;</td>
Jenkinsb9abeae2018-11-22 11:58:08 +000026119 <td class="paramname"><em>vec</em>&#160;</td>
26120 </tr>
26121 <tr>
26122 <td></td>
26123 <td>)</td>
26124 <td></td><td></td>
26125 </tr>
26126 </table>
26127 </td>
26128 <td class="mlabels-right">
26129<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26130 </tr>
26131</table>
26132</div><div class="memdoc">
26133
26134<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00219">219</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
26135<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26136</div>
26137</div>
26138<a id="a090a9d8254580d7c22668e21e581d58e"></a>
26139<h2 class="memtitle"><span class="permalink"><a href="#a090a9d8254580d7c22668e21e581d58e">&#9670;&nbsp;</a></span>vst() <span class="overload">[5/14]</span></h2>
26140
26141<div class="memitem">
26142<div class="memproto">
26143<table class="mlabels">
26144 <tr>
26145 <td class="mlabels-left">
26146 <table class="memname">
26147 <tr>
26148 <td class="memname">void arm_compute::vst </td>
26149 <td>(</td>
26150 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint16_t &gt;&#160;</td>
26151 <td class="paramname"><em>ptr</em>, </td>
26152 </tr>
26153 <tr>
26154 <td class="paramkey"></td>
26155 <td></td>
26156 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint16_t &gt;&#160;</td>
26157 <td class="paramname"><em>vec</em>&#160;</td>
26158 </tr>
26159 <tr>
26160 <td></td>
26161 <td>)</td>
26162 <td></td><td></td>
26163 </tr>
26164 </table>
26165 </td>
26166 <td class="mlabels-right">
26167<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26168 </tr>
26169</table>
26170</div><div class="memdoc">
26171
26172<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
26173<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26174</div>
26175</div>
26176<a id="a9893527df6922f85f0f3173142247ece"></a>
26177<h2 class="memtitle"><span class="permalink"><a href="#a9893527df6922f85f0f3173142247ece">&#9670;&nbsp;</a></span>vst() <span class="overload">[6/14]</span></h2>
26178
26179<div class="memitem">
26180<div class="memproto">
26181<table class="mlabels">
26182 <tr>
26183 <td class="mlabels-left">
26184 <table class="memname">
26185 <tr>
26186 <td class="memname">void arm_compute::vst </td>
26187 <td>(</td>
26188 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint16_t &gt;&#160;</td>
26189 <td class="paramname"><em>ptr</em>, </td>
26190 </tr>
26191 <tr>
26192 <td class="paramkey"></td>
26193 <td></td>
26194 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint16_t &gt;&#160;</td>
26195 <td class="paramname"><em>vec</em>&#160;</td>
26196 </tr>
26197 <tr>
26198 <td></td>
26199 <td>)</td>
26200 <td></td><td></td>
26201 </tr>
26202 </table>
26203 </td>
26204 <td class="mlabels-right">
26205<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26206 </tr>
26207</table>
26208</div><div class="memdoc">
26209
26210<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00220">220</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
26211<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26212</div>
26213</div>
26214<a id="a7a7441e9c3870a817f9084697730a0e9"></a>
26215<h2 class="memtitle"><span class="permalink"><a href="#a7a7441e9c3870a817f9084697730a0e9">&#9670;&nbsp;</a></span>vst() <span class="overload">[7/14]</span></h2>
26216
26217<div class="memitem">
26218<div class="memproto">
26219<table class="mlabels">
26220 <tr>
26221 <td class="mlabels-left">
26222 <table class="memname">
26223 <tr>
26224 <td class="memname">void arm_compute::vst </td>
26225 <td>(</td>
26226 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int16_t &gt;&#160;</td>
26227 <td class="paramname"><em>ptr</em>, </td>
26228 </tr>
26229 <tr>
26230 <td class="paramkey"></td>
26231 <td></td>
26232 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int16_t &gt;&#160;</td>
26233 <td class="paramname"><em>vec</em>&#160;</td>
26234 </tr>
26235 <tr>
26236 <td></td>
26237 <td>)</td>
26238 <td></td><td></td>
26239 </tr>
26240 </table>
26241 </td>
26242 <td class="mlabels-right">
26243<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26244 </tr>
26245</table>
26246</div><div class="memdoc">
26247
26248<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
26249<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26250</div>
26251</div>
26252<a id="ac9aedf36525da0e2306db27867c2bb5d"></a>
26253<h2 class="memtitle"><span class="permalink"><a href="#ac9aedf36525da0e2306db27867c2bb5d">&#9670;&nbsp;</a></span>vst() <span class="overload">[8/14]</span></h2>
26254
26255<div class="memitem">
26256<div class="memproto">
26257<table class="mlabels">
26258 <tr>
26259 <td class="mlabels-left">
26260 <table class="memname">
26261 <tr>
26262 <td class="memname">void arm_compute::vst </td>
26263 <td>(</td>
26264 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int16_t &gt;&#160;</td>
26265 <td class="paramname"><em>ptr</em>, </td>
26266 </tr>
26267 <tr>
26268 <td class="paramkey"></td>
26269 <td></td>
26270 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int16_t &gt;&#160;</td>
26271 <td class="paramname"><em>vec</em>&#160;</td>
26272 </tr>
26273 <tr>
26274 <td></td>
26275 <td>)</td>
26276 <td></td><td></td>
26277 </tr>
26278 </table>
26279 </td>
26280 <td class="mlabels-right">
26281<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26282 </tr>
26283</table>
26284</div><div class="memdoc">
26285
26286<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00221">221</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
26287<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26288</div>
26289</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000026290<a id="aa1e4aafb14bd8eee38caa7ad5db69507"></a>
Jenkins514be652019-02-28 12:25:18 +000026291<h2 class="memtitle"><span class="permalink"><a href="#aa1e4aafb14bd8eee38caa7ad5db69507">&#9670;&nbsp;</a></span>vst() <span class="overload">[9/14]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000026292
26293<div class="memitem">
26294<div class="memproto">
26295<table class="mlabels">
26296 <tr>
26297 <td class="mlabels-left">
26298 <table class="memname">
26299 <tr>
26300 <td class="memname">void arm_compute::vst </td>
26301 <td>(</td>
26302 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint32_t &gt;&#160;</td>
26303 <td class="paramname"><em>ptr</em>, </td>
26304 </tr>
26305 <tr>
26306 <td class="paramkey"></td>
26307 <td></td>
26308 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; uint32_t &gt;&#160;</td>
26309 <td class="paramname"><em>vec</em>&#160;</td>
26310 </tr>
26311 <tr>
26312 <td></td>
26313 <td>)</td>
26314 <td></td><td></td>
26315 </tr>
26316 </table>
26317 </td>
26318 <td class="mlabels-right">
26319<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26320 </tr>
26321</table>
26322</div><div class="memdoc">
26323
26324<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
26325<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26326</div>
26327</div>
Jenkins514be652019-02-28 12:25:18 +000026328<a id="aca451511712482f55001063da2317427"></a>
26329<h2 class="memtitle"><span class="permalink"><a href="#aca451511712482f55001063da2317427">&#9670;&nbsp;</a></span>vst() <span class="overload">[10/14]</span></h2>
26330
26331<div class="memitem">
26332<div class="memproto">
26333<table class="mlabels">
26334 <tr>
26335 <td class="mlabels-left">
26336 <table class="memname">
26337 <tr>
26338 <td class="memname">void arm_compute::vst </td>
26339 <td>(</td>
26340 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; uint32_t &gt;&#160;</td>
26341 <td class="paramname"><em>ptr</em>, </td>
26342 </tr>
26343 <tr>
26344 <td class="paramkey"></td>
26345 <td></td>
26346 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; uint32_t &gt;&#160;</td>
26347 <td class="paramname"><em>vec</em>&#160;</td>
26348 </tr>
26349 <tr>
26350 <td></td>
26351 <td>)</td>
26352 <td></td><td></td>
26353 </tr>
26354 </table>
26355 </td>
26356 <td class="mlabels-right">
26357<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26358 </tr>
26359</table>
26360</div><div class="memdoc">
26361
26362<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00222">222</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
26363<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26364</div>
26365</div>
26366<a id="a788c1fc3809f77d2866e4282d374770b"></a>
26367<h2 class="memtitle"><span class="permalink"><a href="#a788c1fc3809f77d2866e4282d374770b">&#9670;&nbsp;</a></span>vst() <span class="overload">[11/14]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000026368
26369<div class="memitem">
26370<div class="memproto">
26371<table class="mlabels">
26372 <tr>
26373 <td class="mlabels-left">
26374 <table class="memname">
26375 <tr>
26376 <td class="memname">void arm_compute::vst </td>
26377 <td>(</td>
26378 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int32_t &gt;&#160;</td>
26379 <td class="paramname"><em>ptr</em>, </td>
26380 </tr>
26381 <tr>
26382 <td class="paramkey"></td>
26383 <td></td>
Jenkins514be652019-02-28 12:25:18 +000026384 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; int32_t &gt;&#160;</td>
Jenkinsb9abeae2018-11-22 11:58:08 +000026385 <td class="paramname"><em>vec</em>&#160;</td>
26386 </tr>
26387 <tr>
26388 <td></td>
26389 <td>)</td>
26390 <td></td><td></td>
26391 </tr>
26392 </table>
26393 </td>
26394 <td class="mlabels-right">
26395<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26396 </tr>
26397</table>
26398</div><div class="memdoc">
26399
26400<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
26401<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26402</div>
26403</div>
Jenkins514be652019-02-28 12:25:18 +000026404<a id="a59f96d9a74850a843c1f710803fe8de8"></a>
26405<h2 class="memtitle"><span class="permalink"><a href="#a59f96d9a74850a843c1f710803fe8de8">&#9670;&nbsp;</a></span>vst() <span class="overload">[12/14]</span></h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000026406
26407<div class="memitem">
26408<div class="memproto">
26409<table class="mlabels">
26410 <tr>
26411 <td class="mlabels-left">
26412 <table class="memname">
26413 <tr>
26414 <td class="memname">void arm_compute::vst </td>
26415 <td>(</td>
26416 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; int32_t &gt;&#160;</td>
26417 <td class="paramname"><em>ptr</em>, </td>
26418 </tr>
26419 <tr>
26420 <td class="paramkey"></td>
26421 <td></td>
Jenkins514be652019-02-28 12:25:18 +000026422 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; int32_t &gt;&#160;</td>
Jenkinsb9abeae2018-11-22 11:58:08 +000026423 <td class="paramname"><em>vec</em>&#160;</td>
26424 </tr>
26425 <tr>
26426 <td></td>
26427 <td>)</td>
26428 <td></td><td></td>
26429 </tr>
26430 </table>
26431 </td>
26432 <td class="mlabels-right">
26433<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26434 </tr>
26435</table>
26436</div><div class="memdoc">
26437
26438<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00223">223</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
26439<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26440</div>
26441</div>
26442<a id="abd25994f8abe7093700a88a65fdb6ad5"></a>
26443<h2 class="memtitle"><span class="permalink"><a href="#abd25994f8abe7093700a88a65fdb6ad5">&#9670;&nbsp;</a></span>vst() <span class="overload">[13/14]</span></h2>
26444
26445<div class="memitem">
26446<div class="memproto">
26447<table class="mlabels">
26448 <tr>
26449 <td class="mlabels-left">
26450 <table class="memname">
26451 <tr>
26452 <td class="memname">void arm_compute::vst </td>
26453 <td>(</td>
26454 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; float &gt;&#160;</td>
26455 <td class="paramname"><em>ptr</em>, </td>
26456 </tr>
26457 <tr>
26458 <td class="paramkey"></td>
26459 <td></td>
26460 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
26461 <td class="paramname"><em>vec</em>&#160;</td>
26462 </tr>
26463 <tr>
26464 <td></td>
26465 <td>)</td>
26466 <td></td><td></td>
26467 </tr>
26468 </table>
26469 </td>
26470 <td class="mlabels-right">
26471<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26472 </tr>
26473</table>
26474</div><div class="memdoc">
26475
26476<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
26477<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26478</div>
26479</div>
26480<a id="a01cfd18ed87a496fc5d3be04a040be61"></a>
26481<h2 class="memtitle"><span class="permalink"><a href="#a01cfd18ed87a496fc5d3be04a040be61">&#9670;&nbsp;</a></span>vst() <span class="overload">[14/14]</span></h2>
26482
26483<div class="memitem">
26484<div class="memproto">
26485<table class="mlabels">
26486 <tr>
26487 <td class="mlabels-left">
26488 <table class="memname">
26489 <tr>
26490 <td class="memname">void arm_compute::vst </td>
26491 <td>(</td>
26492 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1e36f8a2df3d6bd1756b90e2efb151e9">ptr_t</a>&lt; float &gt;&#160;</td>
26493 <td class="paramname"><em>ptr</em>, </td>
26494 </tr>
26495 <tr>
26496 <td class="paramkey"></td>
26497 <td></td>
26498 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ab448de27f94cd38059b63980c3c08f40">vec_8_byte_t</a>&lt; float &gt;&#160;</td>
26499 <td class="paramname"><em>vec</em>&#160;</td>
26500 </tr>
26501 <tr>
26502 <td></td>
26503 <td>)</td>
26504 <td></td><td></td>
26505 </tr>
26506 </table>
26507 </td>
26508 <td class="mlabels-right">
26509<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26510 </tr>
26511</table>
26512</div><div class="memdoc">
26513
26514<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00227">227</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
26515<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26516</div>
26517</div>
26518<a id="ad0ebbe865e9e6cfd1b2df041f8374ed0"></a>
26519<h2 class="memtitle"><span class="permalink"><a href="#ad0ebbe865e9e6cfd1b2df041f8374ed0">&#9670;&nbsp;</a></span>vsub()</h2>
26520
26521<div class="memitem">
26522<div class="memproto">
26523<table class="mlabels">
26524 <tr>
26525 <td class="mlabels-left">
26526 <table class="memname">
26527 <tr>
26528 <td class="memname"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt; arm_compute::vsub </td>
26529 <td>(</td>
26530 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
26531 <td class="paramname"><em>a</em>, </td>
26532 </tr>
26533 <tr>
26534 <td class="paramkey"></td>
26535 <td></td>
26536 <td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#aef7a69b9cf4a1732d2be114b9b9bf3e3">vec_16_byte_t</a>&lt; float &gt;&#160;</td>
26537 <td class="paramname"><em>b</em>&#160;</td>
26538 </tr>
26539 <tr>
26540 <td></td>
26541 <td>)</td>
26542 <td></td><td></td>
26543 </tr>
26544 </table>
26545 </td>
26546 <td class="mlabels-right">
26547<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26548 </tr>
26549</table>
26550</div><div class="memdoc">
26551
26552<p class="definition">Definition at line <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml#l00232">232</a> of file <a class="el" href="_n_e_softmax_layer_kernel_8cpp_source.xhtml">NESoftmaxLayerKernel.cpp</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000026553<div class="fragment"><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div></div><!-- fragment -->
26554</div>
26555</div>
26556<a id="a3e59419da344d02daca9c5b274a1da45"></a>
26557<h2 class="memtitle"><span class="permalink"><a href="#a3e59419da344d02daca9c5b274a1da45">&#9670;&nbsp;</a></span>vtanhq_f32()</h2>
26558
Anthony Barbierdbdab852017-06-23 15:42:00 +010026559<div class="memitem">
26560<div class="memproto">
Anthony Barbierdbdab852017-06-23 15:42:00 +010026561 <table class="memname">
26562 <tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010026563 <td class="memname">float32x4_t arm_compute::vtanhq_f32 </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010026564 <td>(</td>
26565 <td class="paramtype">float32x4_t&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000026566 <td class="paramname"><em>val</em></td><td>)</td>
26567 <td></td>
26568 </tr>
26569 </table>
Anthony Barbier871448e2017-03-24 14:54:29 +000026570</div><div class="memdoc">
26571
26572<p>Calculate hyperbolic tangent. </p>
26573<p>tanh(x) = (e^2x - 1)/(e^2x + 1)</p>
Anthony Barbier46d59272017-05-04 09:15:15 +010026574<dl class="section note"><dt>Note</dt><dd>We clamp x to [-5,5] to avoid overflowing issues.</dd></dl>
Anthony Barbier871448e2017-03-24 14:54:29 +000026575<dl class="params"><dt>Parameters</dt><dd>
26576 <table class="params">
Anthony Barbierdbdab852017-06-23 15:42:00 +010026577 <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>Input vector value in F32 format.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000026578 </table>
26579 </dd>
26580</dl>
26581<dl class="section return"><dt>Returns</dt><dd>The calculated Hyperbolic Tangent. </dd></dl>
26582
Anthony Barbier871448e2017-03-24 14:54:29 +000026583</div>
26584</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000026585<a id="a0c10bb00a86edd8d0cd4c33b494f6cd4"></a>
26586<h2 class="memtitle"><span class="permalink"><a href="#a0c10bb00a86edd8d0cd4c33b494f6cd4">&#9670;&nbsp;</a></span>vtaylor_polyq_f32()</h2>
26587
Anthony Barbierdbdab852017-06-23 15:42:00 +010026588<div class="memitem">
26589<div class="memproto">
Anthony Barbierdbdab852017-06-23 15:42:00 +010026590 <table class="memname">
26591 <tr>
Jenkinsb3a371b2018-05-23 11:36:53 +010026592 <td class="memname">float32x4_t arm_compute::vtaylor_polyq_f32 </td>
Anthony Barbierdbdab852017-06-23 15:42:00 +010026593 <td>(</td>
26594 <td class="paramtype">float32x4_t&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +000026595 <td class="paramname"><em>x</em>, </td>
26596 </tr>
26597 <tr>
26598 <td class="paramkey"></td>
26599 <td></td>
26600 <td class="paramtype">const std::array&lt; float32x4_t, 8 &gt; &amp;&#160;</td>
26601 <td class="paramname"><em>coeffs</em>&#160;</td>
26602 </tr>
26603 <tr>
26604 <td></td>
26605 <td>)</td>
26606 <td></td><td></td>
26607 </tr>
26608 </table>
Anthony Barbier871448e2017-03-24 14:54:29 +000026609</div><div class="memdoc">
26610
26611<p>Perform a 7th degree polynomial approximation using Estrin's method. </p>
26612<dl class="params"><dt>Parameters</dt><dd>
26613 <table class="params">
Anthony Barbierdbdab852017-06-23 15:42:00 +010026614 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Input vector value in F32 format. </td></tr>
26615 <tr><td class="paramdir">[in]</td><td class="paramname">coeffs</td><td>Polynomial coefficients table.</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +000026616 </table>
26617 </dd>
26618</dl>
26619<dl class="section return"><dt>Returns</dt><dd>The calculated approximation. </dd></dl>
26620
Anthony Barbier871448e2017-03-24 14:54:29 +000026621</div>
26622</div>
Jenkins514be652019-02-28 12:25:18 +000026623<a id="aeb6881009f40f57d430752441ec5c4f4"></a>
26624<h2 class="memtitle"><span class="permalink"><a href="#aeb6881009f40f57d430752441ec5c4f4">&#9670;&nbsp;</a></span>wrap_around()</h2>
26625
26626<div class="memitem">
26627<div class="memproto">
26628<table class="mlabels">
26629 <tr>
26630 <td class="mlabels-left">
26631 <table class="memname">
26632 <tr>
26633 <td class="memname">T arm_compute::wrap_around </td>
26634 <td>(</td>
26635 <td class="paramtype">T&#160;</td>
26636 <td class="paramname"><em>x</em>, </td>
26637 </tr>
26638 <tr>
26639 <td class="paramkey"></td>
26640 <td></td>
26641 <td class="paramtype">T&#160;</td>
26642 <td class="paramname"><em>m</em>&#160;</td>
26643 </tr>
26644 <tr>
26645 <td></td>
26646 <td>)</td>
26647 <td></td><td></td>
26648 </tr>
26649 </table>
26650 </td>
26651 <td class="mlabels-right">
26652<span class="mlabels"><span class="mlabel">inline</span></span> </td>
26653 </tr>
26654</table>
26655</div><div class="memdoc">
26656
26657<p>Wrap-around a number within the range 0 &lt;= x &lt; m. </p>
26658<dl class="params"><dt>Parameters</dt><dd>
26659 <table class="params">
26660 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Input value </td></tr>
26661 <tr><td class="paramdir">[in]</td><td class="paramname">m</td><td>Range</td></tr>
26662 </table>
26663 </dd>
26664</dl>
26665<dl class="section return"><dt>Returns</dt><dd>the wrapped-around number </dd></dl>
26666
26667<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml#l00755">755</a> of file <a class="el" href="arm__compute_2core_2_helpers_8h_source.xhtml">Helpers.h</a>.</p>
26668<div class="fragment"><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160;{</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; <span class="keywordflow">return</span> x &gt;= 0 ? x % m : (x % m + m) % m;</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160;}</div></div><!-- fragment -->
26669<p class="reference">Referenced by <a class="el" href="_c_l_reduce_mean_8cpp_source.xhtml#l00039">CLReduceMean::configure()</a>, <a class="el" href="_n_e_reduce_mean_8cpp_source.xhtml#l00077">NEReduceMean::configure()</a>, <a class="el" href="_c_l_gather_kernel_8cpp_source.xhtml#l00091">CLGatherKernel::configure()</a>, <a class="el" href="_c_l_stack_layer_8cpp_source.xhtml#l00047">CLStackLayer::configure()</a>, <a class="el" href="_n_e_stack_layer_8cpp_source.xhtml#l00044">NEStackLayer::configure()</a>, <a class="el" href="reference_2_unstack_8cpp_source.xhtml#l00087">arm_compute::test::validation::reference::unstack()</a>, <a class="el" href="_c_l_reduce_mean_8cpp_source.xhtml#l00099">CLReduceMean::validate()</a>, <a class="el" href="_n_e_reduce_mean_8cpp_source.xhtml#l00036">NEReduceMean::validate()</a>, <a class="el" href="_c_l_stack_layer_8cpp_source.xhtml#l00061">CLStackLayer::validate()</a>, and <a class="el" href="_n_e_stack_layer_8cpp_source.xhtml#l00058">NEStackLayer::validate()</a>.</p>
26670
26671</div>
26672</div>
Anthony Barbier871448e2017-03-24 14:54:29 +000026673<h2 class="groupheader">Variable Documentation</h2>
Jenkinsb9abeae2018-11-22 11:58:08 +000026674<a id="a3fed059965fe44cbe7ed4091d6b63acf"></a>
26675<h2 class="memtitle"><span class="permalink"><a href="#a3fed059965fe44cbe7ed4091d6b63acf">&#9670;&nbsp;</a></span>CONSTANT_BORDER_VALUE</h2>
26676
Anthony Barbier871448e2017-03-24 14:54:29 +000026677<div class="memitem">
26678<div class="memproto">
26679 <table class="memname">
26680 <tr>
26681 <td class="memname">constexpr uint8_t CONSTANT_BORDER_VALUE = 199</td>
26682 </tr>
26683 </table>
26684</div><div class="memdoc">
26685
Jenkins514be652019-02-28 12:25:18 +000026686<p>Constant value of the border pixels when using <a class="el" href="namespacearm__compute.xhtml#a15a05537a472ee742404821851529327a8d6b5cada83510220f59e00ce86d4d92" title="Pixels outside the image are assumed to have a constant value.">BorderMode::CONSTANT</a>. </p>
Anthony Barbier871448e2017-03-24 14:54:29 +000026687
Jenkinsb9abeae2018-11-22 11:58:08 +000026688<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00100">100</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +000026689
26690</div>
26691</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000026692<a id="a869945609357fa552d94eb16f7aad4e9"></a>
26693<h2 class="memtitle"><span class="permalink"><a href="#a869945609357fa552d94eb16f7aad4e9">&#9670;&nbsp;</a></span>exp_tab</h2>
26694
Anthony Barbier871448e2017-03-24 14:54:29 +000026695<div class="memitem">
26696<div class="memproto">
26697 <table class="memname">
26698 <tr>
26699 <td class="memname">const std::array&lt;float32x4_t, 8&gt; exp_tab</td>
26700 </tr>
26701 </table>
26702</div><div class="memdoc">
Anthony Barbier8140e1e2017-12-14 23:48:46 +000026703<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> {</div><div class="line"> vdupq_n_f32(1.f),</div><div class="line"> vdupq_n_f32(0.0416598916054f),</div><div class="line"> vdupq_n_f32(0.500000596046f),</div><div class="line"> vdupq_n_f32(0.0014122662833f),</div><div class="line"> vdupq_n_f32(1.00000011921f),</div><div class="line"> vdupq_n_f32(0.00833693705499f),</div><div class="line"> vdupq_n_f32(0.166665703058f),</div><div class="line"> vdupq_n_f32(0.000195780929062f),</div><div class="line"> }</div><div class="line">}</div></div><!-- fragment -->
Jenkinsb3a371b2018-05-23 11:36:53 +010026704<p>Exponent polynomial coefficients. </p>
26705
Jenkinsb9abeae2018-11-22 11:58:08 +000026706<p class="definition">Definition at line <a class="el" href="_n_e_math_8inl_source.xhtml#l00028">28</a> of file <a class="el" href="_n_e_math_8inl_source.xhtml">NEMath.inl</a>.</p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010026707
Anthony Barbier871448e2017-03-24 14:54:29 +000026708</div>
26709</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000026710<a id="a48fb9cf404e8f7043235bf14105c9793"></a>
26711<h2 class="memtitle"><span class="permalink"><a href="#a48fb9cf404e8f7043235bf14105c9793">&#9670;&nbsp;</a></span>log_tab</h2>
26712
Anthony Barbier871448e2017-03-24 14:54:29 +000026713<div class="memitem">
26714<div class="memproto">
26715 <table class="memname">
26716 <tr>
26717 <td class="memname">const std::array&lt;float32x4_t, 8&gt; log_tab</td>
26718 </tr>
26719 </table>
26720</div><div class="memdoc">
Anthony Barbier8140e1e2017-12-14 23:48:46 +000026721<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> {</div><div class="line"> vdupq_n_f32(-2.29561495781f),</div><div class="line"> vdupq_n_f32(-2.47071170807f),</div><div class="line"> vdupq_n_f32(-5.68692588806f),</div><div class="line"> vdupq_n_f32(-0.165253549814f),</div><div class="line"> vdupq_n_f32(5.17591238022f),</div><div class="line"> vdupq_n_f32(0.844007015228f),</div><div class="line"> vdupq_n_f32(4.58445882797f),</div><div class="line"> vdupq_n_f32(0.0141278216615f),</div><div class="line"> }</div><div class="line">}</div></div><!-- fragment -->
Jenkinsb3a371b2018-05-23 11:36:53 +010026722<p>Logarithm polynomial coefficients. </p>
26723
Jenkinsb9abeae2018-11-22 11:58:08 +000026724<p class="definition">Definition at line <a class="el" href="_n_e_math_8inl_source.xhtml#l00043">43</a> of file <a class="el" href="_n_e_math_8inl_source.xhtml">NEMath.inl</a>.</p>
Anthony Barbierdbdab852017-06-23 15:42:00 +010026725
Anthony Barbier871448e2017-03-24 14:54:29 +000026726</div>
26727</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000026728<a id="a769d636d7a3c7c84579a5f477a18bc9d"></a>
26729<h2 class="memtitle"><span class="permalink"><a href="#a769d636d7a3c7c84579a5f477a18bc9d">&#9670;&nbsp;</a></span>MAX_DIMS</h2>
26730
Anthony Barbier871448e2017-03-24 14:54:29 +000026731<div class="memitem">
26732<div class="memproto">
26733 <table class="memname">
26734 <tr>
26735 <td class="memname">constexpr size_t MAX_DIMS = 6</td>
26736 </tr>
26737 </table>
26738</div><div class="memdoc">
26739
Jenkins514be652019-02-28 12:25:18 +000026740<p>Constant value used to indicate maximum dimensions of a <a class="el" href="classarm__compute_1_1_window.xhtml" title="Describe a multidimensional execution window.">Window</a>, <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml" title="Shape of a tensor.">TensorShape</a> and <a class="el" href="classarm__compute_1_1_coordinates.xhtml" title="Coordinates of an item.">Coordinates</a>. </p>
Jenkinsb3a371b2018-05-23 11:36:53 +010026741
Jenkinsb9abeae2018-11-22 11:58:08 +000026742<p class="definition">Definition at line <a class="el" href="_dimensions_8h_source.xhtml#l00037">37</a> of file <a class="el" href="_dimensions_8h_source.xhtml">Dimensions.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +000026743
26744</div>
26745</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000026746<a id="a13d15bf68bbaf481be9ba3988b1cf779"></a>
26747<h2 class="memtitle"><span class="permalink"><a href="#a13d15bf68bbaf481be9ba3988b1cf779">&#9670;&nbsp;</a></span>num_num_elems_processed_per_iteration</h2>
26748
26749<div class="memitem">
26750<div class="memproto">
26751 <table class="memname">
26752 <tr>
26753 <td class="memname">constexpr unsigned int num_num_elems_processed_per_iteration = 16</td>
26754 </tr>
26755 </table>
26756</div><div class="memdoc">
26757
26758<p class="definition">Definition at line <a class="el" href="_n_e_table_lookup_kernel_8cpp_source.xhtml#l00043">43</a> of file <a class="el" href="_n_e_table_lookup_kernel_8cpp_source.xhtml">NETableLookupKernel.cpp</a>.</p>
26759
Jenkins514be652019-02-28 12:25:18 +000026760<p class="reference">Referenced by <a class="el" href="_n_e_table_lookup_kernel_8cpp_source.xhtml#l00109">NETableLookupKernel::configure()</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +000026761
26762</div>
26763</div>
26764<a id="af9876aedd664cac0ddeacddb40cb71cd"></a>
26765<h2 class="memtitle"><span class="permalink"><a href="#af9876aedd664cac0ddeacddb40cb71cd">&#9670;&nbsp;</a></span>SCALE_PYRAMID_HALF</h2>
26766
Anthony Barbier871448e2017-03-24 14:54:29 +000026767<div class="memitem">
26768<div class="memproto">
26769 <table class="memname">
26770 <tr>
26771 <td class="memname">constexpr float SCALE_PYRAMID_HALF = 0.5f</td>
26772 </tr>
26773 </table>
26774</div><div class="memdoc">
26775
Jenkinsb3a371b2018-05-23 11:36:53 +010026776<p>Constant value used to indicate a half-scale pyramid. </p>
26777
Jenkinsb9abeae2018-11-22 11:58:08 +000026778<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00103">103</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000026779
Jenkinsb9abeae2018-11-22 11:58:08 +000026780<p class="reference">Referenced by <a class="el" href="_c_l_gaussian_pyramid_8cpp_source.xhtml#l00059">CLGaussianPyramidHalf::configure()</a>, <a class="el" href="_n_e_gaussian_pyramid_8cpp_source.xhtml#l00057">NEGaussianPyramidHalf::configure()</a>, <a class="el" href="validation_2_c_l_2_gaussian_pyramid_8cpp_source.xhtml#l00073">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="_gaussian_pyramid_half_8cpp_source.xhtml#l00041">arm_compute::test::validation::reference::gaussian_pyramid_half()</a>, and <a class="el" href="validation_2reference_2_optical_flow_8cpp_source.xhtml#l00246">arm_compute::test::validation::reference::optical_flow()</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +000026781
26782</div>
26783</div>
Jenkinsb9abeae2018-11-22 11:58:08 +000026784<a id="a2ebcd5423d5fba468e7debd2e1aabe91"></a>
26785<h2 class="memtitle"><span class="permalink"><a href="#a2ebcd5423d5fba468e7debd2e1aabe91">&#9670;&nbsp;</a></span>SCALE_PYRAMID_ORB</h2>
26786
Anthony Barbier871448e2017-03-24 14:54:29 +000026787<div class="memitem">
26788<div class="memproto">
26789 <table class="memname">
26790 <tr>
26791 <td class="memname">constexpr float SCALE_PYRAMID_ORB = 8.408964152537146130583778358414e-01</td>
26792 </tr>
26793 </table>
26794</div><div class="memdoc">
26795
Jenkinsb3a371b2018-05-23 11:36:53 +010026796<p>Constant value used to indicate a ORB scaled pyramid. </p>
26797
Jenkinsb9abeae2018-11-22 11:58:08 +000026798<p class="definition">Definition at line <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00106">106</a> of file <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml">Types.h</a>.</p>
26799
Jenkins514be652019-02-28 12:25:18 +000026800<p class="reference">Referenced by <a class="el" href="_c_l_gaussian_pyramid_8cpp_source.xhtml#l00139">CLGaussianPyramidOrb::configure()</a>, and <a class="el" href="_n_e_gaussian_pyramid_8cpp_source.xhtml#l00133">NEGaussianPyramidOrb::configure()</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +000026801
26802</div>
26803</div>
26804</div><!-- contents -->
26805</div><!-- doc-content -->
26806<!-- start footer part -->
26807<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
26808 <ul>
26809 <li class="navelem"><a class="el" href="namespacearm__compute.xhtml">arm_compute</a></li>
Jenkins514be652019-02-28 12:25:18 +000026810 <li class="footer">Generated on Thu Feb 28 2019 12:24:58 for Compute Library by
Anthony Barbier871448e2017-03-24 14:54:29 +000026811 <a href="http://www.doxygen.org/index.html">
Jenkins514be652019-02-28 12:25:18 +000026812 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
Anthony Barbier871448e2017-03-24 14:54:29 +000026813 </ul>
26814</div>
26815</body>
26816</html>