blob: 4e3380050e9403219077420fb3651c41bdf8d43f [file] [log] [blame]
Ryan OSheade36e4a2020-03-13 16:26:19 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml">
3<head>
4<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5<meta http-equiv="X-UA-Compatible" content="IE=9"/>
6<meta name="generator" content="Doxygen 1.8.13"/>
7<meta name="viewport" content="width=device-width, initial-scale=1"/>
8<title>ArmNN: ClLayerSupport Class Reference</title>
9<link href="tabs.css" rel="stylesheet" type="text/css"/>
10<script type="text/javascript" src="jquery.js"></script>
11<script type="text/javascript" src="dynsections.js"></script>
12<link href="navtree.css" rel="stylesheet" type="text/css"/>
13<script type="text/javascript" src="resize.js"></script>
14<script type="text/javascript" src="navtreedata.js"></script>
15<script type="text/javascript" src="navtree.js"></script>
16<script type="text/javascript">
17 $(document).ready(initResizable);
18</script>
19<link href="search/search.css" rel="stylesheet" type="text/css"/>
20<script type="text/javascript" src="search/searchdata.js"></script>
21<script type="text/javascript" src="search/search.js"></script>
22<link href="doxygen.css" rel="stylesheet" type="text/css" />
23</head>
24<body>
25<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
26<div id="titlearea">
27<table cellspacing="0" cellpadding="0">
28 <tbody>
29 <tr style="height: 56px;">
30 <td id="projectalign" style="padding-left: 0.5em;">
31 <div id="projectname">ArmNN
32 &#160;<span id="projectnumber">NotReleased</span>
33 </div>
34 </td>
35 </tr>
36 </tbody>
37</table>
38</div>
39<!-- end header part -->
40<!-- Generated by Doxygen 1.8.13 -->
41<script type="text/javascript">
42var searchBox = new SearchBox("searchBox", "search",false,'Search');
43</script>
44<script type="text/javascript" src="menudata.js"></script>
45<script type="text/javascript" src="menu.js"></script>
46<script type="text/javascript">
47$(function() {
48 initMenu('',true,false,'search.php','Search');
49 $(document).ready(function() { init_search(); });
50});
51</script>
52<div id="main-nav"></div>
53</div><!-- top -->
54<div id="side-nav" class="ui-resizable side-nav-resizable">
55 <div id="nav-tree">
56 <div id="nav-tree-contents">
57 <div id="nav-sync" class="sync"></div>
58 </div>
59 </div>
60 <div id="splitbar" style="-moz-user-select:none;"
61 class="ui-resizable-handle">
62 </div>
63</div>
64<script type="text/javascript">
65$(document).ready(function(){initNavTree('classarmnn_1_1_cl_layer_support.html','');});
66</script>
67<div id="doc-content">
68<!-- window showing the filter options -->
69<div id="MSearchSelectWindow"
70 onmouseover="return searchBox.OnSearchSelectShow()"
71 onmouseout="return searchBox.OnSearchSelectHide()"
72 onkeydown="return searchBox.OnSearchSelectKey(event)">
73</div>
74
75<!-- iframe showing the search results (closed by default) -->
76<div id="MSearchResultsWindow">
77<iframe src="javascript:void(0)" frameborder="0"
78 name="MSearchResults" id="MSearchResults">
79</iframe>
80</div>
81
82<div class="header">
83 <div class="summary">
84<a href="#pub-methods">Public Member Functions</a> &#124;
85<a href="classarmnn_1_1_cl_layer_support-members.html">List of all members</a> </div>
86 <div class="headertitle">
87<div class="title">ClLayerSupport Class Reference</div> </div>
88</div><!--header-->
89<div class="contents">
90
91<p><code>#include &lt;<a class="el" href="_cl_layer_support_8hpp_source.html">ClLayerSupport.hpp</a>&gt;</code></p>
92<div class="dynheader">
93Inheritance diagram for ClLayerSupport:</div>
94<div class="dyncontent">
95 <div class="center">
96 <img src="classarmnn_1_1_cl_layer_support.png" usemap="#ClLayerSupport_map" alt=""/>
97 <map id="ClLayerSupport_map" name="ClLayerSupport_map">
98<area href="classarmnn_1_1_layer_support_base.html" alt="LayerSupportBase" shape="rect" coords="0,56,117,80"/>
99<area href="classarmnn_1_1_i_layer_support.html" alt="ILayerSupport" shape="rect" coords="0,0,117,24"/>
100</map>
101 </div></div>
102<table class="memberdecls">
103<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
104Public Member Functions</h2></td></tr>
105<tr class="memitem:abd7fa8c2233f8a653e30ae2f3b839d92"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#abd7fa8c2233f8a653e30ae2f3b839d92">IsAbsSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
106<tr class="separator:abd7fa8c2233f8a653e30ae2f3b839d92"><td class="memSeparator" colspan="2">&#160;</td></tr>
107<tr class="memitem:ab3adb3a28736529682e4ff0ea976dcd3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#ab3adb3a28736529682e4ff0ea976dcd3">IsActivationSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_activation_descriptor.html">ActivationDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
108<tr class="separator:ab3adb3a28736529682e4ff0ea976dcd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
109<tr class="memitem:a48177e22e47448adb3d83e145dadf735"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a48177e22e47448adb3d83e145dadf735">IsAdditionSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input0, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input1, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
110<tr class="separator:a48177e22e47448adb3d83e145dadf735"><td class="memSeparator" colspan="2">&#160;</td></tr>
111<tr class="memitem:a0f4841f89f21fd794786b4c03c2425fd"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a0f4841f89f21fd794786b4c03c2425fd">IsArgMinMaxSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_arg_min_max_descriptor.html">ArgMinMaxDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
112<tr class="separator:a0f4841f89f21fd794786b4c03c2425fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
113<tr class="memitem:a67c970dd054b991e14369de523ca3a5a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a67c970dd054b991e14369de523ca3a5a">IsBatchNormalizationSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;mean, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;var, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;beta, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;gamma, const <a class="el" href="structarmnn_1_1_batch_normalization_descriptor.html">BatchNormalizationDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
114<tr class="separator:a67c970dd054b991e14369de523ca3a5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
115<tr class="memitem:adc5695cc25f4055c7ed54bdc8604a098"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#adc5695cc25f4055c7ed54bdc8604a098">IsBatchToSpaceNdSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_batch_to_space_nd_descriptor.html">BatchToSpaceNdDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
116<tr class="separator:adc5695cc25f4055c7ed54bdc8604a098"><td class="memSeparator" colspan="2">&#160;</td></tr>
117<tr class="memitem:ad16b29b7f1c73187775e7b1d044d7bc0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#ad16b29b7f1c73187775e7b1d044d7bc0">IsComparisonSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input0, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input1, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;ouput, const <a class="el" href="structarmnn_1_1_comparison_descriptor.html">ComparisonDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
118<tr class="separator:ad16b29b7f1c73187775e7b1d044d7bc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
119<tr class="memitem:a3dca8ffbcb5f3afa1799aa7d354a3016"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a3dca8ffbcb5f3afa1799aa7d354a3016">IsConcatSupported</a> (const std::vector&lt; const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> *&gt; inputs, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="namespacearmnn.html#a7863c179ff92feec660c48ab7b95ae55">ConcatDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
120<tr class="separator:a3dca8ffbcb5f3afa1799aa7d354a3016"><td class="memSeparator" colspan="2">&#160;</td></tr>
121<tr class="memitem:adf18c4fa8fc9e0cdae1967990aa90fe8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#adf18c4fa8fc9e0cdae1967990aa90fe8">IsConstantSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
122<tr class="separator:adf18c4fa8fc9e0cdae1967990aa90fe8"><td class="memSeparator" colspan="2">&#160;</td></tr>
123<tr class="memitem:a1efcaf6f02892442fefca09f49ea3d7c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a1efcaf6f02892442fefca09f49ea3d7c">IsConvertFp16ToFp32Supported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
124<tr class="separator:a1efcaf6f02892442fefca09f49ea3d7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
125<tr class="memitem:a91fb5f44d8b9427dc45443aa9ebfe13e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a91fb5f44d8b9427dc45443aa9ebfe13e">IsConvertFp32ToFp16Supported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
126<tr class="separator:a91fb5f44d8b9427dc45443aa9ebfe13e"><td class="memSeparator" colspan="2">&#160;</td></tr>
127<tr class="memitem:af7ff06bd8115a6a9cc6d41e5c762798e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#af7ff06bd8115a6a9cc6d41e5c762798e">IsConvolution2dSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.html">Convolution2dDescriptor</a> &amp;descriptor, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;weights, const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &gt; &amp;biases, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
128<tr class="separator:af7ff06bd8115a6a9cc6d41e5c762798e"><td class="memSeparator" colspan="2">&#160;</td></tr>
129<tr class="memitem:a2e89c72cf60df7c2d2d7e5d98822b672"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a2e89c72cf60df7c2d2d7e5d98822b672">IsDequantizeSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
130<tr class="separator:a2e89c72cf60df7c2d2d7e5d98822b672"><td class="memSeparator" colspan="2">&#160;</td></tr>
131<tr class="memitem:a128fb9890897e08251a3f621e570cd23"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a128fb9890897e08251a3f621e570cd23">IsDepthToSpaceSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="namespacearmnn.html#a3647f60510bc8ddaced01c51b0ee8714">DepthToSpaceDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
132<tr class="separator:a128fb9890897e08251a3f621e570cd23"><td class="memSeparator" colspan="2">&#160;</td></tr>
133<tr class="memitem:adc84390751f227fe03a115b5fa10b0fc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#adc84390751f227fe03a115b5fa10b0fc">IsDepthwiseConvolutionSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.html">DepthwiseConvolution2dDescriptor</a> &amp;descriptor, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;weights, const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &gt; &amp;biases, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
134<tr class="separator:adc84390751f227fe03a115b5fa10b0fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
135<tr class="memitem:a16c8cd49a7fa487b904b5c9cc83673e7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a16c8cd49a7fa487b904b5c9cc83673e7">IsDilatedDepthwiseConvolutionSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.html">DepthwiseConvolution2dDescriptor</a> &amp;descriptor, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;weights, const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &gt; &amp;biases, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reason=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
136<tr class="separator:a16c8cd49a7fa487b904b5c9cc83673e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
137<tr class="memitem:a08f55136b1f0907e7083d70d719f697f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a08f55136b1f0907e7083d70d719f697f">IsDivisionSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input0, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input1, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
138<tr class="separator:a08f55136b1f0907e7083d70d719f697f"><td class="memSeparator" colspan="2">&#160;</td></tr>
139<tr class="memitem:a5d99bdae7b6b2d5d1243f21cd59befb8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a5d99bdae7b6b2d5d1243f21cd59befb8">IsElementwiseUnarySupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;ouput, const <a class="el" href="structarmnn_1_1_elementwise_unary_descriptor.html">ElementwiseUnaryDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
140<tr class="separator:a5d99bdae7b6b2d5d1243f21cd59befb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
141<tr class="memitem:a53c7593d1aa26207eac5d5814a9d56dc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a53c7593d1aa26207eac5d5814a9d56dc">IsFloorSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
142<tr class="separator:a53c7593d1aa26207eac5d5814a9d56dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
143<tr class="memitem:aeaf971dd9dffd6f6bc7e5a1ae6b6af5c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#aeaf971dd9dffd6f6bc7e5a1ae6b6af5c">IsFullyConnectedSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;weights, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;biases, const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.html">FullyConnectedDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
144<tr class="separator:aeaf971dd9dffd6f6bc7e5a1ae6b6af5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
145<tr class="memitem:a7303c2656e267e10252a171e8bbc1d94"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a7303c2656e267e10252a171e8bbc1d94">IsGreaterSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input0, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input1, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;ouput, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported) const override</td></tr>
146<tr class="separator:a7303c2656e267e10252a171e8bbc1d94"><td class="memSeparator" colspan="2">&#160;</td></tr>
147<tr class="memitem:ad29d99ecd719c640ed22dcf5c688c6a5"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#ad29d99ecd719c640ed22dcf5c688c6a5">IsInputSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
148<tr class="separator:ad29d99ecd719c640ed22dcf5c688c6a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
149<tr class="memitem:a0813546a09bf2caba6794014d1960624"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a0813546a09bf2caba6794014d1960624">IsInstanceNormalizationSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_instance_normalization_descriptor.html">InstanceNormalizationDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
150<tr class="separator:a0813546a09bf2caba6794014d1960624"><td class="memSeparator" colspan="2">&#160;</td></tr>
151<tr class="memitem:aca4acda7ab553edfda828658d8f3882b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#aca4acda7ab553edfda828658d8f3882b">IsL2NormalizationSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_l2_normalization_descriptor.html">L2NormalizationDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
152<tr class="separator:aca4acda7ab553edfda828658d8f3882b"><td class="memSeparator" colspan="2">&#160;</td></tr>
153<tr class="memitem:a862535721737220f62a49f14ff494dd5"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a862535721737220f62a49f14ff494dd5">IsLstmSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;outputStateIn, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;cellStateIn, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;scratchBuffer, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;outputStateOut, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;cellStateOut, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_lstm_descriptor.html">LstmDescriptor</a> &amp;descriptor, const <a class="el" href="structarmnn_1_1_lstm_input_params_info.html">LstmInputParamsInfo</a> &amp;paramsInfo, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
154<tr class="separator:a862535721737220f62a49f14ff494dd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
155<tr class="memitem:afef9436c86b37b973471f2ae546ac00a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#afef9436c86b37b973471f2ae546ac00a">IsMaximumSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input0, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input1, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
156<tr class="separator:afef9436c86b37b973471f2ae546ac00a"><td class="memSeparator" colspan="2">&#160;</td></tr>
157<tr class="memitem:ab268618580d4f53bf5e9b5a47dee3f6a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#ab268618580d4f53bf5e9b5a47dee3f6a">IsMeanSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_mean_descriptor.html">MeanDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
158<tr class="separator:ab268618580d4f53bf5e9b5a47dee3f6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
159<tr class="memitem:aa9309ea64f9f7447efe3567f77417d29"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#aa9309ea64f9f7447efe3567f77417d29">IsMergerSupported</a> (const std::vector&lt; const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> *&gt; inputs, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="namespacearmnn.html#a003d213dd28b0b8c0f26fbf268ccb975">MergerDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
160<tr class="separator:aa9309ea64f9f7447efe3567f77417d29"><td class="memSeparator" colspan="2">&#160;</td></tr>
161<tr class="memitem:a3d0eafb3de560b3482f857b56b2b2116"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a3d0eafb3de560b3482f857b56b2b2116">IsMinimumSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input0, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input1, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
162<tr class="separator:a3d0eafb3de560b3482f857b56b2b2116"><td class="memSeparator" colspan="2">&#160;</td></tr>
163<tr class="memitem:a421e1f3865d99d52613003048342c49a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a421e1f3865d99d52613003048342c49a">IsMultiplicationSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input0, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input1, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
164<tr class="separator:a421e1f3865d99d52613003048342c49a"><td class="memSeparator" colspan="2">&#160;</td></tr>
165<tr class="memitem:a994c2065561141bf37fcd2ff7bb4af4d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a994c2065561141bf37fcd2ff7bb4af4d">IsNormalizationSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_normalization_descriptor.html">NormalizationDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
166<tr class="separator:a994c2065561141bf37fcd2ff7bb4af4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
167<tr class="memitem:aef3244c0ef64c8f2f352d21ce0c06985"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#aef3244c0ef64c8f2f352d21ce0c06985">IsOutputSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
168<tr class="separator:aef3244c0ef64c8f2f352d21ce0c06985"><td class="memSeparator" colspan="2">&#160;</td></tr>
169<tr class="memitem:a0534291adf9f3436ba331552eba29a43"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a0534291adf9f3436ba331552eba29a43">IsPadSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_pad_descriptor.html">PadDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
170<tr class="separator:a0534291adf9f3436ba331552eba29a43"><td class="memSeparator" colspan="2">&#160;</td></tr>
171<tr class="memitem:a9d553495d9a94fa55588ae159d8bda30"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a9d553495d9a94fa55588ae159d8bda30">IsPermuteSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_permute_descriptor.html">PermuteDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
172<tr class="separator:a9d553495d9a94fa55588ae159d8bda30"><td class="memSeparator" colspan="2">&#160;</td></tr>
173<tr class="memitem:aa955675303d67b1d1fb51fb7f09d8c21"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#aa955675303d67b1d1fb51fb7f09d8c21">IsPooling2dSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_pooling2d_descriptor.html">Pooling2dDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
174<tr class="separator:aa955675303d67b1d1fb51fb7f09d8c21"><td class="memSeparator" colspan="2">&#160;</td></tr>
175<tr class="memitem:a4b36dcedd5edbd5142b3548967aadc2f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a4b36dcedd5edbd5142b3548967aadc2f">IsPreluSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;alpha, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
176<tr class="separator:a4b36dcedd5edbd5142b3548967aadc2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
177<tr class="memitem:af1be52d9f968bfab069344756bf232c4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#af1be52d9f968bfab069344756bf232c4">IsQuantizedLstmSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;previousCellStateIn, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;previousOutputIn, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;cellStateOut, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_quantized_lstm_input_params_info.html">QuantizedLstmInputParamsInfo</a> &amp;paramsInfo, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
178<tr class="separator:af1be52d9f968bfab069344756bf232c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
179<tr class="memitem:ad2c7be6b84b04444e514f52f593b3df7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#ad2c7be6b84b04444e514f52f593b3df7">IsQuantizeSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
180<tr class="separator:ad2c7be6b84b04444e514f52f593b3df7"><td class="memSeparator" colspan="2">&#160;</td></tr>
181<tr class="memitem:aa02f01bbcb48c67f5b2efc4132ec5e86"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#aa02f01bbcb48c67f5b2efc4132ec5e86">IsReshapeSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_reshape_descriptor.html">ReshapeDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
182<tr class="separator:aa02f01bbcb48c67f5b2efc4132ec5e86"><td class="memSeparator" colspan="2">&#160;</td></tr>
183<tr class="memitem:a3d27a3fc6a7df0b68d80cb113aff8b6c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a3d27a3fc6a7df0b68d80cb113aff8b6c">IsResizeSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_resize_descriptor.html">ResizeDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
184<tr class="separator:a3d27a3fc6a7df0b68d80cb113aff8b6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
185<tr class="memitem:a0f29f31e1ba46a52eedcdecd34f4cc24"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a0f29f31e1ba46a52eedcdecd34f4cc24">IsResizeBilinearSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
186<tr class="separator:a0f29f31e1ba46a52eedcdecd34f4cc24"><td class="memSeparator" colspan="2">&#160;</td></tr>
187<tr class="memitem:a10ae4d84b0d31580f6fcd5107322ebcf"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a10ae4d84b0d31580f6fcd5107322ebcf">IsRsqrtSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
188<tr class="separator:a10ae4d84b0d31580f6fcd5107322ebcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
189<tr class="memitem:a0e14dafa85cfcd4a6b6b752284b51e63"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a0e14dafa85cfcd4a6b6b752284b51e63">IsSliceSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_slice_descriptor.html">SliceDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
190<tr class="separator:a0e14dafa85cfcd4a6b6b752284b51e63"><td class="memSeparator" colspan="2">&#160;</td></tr>
191<tr class="memitem:a8385cf8227907904a6a86fac318fc099"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a8385cf8227907904a6a86fac318fc099">IsSoftmaxSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_softmax_descriptor.html">SoftmaxDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
192<tr class="separator:a8385cf8227907904a6a86fac318fc099"><td class="memSeparator" colspan="2">&#160;</td></tr>
193<tr class="memitem:a3adfc31e079a970e028e537ec05fabf5"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a3adfc31e079a970e028e537ec05fabf5">IsSpaceToBatchNdSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_space_to_batch_nd_descriptor.html">SpaceToBatchNdDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
194<tr class="separator:a3adfc31e079a970e028e537ec05fabf5"><td class="memSeparator" colspan="2">&#160;</td></tr>
195<tr class="memitem:ab2af1e7da9490d29e569d271e16b0d5c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#ab2af1e7da9490d29e569d271e16b0d5c">IsSpaceToDepthSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_space_to_depth_descriptor.html">SpaceToDepthDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
196<tr class="separator:ab2af1e7da9490d29e569d271e16b0d5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
197<tr class="memitem:a17dd12822d49a23d24198f425a6fb9c4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a17dd12822d49a23d24198f425a6fb9c4">IsSplitterSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="structarmnn_1_1_views_descriptor.html">ViewsDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
198<tr class="separator:a17dd12822d49a23d24198f425a6fb9c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
199<tr class="memitem:aa746e752ce8874669ea549f8e50896da"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#aa746e752ce8874669ea549f8e50896da">IsSplitterSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const std::vector&lt; std::reference_wrapper&lt; <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &gt;&gt; &amp;outputs, const <a class="el" href="structarmnn_1_1_views_descriptor.html">ViewsDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
200<tr class="separator:aa746e752ce8874669ea549f8e50896da"><td class="memSeparator" colspan="2">&#160;</td></tr>
201<tr class="memitem:ab4609f1baf5fcd295951f3c8abdffd90"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#ab4609f1baf5fcd295951f3c8abdffd90">IsStackSupported</a> (const std::vector&lt; const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> *&gt; &amp;inputs, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_stack_descriptor.html">StackDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
202<tr class="separator:ab4609f1baf5fcd295951f3c8abdffd90"><td class="memSeparator" colspan="2">&#160;</td></tr>
203<tr class="memitem:ac054cb25099005eac854afb1511340f0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#ac054cb25099005eac854afb1511340f0">IsStridedSliceSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_strided_slice_descriptor.html">StridedSliceDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
204<tr class="separator:ac054cb25099005eac854afb1511340f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
205<tr class="memitem:af6c947e4d4b25bc49d92d18d4ff26736"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#af6c947e4d4b25bc49d92d18d4ff26736">IsSubtractionSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input0, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input1, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
206<tr class="separator:af6c947e4d4b25bc49d92d18d4ff26736"><td class="memSeparator" colspan="2">&#160;</td></tr>
207<tr class="memitem:a0c69484f19ed650ad48b716719114e51"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_cl_layer_support.html#a0c69484f19ed650ad48b716719114e51">IsTransposeConvolution2dSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="structarmnn_1_1_transpose_convolution2d_descriptor.html">TransposeConvolution2dDescriptor</a> &amp;descriptor, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;weights, const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &gt; &amp;biases, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
208<tr class="separator:a0c69484f19ed650ad48b716719114e51"><td class="memSeparator" colspan="2">&#160;</td></tr>
209<tr class="inherit_header pub_methods_classarmnn_1_1_layer_support_base"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classarmnn_1_1_layer_support_base')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classarmnn_1_1_layer_support_base.html">LayerSupportBase</a></td></tr>
210<tr class="memitem:a87a66c5e87a19534ce3e6c374c9b8f09 inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.html#a87a66c5e87a19534ce3e6c374c9b8f09">IsDebugSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
211<tr class="separator:a87a66c5e87a19534ce3e6c374c9b8f09 inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
212<tr class="memitem:a50af275d7755a5bb1be69736d7e4b02f inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.html#a50af275d7755a5bb1be69736d7e4b02f">IsDetectionPostProcessSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;<a class="el" href="_neon_end_to_end_tests_8cpp.html#ada422a73ac4e68bcb1b1b1f0b44028d9">boxEncodings</a>, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;<a class="el" href="_neon_end_to_end_tests_8cpp.html#a0348e6bb67ace72535bd105219bb6237">scores</a>, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;<a class="el" href="_neon_end_to_end_tests_8cpp.html#ac0981848e4ae57729f14f72bd4caa9f8">anchors</a>, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;detectionBoxes, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;detectionClasses, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;detectionScores, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;numDetections, const <a class="el" href="structarmnn_1_1_detection_post_process_descriptor.html">DetectionPostProcessDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
213<tr class="separator:a50af275d7755a5bb1be69736d7e4b02f inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
214<tr class="memitem:afb6ad04c6ff234b193f3dfc0cfabcbd5 inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.html#afb6ad04c6ff234b193f3dfc0cfabcbd5">IsEqualSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input0, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input1, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
215<tr class="separator:afb6ad04c6ff234b193f3dfc0cfabcbd5 inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
216<tr class="memitem:aab7318aa8adc0a8a3b6a1780cfc1f90b inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.html#aab7318aa8adc0a8a3b6a1780cfc1f90b">IsFakeQuantizationSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="structarmnn_1_1_fake_quantization_descriptor.html">FakeQuantizationDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
217<tr class="separator:aab7318aa8adc0a8a3b6a1780cfc1f90b inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
218<tr class="memitem:aef77aa4bb0e68e88dcf5ab8b5882a2d3 inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.html#aef77aa4bb0e68e88dcf5ab8b5882a2d3">IsGatherSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input0, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input1, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
219<tr class="separator:aef77aa4bb0e68e88dcf5ab8b5882a2d3 inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
220<tr class="memitem:aa0380b797cb9932fb03067dbe2cdecfb inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.html#aa0380b797cb9932fb03067dbe2cdecfb">IsLogSoftmaxSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, const <a class="el" href="namespacearmnn.html#ac14705405cbcdd580df613de6766fe65">LogSoftmaxDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
221<tr class="separator:aa0380b797cb9932fb03067dbe2cdecfb inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
222<tr class="memitem:a9d25fabf725313fda40a41400155bafe inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.html#a9d25fabf725313fda40a41400155bafe">IsMemCopySupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
223<tr class="separator:a9d25fabf725313fda40a41400155bafe inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
224<tr class="memitem:a334181d8098b943d03ccd820753ace75 inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.html#a334181d8098b943d03ccd820753ace75">IsMemImportSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
225<tr class="separator:a334181d8098b943d03ccd820753ace75 inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
226<tr class="memitem:aa9bbc383cac59d6f02d2ef7d2cc0076f inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.html#aa9bbc383cac59d6f02d2ef7d2cc0076f">IsMergeSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input0, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input1, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
227<tr class="separator:aa9bbc383cac59d6f02d2ef7d2cc0076f inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
228<tr class="memitem:adc1a598f2f572564818e3d343af93486 inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.html#adc1a598f2f572564818e3d343af93486">IsPreCompiledSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input, const <a class="el" href="structarmnn_1_1_pre_compiled_descriptor.html">PreCompiledDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
229<tr class="separator:adc1a598f2f572564818e3d343af93486 inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
230<tr class="memitem:a68a4c180fc48e266995db8596f6279d3 inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.html#a68a4c180fc48e266995db8596f6279d3">IsStandInSupported</a> (const std::vector&lt; const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> *&gt; &amp;inputs, const std::vector&lt; const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> *&gt; &amp;outputs, const <a class="el" href="structarmnn_1_1_stand_in_descriptor.html">StandInDescriptor</a> &amp;descriptor, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
231<tr class="separator:a68a4c180fc48e266995db8596f6279d3 inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
232<tr class="memitem:a8c12a49b0d261836c11a57916e01805d inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.html#a8c12a49b0d261836c11a57916e01805d">IsSwitchSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input0, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;input1, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output0, const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;output1, <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt; reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()) const override</td></tr>
233<tr class="separator:a8c12a49b0d261836c11a57916e01805d inherit pub_methods_classarmnn_1_1_layer_support_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
234</table><table class="memberdecls">
235<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
236Additional Inherited Members</h2></td></tr>
237<tr class="inherit_header pro_methods_classarmnn_1_1_i_layer_support"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classarmnn_1_1_i_layer_support')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classarmnn_1_1_i_layer_support.html">ILayerSupport</a></td></tr>
238<tr class="memitem:aab2a487bc88047443d8a0f87c3c40b8d inherit pro_methods_classarmnn_1_1_i_layer_support"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_i_layer_support.html#aab2a487bc88047443d8a0f87c3c40b8d">ILayerSupport</a> ()</td></tr>
239<tr class="separator:aab2a487bc88047443d8a0f87c3c40b8d inherit pro_methods_classarmnn_1_1_i_layer_support"><td class="memSeparator" colspan="2">&#160;</td></tr>
240<tr class="memitem:a9e7f4f28576904804cd759e49173beeb inherit pro_methods_classarmnn_1_1_i_layer_support"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_i_layer_support.html#a9e7f4f28576904804cd759e49173beeb">~ILayerSupport</a> ()</td></tr>
241<tr class="separator:a9e7f4f28576904804cd759e49173beeb inherit pro_methods_classarmnn_1_1_i_layer_support"><td class="memSeparator" colspan="2">&#160;</td></tr>
242</table>
243<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
244<div class="textblock">
245<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8hpp_source.html#l00012">12</a> of file <a class="el" href="_cl_layer_support_8hpp_source.html">ClLayerSupport.hpp</a>.</p>
246</div><h2 class="groupheader">Member Function Documentation</h2>
247<a id="abd7fa8c2233f8a653e30ae2f3b839d92"></a>
248<h2 class="memtitle"><span class="permalink"><a href="#abd7fa8c2233f8a653e30ae2f3b839d92">&#9670;&nbsp;</a></span>IsAbsSupported()</h2>
249
250<div class="memitem">
251<div class="memproto">
252<table class="mlabels">
253 <tr>
254 <td class="mlabels-left">
255 <table class="memname">
256 <tr>
257 <td class="memname">bool IsAbsSupported </td>
258 <td>(</td>
259 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
260 <td class="paramname"><em>input</em>, </td>
261 </tr>
262 <tr>
263 <td class="paramkey"></td>
264 <td></td>
265 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
266 <td class="paramname"><em>output</em>, </td>
267 </tr>
268 <tr>
269 <td class="paramkey"></td>
270 <td></td>
271 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
272 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
273 </tr>
274 <tr>
275 <td></td>
276 <td>)</td>
277 <td></td><td> const</td>
278 </tr>
279 </table>
280 </td>
281 <td class="mlabels-right">
282<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
283 </tr>
284</table>
285</div><div class="memdoc">
286
287<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#abd7fa8c2233f8a653e30ae2f3b839d92">LayerSupportBase</a>.</p>
288
289<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00152">152</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
290<div class="fragment"><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; ElementwiseUnaryDescriptor descriptor(<a class="code" href="namespacearmnn.html#a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6">UnaryOperation::Abs</a>);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_cl_layer_support.html#a5d99bdae7b6b2d5d1243f21cd59befb8">IsElementwiseUnarySupported</a>(input, output, descriptor, reasonIfUnsupported);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;}</div><div class="ttc" id="classarmnn_1_1_cl_layer_support_html_a5d99bdae7b6b2d5d1243f21cd59befb8"><div class="ttname"><a href="classarmnn_1_1_cl_layer_support.html#a5d99bdae7b6b2d5d1243f21cd59befb8">armnn::ClLayerSupport::IsElementwiseUnarySupported</a></div><div class="ttdeci">bool IsElementwiseUnarySupported(const TensorInfo &amp;input, const TensorInfo &amp;ouput, const ElementwiseUnaryDescriptor &amp;descriptor, Optional&lt; std::string &amp;&gt; reasonIfUnsupported=EmptyOptional()) const override</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00400">ClLayerSupport.cpp:400</a></div></div>
291<div class="ttc" id="namespacearmnn_html_a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6"><div class="ttname"><a href="namespacearmnn.html#a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6">armnn::ActivationFunction::Abs</a></div></div>
292</div><!-- fragment -->
293</div>
294</div>
295<a id="ab3adb3a28736529682e4ff0ea976dcd3"></a>
296<h2 class="memtitle"><span class="permalink"><a href="#ab3adb3a28736529682e4ff0ea976dcd3">&#9670;&nbsp;</a></span>IsActivationSupported()</h2>
297
298<div class="memitem">
299<div class="memproto">
300<table class="mlabels">
301 <tr>
302 <td class="mlabels-left">
303 <table class="memname">
304 <tr>
305 <td class="memname">bool IsActivationSupported </td>
306 <td>(</td>
307 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
308 <td class="paramname"><em>input</em>, </td>
309 </tr>
310 <tr>
311 <td class="paramkey"></td>
312 <td></td>
313 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
314 <td class="paramname"><em>output</em>, </td>
315 </tr>
316 <tr>
317 <td class="paramkey"></td>
318 <td></td>
319 <td class="paramtype">const <a class="el" href="structarmnn_1_1_activation_descriptor.html">ActivationDescriptor</a> &amp;&#160;</td>
320 <td class="paramname"><em>descriptor</em>, </td>
321 </tr>
322 <tr>
323 <td class="paramkey"></td>
324 <td></td>
325 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
326 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
327 </tr>
328 <tr>
329 <td></td>
330 <td>)</td>
331 <td></td><td> const</td>
332 </tr>
333 </table>
334 </td>
335 <td class="mlabels-right">
336<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
337 </tr>
338</table>
339</div><div class="memdoc">
340
341<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#ab3adb3a28736529682e4ff0ea976dcd3">LayerSupportBase</a>.</p>
342
343<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00160">160</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
344
345<p class="reference">References <a class="el" href="_cl_activation_workload_8cpp_source.html#l00017">armnn::ClActivationWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
346<div class="fragment"><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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a42ef3cee193102dc7755193579209cca">ClActivationWorkloadValidate</a>,</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; input,</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; output,</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; descriptor);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a42ef3cee193102dc7755193579209cca"><div class="ttname"><a href="namespacearmnn.html#a42ef3cee193102dc7755193579209cca">armnn::ClActivationWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClActivationWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const ActivationDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_activation_workload_8cpp_source.html#l00017">ClActivationWorkload.cpp:17</a></div></div>
347<div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
348</div><!-- fragment -->
349</div>
350</div>
351<a id="a48177e22e47448adb3d83e145dadf735"></a>
352<h2 class="memtitle"><span class="permalink"><a href="#a48177e22e47448adb3d83e145dadf735">&#9670;&nbsp;</a></span>IsAdditionSupported()</h2>
353
354<div class="memitem">
355<div class="memproto">
356<table class="mlabels">
357 <tr>
358 <td class="mlabels-left">
359 <table class="memname">
360 <tr>
361 <td class="memname">bool IsAdditionSupported </td>
362 <td>(</td>
363 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
364 <td class="paramname"><em>input0</em>, </td>
365 </tr>
366 <tr>
367 <td class="paramkey"></td>
368 <td></td>
369 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
370 <td class="paramname"><em>input1</em>, </td>
371 </tr>
372 <tr>
373 <td class="paramkey"></td>
374 <td></td>
375 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
376 <td class="paramname"><em>output</em>, </td>
377 </tr>
378 <tr>
379 <td class="paramkey"></td>
380 <td></td>
381 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
382 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
383 </tr>
384 <tr>
385 <td></td>
386 <td>)</td>
387 <td></td><td> const</td>
388 </tr>
389 </table>
390 </td>
391 <td class="mlabels-right">
392<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
393 </tr>
394</table>
395</div><div class="memdoc">
396
397<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a48177e22e47448adb3d83e145dadf735">LayerSupportBase</a>.</p>
398
399<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00172">172</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
400
401<p class="reference">References <a class="el" href="_cl_addition_workload_8cpp_source.html#l00038">armnn::ClAdditionValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
402<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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#aefc82adf365ff14b0095dafdd2df6afc">ClAdditionValidate</a>,</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; input0,</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; input1,</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; output);</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
403<div class="ttc" id="namespacearmnn_html_aefc82adf365ff14b0095dafdd2df6afc"><div class="ttname"><a href="namespacearmnn.html#aefc82adf365ff14b0095dafdd2df6afc">armnn::ClAdditionValidate</a></div><div class="ttdeci">arm_compute::Status ClAdditionValidate(const TensorInfo &amp;input0, const TensorInfo &amp;input1, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_addition_workload_8cpp_source.html#l00038">ClAdditionWorkload.cpp:38</a></div></div>
404</div><!-- fragment -->
405</div>
406</div>
407<a id="a0f4841f89f21fd794786b4c03c2425fd"></a>
408<h2 class="memtitle"><span class="permalink"><a href="#a0f4841f89f21fd794786b4c03c2425fd">&#9670;&nbsp;</a></span>IsArgMinMaxSupported()</h2>
409
410<div class="memitem">
411<div class="memproto">
412<table class="mlabels">
413 <tr>
414 <td class="mlabels-left">
415 <table class="memname">
416 <tr>
417 <td class="memname">bool IsArgMinMaxSupported </td>
418 <td>(</td>
419 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
420 <td class="paramname"><em>input</em>, </td>
421 </tr>
422 <tr>
423 <td class="paramkey"></td>
424 <td></td>
425 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
426 <td class="paramname"><em>output</em>, </td>
427 </tr>
428 <tr>
429 <td class="paramkey"></td>
430 <td></td>
431 <td class="paramtype">const <a class="el" href="structarmnn_1_1_arg_min_max_descriptor.html">ArgMinMaxDescriptor</a> &amp;&#160;</td>
432 <td class="paramname"><em>descriptor</em>, </td>
433 </tr>
434 <tr>
435 <td class="paramkey"></td>
436 <td></td>
437 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
438 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
439 </tr>
440 <tr>
441 <td></td>
442 <td>)</td>
443 <td></td><td> const</td>
444 </tr>
445 </table>
446 </td>
447 <td class="mlabels-right">
448<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
449 </tr>
450</table>
451</div><div class="memdoc">
452
453<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a0f4841f89f21fd794786b4c03c2425fd">LayerSupportBase</a>.</p>
454
455<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00184">184</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
456
457<p class="reference">References <a class="el" href="_cl_arg_min_max_workload_8cpp_source.html#l00030">armnn::ClArgMinMaxWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
458<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;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#ab80423b306d8e0436b9a316922911d4d">ClArgMinMaxWorkloadValidate</a>,</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; input,</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; output,</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; descriptor);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
459<div class="ttc" id="namespacearmnn_html_ab80423b306d8e0436b9a316922911d4d"><div class="ttname"><a href="namespacearmnn.html#ab80423b306d8e0436b9a316922911d4d">armnn::ClArgMinMaxWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClArgMinMaxWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const ArgMinMaxDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_arg_min_max_workload_8cpp_source.html#l00030">ClArgMinMaxWorkload.cpp:30</a></div></div>
460</div><!-- fragment -->
461</div>
462</div>
463<a id="a67c970dd054b991e14369de523ca3a5a"></a>
464<h2 class="memtitle"><span class="permalink"><a href="#a67c970dd054b991e14369de523ca3a5a">&#9670;&nbsp;</a></span>IsBatchNormalizationSupported()</h2>
465
466<div class="memitem">
467<div class="memproto">
468<table class="mlabels">
469 <tr>
470 <td class="mlabels-left">
471 <table class="memname">
472 <tr>
473 <td class="memname">bool IsBatchNormalizationSupported </td>
474 <td>(</td>
475 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
476 <td class="paramname"><em>input</em>, </td>
477 </tr>
478 <tr>
479 <td class="paramkey"></td>
480 <td></td>
481 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
482 <td class="paramname"><em>output</em>, </td>
483 </tr>
484 <tr>
485 <td class="paramkey"></td>
486 <td></td>
487 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
488 <td class="paramname"><em>mean</em>, </td>
489 </tr>
490 <tr>
491 <td class="paramkey"></td>
492 <td></td>
493 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
494 <td class="paramname"><em>var</em>, </td>
495 </tr>
496 <tr>
497 <td class="paramkey"></td>
498 <td></td>
499 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
500 <td class="paramname"><em>beta</em>, </td>
501 </tr>
502 <tr>
503 <td class="paramkey"></td>
504 <td></td>
505 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
506 <td class="paramname"><em>gamma</em>, </td>
507 </tr>
508 <tr>
509 <td class="paramkey"></td>
510 <td></td>
511 <td class="paramtype">const <a class="el" href="structarmnn_1_1_batch_normalization_descriptor.html">BatchNormalizationDescriptor</a> &amp;&#160;</td>
512 <td class="paramname"><em>descriptor</em>, </td>
513 </tr>
514 <tr>
515 <td class="paramkey"></td>
516 <td></td>
517 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
518 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
519 </tr>
520 <tr>
521 <td></td>
522 <td>)</td>
523 <td></td><td> const</td>
524 </tr>
525 </table>
526 </td>
527 <td class="mlabels-right">
528<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
529 </tr>
530</table>
531</div><div class="memdoc">
532
533<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a67c970dd054b991e14369de523ca3a5a">LayerSupportBase</a>.</p>
534
535<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00197">197</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
536
537<p class="reference">References <a class="el" href="_cl_batch_normalization_float_workload_8cpp_source.html#l00018">armnn::ClBatchNormalizationValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
538<div class="fragment"><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;{</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#ad6cb42ca5150bb96c151e4a4e6557d70">ClBatchNormalizationValidate</a>,</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; input,</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; output,</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; mean,</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; var,</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; beta,</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; gamma,</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; descriptor);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
539<div class="ttc" id="namespacearmnn_html_ad6cb42ca5150bb96c151e4a4e6557d70"><div class="ttname"><a href="namespacearmnn.html#ad6cb42ca5150bb96c151e4a4e6557d70">armnn::ClBatchNormalizationValidate</a></div><div class="ttdeci">arm_compute::Status ClBatchNormalizationValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const TensorInfo &amp;mean, const TensorInfo &amp;var, const TensorInfo &amp;beta, const TensorInfo &amp;gamma, const BatchNormalizationDescriptor &amp;desc)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_batch_normalization_float_workload_8cpp_source.html#l00018">ClBatchNormalizationFloatWorkload.cpp:18</a></div></div>
540</div><!-- fragment -->
541</div>
542</div>
543<a id="adc5695cc25f4055c7ed54bdc8604a098"></a>
544<h2 class="memtitle"><span class="permalink"><a href="#adc5695cc25f4055c7ed54bdc8604a098">&#9670;&nbsp;</a></span>IsBatchToSpaceNdSupported()</h2>
545
546<div class="memitem">
547<div class="memproto">
548<table class="mlabels">
549 <tr>
550 <td class="mlabels-left">
551 <table class="memname">
552 <tr>
553 <td class="memname">bool IsBatchToSpaceNdSupported </td>
554 <td>(</td>
555 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
556 <td class="paramname"><em>input</em>, </td>
557 </tr>
558 <tr>
559 <td class="paramkey"></td>
560 <td></td>
561 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
562 <td class="paramname"><em>output</em>, </td>
563 </tr>
564 <tr>
565 <td class="paramkey"></td>
566 <td></td>
567 <td class="paramtype">const <a class="el" href="structarmnn_1_1_batch_to_space_nd_descriptor.html">BatchToSpaceNdDescriptor</a> &amp;&#160;</td>
568 <td class="paramname"><em>descriptor</em>, </td>
569 </tr>
570 <tr>
571 <td class="paramkey"></td>
572 <td></td>
573 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
574 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
575 </tr>
576 <tr>
577 <td></td>
578 <td>)</td>
579 <td></td><td> const</td>
580 </tr>
581 </table>
582 </td>
583 <td class="mlabels-right">
584<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
585 </tr>
586</table>
587</div><div class="memdoc">
588
589<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#adc5695cc25f4055c7ed54bdc8604a098">LayerSupportBase</a>.</p>
590
591<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00217">217</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
592
593<p class="reference">References <a class="el" href="_cl_batch_to_space_nd_workload_8cpp_source.html#l00045">armnn::ClBatchToSpaceNdWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
594<div class="fragment"><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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a67957983877fb2c720a2ad7f88c45a3c">ClBatchToSpaceNdWorkloadValidate</a>,</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; input,</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; output,</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; descriptor);</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a67957983877fb2c720a2ad7f88c45a3c"><div class="ttname"><a href="namespacearmnn.html#a67957983877fb2c720a2ad7f88c45a3c">armnn::ClBatchToSpaceNdWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClBatchToSpaceNdWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const BatchToSpaceNdDescriptor &amp;desc)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_batch_to_space_nd_workload_8cpp_source.html#l00045">ClBatchToSpaceNdWorkload.cpp:45</a></div></div>
595<div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
596</div><!-- fragment -->
597</div>
598</div>
599<a id="ad16b29b7f1c73187775e7b1d044d7bc0"></a>
600<h2 class="memtitle"><span class="permalink"><a href="#ad16b29b7f1c73187775e7b1d044d7bc0">&#9670;&nbsp;</a></span>IsComparisonSupported()</h2>
601
602<div class="memitem">
603<div class="memproto">
604<table class="mlabels">
605 <tr>
606 <td class="mlabels-left">
607 <table class="memname">
608 <tr>
609 <td class="memname">bool IsComparisonSupported </td>
610 <td>(</td>
611 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
612 <td class="paramname"><em>input0</em>, </td>
613 </tr>
614 <tr>
615 <td class="paramkey"></td>
616 <td></td>
617 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
618 <td class="paramname"><em>input1</em>, </td>
619 </tr>
620 <tr>
621 <td class="paramkey"></td>
622 <td></td>
623 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
624 <td class="paramname"><em>ouput</em>, </td>
625 </tr>
626 <tr>
627 <td class="paramkey"></td>
628 <td></td>
629 <td class="paramtype">const <a class="el" href="structarmnn_1_1_comparison_descriptor.html">ComparisonDescriptor</a> &amp;&#160;</td>
630 <td class="paramname"><em>descriptor</em>, </td>
631 </tr>
632 <tr>
633 <td class="paramkey"></td>
634 <td></td>
635 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
636 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
637 </tr>
638 <tr>
639 <td></td>
640 <td>)</td>
641 <td></td><td> const</td>
642 </tr>
643 </table>
644 </td>
645 <td class="mlabels-right">
646<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
647 </tr>
648</table>
649</div><div class="memdoc">
650
651<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a7c52726a684dd76258c61af124012537">LayerSupportBase</a>.</p>
652
653<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00229">229</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
654
655<p class="reference">References <a class="el" href="_cl_greater_workload_8cpp_source.html#l00024">armnn::ClGreaterWorkloadValidate()</a>, <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>, and <a class="el" href="_descriptors_8hpp_source.html#l00078">ComparisonDescriptor::m_Operation</a>.</p>
656<div class="fragment"><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;{</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordflow">if</span> (descriptor.m_Operation == <a class="code" href="namespacearmnn.html#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">ComparisonOperation::Greater</a>)</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; {</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#acf69869c2242e5e3741c4f9252099393">ClGreaterWorkloadValidate</a>,</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; input0,</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; input1,</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; output);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; }</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; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
657<div class="ttc" id="namespacearmnn_html_a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a"><div class="ttname"><a href="namespacearmnn.html#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">armnn::ComparisonOperation::Greater</a></div></div>
658<div class="ttc" id="namespacearmnn_html_acf69869c2242e5e3741c4f9252099393"><div class="ttname"><a href="namespacearmnn.html#acf69869c2242e5e3741c4f9252099393">armnn::ClGreaterWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClGreaterWorkloadValidate(const TensorInfo &amp;input0, const TensorInfo &amp;input1, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_greater_workload_8cpp_source.html#l00024">ClGreaterWorkload.cpp:24</a></div></div>
659</div><!-- fragment -->
660</div>
661</div>
662<a id="a3dca8ffbcb5f3afa1799aa7d354a3016"></a>
663<h2 class="memtitle"><span class="permalink"><a href="#a3dca8ffbcb5f3afa1799aa7d354a3016">&#9670;&nbsp;</a></span>IsConcatSupported()</h2>
664
665<div class="memitem">
666<div class="memproto">
667<table class="mlabels">
668 <tr>
669 <td class="mlabels-left">
670 <table class="memname">
671 <tr>
672 <td class="memname">bool IsConcatSupported </td>
673 <td>(</td>
674 <td class="paramtype">const std::vector&lt; const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> *&gt;&#160;</td>
675 <td class="paramname"><em>inputs</em>, </td>
676 </tr>
677 <tr>
678 <td class="paramkey"></td>
679 <td></td>
680 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
681 <td class="paramname"><em>output</em>, </td>
682 </tr>
683 <tr>
684 <td class="paramkey"></td>
685 <td></td>
686 <td class="paramtype">const <a class="el" href="namespacearmnn.html#a7863c179ff92feec660c48ab7b95ae55">ConcatDescriptor</a> &amp;&#160;</td>
687 <td class="paramname"><em>descriptor</em>, </td>
688 </tr>
689 <tr>
690 <td class="paramkey"></td>
691 <td></td>
692 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
693 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
694 </tr>
695 <tr>
696 <td></td>
697 <td>)</td>
698 <td></td><td> const</td>
699 </tr>
700 </table>
701 </td>
702 <td class="mlabels-right">
703<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
704 </tr>
705</table>
706</div><div class="memdoc">
707
708<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a1542179a03961e3635bb5bef993c8e0e">LayerSupportBase</a>.</p>
709
710<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00247">247</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
711
712<p class="reference">References <a class="el" href="_cl_concat_workload_8cpp_source.html#l00029">armnn::ClConcatWorkloadValidate()</a>, <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>, <a class="el" href="_descriptors_8cpp_source.html#l00154">OriginsDescriptor::GetConcatAxis()</a>, <a class="el" href="_descriptors_8cpp_source.html#l00184">OriginsDescriptor::GetNumDimensions()</a>, <a class="el" href="_tensor_8cpp_source.html#l00218">TensorInfo::IsTypeSpaceMatch()</a>, and <a class="el" href="_layer_support_common_8hpp_source.html#l00018">armnn::SetValueChecked()</a>.</p>
713<div class="fragment"><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; <span class="keywordflow">if</span> (descriptor.GetNumDimensions() &lt;= descriptor.GetConcatAxis())</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="namespacearmnn.html#a13c7d751e4d37f65a6d40c3c6e50d2b8">SetValueChecked</a>(reasonIfUnsupported, <span class="stringliteral">&quot;Cl Concat: Concat axis &gt; Number of dimensions.&quot;</span>);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</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 class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> concatInnerAxis = (descriptor.GetNumDimensions() - descriptor.GetConcatAxis()) - 1;</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordflow">if</span>(concatInnerAxis &lt; 3) <span class="comment">// Width, height, or channels</span></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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a7782f0809076f14363eacb4a38964b9f">ClConcatWorkloadValidate</a>,</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; inputs,</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; output,</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; descriptor);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; }</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (concatInnerAxis == 3)</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; <span class="comment">// We rely on the sub-tensor optimization to handle the batch dimension for 4D tensors. If we can&#39;t use</span></div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="comment">// sub-tensors for this then we can&#39;t support it. Here is where we check that the sub-tensors will work.</span></div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; input : inputs)</div><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; <span class="keywordflow">if</span> (input &amp;&amp; !output.IsTypeSpaceMatch(*input)) <span class="comment">// Cannot use sub-tensors if the types are not same space</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; <a class="code" href="namespacearmnn.html#a13c7d751e4d37f65a6d40c3c6e50d2b8">SetValueChecked</a>(reasonIfUnsupported, <span class="stringliteral">&quot;Cl Concat: Types and quantization parameters must match.&quot;</span>);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</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; }</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>; <span class="comment">// Sub-tensors support concat along batch</span></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="keywordflow">else</span> <span class="comment">// &gt; 4 dimensions not supported.</span></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; <a class="code" href="namespacearmnn.html#a13c7d751e4d37f65a6d40c3c6e50d2b8">SetValueChecked</a>(reasonIfUnsupported, <span class="stringliteral">&quot;Cl Concat: Maximum of 4 dimensions supported.&quot;</span>);</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</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;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
714<div class="ttc" id="namespacearmnn_html_a7782f0809076f14363eacb4a38964b9f"><div class="ttname"><a href="namespacearmnn.html#a7782f0809076f14363eacb4a38964b9f">armnn::ClConcatWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClConcatWorkloadValidate(const std::vector&lt; const TensorInfo *&gt; &amp;inputs, const TensorInfo &amp;output, const OriginsDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_concat_workload_8cpp_source.html#l00029">ClConcatWorkload.cpp:29</a></div></div>
715<div class="ttc" id="namespacearmnn_html_a13c7d751e4d37f65a6d40c3c6e50d2b8"><div class="ttname"><a href="namespacearmnn.html#a13c7d751e4d37f65a6d40c3c6e50d2b8">armnn::SetValueChecked</a></div><div class="ttdeci">void SetValueChecked(Optional&lt; T &amp;&gt; optionalRef, V &amp;&amp;val)</div><div class="ttdef"><b>Definition:</b> <a href="_layer_support_common_8hpp_source.html#l00018">LayerSupportCommon.hpp:18</a></div></div>
716</div><!-- fragment -->
717</div>
718</div>
719<a id="adf18c4fa8fc9e0cdae1967990aa90fe8"></a>
720<h2 class="memtitle"><span class="permalink"><a href="#adf18c4fa8fc9e0cdae1967990aa90fe8">&#9670;&nbsp;</a></span>IsConstantSupported()</h2>
721
722<div class="memitem">
723<div class="memproto">
724<table class="mlabels">
725 <tr>
726 <td class="mlabels-left">
727 <table class="memname">
728 <tr>
729 <td class="memname">bool IsConstantSupported </td>
730 <td>(</td>
731 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
732 <td class="paramname"><em>output</em>, </td>
733 </tr>
734 <tr>
735 <td class="paramkey"></td>
736 <td></td>
737 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
738 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
739 </tr>
740 <tr>
741 <td></td>
742 <td>)</td>
743 <td></td><td> const</td>
744 </tr>
745 </table>
746 </td>
747 <td class="mlabels-right">
748<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
749 </tr>
750</table>
751</div><div class="memdoc">
752
753<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#adf18c4fa8fc9e0cdae1967990aa90fe8">LayerSupportBase</a>.</p>
754
755<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00288">288</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
756
757<p class="reference">References <a class="el" href="_tensor_8hpp_source.html#l00095">TensorInfo::GetDataType()</a>.</p>
758<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="keywordflow">return</span> IsSupportedForDataTypeCl(reasonIfUnsupported,</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; output.GetDataType(),</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; &amp;TrueFunc&lt;&gt;,</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; &amp;TrueFunc&lt;&gt;);</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;}</div></div><!-- fragment -->
759</div>
760</div>
761<a id="a1efcaf6f02892442fefca09f49ea3d7c"></a>
762<h2 class="memtitle"><span class="permalink"><a href="#a1efcaf6f02892442fefca09f49ea3d7c">&#9670;&nbsp;</a></span>IsConvertFp16ToFp32Supported()</h2>
763
764<div class="memitem">
765<div class="memproto">
766<table class="mlabels">
767 <tr>
768 <td class="mlabels-left">
769 <table class="memname">
770 <tr>
771 <td class="memname">bool IsConvertFp16ToFp32Supported </td>
772 <td>(</td>
773 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
774 <td class="paramname"><em>input</em>, </td>
775 </tr>
776 <tr>
777 <td class="paramkey"></td>
778 <td></td>
779 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
780 <td class="paramname"><em>output</em>, </td>
781 </tr>
782 <tr>
783 <td class="paramkey"></td>
784 <td></td>
785 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
786 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
787 </tr>
788 <tr>
789 <td></td>
790 <td>)</td>
791 <td></td><td> const</td>
792 </tr>
793 </table>
794 </td>
795 <td class="mlabels-right">
796<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
797 </tr>
798</table>
799</div><div class="memdoc">
800
801<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a1efcaf6f02892442fefca09f49ea3d7c">LayerSupportBase</a>.</p>
802
803<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00297">297</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
804
805<p class="reference">References <a class="el" href="_cl_convert_fp16_to_fp32_workload_8cpp_source.html#l00035">armnn::ClConvertFp16ToFp32WorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
806<div class="fragment"><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;{</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a46efae0191388fd33db4e95c5d79e2be">ClConvertFp16ToFp32WorkloadValidate</a>,</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; input,</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; output);</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
807<div class="ttc" id="namespacearmnn_html_a46efae0191388fd33db4e95c5d79e2be"><div class="ttname"><a href="namespacearmnn.html#a46efae0191388fd33db4e95c5d79e2be">armnn::ClConvertFp16ToFp32WorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClConvertFp16ToFp32WorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_convert_fp16_to_fp32_workload_8cpp_source.html#l00035">ClConvertFp16ToFp32Workload.cpp:35</a></div></div>
808</div><!-- fragment -->
809</div>
810</div>
811<a id="a91fb5f44d8b9427dc45443aa9ebfe13e"></a>
812<h2 class="memtitle"><span class="permalink"><a href="#a91fb5f44d8b9427dc45443aa9ebfe13e">&#9670;&nbsp;</a></span>IsConvertFp32ToFp16Supported()</h2>
813
814<div class="memitem">
815<div class="memproto">
816<table class="mlabels">
817 <tr>
818 <td class="mlabels-left">
819 <table class="memname">
820 <tr>
821 <td class="memname">bool IsConvertFp32ToFp16Supported </td>
822 <td>(</td>
823 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
824 <td class="paramname"><em>input</em>, </td>
825 </tr>
826 <tr>
827 <td class="paramkey"></td>
828 <td></td>
829 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
830 <td class="paramname"><em>output</em>, </td>
831 </tr>
832 <tr>
833 <td class="paramkey"></td>
834 <td></td>
835 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
836 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
837 </tr>
838 <tr>
839 <td></td>
840 <td>)</td>
841 <td></td><td> const</td>
842 </tr>
843 </table>
844 </td>
845 <td class="mlabels-right">
846<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
847 </tr>
848</table>
849</div><div class="memdoc">
850
851<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a91fb5f44d8b9427dc45443aa9ebfe13e">LayerSupportBase</a>.</p>
852
853<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00307">307</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
854
855<p class="reference">References <a class="el" href="_cl_convert_fp32_to_fp16_workload_8cpp_source.html#l00035">armnn::ClConvertFp32ToFp16WorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
856<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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a37f6946bfb7a9c7d64881b7a2e13945f">ClConvertFp32ToFp16WorkloadValidate</a>,</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; input,</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; output);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
857<div class="ttc" id="namespacearmnn_html_a37f6946bfb7a9c7d64881b7a2e13945f"><div class="ttname"><a href="namespacearmnn.html#a37f6946bfb7a9c7d64881b7a2e13945f">armnn::ClConvertFp32ToFp16WorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClConvertFp32ToFp16WorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_convert_fp32_to_fp16_workload_8cpp_source.html#l00035">ClConvertFp32ToFp16Workload.cpp:35</a></div></div>
858</div><!-- fragment -->
859</div>
860</div>
861<a id="af7ff06bd8115a6a9cc6d41e5c762798e"></a>
862<h2 class="memtitle"><span class="permalink"><a href="#af7ff06bd8115a6a9cc6d41e5c762798e">&#9670;&nbsp;</a></span>IsConvolution2dSupported()</h2>
863
864<div class="memitem">
865<div class="memproto">
866<table class="mlabels">
867 <tr>
868 <td class="mlabels-left">
869 <table class="memname">
870 <tr>
871 <td class="memname">bool IsConvolution2dSupported </td>
872 <td>(</td>
873 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
874 <td class="paramname"><em>input</em>, </td>
875 </tr>
876 <tr>
877 <td class="paramkey"></td>
878 <td></td>
879 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
880 <td class="paramname"><em>output</em>, </td>
881 </tr>
882 <tr>
883 <td class="paramkey"></td>
884 <td></td>
885 <td class="paramtype">const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.html">Convolution2dDescriptor</a> &amp;&#160;</td>
886 <td class="paramname"><em>descriptor</em>, </td>
887 </tr>
888 <tr>
889 <td class="paramkey"></td>
890 <td></td>
891 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
892 <td class="paramname"><em>weights</em>, </td>
893 </tr>
894 <tr>
895 <td class="paramkey"></td>
896 <td></td>
897 <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &gt; &amp;&#160;</td>
898 <td class="paramname"><em>biases</em>, </td>
899 </tr>
900 <tr>
901 <td class="paramkey"></td>
902 <td></td>
903 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
904 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
905 </tr>
906 <tr>
907 <td></td>
908 <td>)</td>
909 <td></td><td> const</td>
910 </tr>
911 </table>
912 </td>
913 <td class="mlabels-right">
914<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
915 </tr>
916</table>
917</div><div class="memdoc">
918
919<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#af7ff06bd8115a6a9cc6d41e5c762798e">LayerSupportBase</a>.</p>
920
921<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00317">317</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
922
923<p class="reference">References <a class="el" href="_cl_convolution2d_workload_8cpp_source.html#l00023">armnn::ClConvolution2dWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
924<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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#acd1146eb56f1473a0bf4561bcc1d1529">ClConvolution2dWorkloadValidate</a>,</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; input,</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; output,</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; descriptor,</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; weights,</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; biases);</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
925<div class="ttc" id="namespacearmnn_html_acd1146eb56f1473a0bf4561bcc1d1529"><div class="ttname"><a href="namespacearmnn.html#acd1146eb56f1473a0bf4561bcc1d1529">armnn::ClConvolution2dWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClConvolution2dWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const Convolution2dDescriptor &amp;descriptor, const TensorInfo &amp;weights, const Optional&lt; TensorInfo &gt; &amp;biases)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_convolution2d_workload_8cpp_source.html#l00023">ClConvolution2dWorkload.cpp:23</a></div></div>
926</div><!-- fragment -->
927</div>
928</div>
929<a id="a128fb9890897e08251a3f621e570cd23"></a>
930<h2 class="memtitle"><span class="permalink"><a href="#a128fb9890897e08251a3f621e570cd23">&#9670;&nbsp;</a></span>IsDepthToSpaceSupported()</h2>
931
932<div class="memitem">
933<div class="memproto">
934<table class="mlabels">
935 <tr>
936 <td class="mlabels-left">
937 <table class="memname">
938 <tr>
939 <td class="memname">bool IsDepthToSpaceSupported </td>
940 <td>(</td>
941 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
942 <td class="paramname"><em>input</em>, </td>
943 </tr>
944 <tr>
945 <td class="paramkey"></td>
946 <td></td>
947 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
948 <td class="paramname"><em>output</em>, </td>
949 </tr>
950 <tr>
951 <td class="paramkey"></td>
952 <td></td>
953 <td class="paramtype">const <a class="el" href="namespacearmnn.html#a3647f60510bc8ddaced01c51b0ee8714">DepthToSpaceDescriptor</a> &amp;&#160;</td>
954 <td class="paramname"><em>descriptor</em>, </td>
955 </tr>
956 <tr>
957 <td class="paramkey"></td>
958 <td></td>
959 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
960 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
961 </tr>
962 <tr>
963 <td></td>
964 <td>)</td>
965 <td></td><td> const</td>
966 </tr>
967 </table>
968 </td>
969 <td class="mlabels-right">
970<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
971 </tr>
972</table>
973</div><div class="memdoc">
974
975<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a128fb9890897e08251a3f621e570cd23">LayerSupportBase</a>.</p>
976
977<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00343">343</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
978
979<p class="reference">References <a class="el" href="_cl_depth_to_space_workload_8cpp_source.html#l00022">armnn::ClDepthToSpaceWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
980<div class="fragment"><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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a5634af98b603236c6748adb5ac92e766">ClDepthToSpaceWorkloadValidate</a>,</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; input,</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; output,</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; descriptor);</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
981<div class="ttc" id="namespacearmnn_html_a5634af98b603236c6748adb5ac92e766"><div class="ttname"><a href="namespacearmnn.html#a5634af98b603236c6748adb5ac92e766">armnn::ClDepthToSpaceWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClDepthToSpaceWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const DepthToSpaceDescriptor &amp;desc)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_depth_to_space_workload_8cpp_source.html#l00022">ClDepthToSpaceWorkload.cpp:22</a></div></div>
982</div><!-- fragment -->
983</div>
984</div>
985<a id="adc84390751f227fe03a115b5fa10b0fc"></a>
986<h2 class="memtitle"><span class="permalink"><a href="#adc84390751f227fe03a115b5fa10b0fc">&#9670;&nbsp;</a></span>IsDepthwiseConvolutionSupported()</h2>
987
988<div class="memitem">
989<div class="memproto">
990<table class="mlabels">
991 <tr>
992 <td class="mlabels-left">
993 <table class="memname">
994 <tr>
995 <td class="memname">bool IsDepthwiseConvolutionSupported </td>
996 <td>(</td>
997 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
998 <td class="paramname"><em>input</em>, </td>
999 </tr>
1000 <tr>
1001 <td class="paramkey"></td>
1002 <td></td>
1003 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1004 <td class="paramname"><em>output</em>, </td>
1005 </tr>
1006 <tr>
1007 <td class="paramkey"></td>
1008 <td></td>
1009 <td class="paramtype">const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.html">DepthwiseConvolution2dDescriptor</a> &amp;&#160;</td>
1010 <td class="paramname"><em>descriptor</em>, </td>
1011 </tr>
1012 <tr>
1013 <td class="paramkey"></td>
1014 <td></td>
1015 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1016 <td class="paramname"><em>weights</em>, </td>
1017 </tr>
1018 <tr>
1019 <td class="paramkey"></td>
1020 <td></td>
1021 <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &gt; &amp;&#160;</td>
1022 <td class="paramname"><em>biases</em>, </td>
1023 </tr>
1024 <tr>
1025 <td class="paramkey"></td>
1026 <td></td>
1027 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1028 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1029 </tr>
1030 <tr>
1031 <td></td>
1032 <td>)</td>
1033 <td></td><td> const</td>
1034 </tr>
1035 </table>
1036 </td>
1037 <td class="mlabels-right">
1038<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1039 </tr>
1040</table>
1041</div><div class="memdoc">
1042
1043<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#adc84390751f227fe03a115b5fa10b0fc">LayerSupportBase</a>.</p>
1044
1045<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00355">355</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1046
1047<p class="reference">References <a class="el" href="_cl_depthwise_convolution_workload_8cpp_source.html#l00024">armnn::ClDepthwiseConvolutionWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
1048<div class="fragment"><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="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a4ec5dfcb3e419ddce1fcb3b799f312e1">ClDepthwiseConvolutionWorkloadValidate</a>,</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; input,</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; output,</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; descriptor,</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; weights,</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; biases);</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
1049<div class="ttc" id="namespacearmnn_html_a4ec5dfcb3e419ddce1fcb3b799f312e1"><div class="ttname"><a href="namespacearmnn.html#a4ec5dfcb3e419ddce1fcb3b799f312e1">armnn::ClDepthwiseConvolutionWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClDepthwiseConvolutionWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const DepthwiseConvolution2dDescriptor &amp;descriptor, const TensorInfo &amp;weights, const Optional&lt; TensorInfo &gt; &amp;biases)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_depthwise_convolution_workload_8cpp_source.html#l00024">ClDepthwiseConvolutionWorkload.cpp:24</a></div></div>
1050</div><!-- fragment -->
1051</div>
1052</div>
1053<a id="a2e89c72cf60df7c2d2d7e5d98822b672"></a>
1054<h2 class="memtitle"><span class="permalink"><a href="#a2e89c72cf60df7c2d2d7e5d98822b672">&#9670;&nbsp;</a></span>IsDequantizeSupported()</h2>
1055
1056<div class="memitem">
1057<div class="memproto">
1058<table class="mlabels">
1059 <tr>
1060 <td class="mlabels-left">
1061 <table class="memname">
1062 <tr>
1063 <td class="memname">bool IsDequantizeSupported </td>
1064 <td>(</td>
1065 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1066 <td class="paramname"><em>input</em>, </td>
1067 </tr>
1068 <tr>
1069 <td class="paramkey"></td>
1070 <td></td>
1071 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1072 <td class="paramname"><em>output</em>, </td>
1073 </tr>
1074 <tr>
1075 <td class="paramkey"></td>
1076 <td></td>
1077 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1078 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1079 </tr>
1080 <tr>
1081 <td></td>
1082 <td>)</td>
1083 <td></td><td> const</td>
1084 </tr>
1085 </table>
1086 </td>
1087 <td class="mlabels-right">
1088<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1089 </tr>
1090</table>
1091</div><div class="memdoc">
1092
1093<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a2e89c72cf60df7c2d2d7e5d98822b672">LayerSupportBase</a>.</p>
1094
1095<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00333">333</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1096
1097<p class="reference">References <a class="el" href="_cl_dequantize_workload_8cpp_source.html#l00023">armnn::ClDequantizeWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
1098<div class="fragment"><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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a75045734c29d7d6635342c05adbc151b">ClDequantizeWorkloadValidate</a>,</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; input,</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; output);</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a75045734c29d7d6635342c05adbc151b"><div class="ttname"><a href="namespacearmnn.html#a75045734c29d7d6635342c05adbc151b">armnn::ClDequantizeWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClDequantizeWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_dequantize_workload_8cpp_source.html#l00023">ClDequantizeWorkload.cpp:23</a></div></div>
1099<div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
1100</div><!-- fragment -->
1101</div>
1102</div>
1103<a id="a16c8cd49a7fa487b904b5c9cc83673e7"></a>
1104<h2 class="memtitle"><span class="permalink"><a href="#a16c8cd49a7fa487b904b5c9cc83673e7">&#9670;&nbsp;</a></span>IsDilatedDepthwiseConvolutionSupported()</h2>
1105
1106<div class="memitem">
1107<div class="memproto">
1108<table class="mlabels">
1109 <tr>
1110 <td class="mlabels-left">
1111 <table class="memname">
1112 <tr>
1113 <td class="memname">bool IsDilatedDepthwiseConvolutionSupported </td>
1114 <td>(</td>
1115 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1116 <td class="paramname"><em>input</em>, </td>
1117 </tr>
1118 <tr>
1119 <td class="paramkey"></td>
1120 <td></td>
1121 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1122 <td class="paramname"><em>output</em>, </td>
1123 </tr>
1124 <tr>
1125 <td class="paramkey"></td>
1126 <td></td>
1127 <td class="paramtype">const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.html">DepthwiseConvolution2dDescriptor</a> &amp;&#160;</td>
1128 <td class="paramname"><em>descriptor</em>, </td>
1129 </tr>
1130 <tr>
1131 <td class="paramkey"></td>
1132 <td></td>
1133 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1134 <td class="paramname"><em>weights</em>, </td>
1135 </tr>
1136 <tr>
1137 <td class="paramkey"></td>
1138 <td></td>
1139 <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &gt; &amp;&#160;</td>
1140 <td class="paramname"><em>biases</em>, </td>
1141 </tr>
1142 <tr>
1143 <td class="paramkey"></td>
1144 <td></td>
1145 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1146 <td class="paramname"><em>reason</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1147 </tr>
1148 <tr>
1149 <td></td>
1150 <td>)</td>
1151 <td></td><td> const</td>
1152 </tr>
1153 </table>
1154 </td>
1155 <td class="mlabels-right">
1156<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1157 </tr>
1158</table>
1159</div><div class="memdoc">
1160
1161<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a55d91a97ff664f42cd5cd62b60c15f80">LayerSupportBase</a>.</p>
1162
1163<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00371">371</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1164
1165<p class="reference">References <a class="el" href="_cl_depthwise_convolution_workload_8cpp_source.html#l00024">armnn::ClDepthwiseConvolutionWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
1166<div class="fragment"><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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a4ec5dfcb3e419ddce1fcb3b799f312e1">ClDepthwiseConvolutionWorkloadValidate</a>,</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; input,</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; output,</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; descriptor,</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; weights,</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; biases);</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
1167<div class="ttc" id="namespacearmnn_html_a4ec5dfcb3e419ddce1fcb3b799f312e1"><div class="ttname"><a href="namespacearmnn.html#a4ec5dfcb3e419ddce1fcb3b799f312e1">armnn::ClDepthwiseConvolutionWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClDepthwiseConvolutionWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const DepthwiseConvolution2dDescriptor &amp;descriptor, const TensorInfo &amp;weights, const Optional&lt; TensorInfo &gt; &amp;biases)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_depthwise_convolution_workload_8cpp_source.html#l00024">ClDepthwiseConvolutionWorkload.cpp:24</a></div></div>
1168</div><!-- fragment -->
1169</div>
1170</div>
1171<a id="a08f55136b1f0907e7083d70d719f697f"></a>
1172<h2 class="memtitle"><span class="permalink"><a href="#a08f55136b1f0907e7083d70d719f697f">&#9670;&nbsp;</a></span>IsDivisionSupported()</h2>
1173
1174<div class="memitem">
1175<div class="memproto">
1176<table class="mlabels">
1177 <tr>
1178 <td class="mlabels-left">
1179 <table class="memname">
1180 <tr>
1181 <td class="memname">bool IsDivisionSupported </td>
1182 <td>(</td>
1183 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1184 <td class="paramname"><em>input0</em>, </td>
1185 </tr>
1186 <tr>
1187 <td class="paramkey"></td>
1188 <td></td>
1189 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1190 <td class="paramname"><em>input1</em>, </td>
1191 </tr>
1192 <tr>
1193 <td class="paramkey"></td>
1194 <td></td>
1195 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1196 <td class="paramname"><em>output</em>, </td>
1197 </tr>
1198 <tr>
1199 <td class="paramkey"></td>
1200 <td></td>
1201 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1202 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1203 </tr>
1204 <tr>
1205 <td></td>
1206 <td>)</td>
1207 <td></td><td> const</td>
1208 </tr>
1209 </table>
1210 </td>
1211 <td class="mlabels-right">
1212<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1213 </tr>
1214</table>
1215</div><div class="memdoc">
1216
1217<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a08f55136b1f0907e7083d70d719f697f">LayerSupportBase</a>.</p>
1218
1219<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00388">388</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1220
1221<p class="reference">References <a class="el" href="_cl_division_float_workload_8cpp_source.html#l00015">armnn::ClDivisionWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
1222<div class="fragment"><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="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a6a0edac987d58b405636df2eb2ee525d">ClDivisionWorkloadValidate</a>,</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; input0,</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; input1,</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; output);</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
1223<div class="ttc" id="namespacearmnn_html_a6a0edac987d58b405636df2eb2ee525d"><div class="ttname"><a href="namespacearmnn.html#a6a0edac987d58b405636df2eb2ee525d">armnn::ClDivisionWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClDivisionWorkloadValidate(const TensorInfo &amp;input0, const TensorInfo &amp;input1, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_division_float_workload_8cpp_source.html#l00015">ClDivisionFloatWorkload.cpp:15</a></div></div>
1224</div><!-- fragment -->
1225</div>
1226</div>
1227<a id="a5d99bdae7b6b2d5d1243f21cd59befb8"></a>
1228<h2 class="memtitle"><span class="permalink"><a href="#a5d99bdae7b6b2d5d1243f21cd59befb8">&#9670;&nbsp;</a></span>IsElementwiseUnarySupported()</h2>
1229
1230<div class="memitem">
1231<div class="memproto">
1232<table class="mlabels">
1233 <tr>
1234 <td class="mlabels-left">
1235 <table class="memname">
1236 <tr>
1237 <td class="memname">bool IsElementwiseUnarySupported </td>
1238 <td>(</td>
1239 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1240 <td class="paramname"><em>input</em>, </td>
1241 </tr>
1242 <tr>
1243 <td class="paramkey"></td>
1244 <td></td>
1245 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1246 <td class="paramname"><em>ouput</em>, </td>
1247 </tr>
1248 <tr>
1249 <td class="paramkey"></td>
1250 <td></td>
1251 <td class="paramtype">const <a class="el" href="structarmnn_1_1_elementwise_unary_descriptor.html">ElementwiseUnaryDescriptor</a> &amp;&#160;</td>
1252 <td class="paramname"><em>descriptor</em>, </td>
1253 </tr>
1254 <tr>
1255 <td class="paramkey"></td>
1256 <td></td>
1257 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1258 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1259 </tr>
1260 <tr>
1261 <td></td>
1262 <td>)</td>
1263 <td></td><td> const</td>
1264 </tr>
1265 </table>
1266 </td>
1267 <td class="mlabels-right">
1268<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1269 </tr>
1270</table>
1271</div><div class="memdoc">
1272
1273<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a61c5b4e5dc224ef0c876e43353b34030">LayerSupportBase</a>.</p>
1274
1275<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00400">400</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1276
1277<p class="reference">References <a class="el" href="_cl_abs_workload_8cpp_source.html#l00019">armnn::ClAbsWorkloadValidate()</a>, <a class="el" href="_cl_rsqrt_workload_8cpp_source.html#l00019">armnn::ClRsqrtWorkloadValidate()</a>, <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>, and <a class="el" href="_descriptors_8hpp_source.html#l00098">ElementwiseUnaryDescriptor::m_Operation</a>.</p>
1278<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; <span class="keywordflow">if</span> (descriptor.m_Operation == <a class="code" href="namespacearmnn.html#a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6">UnaryOperation::Abs</a>)</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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a1391582cd6e145b67c98f3410667968e">ClAbsWorkloadValidate</a>,</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; input,</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; output);</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">else</span> <span class="keywordflow">if</span> (descriptor.m_Operation == <a class="code" href="namespacearmnn.html#a1cfaa710db2a54673b21d2ea2da757c8a09bb7f6e2118c85a6a55bd4bf2beeca4">UnaryOperation::Rsqrt</a>)</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="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a3f6f9f0d3567ae04b49ea88727845900">ClRsqrtWorkloadValidate</a>,</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; input,</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; output);</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; }</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> <span class="keyword">false</span>;</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
1279<div class="ttc" id="namespacearmnn_html_a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6"><div class="ttname"><a href="namespacearmnn.html#a56297e0f7b215eea46c818cb7528d9eaa1e34af023adeb7d5f484f8eb4b9826b6">armnn::ActivationFunction::Abs</a></div></div>
1280<div class="ttc" id="namespacearmnn_html_a3f6f9f0d3567ae04b49ea88727845900"><div class="ttname"><a href="namespacearmnn.html#a3f6f9f0d3567ae04b49ea88727845900">armnn::ClRsqrtWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClRsqrtWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_rsqrt_workload_8cpp_source.html#l00019">ClRsqrtWorkload.cpp:19</a></div></div>
1281<div class="ttc" id="namespacearmnn_html_a1cfaa710db2a54673b21d2ea2da757c8a09bb7f6e2118c85a6a55bd4bf2beeca4"><div class="ttname"><a href="namespacearmnn.html#a1cfaa710db2a54673b21d2ea2da757c8a09bb7f6e2118c85a6a55bd4bf2beeca4">armnn::UnaryOperation::Rsqrt</a></div></div>
1282<div class="ttc" id="namespacearmnn_html_a1391582cd6e145b67c98f3410667968e"><div class="ttname"><a href="namespacearmnn.html#a1391582cd6e145b67c98f3410667968e">armnn::ClAbsWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClAbsWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_abs_workload_8cpp_source.html#l00019">ClAbsWorkload.cpp:19</a></div></div>
1283</div><!-- fragment -->
1284</div>
1285</div>
1286<a id="a53c7593d1aa26207eac5d5814a9d56dc"></a>
1287<h2 class="memtitle"><span class="permalink"><a href="#a53c7593d1aa26207eac5d5814a9d56dc">&#9670;&nbsp;</a></span>IsFloorSupported()</h2>
1288
1289<div class="memitem">
1290<div class="memproto">
1291<table class="mlabels">
1292 <tr>
1293 <td class="mlabels-left">
1294 <table class="memname">
1295 <tr>
1296 <td class="memname">bool IsFloorSupported </td>
1297 <td>(</td>
1298 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1299 <td class="paramname"><em>input</em>, </td>
1300 </tr>
1301 <tr>
1302 <td class="paramkey"></td>
1303 <td></td>
1304 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1305 <td class="paramname"><em>output</em>, </td>
1306 </tr>
1307 <tr>
1308 <td class="paramkey"></td>
1309 <td></td>
1310 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1311 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1312 </tr>
1313 <tr>
1314 <td></td>
1315 <td>)</td>
1316 <td></td><td> const</td>
1317 </tr>
1318 </table>
1319 </td>
1320 <td class="mlabels-right">
1321<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1322 </tr>
1323</table>
1324</div><div class="memdoc">
1325
1326<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a53c7593d1aa26207eac5d5814a9d56dc">LayerSupportBase</a>.</p>
1327
1328<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00423">423</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1329
1330<p class="reference">References <a class="el" href="_cl_floor_float_workload_8cpp_source.html#l00014">armnn::ClFloorWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
1331<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="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a8874961260f35da85229554f92e16ca9">ClFloorWorkloadValidate</a>,</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; input,</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; output);</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a8874961260f35da85229554f92e16ca9"><div class="ttname"><a href="namespacearmnn.html#a8874961260f35da85229554f92e16ca9">armnn::ClFloorWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClFloorWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_floor_float_workload_8cpp_source.html#l00014">ClFloorFloatWorkload.cpp:14</a></div></div>
1332<div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
1333</div><!-- fragment -->
1334</div>
1335</div>
1336<a id="aeaf971dd9dffd6f6bc7e5a1ae6b6af5c"></a>
1337<h2 class="memtitle"><span class="permalink"><a href="#aeaf971dd9dffd6f6bc7e5a1ae6b6af5c">&#9670;&nbsp;</a></span>IsFullyConnectedSupported()</h2>
1338
1339<div class="memitem">
1340<div class="memproto">
1341<table class="mlabels">
1342 <tr>
1343 <td class="mlabels-left">
1344 <table class="memname">
1345 <tr>
1346 <td class="memname">bool IsFullyConnectedSupported </td>
1347 <td>(</td>
1348 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1349 <td class="paramname"><em>input</em>, </td>
1350 </tr>
1351 <tr>
1352 <td class="paramkey"></td>
1353 <td></td>
1354 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1355 <td class="paramname"><em>output</em>, </td>
1356 </tr>
1357 <tr>
1358 <td class="paramkey"></td>
1359 <td></td>
1360 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1361 <td class="paramname"><em>weights</em>, </td>
1362 </tr>
1363 <tr>
1364 <td class="paramkey"></td>
1365 <td></td>
1366 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1367 <td class="paramname"><em>biases</em>, </td>
1368 </tr>
1369 <tr>
1370 <td class="paramkey"></td>
1371 <td></td>
1372 <td class="paramtype">const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.html">FullyConnectedDescriptor</a> &amp;&#160;</td>
1373 <td class="paramname"><em>descriptor</em>, </td>
1374 </tr>
1375 <tr>
1376 <td class="paramkey"></td>
1377 <td></td>
1378 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1379 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1380 </tr>
1381 <tr>
1382 <td></td>
1383 <td>)</td>
1384 <td></td><td> const</td>
1385 </tr>
1386 </table>
1387 </td>
1388 <td class="mlabels-right">
1389<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1390 </tr>
1391</table>
1392</div><div class="memdoc">
1393
1394<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#aeaf971dd9dffd6f6bc7e5a1ae6b6af5c">LayerSupportBase</a>.</p>
1395
1396<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00433">433</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1397
1398<p class="reference">References <a class="el" href="_cl_fully_connected_workload_8cpp_source.html#l00019">armnn::ClFullyConnectedWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
1399<div class="fragment"><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160;{</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a00ef2c55913f952924a3e23556655285">ClFullyConnectedWorkloadValidate</a>,</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; input,</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; output,</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; weights,</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; biases,</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; descriptor);</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
1400<div class="ttc" id="namespacearmnn_html_a00ef2c55913f952924a3e23556655285"><div class="ttname"><a href="namespacearmnn.html#a00ef2c55913f952924a3e23556655285">armnn::ClFullyConnectedWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClFullyConnectedWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const TensorInfo &amp;weights, const TensorInfo &amp;biases, const FullyConnectedDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_fully_connected_workload_8cpp_source.html#l00019">ClFullyConnectedWorkload.cpp:19</a></div></div>
1401</div><!-- fragment -->
1402</div>
1403</div>
1404<a id="a7303c2656e267e10252a171e8bbc1d94"></a>
1405<h2 class="memtitle"><span class="permalink"><a href="#a7303c2656e267e10252a171e8bbc1d94">&#9670;&nbsp;</a></span>IsGreaterSupported()</h2>
1406
1407<div class="memitem">
1408<div class="memproto">
1409<table class="mlabels">
1410 <tr>
1411 <td class="mlabels-left">
1412 <table class="memname">
1413 <tr>
1414 <td class="memname">bool IsGreaterSupported </td>
1415 <td>(</td>
1416 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1417 <td class="paramname"><em>input0</em>, </td>
1418 </tr>
1419 <tr>
1420 <td class="paramkey"></td>
1421 <td></td>
1422 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1423 <td class="paramname"><em>input1</em>, </td>
1424 </tr>
1425 <tr>
1426 <td class="paramkey"></td>
1427 <td></td>
1428 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1429 <td class="paramname"><em>ouput</em>, </td>
1430 </tr>
1431 <tr>
1432 <td class="paramkey"></td>
1433 <td></td>
1434 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1435 <td class="paramname"><em>reasonIfUnsupported</em>&#160;</td>
1436 </tr>
1437 <tr>
1438 <td></td>
1439 <td>)</td>
1440 <td></td><td> const</td>
1441 </tr>
1442 </table>
1443 </td>
1444 <td class="mlabels-right">
1445<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1446 </tr>
1447</table>
1448</div><div class="memdoc">
1449
1450<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a14e45f3699e823d7859d5d352d89265c">LayerSupportBase</a>.</p>
1451
1452<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00449">449</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1453<div class="fragment"><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; ComparisonDescriptor descriptor(<a class="code" href="namespacearmnn.html#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">ComparisonOperation::Greater</a>);</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_cl_layer_support.html#ad16b29b7f1c73187775e7b1d044d7bc0">IsComparisonSupported</a>(input0, input1, output, descriptor, reasonIfUnsupported);</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a"><div class="ttname"><a href="namespacearmnn.html#a2d299363c9fc33334c571fa29ca4f58ca8768a6821cd735aea4f5b0df88c1fc6a">armnn::ComparisonOperation::Greater</a></div></div>
1454<div class="ttc" id="classarmnn_1_1_cl_layer_support_html_ad16b29b7f1c73187775e7b1d044d7bc0"><div class="ttname"><a href="classarmnn_1_1_cl_layer_support.html#ad16b29b7f1c73187775e7b1d044d7bc0">armnn::ClLayerSupport::IsComparisonSupported</a></div><div class="ttdeci">bool IsComparisonSupported(const TensorInfo &amp;input0, const TensorInfo &amp;input1, const TensorInfo &amp;ouput, const ComparisonDescriptor &amp;descriptor, Optional&lt; std::string &amp;&gt; reasonIfUnsupported=EmptyOptional()) const override</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00229">ClLayerSupport.cpp:229</a></div></div>
1455</div><!-- fragment -->
1456</div>
1457</div>
1458<a id="ad29d99ecd719c640ed22dcf5c688c6a5"></a>
1459<h2 class="memtitle"><span class="permalink"><a href="#ad29d99ecd719c640ed22dcf5c688c6a5">&#9670;&nbsp;</a></span>IsInputSupported()</h2>
1460
1461<div class="memitem">
1462<div class="memproto">
1463<table class="mlabels">
1464 <tr>
1465 <td class="mlabels-left">
1466 <table class="memname">
1467 <tr>
1468 <td class="memname">bool IsInputSupported </td>
1469 <td>(</td>
1470 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1471 <td class="paramname"><em>input</em>, </td>
1472 </tr>
1473 <tr>
1474 <td class="paramkey"></td>
1475 <td></td>
1476 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1477 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1478 </tr>
1479 <tr>
1480 <td></td>
1481 <td>)</td>
1482 <td></td><td> const</td>
1483 </tr>
1484 </table>
1485 </td>
1486 <td class="mlabels-right">
1487<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1488 </tr>
1489</table>
1490</div><div class="memdoc">
1491
1492<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#ad29d99ecd719c640ed22dcf5c688c6a5">LayerSupportBase</a>.</p>
1493
1494<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00458">458</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1495<div class="fragment"><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;{</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keywordflow">return</span> IsClBackendSupported(reasonIfUnsupported, input);</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160;}</div></div><!-- fragment -->
1496</div>
1497</div>
1498<a id="a0813546a09bf2caba6794014d1960624"></a>
1499<h2 class="memtitle"><span class="permalink"><a href="#a0813546a09bf2caba6794014d1960624">&#9670;&nbsp;</a></span>IsInstanceNormalizationSupported()</h2>
1500
1501<div class="memitem">
1502<div class="memproto">
1503<table class="mlabels">
1504 <tr>
1505 <td class="mlabels-left">
1506 <table class="memname">
1507 <tr>
1508 <td class="memname">bool IsInstanceNormalizationSupported </td>
1509 <td>(</td>
1510 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1511 <td class="paramname"><em>input</em>, </td>
1512 </tr>
1513 <tr>
1514 <td class="paramkey"></td>
1515 <td></td>
1516 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1517 <td class="paramname"><em>output</em>, </td>
1518 </tr>
1519 <tr>
1520 <td class="paramkey"></td>
1521 <td></td>
1522 <td class="paramtype">const <a class="el" href="structarmnn_1_1_instance_normalization_descriptor.html">InstanceNormalizationDescriptor</a> &amp;&#160;</td>
1523 <td class="paramname"><em>descriptor</em>, </td>
1524 </tr>
1525 <tr>
1526 <td class="paramkey"></td>
1527 <td></td>
1528 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1529 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1530 </tr>
1531 <tr>
1532 <td></td>
1533 <td>)</td>
1534 <td></td><td> const</td>
1535 </tr>
1536 </table>
1537 </td>
1538 <td class="mlabels-right">
1539<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1540 </tr>
1541</table>
1542</div><div class="memdoc">
1543
1544<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a0813546a09bf2caba6794014d1960624">LayerSupportBase</a>.</p>
1545
1546<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00464">464</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1547
1548<p class="reference">References <a class="el" href="_cl_instance_normalization_workload_8cpp_source.html#l00018">armnn::ClInstanceNormalizationWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
1549<div class="fragment"><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="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a79d362f0c6e04d51807e0d81b5b05f3a">ClInstanceNormalizationWorkloadValidate</a>,</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; input,</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; output,</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; descriptor);</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
1550<div class="ttc" id="namespacearmnn_html_a79d362f0c6e04d51807e0d81b5b05f3a"><div class="ttname"><a href="namespacearmnn.html#a79d362f0c6e04d51807e0d81b5b05f3a">armnn::ClInstanceNormalizationWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClInstanceNormalizationWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const InstanceNormalizationDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_instance_normalization_workload_8cpp_source.html#l00018">ClInstanceNormalizationWorkload.cpp:18</a></div></div>
1551</div><!-- fragment -->
1552</div>
1553</div>
1554<a id="aca4acda7ab553edfda828658d8f3882b"></a>
1555<h2 class="memtitle"><span class="permalink"><a href="#aca4acda7ab553edfda828658d8f3882b">&#9670;&nbsp;</a></span>IsL2NormalizationSupported()</h2>
1556
1557<div class="memitem">
1558<div class="memproto">
1559<table class="mlabels">
1560 <tr>
1561 <td class="mlabels-left">
1562 <table class="memname">
1563 <tr>
1564 <td class="memname">bool IsL2NormalizationSupported </td>
1565 <td>(</td>
1566 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1567 <td class="paramname"><em>input</em>, </td>
1568 </tr>
1569 <tr>
1570 <td class="paramkey"></td>
1571 <td></td>
1572 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1573 <td class="paramname"><em>output</em>, </td>
1574 </tr>
1575 <tr>
1576 <td class="paramkey"></td>
1577 <td></td>
1578 <td class="paramtype">const <a class="el" href="structarmnn_1_1_l2_normalization_descriptor.html">L2NormalizationDescriptor</a> &amp;&#160;</td>
1579 <td class="paramname"><em>descriptor</em>, </td>
1580 </tr>
1581 <tr>
1582 <td class="paramkey"></td>
1583 <td></td>
1584 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1585 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1586 </tr>
1587 <tr>
1588 <td></td>
1589 <td>)</td>
1590 <td></td><td> const</td>
1591 </tr>
1592 </table>
1593 </td>
1594 <td class="mlabels-right">
1595<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1596 </tr>
1597</table>
1598</div><div class="memdoc">
1599
1600<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#aca4acda7ab553edfda828658d8f3882b">LayerSupportBase</a>.</p>
1601
1602<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00476">476</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1603
1604<p class="reference">References <a class="el" href="_cl_l2_normalization_float_workload_8cpp_source.html#l00017">armnn::ClL2NormalizationWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
1605<div class="fragment"><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160;{</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#aef334cdb24000c330f4d2e5f1b384784">ClL2NormalizationWorkloadValidate</a>,</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; input,</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; output,</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; descriptor);</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
1606<div class="ttc" id="namespacearmnn_html_aef334cdb24000c330f4d2e5f1b384784"><div class="ttname"><a href="namespacearmnn.html#aef334cdb24000c330f4d2e5f1b384784">armnn::ClL2NormalizationWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClL2NormalizationWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const L2NormalizationDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_l2_normalization_float_workload_8cpp_source.html#l00017">ClL2NormalizationFloatWorkload.cpp:17</a></div></div>
1607</div><!-- fragment -->
1608</div>
1609</div>
1610<a id="a862535721737220f62a49f14ff494dd5"></a>
1611<h2 class="memtitle"><span class="permalink"><a href="#a862535721737220f62a49f14ff494dd5">&#9670;&nbsp;</a></span>IsLstmSupported()</h2>
1612
1613<div class="memitem">
1614<div class="memproto">
1615<table class="mlabels">
1616 <tr>
1617 <td class="mlabels-left">
1618 <table class="memname">
1619 <tr>
1620 <td class="memname">bool IsLstmSupported </td>
1621 <td>(</td>
1622 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1623 <td class="paramname"><em>input</em>, </td>
1624 </tr>
1625 <tr>
1626 <td class="paramkey"></td>
1627 <td></td>
1628 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1629 <td class="paramname"><em>outputStateIn</em>, </td>
1630 </tr>
1631 <tr>
1632 <td class="paramkey"></td>
1633 <td></td>
1634 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1635 <td class="paramname"><em>cellStateIn</em>, </td>
1636 </tr>
1637 <tr>
1638 <td class="paramkey"></td>
1639 <td></td>
1640 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1641 <td class="paramname"><em>scratchBuffer</em>, </td>
1642 </tr>
1643 <tr>
1644 <td class="paramkey"></td>
1645 <td></td>
1646 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1647 <td class="paramname"><em>outputStateOut</em>, </td>
1648 </tr>
1649 <tr>
1650 <td class="paramkey"></td>
1651 <td></td>
1652 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1653 <td class="paramname"><em>cellStateOut</em>, </td>
1654 </tr>
1655 <tr>
1656 <td class="paramkey"></td>
1657 <td></td>
1658 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1659 <td class="paramname"><em>output</em>, </td>
1660 </tr>
1661 <tr>
1662 <td class="paramkey"></td>
1663 <td></td>
1664 <td class="paramtype">const <a class="el" href="structarmnn_1_1_lstm_descriptor.html">LstmDescriptor</a> &amp;&#160;</td>
1665 <td class="paramname"><em>descriptor</em>, </td>
1666 </tr>
1667 <tr>
1668 <td class="paramkey"></td>
1669 <td></td>
1670 <td class="paramtype">const <a class="el" href="structarmnn_1_1_lstm_input_params_info.html">LstmInputParamsInfo</a> &amp;&#160;</td>
1671 <td class="paramname"><em>paramsInfo</em>, </td>
1672 </tr>
1673 <tr>
1674 <td class="paramkey"></td>
1675 <td></td>
1676 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1677 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1678 </tr>
1679 <tr>
1680 <td></td>
1681 <td>)</td>
1682 <td></td><td> const</td>
1683 </tr>
1684 </table>
1685 </td>
1686 <td class="mlabels-right">
1687<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1688 </tr>
1689</table>
1690</div><div class="memdoc">
1691
1692<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a862535721737220f62a49f14ff494dd5">LayerSupportBase</a>.</p>
1693
1694<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00488">488</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1695
1696<p class="reference">References <a class="el" href="_cl_lstm_float_workload_8cpp_source.html#l00256">armnn::ClLstmFloatWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
1697<div class="fragment"><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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a90ab88fe4c7aa9466c4653404a6b2213">ClLstmFloatWorkloadValidate</a>,</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; input,</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; outputStateIn,</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; cellStateIn,</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; scratchBuffer,</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; outputStateOut,</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; cellStateOut,</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; output,</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; descriptor,</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; paramsInfo);</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
1698<div class="ttc" id="namespacearmnn_html_a90ab88fe4c7aa9466c4653404a6b2213"><div class="ttname"><a href="namespacearmnn.html#a90ab88fe4c7aa9466c4653404a6b2213">armnn::ClLstmFloatWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClLstmFloatWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;outputStateIn, const TensorInfo &amp;cellStateIn, const TensorInfo &amp;scratchBuffer, const TensorInfo &amp;outputStateOut, const TensorInfo &amp;cellStateOut, const TensorInfo &amp;output, const LstmDescriptor &amp;descriptor, const LstmInputParamsInfo &amp;paramsInfo)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_lstm_float_workload_8cpp_source.html#l00256">ClLstmFloatWorkload.cpp:256</a></div></div>
1699</div><!-- fragment -->
1700</div>
1701</div>
1702<a id="afef9436c86b37b973471f2ae546ac00a"></a>
1703<h2 class="memtitle"><span class="permalink"><a href="#afef9436c86b37b973471f2ae546ac00a">&#9670;&nbsp;</a></span>IsMaximumSupported()</h2>
1704
1705<div class="memitem">
1706<div class="memproto">
1707<table class="mlabels">
1708 <tr>
1709 <td class="mlabels-left">
1710 <table class="memname">
1711 <tr>
1712 <td class="memname">bool IsMaximumSupported </td>
1713 <td>(</td>
1714 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1715 <td class="paramname"><em>input0</em>, </td>
1716 </tr>
1717 <tr>
1718 <td class="paramkey"></td>
1719 <td></td>
1720 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1721 <td class="paramname"><em>input1</em>, </td>
1722 </tr>
1723 <tr>
1724 <td class="paramkey"></td>
1725 <td></td>
1726 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1727 <td class="paramname"><em>output</em>, </td>
1728 </tr>
1729 <tr>
1730 <td class="paramkey"></td>
1731 <td></td>
1732 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1733 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1734 </tr>
1735 <tr>
1736 <td></td>
1737 <td>)</td>
1738 <td></td><td> const</td>
1739 </tr>
1740 </table>
1741 </td>
1742 <td class="mlabels-right">
1743<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1744 </tr>
1745</table>
1746</div><div class="memdoc">
1747
1748<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#afef9436c86b37b973471f2ae546ac00a">LayerSupportBase</a>.</p>
1749
1750<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00512">512</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1751
1752<p class="reference">References <a class="el" href="_cl_maximum_workload_8cpp_source.html#l00024">armnn::ClMaximumWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
1753<div class="fragment"><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160;{</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a553706c6338ffc52b0d916859f642587">ClMaximumWorkloadValidate</a>,</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; input0,</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; input1,</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; output);</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
1754<div class="ttc" id="namespacearmnn_html_a553706c6338ffc52b0d916859f642587"><div class="ttname"><a href="namespacearmnn.html#a553706c6338ffc52b0d916859f642587">armnn::ClMaximumWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClMaximumWorkloadValidate(const TensorInfo &amp;input0, const TensorInfo &amp;input1, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_maximum_workload_8cpp_source.html#l00024">ClMaximumWorkload.cpp:24</a></div></div>
1755</div><!-- fragment -->
1756</div>
1757</div>
1758<a id="ab268618580d4f53bf5e9b5a47dee3f6a"></a>
1759<h2 class="memtitle"><span class="permalink"><a href="#ab268618580d4f53bf5e9b5a47dee3f6a">&#9670;&nbsp;</a></span>IsMeanSupported()</h2>
1760
1761<div class="memitem">
1762<div class="memproto">
1763<table class="mlabels">
1764 <tr>
1765 <td class="mlabels-left">
1766 <table class="memname">
1767 <tr>
1768 <td class="memname">bool IsMeanSupported </td>
1769 <td>(</td>
1770 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1771 <td class="paramname"><em>input</em>, </td>
1772 </tr>
1773 <tr>
1774 <td class="paramkey"></td>
1775 <td></td>
1776 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1777 <td class="paramname"><em>output</em>, </td>
1778 </tr>
1779 <tr>
1780 <td class="paramkey"></td>
1781 <td></td>
1782 <td class="paramtype">const <a class="el" href="structarmnn_1_1_mean_descriptor.html">MeanDescriptor</a> &amp;&#160;</td>
1783 <td class="paramname"><em>descriptor</em>, </td>
1784 </tr>
1785 <tr>
1786 <td class="paramkey"></td>
1787 <td></td>
1788 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1789 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1790 </tr>
1791 <tr>
1792 <td></td>
1793 <td>)</td>
1794 <td></td><td> const</td>
1795 </tr>
1796 </table>
1797 </td>
1798 <td class="mlabels-right">
1799<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1800 </tr>
1801</table>
1802</div><div class="memdoc">
1803
1804<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#ab268618580d4f53bf5e9b5a47dee3f6a">LayerSupportBase</a>.</p>
1805
1806<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00524">524</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1807
1808<p class="reference">References <a class="el" href="_cl_mean_workload_8cpp_source.html#l00017">armnn::ClMeanValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
1809<div class="fragment"><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;{</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#aa1fff3c5bdebee27ad33aacc6d110d32">ClMeanValidate</a>,</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; input,</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; output,</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; descriptor);</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
1810<div class="ttc" id="namespacearmnn_html_aa1fff3c5bdebee27ad33aacc6d110d32"><div class="ttname"><a href="namespacearmnn.html#aa1fff3c5bdebee27ad33aacc6d110d32">armnn::ClMeanValidate</a></div><div class="ttdeci">arm_compute::Status ClMeanValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const MeanDescriptor &amp;desc)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_mean_workload_8cpp_source.html#l00017">ClMeanWorkload.cpp:17</a></div></div>
1811</div><!-- fragment -->
1812</div>
1813</div>
1814<a id="aa9309ea64f9f7447efe3567f77417d29"></a>
1815<h2 class="memtitle"><span class="permalink"><a href="#aa9309ea64f9f7447efe3567f77417d29">&#9670;&nbsp;</a></span>IsMergerSupported()</h2>
1816
1817<div class="memitem">
1818<div class="memproto">
1819<table class="mlabels">
1820 <tr>
1821 <td class="mlabels-left">
1822 <table class="memname">
1823 <tr>
1824 <td class="memname">bool IsMergerSupported </td>
1825 <td>(</td>
1826 <td class="paramtype">const std::vector&lt; const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> *&gt;&#160;</td>
1827 <td class="paramname"><em>inputs</em>, </td>
1828 </tr>
1829 <tr>
1830 <td class="paramkey"></td>
1831 <td></td>
1832 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1833 <td class="paramname"><em>output</em>, </td>
1834 </tr>
1835 <tr>
1836 <td class="paramkey"></td>
1837 <td></td>
1838 <td class="paramtype">const <a class="el" href="namespacearmnn.html#a003d213dd28b0b8c0f26fbf268ccb975">MergerDescriptor</a> &amp;&#160;</td>
1839 <td class="paramname"><em>descriptor</em>, </td>
1840 </tr>
1841 <tr>
1842 <td class="paramkey"></td>
1843 <td></td>
1844 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1845 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1846 </tr>
1847 <tr>
1848 <td></td>
1849 <td>)</td>
1850 <td></td><td> const</td>
1851 </tr>
1852 </table>
1853 </td>
1854 <td class="mlabels-right">
1855<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1856 </tr>
1857</table>
1858</div><div class="memdoc">
1859
1860<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a77ae1b686e92a561de76388ac55cab06">LayerSupportBase</a>.</p>
1861
1862<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00536">536</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1863
1864<p class="reference">References <a class="el" href="namespacearmnn.html#a757df85e956e425c1a082d35a98ca4a9">armnn::IsConcatSupported()</a>.</p>
1865<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; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_cl_layer_support.html#a3dca8ffbcb5f3afa1799aa7d354a3016">IsConcatSupported</a>(inputs, output, descriptor, reasonIfUnsupported);</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160;}</div><div class="ttc" id="classarmnn_1_1_cl_layer_support_html_a3dca8ffbcb5f3afa1799aa7d354a3016"><div class="ttname"><a href="classarmnn_1_1_cl_layer_support.html#a3dca8ffbcb5f3afa1799aa7d354a3016">armnn::ClLayerSupport::IsConcatSupported</a></div><div class="ttdeci">bool IsConcatSupported(const std::vector&lt; const TensorInfo *&gt; inputs, const TensorInfo &amp;output, const ConcatDescriptor &amp;descriptor, Optional&lt; std::string &amp;&gt; reasonIfUnsupported=EmptyOptional()) const override</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00247">ClLayerSupport.cpp:247</a></div></div>
1866</div><!-- fragment -->
1867</div>
1868</div>
1869<a id="a3d0eafb3de560b3482f857b56b2b2116"></a>
1870<h2 class="memtitle"><span class="permalink"><a href="#a3d0eafb3de560b3482f857b56b2b2116">&#9670;&nbsp;</a></span>IsMinimumSupported()</h2>
1871
1872<div class="memitem">
1873<div class="memproto">
1874<table class="mlabels">
1875 <tr>
1876 <td class="mlabels-left">
1877 <table class="memname">
1878 <tr>
1879 <td class="memname">bool IsMinimumSupported </td>
1880 <td>(</td>
1881 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1882 <td class="paramname"><em>input0</em>, </td>
1883 </tr>
1884 <tr>
1885 <td class="paramkey"></td>
1886 <td></td>
1887 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1888 <td class="paramname"><em>input1</em>, </td>
1889 </tr>
1890 <tr>
1891 <td class="paramkey"></td>
1892 <td></td>
1893 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1894 <td class="paramname"><em>output</em>, </td>
1895 </tr>
1896 <tr>
1897 <td class="paramkey"></td>
1898 <td></td>
1899 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1900 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1901 </tr>
1902 <tr>
1903 <td></td>
1904 <td>)</td>
1905 <td></td><td> const</td>
1906 </tr>
1907 </table>
1908 </td>
1909 <td class="mlabels-right">
1910<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1911 </tr>
1912</table>
1913</div><div class="memdoc">
1914
1915<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a3d0eafb3de560b3482f857b56b2b2116">LayerSupportBase</a>.</p>
1916
1917<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00544">544</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1918
1919<p class="reference">References <a class="el" href="_cl_minimum_workload_8cpp_source.html#l00024">armnn::ClMinimumWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
1920<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="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a8c04c8e796a4fbec706df42ed9c27e4e">ClMinimumWorkloadValidate</a>,</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; input0,</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; input1,</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; output);</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a8c04c8e796a4fbec706df42ed9c27e4e"><div class="ttname"><a href="namespacearmnn.html#a8c04c8e796a4fbec706df42ed9c27e4e">armnn::ClMinimumWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClMinimumWorkloadValidate(const TensorInfo &amp;input0, const TensorInfo &amp;input1, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_minimum_workload_8cpp_source.html#l00024">ClMinimumWorkload.cpp:24</a></div></div>
1921<div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
1922</div><!-- fragment -->
1923</div>
1924</div>
1925<a id="a421e1f3865d99d52613003048342c49a"></a>
1926<h2 class="memtitle"><span class="permalink"><a href="#a421e1f3865d99d52613003048342c49a">&#9670;&nbsp;</a></span>IsMultiplicationSupported()</h2>
1927
1928<div class="memitem">
1929<div class="memproto">
1930<table class="mlabels">
1931 <tr>
1932 <td class="mlabels-left">
1933 <table class="memname">
1934 <tr>
1935 <td class="memname">bool IsMultiplicationSupported </td>
1936 <td>(</td>
1937 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1938 <td class="paramname"><em>input0</em>, </td>
1939 </tr>
1940 <tr>
1941 <td class="paramkey"></td>
1942 <td></td>
1943 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1944 <td class="paramname"><em>input1</em>, </td>
1945 </tr>
1946 <tr>
1947 <td class="paramkey"></td>
1948 <td></td>
1949 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1950 <td class="paramname"><em>output</em>, </td>
1951 </tr>
1952 <tr>
1953 <td class="paramkey"></td>
1954 <td></td>
1955 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
1956 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
1957 </tr>
1958 <tr>
1959 <td></td>
1960 <td>)</td>
1961 <td></td><td> const</td>
1962 </tr>
1963 </table>
1964 </td>
1965 <td class="mlabels-right">
1966<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1967 </tr>
1968</table>
1969</div><div class="memdoc">
1970
1971<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a421e1f3865d99d52613003048342c49a">LayerSupportBase</a>.</p>
1972
1973<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00556">556</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
1974
1975<p class="reference">References <a class="el" href="_cl_multiplication_workload_8cpp_source.html#l00014">armnn::ClMultiplicationWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
1976<div class="fragment"><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;{</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a674a280a55c3760374a05ee24e9e3e74">ClMultiplicationWorkloadValidate</a>,</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; input0,</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; input1,</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; output);</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a674a280a55c3760374a05ee24e9e3e74"><div class="ttname"><a href="namespacearmnn.html#a674a280a55c3760374a05ee24e9e3e74">armnn::ClMultiplicationWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClMultiplicationWorkloadValidate(const TensorInfo &amp;input0, const TensorInfo &amp;input1, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_multiplication_workload_8cpp_source.html#l00014">ClMultiplicationWorkload.cpp:14</a></div></div>
1977<div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
1978</div><!-- fragment -->
1979</div>
1980</div>
1981<a id="a994c2065561141bf37fcd2ff7bb4af4d"></a>
1982<h2 class="memtitle"><span class="permalink"><a href="#a994c2065561141bf37fcd2ff7bb4af4d">&#9670;&nbsp;</a></span>IsNormalizationSupported()</h2>
1983
1984<div class="memitem">
1985<div class="memproto">
1986<table class="mlabels">
1987 <tr>
1988 <td class="mlabels-left">
1989 <table class="memname">
1990 <tr>
1991 <td class="memname">bool IsNormalizationSupported </td>
1992 <td>(</td>
1993 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
1994 <td class="paramname"><em>input</em>, </td>
1995 </tr>
1996 <tr>
1997 <td class="paramkey"></td>
1998 <td></td>
1999 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2000 <td class="paramname"><em>output</em>, </td>
2001 </tr>
2002 <tr>
2003 <td class="paramkey"></td>
2004 <td></td>
2005 <td class="paramtype">const <a class="el" href="structarmnn_1_1_normalization_descriptor.html">NormalizationDescriptor</a> &amp;&#160;</td>
2006 <td class="paramname"><em>descriptor</em>, </td>
2007 </tr>
2008 <tr>
2009 <td class="paramkey"></td>
2010 <td></td>
2011 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2012 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2013 </tr>
2014 <tr>
2015 <td></td>
2016 <td>)</td>
2017 <td></td><td> const</td>
2018 </tr>
2019 </table>
2020 </td>
2021 <td class="mlabels-right">
2022<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2023 </tr>
2024</table>
2025</div><div class="memdoc">
2026
2027<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a994c2065561141bf37fcd2ff7bb4af4d">LayerSupportBase</a>.</p>
2028
2029<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00568">568</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2030
2031<p class="reference">References <a class="el" href="_cl_normalization_float_workload_8cpp_source.html#l00019">armnn::ClNormalizationWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
2032<div class="fragment"><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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a144c2e243a255715f309999077ed1792">ClNormalizationWorkloadValidate</a>, reasonIfUnsupported, input, output, descriptor);</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
2033<div class="ttc" id="namespacearmnn_html_a144c2e243a255715f309999077ed1792"><div class="ttname"><a href="namespacearmnn.html#a144c2e243a255715f309999077ed1792">armnn::ClNormalizationWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClNormalizationWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const NormalizationDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_normalization_float_workload_8cpp_source.html#l00019">ClNormalizationFloatWorkload.cpp:19</a></div></div>
2034</div><!-- fragment -->
2035</div>
2036</div>
2037<a id="aef3244c0ef64c8f2f352d21ce0c06985"></a>
2038<h2 class="memtitle"><span class="permalink"><a href="#aef3244c0ef64c8f2f352d21ce0c06985">&#9670;&nbsp;</a></span>IsOutputSupported()</h2>
2039
2040<div class="memitem">
2041<div class="memproto">
2042<table class="mlabels">
2043 <tr>
2044 <td class="mlabels-left">
2045 <table class="memname">
2046 <tr>
2047 <td class="memname">bool IsOutputSupported </td>
2048 <td>(</td>
2049 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2050 <td class="paramname"><em>output</em>, </td>
2051 </tr>
2052 <tr>
2053 <td class="paramkey"></td>
2054 <td></td>
2055 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2056 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2057 </tr>
2058 <tr>
2059 <td></td>
2060 <td>)</td>
2061 <td></td><td> const</td>
2062 </tr>
2063 </table>
2064 </td>
2065 <td class="mlabels-right">
2066<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2067 </tr>
2068</table>
2069</div><div class="memdoc">
2070
2071<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#aef3244c0ef64c8f2f352d21ce0c06985">LayerSupportBase</a>.</p>
2072
2073<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00576">576</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2074<div class="fragment"><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; <span class="keywordflow">return</span> IsClBackendSupported(reasonIfUnsupported, output);</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160;}</div></div><!-- fragment -->
2075</div>
2076</div>
2077<a id="a0534291adf9f3436ba331552eba29a43"></a>
2078<h2 class="memtitle"><span class="permalink"><a href="#a0534291adf9f3436ba331552eba29a43">&#9670;&nbsp;</a></span>IsPadSupported()</h2>
2079
2080<div class="memitem">
2081<div class="memproto">
2082<table class="mlabels">
2083 <tr>
2084 <td class="mlabels-left">
2085 <table class="memname">
2086 <tr>
2087 <td class="memname">bool IsPadSupported </td>
2088 <td>(</td>
2089 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2090 <td class="paramname"><em>input</em>, </td>
2091 </tr>
2092 <tr>
2093 <td class="paramkey"></td>
2094 <td></td>
2095 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2096 <td class="paramname"><em>output</em>, </td>
2097 </tr>
2098 <tr>
2099 <td class="paramkey"></td>
2100 <td></td>
2101 <td class="paramtype">const <a class="el" href="structarmnn_1_1_pad_descriptor.html">PadDescriptor</a> &amp;&#160;</td>
2102 <td class="paramname"><em>descriptor</em>, </td>
2103 </tr>
2104 <tr>
2105 <td class="paramkey"></td>
2106 <td></td>
2107 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2108 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2109 </tr>
2110 <tr>
2111 <td></td>
2112 <td>)</td>
2113 <td></td><td> const</td>
2114 </tr>
2115 </table>
2116 </td>
2117 <td class="mlabels-right">
2118<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2119 </tr>
2120</table>
2121</div><div class="memdoc">
2122
2123<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a0534291adf9f3436ba331552eba29a43">LayerSupportBase</a>.</p>
2124
2125<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00582">582</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2126
2127<p class="reference">References <a class="el" href="_cl_pad_workload_8cpp_source.html#l00045">armnn::ClPadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
2128<div class="fragment"><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160;{</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#adcf7b7d939bac1cfaeb333c7b3175bb8">ClPadValidate</a>,</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; input,</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; output,</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; descriptor);</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
2129<div class="ttc" id="namespacearmnn_html_adcf7b7d939bac1cfaeb333c7b3175bb8"><div class="ttname"><a href="namespacearmnn.html#adcf7b7d939bac1cfaeb333c7b3175bb8">armnn::ClPadValidate</a></div><div class="ttdeci">arm_compute::Status ClPadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const PadDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_pad_workload_8cpp_source.html#l00045">ClPadWorkload.cpp:45</a></div></div>
2130</div><!-- fragment -->
2131</div>
2132</div>
2133<a id="a9d553495d9a94fa55588ae159d8bda30"></a>
2134<h2 class="memtitle"><span class="permalink"><a href="#a9d553495d9a94fa55588ae159d8bda30">&#9670;&nbsp;</a></span>IsPermuteSupported()</h2>
2135
2136<div class="memitem">
2137<div class="memproto">
2138<table class="mlabels">
2139 <tr>
2140 <td class="mlabels-left">
2141 <table class="memname">
2142 <tr>
2143 <td class="memname">bool IsPermuteSupported </td>
2144 <td>(</td>
2145 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2146 <td class="paramname"><em>input</em>, </td>
2147 </tr>
2148 <tr>
2149 <td class="paramkey"></td>
2150 <td></td>
2151 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2152 <td class="paramname"><em>output</em>, </td>
2153 </tr>
2154 <tr>
2155 <td class="paramkey"></td>
2156 <td></td>
2157 <td class="paramtype">const <a class="el" href="structarmnn_1_1_permute_descriptor.html">PermuteDescriptor</a> &amp;&#160;</td>
2158 <td class="paramname"><em>descriptor</em>, </td>
2159 </tr>
2160 <tr>
2161 <td class="paramkey"></td>
2162 <td></td>
2163 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2164 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2165 </tr>
2166 <tr>
2167 <td></td>
2168 <td>)</td>
2169 <td></td><td> const</td>
2170 </tr>
2171 </table>
2172 </td>
2173 <td class="mlabels-right">
2174<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2175 </tr>
2176</table>
2177</div><div class="memdoc">
2178
2179<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a9d553495d9a94fa55588ae159d8bda30">LayerSupportBase</a>.</p>
2180
2181<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00594">594</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2182
2183<p class="reference">References <a class="el" href="_cl_permute_workload_8cpp_source.html#l00017">armnn::ClPermuteWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
2184<div class="fragment"><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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a26c25df9e2271333ab4d4ef71db41dca">ClPermuteWorkloadValidate</a>, reasonIfUnsupported, input, output, descriptor);</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
2185<div class="ttc" id="namespacearmnn_html_a26c25df9e2271333ab4d4ef71db41dca"><div class="ttname"><a href="namespacearmnn.html#a26c25df9e2271333ab4d4ef71db41dca">armnn::ClPermuteWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClPermuteWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const PermuteDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_permute_workload_8cpp_source.html#l00017">ClPermuteWorkload.cpp:17</a></div></div>
2186</div><!-- fragment -->
2187</div>
2188</div>
2189<a id="aa955675303d67b1d1fb51fb7f09d8c21"></a>
2190<h2 class="memtitle"><span class="permalink"><a href="#aa955675303d67b1d1fb51fb7f09d8c21">&#9670;&nbsp;</a></span>IsPooling2dSupported()</h2>
2191
2192<div class="memitem">
2193<div class="memproto">
2194<table class="mlabels">
2195 <tr>
2196 <td class="mlabels-left">
2197 <table class="memname">
2198 <tr>
2199 <td class="memname">bool IsPooling2dSupported </td>
2200 <td>(</td>
2201 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2202 <td class="paramname"><em>input</em>, </td>
2203 </tr>
2204 <tr>
2205 <td class="paramkey"></td>
2206 <td></td>
2207 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2208 <td class="paramname"><em>output</em>, </td>
2209 </tr>
2210 <tr>
2211 <td class="paramkey"></td>
2212 <td></td>
2213 <td class="paramtype">const <a class="el" href="structarmnn_1_1_pooling2d_descriptor.html">Pooling2dDescriptor</a> &amp;&#160;</td>
2214 <td class="paramname"><em>descriptor</em>, </td>
2215 </tr>
2216 <tr>
2217 <td class="paramkey"></td>
2218 <td></td>
2219 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2220 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2221 </tr>
2222 <tr>
2223 <td></td>
2224 <td>)</td>
2225 <td></td><td> const</td>
2226 </tr>
2227 </table>
2228 </td>
2229 <td class="mlabels-right">
2230<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2231 </tr>
2232</table>
2233</div><div class="memdoc">
2234
2235<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#aa955675303d67b1d1fb51fb7f09d8c21">LayerSupportBase</a>.</p>
2236
2237<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00602">602</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2238
2239<p class="reference">References <a class="el" href="_cl_pooling2d_workload_8cpp_source.html#l00018">armnn::ClPooling2dWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
2240<div class="fragment"><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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a8a21bb33f7f054ce7b48a8c7df9e6d4a">ClPooling2dWorkloadValidate</a>, reasonIfUnsupported, input, output, descriptor);</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
2241<div class="ttc" id="namespacearmnn_html_a8a21bb33f7f054ce7b48a8c7df9e6d4a"><div class="ttname"><a href="namespacearmnn.html#a8a21bb33f7f054ce7b48a8c7df9e6d4a">armnn::ClPooling2dWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClPooling2dWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const Pooling2dDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_pooling2d_workload_8cpp_source.html#l00018">ClPooling2dWorkload.cpp:18</a></div></div>
2242</div><!-- fragment -->
2243</div>
2244</div>
2245<a id="a4b36dcedd5edbd5142b3548967aadc2f"></a>
2246<h2 class="memtitle"><span class="permalink"><a href="#a4b36dcedd5edbd5142b3548967aadc2f">&#9670;&nbsp;</a></span>IsPreluSupported()</h2>
2247
2248<div class="memitem">
2249<div class="memproto">
2250<table class="mlabels">
2251 <tr>
2252 <td class="mlabels-left">
2253 <table class="memname">
2254 <tr>
2255 <td class="memname">bool IsPreluSupported </td>
2256 <td>(</td>
2257 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2258 <td class="paramname"><em>input</em>, </td>
2259 </tr>
2260 <tr>
2261 <td class="paramkey"></td>
2262 <td></td>
2263 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2264 <td class="paramname"><em>alpha</em>, </td>
2265 </tr>
2266 <tr>
2267 <td class="paramkey"></td>
2268 <td></td>
2269 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2270 <td class="paramname"><em>output</em>, </td>
2271 </tr>
2272 <tr>
2273 <td class="paramkey"></td>
2274 <td></td>
2275 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2276 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2277 </tr>
2278 <tr>
2279 <td></td>
2280 <td>)</td>
2281 <td></td><td> const</td>
2282 </tr>
2283 </table>
2284 </td>
2285 <td class="mlabels-right">
2286<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2287 </tr>
2288</table>
2289</div><div class="memdoc">
2290
2291<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a93cf81b28c4275a338f41c536a451158">LayerSupportBase</a>.</p>
2292
2293<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00610">610</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2294
2295<p class="reference">References <a class="el" href="_cl_prelu_workload_8cpp_source.html#l00016">armnn::ClPreluWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
2296<div class="fragment"><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160;{</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#ae58d1f4437a779274037bc86efac9e26">ClPreluWorkloadValidate</a>, reasonIfUnsupported, input, alpha, output);</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_ae58d1f4437a779274037bc86efac9e26"><div class="ttname"><a href="namespacearmnn.html#ae58d1f4437a779274037bc86efac9e26">armnn::ClPreluWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClPreluWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;alpha, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_prelu_workload_8cpp_source.html#l00016">ClPreluWorkload.cpp:16</a></div></div>
2297<div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
2298</div><!-- fragment -->
2299</div>
2300</div>
2301<a id="af1be52d9f968bfab069344756bf232c4"></a>
2302<h2 class="memtitle"><span class="permalink"><a href="#af1be52d9f968bfab069344756bf232c4">&#9670;&nbsp;</a></span>IsQuantizedLstmSupported()</h2>
2303
2304<div class="memitem">
2305<div class="memproto">
2306<table class="mlabels">
2307 <tr>
2308 <td class="mlabels-left">
2309 <table class="memname">
2310 <tr>
2311 <td class="memname">bool IsQuantizedLstmSupported </td>
2312 <td>(</td>
2313 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2314 <td class="paramname"><em>input</em>, </td>
2315 </tr>
2316 <tr>
2317 <td class="paramkey"></td>
2318 <td></td>
2319 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2320 <td class="paramname"><em>previousCellStateIn</em>, </td>
2321 </tr>
2322 <tr>
2323 <td class="paramkey"></td>
2324 <td></td>
2325 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2326 <td class="paramname"><em>previousOutputIn</em>, </td>
2327 </tr>
2328 <tr>
2329 <td class="paramkey"></td>
2330 <td></td>
2331 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2332 <td class="paramname"><em>cellStateOut</em>, </td>
2333 </tr>
2334 <tr>
2335 <td class="paramkey"></td>
2336 <td></td>
2337 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2338 <td class="paramname"><em>output</em>, </td>
2339 </tr>
2340 <tr>
2341 <td class="paramkey"></td>
2342 <td></td>
2343 <td class="paramtype">const <a class="el" href="structarmnn_1_1_quantized_lstm_input_params_info.html">QuantizedLstmInputParamsInfo</a> &amp;&#160;</td>
2344 <td class="paramname"><em>paramsInfo</em>, </td>
2345 </tr>
2346 <tr>
2347 <td class="paramkey"></td>
2348 <td></td>
2349 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2350 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2351 </tr>
2352 <tr>
2353 <td></td>
2354 <td>)</td>
2355 <td></td><td> const</td>
2356 </tr>
2357 </table>
2358 </td>
2359 <td class="mlabels-right">
2360<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2361 </tr>
2362</table>
2363</div><div class="memdoc">
2364
2365<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#af1be52d9f968bfab069344756bf232c4">LayerSupportBase</a>.</p>
2366
2367<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00618">618</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2368
2369<p class="reference">References <a class="el" href="_cl_quantized_lstm_workload_8cpp_source.html#l00018">armnn::ClQuantizedLstmWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
2370<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="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a5fb7fe07abfb2373103d842b47a24726">ClQuantizedLstmWorkloadValidate</a>,</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; input,</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; previousCellStateIn,</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; previousOutputIn,</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; cellStateOut,</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; output,</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; paramsInfo);</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a5fb7fe07abfb2373103d842b47a24726"><div class="ttname"><a href="namespacearmnn.html#a5fb7fe07abfb2373103d842b47a24726">armnn::ClQuantizedLstmWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClQuantizedLstmWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;previousCellStateIn, const TensorInfo &amp;previousOutputIn, const TensorInfo &amp;cellStateOut, const TensorInfo &amp;output, const QuantizedLstmInputParamsInfo &amp;paramsInfo)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_quantized_lstm_workload_8cpp_source.html#l00018">ClQuantizedLstmWorkload.cpp:18</a></div></div>
2371<div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
2372</div><!-- fragment -->
2373</div>
2374</div>
2375<a id="ad2c7be6b84b04444e514f52f593b3df7"></a>
2376<h2 class="memtitle"><span class="permalink"><a href="#ad2c7be6b84b04444e514f52f593b3df7">&#9670;&nbsp;</a></span>IsQuantizeSupported()</h2>
2377
2378<div class="memitem">
2379<div class="memproto">
2380<table class="mlabels">
2381 <tr>
2382 <td class="mlabels-left">
2383 <table class="memname">
2384 <tr>
2385 <td class="memname">bool IsQuantizeSupported </td>
2386 <td>(</td>
2387 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2388 <td class="paramname"><em>input</em>, </td>
2389 </tr>
2390 <tr>
2391 <td class="paramkey"></td>
2392 <td></td>
2393 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2394 <td class="paramname"><em>output</em>, </td>
2395 </tr>
2396 <tr>
2397 <td class="paramkey"></td>
2398 <td></td>
2399 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2400 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2401 </tr>
2402 <tr>
2403 <td></td>
2404 <td>)</td>
2405 <td></td><td> const</td>
2406 </tr>
2407 </table>
2408 </td>
2409 <td class="mlabels-right">
2410<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2411 </tr>
2412</table>
2413</div><div class="memdoc">
2414
2415<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#ad2c7be6b84b04444e514f52f593b3df7">LayerSupportBase</a>.</p>
2416
2417<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00636">636</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2418
2419<p class="reference">References <a class="el" href="_cl_quantize_workload_8cpp_source.html#l00022">armnn::ClQuantizeWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
2420<div class="fragment"><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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a9c1b478e30a1e8a4ecac874cf15f13d4">ClQuantizeWorkloadValidate</a>,</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; input,</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; output);</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
2421<div class="ttc" id="namespacearmnn_html_a9c1b478e30a1e8a4ecac874cf15f13d4"><div class="ttname"><a href="namespacearmnn.html#a9c1b478e30a1e8a4ecac874cf15f13d4">armnn::ClQuantizeWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClQuantizeWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_quantize_workload_8cpp_source.html#l00022">ClQuantizeWorkload.cpp:22</a></div></div>
2422</div><!-- fragment -->
2423</div>
2424</div>
2425<a id="aa02f01bbcb48c67f5b2efc4132ec5e86"></a>
2426<h2 class="memtitle"><span class="permalink"><a href="#aa02f01bbcb48c67f5b2efc4132ec5e86">&#9670;&nbsp;</a></span>IsReshapeSupported()</h2>
2427
2428<div class="memitem">
2429<div class="memproto">
2430<table class="mlabels">
2431 <tr>
2432 <td class="mlabels-left">
2433 <table class="memname">
2434 <tr>
2435 <td class="memname">bool IsReshapeSupported </td>
2436 <td>(</td>
2437 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2438 <td class="paramname"><em>input</em>, </td>
2439 </tr>
2440 <tr>
2441 <td class="paramkey"></td>
2442 <td></td>
2443 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2444 <td class="paramname"><em>output</em>, </td>
2445 </tr>
2446 <tr>
2447 <td class="paramkey"></td>
2448 <td></td>
2449 <td class="paramtype">const <a class="el" href="structarmnn_1_1_reshape_descriptor.html">ReshapeDescriptor</a> &amp;&#160;</td>
2450 <td class="paramname"><em>descriptor</em>, </td>
2451 </tr>
2452 <tr>
2453 <td class="paramkey"></td>
2454 <td></td>
2455 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2456 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2457 </tr>
2458 <tr>
2459 <td></td>
2460 <td>)</td>
2461 <td></td><td> const</td>
2462 </tr>
2463 </table>
2464 </td>
2465 <td class="mlabels-right">
2466<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2467 </tr>
2468</table>
2469</div><div class="memdoc">
2470
2471<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#aa02f01bbcb48c67f5b2efc4132ec5e86">LayerSupportBase</a>.</p>
2472
2473<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00646">646</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2474
2475<p class="reference">References <a class="el" href="_cl_reshape_workload_8cpp_source.html#l00015">armnn::ClReshapeWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
2476<div class="fragment"><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; ignore_unused(descriptor);</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#af5bb7a834a74983cbbc249785d0c392b">ClReshapeWorkloadValidate</a>, reasonIfUnsupported, input, output);</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
2477<div class="ttc" id="namespacearmnn_html_af5bb7a834a74983cbbc249785d0c392b"><div class="ttname"><a href="namespacearmnn.html#af5bb7a834a74983cbbc249785d0c392b">armnn::ClReshapeWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClReshapeWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_reshape_workload_8cpp_source.html#l00015">ClReshapeWorkload.cpp:15</a></div></div>
2478</div><!-- fragment -->
2479</div>
2480</div>
2481<a id="a0f29f31e1ba46a52eedcdecd34f4cc24"></a>
2482<h2 class="memtitle"><span class="permalink"><a href="#a0f29f31e1ba46a52eedcdecd34f4cc24">&#9670;&nbsp;</a></span>IsResizeBilinearSupported()</h2>
2483
2484<div class="memitem">
2485<div class="memproto">
2486<table class="mlabels">
2487 <tr>
2488 <td class="mlabels-left">
2489 <table class="memname">
2490 <tr>
2491 <td class="memname">bool IsResizeBilinearSupported </td>
2492 <td>(</td>
2493 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2494 <td class="paramname"><em>input</em>, </td>
2495 </tr>
2496 <tr>
2497 <td class="paramkey"></td>
2498 <td></td>
2499 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2500 <td class="paramname"><em>output</em>, </td>
2501 </tr>
2502 <tr>
2503 <td class="paramkey"></td>
2504 <td></td>
2505 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2506 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2507 </tr>
2508 <tr>
2509 <td></td>
2510 <td>)</td>
2511 <td></td><td> const</td>
2512 </tr>
2513 </table>
2514 </td>
2515 <td class="mlabels-right">
2516<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2517 </tr>
2518</table>
2519</div><div class="memdoc">
2520
2521<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a0f29f31e1ba46a52eedcdecd34f4cc24">LayerSupportBase</a>.</p>
2522
2523<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00663">663</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2524
2525<p class="reference">References <a class="el" href="_tensor_8hpp_source.html#l00088">TensorInfo::GetShape()</a>, <a class="el" href="_layer_support_8cpp_source.html#l00541">armnn::IsResizeSupported()</a>, <a class="el" href="_descriptors_8hpp_source.html#l00751">ResizeDescriptor::m_DataLayout</a>, <a class="el" href="_descriptors_8hpp_source.html#l00749">ResizeDescriptor::m_Method</a>, <a class="el" href="_descriptors_8hpp_source.html#l00746">ResizeDescriptor::m_TargetHeight</a>, and <a class="el" href="_descriptors_8hpp_source.html#l00744">ResizeDescriptor::m_TargetWidth</a>.</p>
2526<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; ResizeDescriptor descriptor;</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; descriptor.m_Method = <a class="code" href="namespacearmnn.html#a9a2af2f8c4af4f9efa8e79417d505ac4aaf17c98bbd83c27d6426d2ff3fa81d7f">ResizeMethod::Bilinear</a>;</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; descriptor.m_DataLayout = <a class="code" href="namespacearmnn.html#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">DataLayout::NCHW</a>;</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> TensorShape&amp; outputShape = output.GetShape();</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; descriptor.m_TargetHeight = outputShape[2];</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; descriptor.m_TargetWidth = outputShape[3];</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160;</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_cl_layer_support.html#a3d27a3fc6a7df0b68d80cb113aff8b6c">IsResizeSupported</a>(input, output, descriptor, reasonIfUnsupported);</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f"><div class="ttname"><a href="namespacearmnn.html#ad1d5cce2d9e9a5d61c243e5c989112e0a6b99f356fe3b30a2a850b5ea897c289f">armnn::DataLayout::NCHW</a></div></div>
2527<div class="ttc" id="classarmnn_1_1_cl_layer_support_html_a3d27a3fc6a7df0b68d80cb113aff8b6c"><div class="ttname"><a href="classarmnn_1_1_cl_layer_support.html#a3d27a3fc6a7df0b68d80cb113aff8b6c">armnn::ClLayerSupport::IsResizeSupported</a></div><div class="ttdeci">bool IsResizeSupported(const TensorInfo &amp;input, const TensorInfo &amp;output, const ResizeDescriptor &amp;descriptor, Optional&lt; std::string &amp;&gt; reasonIfUnsupported=EmptyOptional()) const override</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00655">ClLayerSupport.cpp:655</a></div></div>
2528<div class="ttc" id="namespacearmnn_html_a9a2af2f8c4af4f9efa8e79417d505ac4aaf17c98bbd83c27d6426d2ff3fa81d7f"><div class="ttname"><a href="namespacearmnn.html#a9a2af2f8c4af4f9efa8e79417d505ac4aaf17c98bbd83c27d6426d2ff3fa81d7f">armnn::ResizeMethod::Bilinear</a></div></div>
2529</div><!-- fragment -->
2530</div>
2531</div>
2532<a id="a3d27a3fc6a7df0b68d80cb113aff8b6c"></a>
2533<h2 class="memtitle"><span class="permalink"><a href="#a3d27a3fc6a7df0b68d80cb113aff8b6c">&#9670;&nbsp;</a></span>IsResizeSupported()</h2>
2534
2535<div class="memitem">
2536<div class="memproto">
2537<table class="mlabels">
2538 <tr>
2539 <td class="mlabels-left">
2540 <table class="memname">
2541 <tr>
2542 <td class="memname">bool IsResizeSupported </td>
2543 <td>(</td>
2544 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2545 <td class="paramname"><em>input</em>, </td>
2546 </tr>
2547 <tr>
2548 <td class="paramkey"></td>
2549 <td></td>
2550 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2551 <td class="paramname"><em>output</em>, </td>
2552 </tr>
2553 <tr>
2554 <td class="paramkey"></td>
2555 <td></td>
2556 <td class="paramtype">const <a class="el" href="structarmnn_1_1_resize_descriptor.html">ResizeDescriptor</a> &amp;&#160;</td>
2557 <td class="paramname"><em>descriptor</em>, </td>
2558 </tr>
2559 <tr>
2560 <td class="paramkey"></td>
2561 <td></td>
2562 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2563 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2564 </tr>
2565 <tr>
2566 <td></td>
2567 <td>)</td>
2568 <td></td><td> const</td>
2569 </tr>
2570 </table>
2571 </td>
2572 <td class="mlabels-right">
2573<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2574 </tr>
2575</table>
2576</div><div class="memdoc">
2577
2578<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a3d27a3fc6a7df0b68d80cb113aff8b6c">LayerSupportBase</a>.</p>
2579
2580<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00655">655</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2581
2582<p class="reference">References <a class="el" href="_cl_resize_workload_8cpp_source.html#l00022">armnn::ClResizeWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
2583<div class="fragment"><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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a95b187d3c6b7b46f4fbdc60be69fc02c">ClResizeWorkloadValidate</a>, reasonIfUnsupported, input, output, descriptor);</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
2584<div class="ttc" id="namespacearmnn_html_a95b187d3c6b7b46f4fbdc60be69fc02c"><div class="ttname"><a href="namespacearmnn.html#a95b187d3c6b7b46f4fbdc60be69fc02c">armnn::ClResizeWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClResizeWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const ResizeDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_resize_workload_8cpp_source.html#l00022">ClResizeWorkload.cpp:22</a></div></div>
2585</div><!-- fragment -->
2586</div>
2587</div>
2588<a id="a10ae4d84b0d31580f6fcd5107322ebcf"></a>
2589<h2 class="memtitle"><span class="permalink"><a href="#a10ae4d84b0d31580f6fcd5107322ebcf">&#9670;&nbsp;</a></span>IsRsqrtSupported()</h2>
2590
2591<div class="memitem">
2592<div class="memproto">
2593<table class="mlabels">
2594 <tr>
2595 <td class="mlabels-left">
2596 <table class="memname">
2597 <tr>
2598 <td class="memname">bool IsRsqrtSupported </td>
2599 <td>(</td>
2600 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2601 <td class="paramname"><em>input</em>, </td>
2602 </tr>
2603 <tr>
2604 <td class="paramkey"></td>
2605 <td></td>
2606 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2607 <td class="paramname"><em>output</em>, </td>
2608 </tr>
2609 <tr>
2610 <td class="paramkey"></td>
2611 <td></td>
2612 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2613 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2614 </tr>
2615 <tr>
2616 <td></td>
2617 <td>)</td>
2618 <td></td><td> const</td>
2619 </tr>
2620 </table>
2621 </td>
2622 <td class="mlabels-right">
2623<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2624 </tr>
2625</table>
2626</div><div class="memdoc">
2627
2628<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a10ae4d84b0d31580f6fcd5107322ebcf">LayerSupportBase</a>.</p>
2629
2630<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00678">678</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2631<div class="fragment"><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160;{</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; ElementwiseUnaryDescriptor descriptor(<a class="code" href="namespacearmnn.html#a1cfaa710db2a54673b21d2ea2da757c8a09bb7f6e2118c85a6a55bd4bf2beeca4">UnaryOperation::Rsqrt</a>);</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classarmnn_1_1_cl_layer_support.html#a5d99bdae7b6b2d5d1243f21cd59befb8">IsElementwiseUnarySupported</a>(input, output, descriptor, reasonIfUnsupported);</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160;}</div><div class="ttc" id="classarmnn_1_1_cl_layer_support_html_a5d99bdae7b6b2d5d1243f21cd59befb8"><div class="ttname"><a href="classarmnn_1_1_cl_layer_support.html#a5d99bdae7b6b2d5d1243f21cd59befb8">armnn::ClLayerSupport::IsElementwiseUnarySupported</a></div><div class="ttdeci">bool IsElementwiseUnarySupported(const TensorInfo &amp;input, const TensorInfo &amp;ouput, const ElementwiseUnaryDescriptor &amp;descriptor, Optional&lt; std::string &amp;&gt; reasonIfUnsupported=EmptyOptional()) const override</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00400">ClLayerSupport.cpp:400</a></div></div>
2632<div class="ttc" id="namespacearmnn_html_a1cfaa710db2a54673b21d2ea2da757c8a09bb7f6e2118c85a6a55bd4bf2beeca4"><div class="ttname"><a href="namespacearmnn.html#a1cfaa710db2a54673b21d2ea2da757c8a09bb7f6e2118c85a6a55bd4bf2beeca4">armnn::UnaryOperation::Rsqrt</a></div></div>
2633</div><!-- fragment -->
2634</div>
2635</div>
2636<a id="a0e14dafa85cfcd4a6b6b752284b51e63"></a>
2637<h2 class="memtitle"><span class="permalink"><a href="#a0e14dafa85cfcd4a6b6b752284b51e63">&#9670;&nbsp;</a></span>IsSliceSupported()</h2>
2638
2639<div class="memitem">
2640<div class="memproto">
2641<table class="mlabels">
2642 <tr>
2643 <td class="mlabels-left">
2644 <table class="memname">
2645 <tr>
2646 <td class="memname">bool IsSliceSupported </td>
2647 <td>(</td>
2648 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2649 <td class="paramname"><em>input</em>, </td>
2650 </tr>
2651 <tr>
2652 <td class="paramkey"></td>
2653 <td></td>
2654 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2655 <td class="paramname"><em>output</em>, </td>
2656 </tr>
2657 <tr>
2658 <td class="paramkey"></td>
2659 <td></td>
2660 <td class="paramtype">const <a class="el" href="structarmnn_1_1_slice_descriptor.html">SliceDescriptor</a> &amp;&#160;</td>
2661 <td class="paramname"><em>descriptor</em>, </td>
2662 </tr>
2663 <tr>
2664 <td class="paramkey"></td>
2665 <td></td>
2666 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2667 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2668 </tr>
2669 <tr>
2670 <td></td>
2671 <td>)</td>
2672 <td></td><td> const</td>
2673 </tr>
2674 </table>
2675 </td>
2676 <td class="mlabels-right">
2677<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2678 </tr>
2679</table>
2680</div><div class="memdoc">
2681
2682<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a0e14dafa85cfcd4a6b6b752284b51e63">LayerSupportBase</a>.</p>
2683
2684<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00686">686</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2685
2686<p class="reference">References <a class="el" href="_cl_slice_workload_8cpp_source.html#l00019">armnn::ClSliceWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
2687<div class="fragment"><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160;{</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a6d85d2806d0a90140832ad8113c1d350">ClSliceWorkloadValidate</a>, reasonIfUnsupported, input, output, descriptor);</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
2688<div class="ttc" id="namespacearmnn_html_a6d85d2806d0a90140832ad8113c1d350"><div class="ttname"><a href="namespacearmnn.html#a6d85d2806d0a90140832ad8113c1d350">armnn::ClSliceWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClSliceWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const SliceDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_slice_workload_8cpp_source.html#l00019">ClSliceWorkload.cpp:19</a></div></div>
2689</div><!-- fragment -->
2690</div>
2691</div>
2692<a id="a8385cf8227907904a6a86fac318fc099"></a>
2693<h2 class="memtitle"><span class="permalink"><a href="#a8385cf8227907904a6a86fac318fc099">&#9670;&nbsp;</a></span>IsSoftmaxSupported()</h2>
2694
2695<div class="memitem">
2696<div class="memproto">
2697<table class="mlabels">
2698 <tr>
2699 <td class="mlabels-left">
2700 <table class="memname">
2701 <tr>
2702 <td class="memname">bool IsSoftmaxSupported </td>
2703 <td>(</td>
2704 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2705 <td class="paramname"><em>input</em>, </td>
2706 </tr>
2707 <tr>
2708 <td class="paramkey"></td>
2709 <td></td>
2710 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2711 <td class="paramname"><em>output</em>, </td>
2712 </tr>
2713 <tr>
2714 <td class="paramkey"></td>
2715 <td></td>
2716 <td class="paramtype">const <a class="el" href="structarmnn_1_1_softmax_descriptor.html">SoftmaxDescriptor</a> &amp;&#160;</td>
2717 <td class="paramname"><em>descriptor</em>, </td>
2718 </tr>
2719 <tr>
2720 <td class="paramkey"></td>
2721 <td></td>
2722 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2723 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2724 </tr>
2725 <tr>
2726 <td></td>
2727 <td>)</td>
2728 <td></td><td> const</td>
2729 </tr>
2730 </table>
2731 </td>
2732 <td class="mlabels-right">
2733<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2734 </tr>
2735</table>
2736</div><div class="memdoc">
2737
2738<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a8385cf8227907904a6a86fac318fc099">LayerSupportBase</a>.</p>
2739
2740<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00694">694</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2741
2742<p class="reference">References <a class="el" href="_cl_softmax_base_workload_8cpp_source.html#l00016">armnn::ClSoftmaxWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
2743<div class="fragment"><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160;{</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#abc6f7e5fe77e5aed3f7842755dd34073">ClSoftmaxWorkloadValidate</a>, reasonIfUnsupported, input, output, descriptor);</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
2744<div class="ttc" id="namespacearmnn_html_abc6f7e5fe77e5aed3f7842755dd34073"><div class="ttname"><a href="namespacearmnn.html#abc6f7e5fe77e5aed3f7842755dd34073">armnn::ClSoftmaxWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClSoftmaxWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const SoftmaxDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_softmax_base_workload_8cpp_source.html#l00016">ClSoftmaxBaseWorkload.cpp:16</a></div></div>
2745</div><!-- fragment -->
2746</div>
2747</div>
2748<a id="a3adfc31e079a970e028e537ec05fabf5"></a>
2749<h2 class="memtitle"><span class="permalink"><a href="#a3adfc31e079a970e028e537ec05fabf5">&#9670;&nbsp;</a></span>IsSpaceToBatchNdSupported()</h2>
2750
2751<div class="memitem">
2752<div class="memproto">
2753<table class="mlabels">
2754 <tr>
2755 <td class="mlabels-left">
2756 <table class="memname">
2757 <tr>
2758 <td class="memname">bool IsSpaceToBatchNdSupported </td>
2759 <td>(</td>
2760 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2761 <td class="paramname"><em>input</em>, </td>
2762 </tr>
2763 <tr>
2764 <td class="paramkey"></td>
2765 <td></td>
2766 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2767 <td class="paramname"><em>output</em>, </td>
2768 </tr>
2769 <tr>
2770 <td class="paramkey"></td>
2771 <td></td>
2772 <td class="paramtype">const <a class="el" href="structarmnn_1_1_space_to_batch_nd_descriptor.html">SpaceToBatchNdDescriptor</a> &amp;&#160;</td>
2773 <td class="paramname"><em>descriptor</em>, </td>
2774 </tr>
2775 <tr>
2776 <td class="paramkey"></td>
2777 <td></td>
2778 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2779 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2780 </tr>
2781 <tr>
2782 <td></td>
2783 <td>)</td>
2784 <td></td><td> const</td>
2785 </tr>
2786 </table>
2787 </td>
2788 <td class="mlabels-right">
2789<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2790 </tr>
2791</table>
2792</div><div class="memdoc">
2793
2794<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a3adfc31e079a970e028e537ec05fabf5">LayerSupportBase</a>.</p>
2795
2796<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00702">702</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2797
2798<p class="reference">References <a class="el" href="_cl_space_to_batch_nd_workload_8cpp_source.html#l00023">armnn::ClSpaceToBatchNdWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
2799<div class="fragment"><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160;{</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a534b28fd4b345bbc938d055ff5b8970f">ClSpaceToBatchNdWorkloadValidate</a>,</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; input,</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; output,</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; descriptor);</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
2800<div class="ttc" id="namespacearmnn_html_a534b28fd4b345bbc938d055ff5b8970f"><div class="ttname"><a href="namespacearmnn.html#a534b28fd4b345bbc938d055ff5b8970f">armnn::ClSpaceToBatchNdWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClSpaceToBatchNdWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const SpaceToBatchNdDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_space_to_batch_nd_workload_8cpp_source.html#l00023">ClSpaceToBatchNdWorkload.cpp:23</a></div></div>
2801</div><!-- fragment -->
2802</div>
2803</div>
2804<a id="ab2af1e7da9490d29e569d271e16b0d5c"></a>
2805<h2 class="memtitle"><span class="permalink"><a href="#ab2af1e7da9490d29e569d271e16b0d5c">&#9670;&nbsp;</a></span>IsSpaceToDepthSupported()</h2>
2806
2807<div class="memitem">
2808<div class="memproto">
2809<table class="mlabels">
2810 <tr>
2811 <td class="mlabels-left">
2812 <table class="memname">
2813 <tr>
2814 <td class="memname">bool IsSpaceToDepthSupported </td>
2815 <td>(</td>
2816 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2817 <td class="paramname"><em>input</em>, </td>
2818 </tr>
2819 <tr>
2820 <td class="paramkey"></td>
2821 <td></td>
2822 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2823 <td class="paramname"><em>output</em>, </td>
2824 </tr>
2825 <tr>
2826 <td class="paramkey"></td>
2827 <td></td>
2828 <td class="paramtype">const <a class="el" href="structarmnn_1_1_space_to_depth_descriptor.html">SpaceToDepthDescriptor</a> &amp;&#160;</td>
2829 <td class="paramname"><em>descriptor</em>, </td>
2830 </tr>
2831 <tr>
2832 <td class="paramkey"></td>
2833 <td></td>
2834 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2835 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2836 </tr>
2837 <tr>
2838 <td></td>
2839 <td>)</td>
2840 <td></td><td> const</td>
2841 </tr>
2842 </table>
2843 </td>
2844 <td class="mlabels-right">
2845<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2846 </tr>
2847</table>
2848</div><div class="memdoc">
2849
2850<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#ab2af1e7da9490d29e569d271e16b0d5c">LayerSupportBase</a>.</p>
2851
2852<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00714">714</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2853
2854<p class="reference">References <a class="el" href="_cl_space_to_depth_workload_8cpp_source.html#l00044">armnn::ClSpaceToDepthWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
2855<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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a5f81bc4e5533cfe99932865bd102735c">ClSpaceToDepthWorkloadValidate</a>,</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; input,</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; output,</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; descriptor);</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
2856<div class="ttc" id="namespacearmnn_html_a5f81bc4e5533cfe99932865bd102735c"><div class="ttname"><a href="namespacearmnn.html#a5f81bc4e5533cfe99932865bd102735c">armnn::ClSpaceToDepthWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClSpaceToDepthWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const SpaceToDepthDescriptor &amp;desc)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_space_to_depth_workload_8cpp_source.html#l00044">ClSpaceToDepthWorkload.cpp:44</a></div></div>
2857</div><!-- fragment -->
2858</div>
2859</div>
2860<a id="a17dd12822d49a23d24198f425a6fb9c4"></a>
2861<h2 class="memtitle"><span class="permalink"><a href="#a17dd12822d49a23d24198f425a6fb9c4">&#9670;&nbsp;</a></span>IsSplitterSupported() <span class="overload">[1/2]</span></h2>
2862
2863<div class="memitem">
2864<div class="memproto">
2865<table class="mlabels">
2866 <tr>
2867 <td class="mlabels-left">
2868 <table class="memname">
2869 <tr>
2870 <td class="memname">bool IsSplitterSupported </td>
2871 <td>(</td>
2872 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2873 <td class="paramname"><em>input</em>, </td>
2874 </tr>
2875 <tr>
2876 <td class="paramkey"></td>
2877 <td></td>
2878 <td class="paramtype">const <a class="el" href="structarmnn_1_1_views_descriptor.html">ViewsDescriptor</a> &amp;&#160;</td>
2879 <td class="paramname"><em>descriptor</em>, </td>
2880 </tr>
2881 <tr>
2882 <td class="paramkey"></td>
2883 <td></td>
2884 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2885 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2886 </tr>
2887 <tr>
2888 <td></td>
2889 <td>)</td>
2890 <td></td><td> const</td>
2891 </tr>
2892 </table>
2893 </td>
2894 <td class="mlabels-right">
2895<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2896 </tr>
2897</table>
2898</div><div class="memdoc">
2899
2900<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a17dd12822d49a23d24198f425a6fb9c4">LayerSupportBase</a>.</p>
2901
2902<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00726">726</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2903
2904<p class="reference">References <a class="el" href="_tensor_8hpp_source.html#l00095">TensorInfo::GetDataType()</a>.</p>
2905<div class="fragment"><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; ignore_unused(descriptor);</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; <span class="keywordflow">return</span> IsSupportedForDataTypeCl(reasonIfUnsupported,</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; input.GetDataType(),</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; &amp;TrueFunc&lt;&gt;,</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; &amp;TrueFunc&lt;&gt;);</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160;}</div></div><!-- fragment -->
2906</div>
2907</div>
2908<a id="aa746e752ce8874669ea549f8e50896da"></a>
2909<h2 class="memtitle"><span class="permalink"><a href="#aa746e752ce8874669ea549f8e50896da">&#9670;&nbsp;</a></span>IsSplitterSupported() <span class="overload">[2/2]</span></h2>
2910
2911<div class="memitem">
2912<div class="memproto">
2913<table class="mlabels">
2914 <tr>
2915 <td class="mlabels-left">
2916 <table class="memname">
2917 <tr>
2918 <td class="memname">bool IsSplitterSupported </td>
2919 <td>(</td>
2920 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2921 <td class="paramname"><em>input</em>, </td>
2922 </tr>
2923 <tr>
2924 <td class="paramkey"></td>
2925 <td></td>
2926 <td class="paramtype">const std::vector&lt; std::reference_wrapper&lt; <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &gt;&gt; &amp;&#160;</td>
2927 <td class="paramname"><em>outputs</em>, </td>
2928 </tr>
2929 <tr>
2930 <td class="paramkey"></td>
2931 <td></td>
2932 <td class="paramtype">const <a class="el" href="structarmnn_1_1_views_descriptor.html">ViewsDescriptor</a> &amp;&#160;</td>
2933 <td class="paramname"><em>descriptor</em>, </td>
2934 </tr>
2935 <tr>
2936 <td class="paramkey"></td>
2937 <td></td>
2938 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2939 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2940 </tr>
2941 <tr>
2942 <td></td>
2943 <td>)</td>
2944 <td></td><td> const</td>
2945 </tr>
2946 </table>
2947 </td>
2948 <td class="mlabels-right">
2949<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
2950 </tr>
2951</table>
2952</div><div class="memdoc">
2953
2954<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#aa746e752ce8874669ea549f8e50896da">LayerSupportBase</a>.</p>
2955
2956<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00737">737</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
2957
2958<p class="reference">References <a class="el" href="_cl_splitter_workload_8cpp_source.html#l00031">armnn::ClSplitterWorkloadValidate()</a>, <a class="el" href="_arm_compute_utils_8hpp_source.html#l00154">armnn::ComputeSplitAxis()</a>, <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>, <a class="el" href="_descriptors_8cpp_source.html#l00292">ViewsDescriptor::GetNumDimensions()</a>, <a class="el" href="_tensor_8hpp_source.html#l00088">TensorInfo::GetShape()</a>, <a class="el" href="_tensor_8cpp_source.html#l00218">TensorInfo::IsTypeSpaceMatch()</a>, and <a class="el" href="_layer_support_common_8hpp_source.html#l00018">armnn::SetValueChecked()</a>.</p>
2959<div class="fragment"><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160;{</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160;<span class="preprocessor">#if defined(ARMCOMPUTECL_ENABLED)</span></div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; <span class="comment">// Split along the last dimension, cannot use sub-tensors</span></div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; <span class="comment">// as width and height of the sub-tensors do not match</span></div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; <span class="comment">// the width and height of the parent tensor</span></div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; <span class="comment">// in case of input with more than 2D.</span></div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; std::set&lt;unsigned int&gt; splitAxis = <a class="code" href="namespacearmnn.html#a8cbabc875597b3bed0ccdc0adb289fde">ComputeSplitAxis</a>(descriptor, input.GetShape());</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; <span class="keywordflow">if</span> (descriptor.GetNumDimensions() &gt; 2 &amp;&amp; splitAxis.size() == 1 &amp;&amp;</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; *splitAxis.begin() == descriptor.GetNumDimensions() - 1 )</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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a3ac8a60f837b19b20987e4fd238ce0cd">ClSplitterWorkloadValidate</a>,</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; input,</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; outputs,</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; *splitAxis.begin());</div><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="preprocessor">#endif</span></div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; boost::ignore_unused(descriptor);</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">auto</span> output : outputs)</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; {</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; <span class="keywordflow">if</span> (!input.IsTypeSpaceMatch(output)) <span class="comment">// Cannot use sub-tensors if the types are not same space</span></div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; {</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; <a class="code" href="namespacearmnn.html#a13c7d751e4d37f65a6d40c3c6e50d2b8">SetValueChecked</a>(reasonIfUnsupported, <span class="stringliteral">&quot;Cl Splitter: Types and quantization parameters must match.&quot;</span>);</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</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; }</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a8cbabc875597b3bed0ccdc0adb289fde"><div class="ttname"><a href="namespacearmnn.html#a8cbabc875597b3bed0ccdc0adb289fde">armnn::ComputeSplitAxis</a></div><div class="ttdeci">std::set&lt; unsigned int &gt; ComputeSplitAxis(const armnn::SplitterDescriptor &amp;desc, const TensorShape &amp;input)</div><div class="ttdef"><b>Definition:</b> <a href="_arm_compute_utils_8hpp_source.html#l00154">ArmComputeUtils.hpp:154</a></div></div>
2960<div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
2961<div class="ttc" id="namespacearmnn_html_a3ac8a60f837b19b20987e4fd238ce0cd"><div class="ttname"><a href="namespacearmnn.html#a3ac8a60f837b19b20987e4fd238ce0cd">armnn::ClSplitterWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClSplitterWorkloadValidate(const TensorInfo &amp;input, const std::vector&lt; std::reference_wrapper&lt; TensorInfo &gt;&gt; &amp;outputs, unsigned int splitAxis)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_splitter_workload_8cpp_source.html#l00031">ClSplitterWorkload.cpp:31</a></div></div>
2962<div class="ttc" id="namespacearmnn_html_a13c7d751e4d37f65a6d40c3c6e50d2b8"><div class="ttname"><a href="namespacearmnn.html#a13c7d751e4d37f65a6d40c3c6e50d2b8">armnn::SetValueChecked</a></div><div class="ttdeci">void SetValueChecked(Optional&lt; T &amp;&gt; optionalRef, V &amp;&amp;val)</div><div class="ttdef"><b>Definition:</b> <a href="_layer_support_common_8hpp_source.html#l00018">LayerSupportCommon.hpp:18</a></div></div>
2963</div><!-- fragment -->
2964</div>
2965</div>
2966<a id="ab4609f1baf5fcd295951f3c8abdffd90"></a>
2967<h2 class="memtitle"><span class="permalink"><a href="#ab4609f1baf5fcd295951f3c8abdffd90">&#9670;&nbsp;</a></span>IsStackSupported()</h2>
2968
2969<div class="memitem">
2970<div class="memproto">
2971<table class="mlabels">
2972 <tr>
2973 <td class="mlabels-left">
2974 <table class="memname">
2975 <tr>
2976 <td class="memname">bool IsStackSupported </td>
2977 <td>(</td>
2978 <td class="paramtype">const std::vector&lt; const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> *&gt; &amp;&#160;</td>
2979 <td class="paramname"><em>inputs</em>, </td>
2980 </tr>
2981 <tr>
2982 <td class="paramkey"></td>
2983 <td></td>
2984 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
2985 <td class="paramname"><em>output</em>, </td>
2986 </tr>
2987 <tr>
2988 <td class="paramkey"></td>
2989 <td></td>
2990 <td class="paramtype">const <a class="el" href="structarmnn_1_1_stack_descriptor.html">StackDescriptor</a> &amp;&#160;</td>
2991 <td class="paramname"><em>descriptor</em>, </td>
2992 </tr>
2993 <tr>
2994 <td class="paramkey"></td>
2995 <td></td>
2996 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
2997 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
2998 </tr>
2999 <tr>
3000 <td></td>
3001 <td>)</td>
3002 <td></td><td> const</td>
3003 </tr>
3004 </table>
3005 </td>
3006 <td class="mlabels-right">
3007<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
3008 </tr>
3009</table>
3010</div><div class="memdoc">
3011
3012<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#ab4609f1baf5fcd295951f3c8abdffd90">LayerSupportBase</a>.</p>
3013
3014<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00770">770</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
3015
3016<p class="reference">References <a class="el" href="_cl_stack_workload_8cpp_source.html#l00030">armnn::ClStackWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
3017<div class="fragment"><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160;{</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a8c9fec997dbb5db4cdb433c36d075782">ClStackWorkloadValidate</a>,</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; inputs,</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; output,</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; descriptor);</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
3018<div class="ttc" id="namespacearmnn_html_a8c9fec997dbb5db4cdb433c36d075782"><div class="ttname"><a href="namespacearmnn.html#a8c9fec997dbb5db4cdb433c36d075782">armnn::ClStackWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClStackWorkloadValidate(const std::vector&lt; const TensorInfo *&gt; &amp;inputs, const TensorInfo &amp;output, const StackDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_stack_workload_8cpp_source.html#l00030">ClStackWorkload.cpp:30</a></div></div>
3019</div><!-- fragment -->
3020</div>
3021</div>
3022<a id="ac054cb25099005eac854afb1511340f0"></a>
3023<h2 class="memtitle"><span class="permalink"><a href="#ac054cb25099005eac854afb1511340f0">&#9670;&nbsp;</a></span>IsStridedSliceSupported()</h2>
3024
3025<div class="memitem">
3026<div class="memproto">
3027<table class="mlabels">
3028 <tr>
3029 <td class="mlabels-left">
3030 <table class="memname">
3031 <tr>
3032 <td class="memname">bool IsStridedSliceSupported </td>
3033 <td>(</td>
3034 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
3035 <td class="paramname"><em>input</em>, </td>
3036 </tr>
3037 <tr>
3038 <td class="paramkey"></td>
3039 <td></td>
3040 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
3041 <td class="paramname"><em>output</em>, </td>
3042 </tr>
3043 <tr>
3044 <td class="paramkey"></td>
3045 <td></td>
3046 <td class="paramtype">const <a class="el" href="structarmnn_1_1_strided_slice_descriptor.html">StridedSliceDescriptor</a> &amp;&#160;</td>
3047 <td class="paramname"><em>descriptor</em>, </td>
3048 </tr>
3049 <tr>
3050 <td class="paramkey"></td>
3051 <td></td>
3052 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
3053 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
3054 </tr>
3055 <tr>
3056 <td></td>
3057 <td>)</td>
3058 <td></td><td> const</td>
3059 </tr>
3060 </table>
3061 </td>
3062 <td class="mlabels-right">
3063<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
3064 </tr>
3065</table>
3066</div><div class="memdoc">
3067
3068<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#ac054cb25099005eac854afb1511340f0">LayerSupportBase</a>.</p>
3069
3070<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00782">782</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
3071
3072<p class="reference">References <a class="el" href="_cl_strided_slice_workload_8cpp_source.html#l00026">armnn::ClStridedSliceWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
3073<div class="fragment"><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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a157e0508f6d6d08e3ca4cf6c661242e6">ClStridedSliceWorkloadValidate</a>,</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; input,</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; output,</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; descriptor);</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a157e0508f6d6d08e3ca4cf6c661242e6"><div class="ttname"><a href="namespacearmnn.html#a157e0508f6d6d08e3ca4cf6c661242e6">armnn::ClStridedSliceWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClStridedSliceWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const StridedSliceDescriptor &amp;descriptor)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_strided_slice_workload_8cpp_source.html#l00026">ClStridedSliceWorkload.cpp:26</a></div></div>
3074<div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
3075</div><!-- fragment -->
3076</div>
3077</div>
3078<a id="af6c947e4d4b25bc49d92d18d4ff26736"></a>
3079<h2 class="memtitle"><span class="permalink"><a href="#af6c947e4d4b25bc49d92d18d4ff26736">&#9670;&nbsp;</a></span>IsSubtractionSupported()</h2>
3080
3081<div class="memitem">
3082<div class="memproto">
3083<table class="mlabels">
3084 <tr>
3085 <td class="mlabels-left">
3086 <table class="memname">
3087 <tr>
3088 <td class="memname">bool IsSubtractionSupported </td>
3089 <td>(</td>
3090 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
3091 <td class="paramname"><em>input0</em>, </td>
3092 </tr>
3093 <tr>
3094 <td class="paramkey"></td>
3095 <td></td>
3096 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
3097 <td class="paramname"><em>input1</em>, </td>
3098 </tr>
3099 <tr>
3100 <td class="paramkey"></td>
3101 <td></td>
3102 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
3103 <td class="paramname"><em>output</em>, </td>
3104 </tr>
3105 <tr>
3106 <td class="paramkey"></td>
3107 <td></td>
3108 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
3109 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
3110 </tr>
3111 <tr>
3112 <td></td>
3113 <td>)</td>
3114 <td></td><td> const</td>
3115 </tr>
3116 </table>
3117 </td>
3118 <td class="mlabels-right">
3119<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
3120 </tr>
3121</table>
3122</div><div class="memdoc">
3123
3124<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#af6c947e4d4b25bc49d92d18d4ff26736">LayerSupportBase</a>.</p>
3125
3126<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00794">794</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
3127
3128<p class="reference">References <a class="el" href="_cl_subtraction_workload_8cpp_source.html#l00038">armnn::ClSubtractionValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
3129<div class="fragment"><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; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a3bbbf958387c788549b0d8481232875f">ClSubtractionValidate</a>,</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; input0,</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; input1,</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; output);</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160;}</div><div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
3130<div class="ttc" id="namespacearmnn_html_a3bbbf958387c788549b0d8481232875f"><div class="ttname"><a href="namespacearmnn.html#a3bbbf958387c788549b0d8481232875f">armnn::ClSubtractionValidate</a></div><div class="ttdeci">arm_compute::Status ClSubtractionValidate(const TensorInfo &amp;input0, const TensorInfo &amp;input1, const TensorInfo &amp;output)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_subtraction_workload_8cpp_source.html#l00038">ClSubtractionWorkload.cpp:38</a></div></div>
3131</div><!-- fragment -->
3132</div>
3133</div>
3134<a id="a0c69484f19ed650ad48b716719114e51"></a>
3135<h2 class="memtitle"><span class="permalink"><a href="#a0c69484f19ed650ad48b716719114e51">&#9670;&nbsp;</a></span>IsTransposeConvolution2dSupported()</h2>
3136
3137<div class="memitem">
3138<div class="memproto">
3139<table class="mlabels">
3140 <tr>
3141 <td class="mlabels-left">
3142 <table class="memname">
3143 <tr>
3144 <td class="memname">bool IsTransposeConvolution2dSupported </td>
3145 <td>(</td>
3146 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
3147 <td class="paramname"><em>input</em>, </td>
3148 </tr>
3149 <tr>
3150 <td class="paramkey"></td>
3151 <td></td>
3152 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
3153 <td class="paramname"><em>output</em>, </td>
3154 </tr>
3155 <tr>
3156 <td class="paramkey"></td>
3157 <td></td>
3158 <td class="paramtype">const <a class="el" href="structarmnn_1_1_transpose_convolution2d_descriptor.html">TransposeConvolution2dDescriptor</a> &amp;&#160;</td>
3159 <td class="paramname"><em>descriptor</em>, </td>
3160 </tr>
3161 <tr>
3162 <td class="paramkey"></td>
3163 <td></td>
3164 <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &amp;&#160;</td>
3165 <td class="paramname"><em>weights</em>, </td>
3166 </tr>
3167 <tr>
3168 <td class="paramkey"></td>
3169 <td></td>
3170 <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; <a class="el" href="classarmnn_1_1_tensor_info.html">TensorInfo</a> &gt; &amp;&#160;</td>
3171 <td class="paramname"><em>biases</em>, </td>
3172 </tr>
3173 <tr>
3174 <td class="paramkey"></td>
3175 <td></td>
3176 <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; std::string &amp;&gt;&#160;</td>
3177 <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>()</code>&#160;</td>
3178 </tr>
3179 <tr>
3180 <td></td>
3181 <td>)</td>
3182 <td></td><td> const</td>
3183 </tr>
3184 </table>
3185 </td>
3186 <td class="mlabels-right">
3187<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
3188 </tr>
3189</table>
3190</div><div class="memdoc">
3191
3192<p>Reimplemented from <a class="el" href="classarmnn_1_1_layer_support_base.html#a0c69484f19ed650ad48b716719114e51">LayerSupportBase</a>.</p>
3193
3194<p class="definition">Definition at line <a class="el" href="_cl_layer_support_8cpp_source.html#l00806">806</a> of file <a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a>.</p>
3195
3196<p class="reference">References <a class="el" href="_cl_transpose_convolution2d_workload_8cpp_source.html#l00026">armnn::ClTransposeConvolution2dWorkloadValidate()</a>, and <a class="el" href="_cl_layer_support_8cpp_source.html#l00126">FORWARD_WORKLOAD_VALIDATE_FUNC</a>.</p>
3197<div class="fragment"><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160;{</div><div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160; <a class="code" href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a>(<a class="code" href="namespacearmnn.html#a719ea81939d6a25f8636b52c59165d66">ClTransposeConvolution2dWorkloadValidate</a>,</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160; reasonIfUnsupported,</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160; input,</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; output,</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; descriptor,</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; weights,</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; biases);</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160;}</div><div class="ttc" id="namespacearmnn_html_a719ea81939d6a25f8636b52c59165d66"><div class="ttname"><a href="namespacearmnn.html#a719ea81939d6a25f8636b52c59165d66">armnn::ClTransposeConvolution2dWorkloadValidate</a></div><div class="ttdeci">arm_compute::Status ClTransposeConvolution2dWorkloadValidate(const TensorInfo &amp;input, const TensorInfo &amp;output, const TransposeConvolution2dDescriptor &amp;descriptor, const TensorInfo &amp;weights, const Optional&lt; TensorInfo &gt; &amp;biases)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_transpose_convolution2d_workload_8cpp_source.html#l00026">ClTransposeConvolution2dWorkload.cpp:26</a></div></div>
3198<div class="ttc" id="_cl_layer_support_8cpp_html_af0383f6bb43d6d5df6f3265367b6ebf9"><div class="ttname"><a href="_cl_layer_support_8cpp.html#af0383f6bb43d6d5df6f3265367b6ebf9">FORWARD_WORKLOAD_VALIDATE_FUNC</a></div><div class="ttdeci">#define FORWARD_WORKLOAD_VALIDATE_FUNC(func, reasonIfUnsupported,...)</div><div class="ttdef"><b>Definition:</b> <a href="_cl_layer_support_8cpp_source.html#l00126">ClLayerSupport.cpp:126</a></div></div>
3199</div><!-- fragment -->
3200</div>
3201</div>
3202<hr/>The documentation for this class was generated from the following files:<ul>
3203<li>src/backends/cl/<a class="el" href="_cl_layer_support_8hpp_source.html">ClLayerSupport.hpp</a></li>
3204<li>src/backends/cl/<a class="el" href="_cl_layer_support_8cpp_source.html">ClLayerSupport.cpp</a></li>
3205</ul>
3206</div><!-- contents -->
3207</div><!-- doc-content -->
3208<!-- start footer part -->
3209<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
3210 <ul>
3211 <li class="navelem"><a class="el" href="namespacearmnn.html">armnn</a></li><li class="navelem"><a class="el" href="classarmnn_1_1_cl_layer_support.html">ClLayerSupport</a></li>
3212 <li class="footer">Generated on Fri Mar 13 2020 16:07:02 for ArmNN by
3213 <a href="http://www.doxygen.org/index.html">
3214 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
3215 </ul>
3216</div>
3217</body>
3218</html>