diff options
author | Nikhil Raj <nikhil.raj@arm.com> | 2021-11-17 13:16:45 +0000 |
---|---|---|
committer | Nikhil Raj <nikhil.raj@arm.com> | 2021-11-17 13:16:45 +0000 |
commit | 9aed8fb43441228343b925b42464a55042c47ca0 (patch) | |
tree | 4c34534eea1c8e82655ac1f60e3633b9618cc40d /21.11/classarmnn_1_1_layer_support_base.xhtml | |
parent | f86be93b7492b381370cae7bf71eca8572a0cbae (diff) | |
download | armnn-9aed8fb43441228343b925b42464a55042c47ca0.tar.gz |
IVGCVSW-6040 Update 21.11 Doxygen Documents
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: Ia36ec98c4bebc27a69103911ea3409cd7db587a5
Diffstat (limited to '21.11/classarmnn_1_1_layer_support_base.xhtml')
-rw-r--r-- | 21.11/classarmnn_1_1_layer_support_base.xhtml | 4257 |
1 files changed, 4257 insertions, 0 deletions
diff --git a/21.11/classarmnn_1_1_layer_support_base.xhtml b/21.11/classarmnn_1_1_layer_support_base.xhtml new file mode 100644 index 0000000000..6ebd38976d --- /dev/null +++ b/21.11/classarmnn_1_1_layer_support_base.xhtml @@ -0,0 +1,4257 @@ +<!-- Copyright (c) 2020 ARM Limited. --> +<!-- --> +<!-- SPDX-License-Identifier: MIT --> +<!-- --> +<!-- HTML header for doxygen 1.8.13--> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> +<meta http-equiv="X-UA-Compatible" content="IE=9"/> +<meta name="generator" content="Doxygen 1.8.13"/> +<meta name="robots" content="NOINDEX, NOFOLLOW" /> +<meta name="viewport" content="width=device-width, initial-scale=1"/> +<title>ArmNN: LayerSupportBase Class Reference</title> +<link href="tabs.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="jquery.js"></script> +<script type="text/javascript" src="dynsections.js"></script> +<link href="navtree.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="resize.js"></script> +<script type="text/javascript" src="navtreedata.js"></script> +<script type="text/javascript" src="navtree.js"></script> +<script type="text/javascript"> + $(document).ready(initResizable); +</script> +<link href="search/search.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="search/searchdata.js"></script> +<script type="text/javascript" src="search/search.js"></script> +<script type="text/x-mathjax-config"> + MathJax.Hub.Config({ + extensions: ["tex2jax.js"], + jax: ["input/TeX","output/HTML-CSS"], +}); +</script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script> +<link href="doxygen.css" rel="stylesheet" type="text/css" /> +<link href="stylesheet.css" rel="stylesheet" type="text/css"/> +</head> +<body> +<div id="top"><!-- do not remove this div, it is closed by doxygen! --> +<div id="titlearea"> +<table cellspacing="0" cellpadding="0"> + <tbody> + <tr style="height: 56px;"> + <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 10rem; margin-top: .5rem; margin-left 10px"/> + <td style="padding-left: 0.5em;"> + <div id="projectname"> +  <span id="projectnumber">21.11</span> + </div> + </td> + </tr> + </tbody> +</table> +</div> +<!-- end header part --> +<!-- Generated by Doxygen 1.8.13 --> +<script type="text/javascript"> +var searchBox = new SearchBox("searchBox", "search",false,'Search'); +</script> +<script type="text/javascript" src="menudata.js"></script> +<script type="text/javascript" src="menu.js"></script> +<script type="text/javascript"> +$(function() { + initMenu('',true,false,'search.php','Search'); + $(document).ready(function() { init_search(); }); +}); +</script> +<div id="main-nav"></div> +</div><!-- top --> +<div id="side-nav" class="ui-resizable side-nav-resizable"> + <div id="nav-tree"> + <div id="nav-tree-contents"> + <div id="nav-sync" class="sync"></div> + </div> + </div> + <div id="splitbar" style="-moz-user-select:none;" + class="ui-resizable-handle"> + </div> +</div> +<script type="text/javascript"> +$(document).ready(function(){initNavTree('classarmnn_1_1_layer_support_base.xhtml','');}); +</script> +<div id="doc-content"> +<!-- window showing the filter options --> +<div id="MSearchSelectWindow" + onmouseover="return searchBox.OnSearchSelectShow()" + onmouseout="return searchBox.OnSearchSelectHide()" + onkeydown="return searchBox.OnSearchSelectKey(event)"> +</div> + +<!-- iframe showing the search results (closed by default) --> +<div id="MSearchResultsWindow"> +<iframe src="javascript:void(0)" frameborder="0" + name="MSearchResults" id="MSearchResults"> +</iframe> +</div> + +<div class="header"> + <div class="summary"> +<a href="#pub-methods">Public Member Functions</a> | +<a href="classarmnn_1_1_layer_support_base-members.xhtml">List of all members</a> </div> + <div class="headertitle"> +<div class="title">LayerSupportBase Class Reference</div> </div> +</div><!--header--> +<div class="contents"> + +<p><code>#include <<a class="el" href="_layer_support_base_8hpp_source.xhtml">LayerSupportBase.hpp</a>></code></p> +<div class="dynheader"> +Inheritance diagram for LayerSupportBase:</div> +<div class="dyncontent"> + <div class="center"> + <img src="classarmnn_1_1_layer_support_base.png" usemap="#LayerSupportBase_map" alt=""/> + <map id="LayerSupportBase_map" name="LayerSupportBase_map"> +<area href="classarmnn_1_1_i_layer_support.xhtml" alt="ILayerSupport" shape="rect" coords="472,0,651,24"/> +<area href="classarmnn_1_1_cl_layer_support.xhtml" alt="ClLayerSupport" shape="rect" coords="0,112,179,136"/> +<area href="classarmnn_1_1_mock_import_layer_support.xhtml" alt="MockImportLayerSupport" shape="rect" coords="189,112,368,136"/> +<area href="classarmnn_1_1_mock_layer_support.xhtml" alt="MockLayerSupport" shape="rect" coords="378,112,557,136"/> +<area href="classarmnn_1_1_neon_layer_support.xhtml" alt="NeonLayerSupport" shape="rect" coords="567,112,746,136"/> +<area href="classarmnn_1_1_ref_layer_support.xhtml" alt="RefLayerSupport" shape="rect" coords="756,112,935,136"/> +<area href="classsdb_1_1_sample_dynamic_layer_support.xhtml" alt="SampleDynamicLayerSupport" shape="rect" coords="945,112,1124,136"/> +</map> + </div></div> +<table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> +Public Member Functions</h2></td></tr> +<tr class="memitem:ab3adb3a28736529682e4ff0ea976dcd3"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#ab3adb3a28736529682e4ff0ea976dcd3">IsActivationSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_activation_descriptor.xhtml">ActivationDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:ab3adb3a28736529682e4ff0ea976dcd3"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a48177e22e47448adb3d83e145dadf735"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a48177e22e47448adb3d83e145dadf735">IsAdditionSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input0, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input1, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a48177e22e47448adb3d83e145dadf735"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0f4841f89f21fd794786b4c03c2425fd"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a0f4841f89f21fd794786b4c03c2425fd">IsArgMinMaxSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_arg_min_max_descriptor.xhtml">ArgMinMaxDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a0f4841f89f21fd794786b4c03c2425fd"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a67c970dd054b991e14369de523ca3a5a"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a67c970dd054b991e14369de523ca3a5a">IsBatchNormalizationSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &mean, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &var, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &beta, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &gamma, const <a class="el" href="structarmnn_1_1_batch_normalization_descriptor.xhtml">BatchNormalizationDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a67c970dd054b991e14369de523ca3a5a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:adc5695cc25f4055c7ed54bdc8604a098"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#adc5695cc25f4055c7ed54bdc8604a098">IsBatchToSpaceNdSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_batch_to_space_nd_descriptor.xhtml">BatchToSpaceNdDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:adc5695cc25f4055c7ed54bdc8604a098"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ae18f598a589683c3094a7bb41dcd3a3e"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#ae18f598a589683c3094a7bb41dcd3a3e">IsCastSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:ae18f598a589683c3094a7bb41dcd3a3e"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a6f1cae30d95bbd28dbac2a570c26c5f7"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a6f1cae30d95bbd28dbac2a570c26c5f7">IsChannelShuffleSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_channel_shuffle_descriptor.xhtml">ChannelShuffleDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a6f1cae30d95bbd28dbac2a570c26c5f7"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a7c52726a684dd76258c61af124012537"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a7c52726a684dd76258c61af124012537">IsComparisonSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input0, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input1, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_comparison_descriptor.xhtml">ComparisonDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a7c52726a684dd76258c61af124012537"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a1542179a03961e3635bb5bef993c8e0e"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a1542179a03961e3635bb5bef993c8e0e">IsConcatSupported</a> (const std::vector< const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> *> inputs, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_origins_descriptor.xhtml">OriginsDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a1542179a03961e3635bb5bef993c8e0e"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:adf18c4fa8fc9e0cdae1967990aa90fe8"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#adf18c4fa8fc9e0cdae1967990aa90fe8">IsConstantSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:adf18c4fa8fc9e0cdae1967990aa90fe8"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ad330b6e7dcf25410ea878af0557f2197"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#ad330b6e7dcf25410ea878af0557f2197">IsConvertBf16ToFp32Supported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:ad330b6e7dcf25410ea878af0557f2197"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a1efcaf6f02892442fefca09f49ea3d7c"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a1efcaf6f02892442fefca09f49ea3d7c">IsConvertFp16ToFp32Supported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a1efcaf6f02892442fefca09f49ea3d7c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0947498c6cc747db6219a22132a1b89a"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a0947498c6cc747db6219a22132a1b89a">IsConvertFp32ToBf16Supported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a0947498c6cc747db6219a22132a1b89a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a91fb5f44d8b9427dc45443aa9ebfe13e"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a91fb5f44d8b9427dc45443aa9ebfe13e">IsConvertFp32ToFp16Supported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a91fb5f44d8b9427dc45443aa9ebfe13e"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:af7ff06bd8115a6a9cc6d41e5c762798e"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#af7ff06bd8115a6a9cc6d41e5c762798e">IsConvolution2dSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.xhtml">Convolution2dDescriptor</a> &descriptor, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &weights, const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> > &biases, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:af7ff06bd8115a6a9cc6d41e5c762798e"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a052f289a5b4e48bb2b50c732753e2cfa"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a052f289a5b4e48bb2b50c732753e2cfa">IsConvolution3dSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_convolution3d_descriptor.xhtml">Convolution3dDescriptor</a> &descriptor, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &weights, const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> > &biases, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a052f289a5b4e48bb2b50c732753e2cfa"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a87a66c5e87a19534ce3e6c374c9b8f09"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a87a66c5e87a19534ce3e6c374c9b8f09">IsDebugSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a87a66c5e87a19534ce3e6c374c9b8f09"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a128fb9890897e08251a3f621e570cd23"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a128fb9890897e08251a3f621e570cd23">IsDepthToSpaceSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="namespacearmnn.xhtml#a3647f60510bc8ddaced01c51b0ee8714">DepthToSpaceDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a128fb9890897e08251a3f621e570cd23"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:adc84390751f227fe03a115b5fa10b0fc"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#adc84390751f227fe03a115b5fa10b0fc">IsDepthwiseConvolutionSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml">DepthwiseConvolution2dDescriptor</a> &descriptor, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &weights, const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> > &biases, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:adc84390751f227fe03a115b5fa10b0fc"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a2e89c72cf60df7c2d2d7e5d98822b672"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a2e89c72cf60df7c2d2d7e5d98822b672">IsDequantizeSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a2e89c72cf60df7c2d2d7e5d98822b672"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a50af275d7755a5bb1be69736d7e4b02f"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a50af275d7755a5bb1be69736d7e4b02f">IsDetectionPostProcessSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &boxEncodings, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &scores, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &anchors, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &detectionBoxes, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &detectionClasses, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &detectionScores, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &numDetections, const <a class="el" href="structarmnn_1_1_detection_post_process_descriptor.xhtml">DetectionPostProcessDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a50af275d7755a5bb1be69736d7e4b02f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a55d91a97ff664f42cd5cd62b60c15f80"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a55d91a97ff664f42cd5cd62b60c15f80">IsDilatedDepthwiseConvolutionSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml">DepthwiseConvolution2dDescriptor</a> &descriptor, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &weights, const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> > &biases, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a55d91a97ff664f42cd5cd62b60c15f80"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a08f55136b1f0907e7083d70d719f697f"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a08f55136b1f0907e7083d70d719f697f">IsDivisionSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input0, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input1, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a08f55136b1f0907e7083d70d719f697f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a61c5b4e5dc224ef0c876e43353b34030"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a61c5b4e5dc224ef0c876e43353b34030">IsElementwiseUnarySupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_elementwise_unary_descriptor.xhtml">ElementwiseUnaryDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a61c5b4e5dc224ef0c876e43353b34030"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aab7318aa8adc0a8a3b6a1780cfc1f90b"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#aab7318aa8adc0a8a3b6a1780cfc1f90b">IsFakeQuantizationSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="structarmnn_1_1_fake_quantization_descriptor.xhtml">FakeQuantizationDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:aab7318aa8adc0a8a3b6a1780cfc1f90b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:acc5d9a4c8f29984de3bbdca87684f317"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#acc5d9a4c8f29984de3bbdca87684f317">IsFillSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_fill_descriptor.xhtml">FillDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:acc5d9a4c8f29984de3bbdca87684f317"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a53c7593d1aa26207eac5d5814a9d56dc"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a53c7593d1aa26207eac5d5814a9d56dc">IsFloorSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a53c7593d1aa26207eac5d5814a9d56dc"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aeaf971dd9dffd6f6bc7e5a1ae6b6af5c"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#aeaf971dd9dffd6f6bc7e5a1ae6b6af5c">IsFullyConnectedSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &weights, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &biases, const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.xhtml">FullyConnectedDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:aeaf971dd9dffd6f6bc7e5a1ae6b6af5c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a2f51fda38409c3768a7bd28cedf3f075"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a2f51fda38409c3768a7bd28cedf3f075">IsGatherSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input0, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input1, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_gather_descriptor.xhtml">GatherDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a2f51fda38409c3768a7bd28cedf3f075"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ad29d99ecd719c640ed22dcf5c688c6a5"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#ad29d99ecd719c640ed22dcf5c688c6a5">IsInputSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:ad29d99ecd719c640ed22dcf5c688c6a5"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0813546a09bf2caba6794014d1960624"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a0813546a09bf2caba6794014d1960624">IsInstanceNormalizationSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_instance_normalization_descriptor.xhtml">InstanceNormalizationDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a0813546a09bf2caba6794014d1960624"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aca4acda7ab553edfda828658d8f3882b"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#aca4acda7ab553edfda828658d8f3882b">IsL2NormalizationSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_l2_normalization_descriptor.xhtml">L2NormalizationDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:aca4acda7ab553edfda828658d8f3882b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a8fab6937a1010b5ed674b930b4f143cb"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a8fab6937a1010b5ed674b930b4f143cb">IsLogicalBinarySupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input0, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input1, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_logical_binary_descriptor.xhtml">LogicalBinaryDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a8fab6937a1010b5ed674b930b4f143cb"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a20134883695508a2192eecd403e7c44b"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a20134883695508a2192eecd403e7c44b">IsLogicalUnarySupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_elementwise_unary_descriptor.xhtml">ElementwiseUnaryDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a20134883695508a2192eecd403e7c44b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aa0380b797cb9932fb03067dbe2cdecfb"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#aa0380b797cb9932fb03067dbe2cdecfb">IsLogSoftmaxSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="namespacearmnn.xhtml#ac14705405cbcdd580df613de6766fe65">LogSoftmaxDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:aa0380b797cb9932fb03067dbe2cdecfb"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a862535721737220f62a49f14ff494dd5"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a862535721737220f62a49f14ff494dd5">IsLstmSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &outputStateIn, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &cellStateIn, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &scratchBuffer, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &outputStateOut, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &cellStateOut, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_lstm_descriptor.xhtml">LstmDescriptor</a> &descriptor, const <a class="el" href="structarmnn_1_1_lstm_input_params_info.xhtml">LstmInputParamsInfo</a> &paramsInfo, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a862535721737220f62a49f14ff494dd5"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:afef9436c86b37b973471f2ae546ac00a"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#afef9436c86b37b973471f2ae546ac00a">IsMaximumSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input0, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input1, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:afef9436c86b37b973471f2ae546ac00a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ab268618580d4f53bf5e9b5a47dee3f6a"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#ab268618580d4f53bf5e9b5a47dee3f6a">IsMeanSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_mean_descriptor.xhtml">MeanDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:ab268618580d4f53bf5e9b5a47dee3f6a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a9d25fabf725313fda40a41400155bafe"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a9d25fabf725313fda40a41400155bafe">IsMemCopySupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a9d25fabf725313fda40a41400155bafe"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a334181d8098b943d03ccd820753ace75"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a334181d8098b943d03ccd820753ace75">IsMemImportSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a334181d8098b943d03ccd820753ace75"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aa9bbc383cac59d6f02d2ef7d2cc0076f"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#aa9bbc383cac59d6f02d2ef7d2cc0076f">IsMergeSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input0, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input1, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:aa9bbc383cac59d6f02d2ef7d2cc0076f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a3d0eafb3de560b3482f857b56b2b2116"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a3d0eafb3de560b3482f857b56b2b2116">IsMinimumSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input0, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input1, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a3d0eafb3de560b3482f857b56b2b2116"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a421e1f3865d99d52613003048342c49a"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a421e1f3865d99d52613003048342c49a">IsMultiplicationSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input0, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input1, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a421e1f3865d99d52613003048342c49a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a994c2065561141bf37fcd2ff7bb4af4d"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a994c2065561141bf37fcd2ff7bb4af4d">IsNormalizationSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_normalization_descriptor.xhtml">NormalizationDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a994c2065561141bf37fcd2ff7bb4af4d"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aef3244c0ef64c8f2f352d21ce0c06985"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#aef3244c0ef64c8f2f352d21ce0c06985">IsOutputSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:aef3244c0ef64c8f2f352d21ce0c06985"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0534291adf9f3436ba331552eba29a43"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a0534291adf9f3436ba331552eba29a43">IsPadSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_pad_descriptor.xhtml">PadDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a0534291adf9f3436ba331552eba29a43"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a9d553495d9a94fa55588ae159d8bda30"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a9d553495d9a94fa55588ae159d8bda30">IsPermuteSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_permute_descriptor.xhtml">PermuteDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a9d553495d9a94fa55588ae159d8bda30"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aa955675303d67b1d1fb51fb7f09d8c21"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#aa955675303d67b1d1fb51fb7f09d8c21">IsPooling2dSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_pooling2d_descriptor.xhtml">Pooling2dDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:aa955675303d67b1d1fb51fb7f09d8c21"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:adc1a598f2f572564818e3d343af93486"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#adc1a598f2f572564818e3d343af93486">IsPreCompiledSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="structarmnn_1_1_pre_compiled_descriptor.xhtml">PreCompiledDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:adc1a598f2f572564818e3d343af93486"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a93cf81b28c4275a338f41c536a451158"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a93cf81b28c4275a338f41c536a451158">IsPreluSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &alpha, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported) const override</td></tr> +<tr class="separator:a93cf81b28c4275a338f41c536a451158"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ad2c7be6b84b04444e514f52f593b3df7"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#ad2c7be6b84b04444e514f52f593b3df7">IsQuantizeSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:ad2c7be6b84b04444e514f52f593b3df7"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:adf54bcad228c0ac21f6735d31460cf31"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#adf54bcad228c0ac21f6735d31460cf31">IsQLstmSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &previousOutputIn, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &previousCellStateIn, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &outputStateOut, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &cellStateOut, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_q_lstm_descriptor.xhtml">QLstmDescriptor</a> &descriptor, const <a class="el" href="structarmnn_1_1_lstm_input_params_info.xhtml">LstmInputParamsInfo</a> &paramsInfo, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:adf54bcad228c0ac21f6735d31460cf31"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:af1be52d9f968bfab069344756bf232c4"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#af1be52d9f968bfab069344756bf232c4">IsQuantizedLstmSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &previousCellStateIn, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &previousOutputIn, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &cellStateOut, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_quantized_lstm_input_params_info.xhtml">QuantizedLstmInputParamsInfo</a> &paramsInfo, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:af1be52d9f968bfab069344756bf232c4"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a707638bc045d261dff4faaf4a2acc72b"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a707638bc045d261dff4faaf4a2acc72b">IsRankSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported) const override</td></tr> +<tr class="separator:a707638bc045d261dff4faaf4a2acc72b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a917c126e64314263b8b5f7bca455ddfb"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a917c126e64314263b8b5f7bca455ddfb">IsReduceSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_reduce_descriptor.xhtml">ReduceDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a917c126e64314263b8b5f7bca455ddfb"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aa02f01bbcb48c67f5b2efc4132ec5e86"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#aa02f01bbcb48c67f5b2efc4132ec5e86">IsReshapeSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_reshape_descriptor.xhtml">ReshapeDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:aa02f01bbcb48c67f5b2efc4132ec5e86"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a3d27a3fc6a7df0b68d80cb113aff8b6c"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a3d27a3fc6a7df0b68d80cb113aff8b6c">IsResizeSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_resize_descriptor.xhtml">ResizeDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a3d27a3fc6a7df0b68d80cb113aff8b6c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a3c6816950ad290155bde03b7fb31e160"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a3c6816950ad290155bde03b7fb31e160">IsShapeSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a3c6816950ad290155bde03b7fb31e160"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0e14dafa85cfcd4a6b6b752284b51e63"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a0e14dafa85cfcd4a6b6b752284b51e63">IsSliceSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_slice_descriptor.xhtml">SliceDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a0e14dafa85cfcd4a6b6b752284b51e63"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a8385cf8227907904a6a86fac318fc099"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a8385cf8227907904a6a86fac318fc099">IsSoftmaxSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_softmax_descriptor.xhtml">SoftmaxDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a8385cf8227907904a6a86fac318fc099"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a3adfc31e079a970e028e537ec05fabf5"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a3adfc31e079a970e028e537ec05fabf5">IsSpaceToBatchNdSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_space_to_batch_nd_descriptor.xhtml">SpaceToBatchNdDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a3adfc31e079a970e028e537ec05fabf5"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ab2af1e7da9490d29e569d271e16b0d5c"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#ab2af1e7da9490d29e569d271e16b0d5c">IsSpaceToDepthSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_space_to_depth_descriptor.xhtml">SpaceToDepthDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:ab2af1e7da9490d29e569d271e16b0d5c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aa746e752ce8874669ea549f8e50896da"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#aa746e752ce8874669ea549f8e50896da">IsSplitterSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const std::vector< std::reference_wrapper< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> >> &outputs, const <a class="el" href="structarmnn_1_1_views_descriptor.xhtml">ViewsDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:aa746e752ce8874669ea549f8e50896da"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ab4609f1baf5fcd295951f3c8abdffd90"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#ab4609f1baf5fcd295951f3c8abdffd90">IsStackSupported</a> (const std::vector< const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> *> &inputs, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_stack_descriptor.xhtml">StackDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:ab4609f1baf5fcd295951f3c8abdffd90"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a68a4c180fc48e266995db8596f6279d3"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a68a4c180fc48e266995db8596f6279d3">IsStandInSupported</a> (const std::vector< const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> *> &inputs, const std::vector< const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> *> &outputs, const <a class="el" href="structarmnn_1_1_stand_in_descriptor.xhtml">StandInDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a68a4c180fc48e266995db8596f6279d3"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ac054cb25099005eac854afb1511340f0"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#ac054cb25099005eac854afb1511340f0">IsStridedSliceSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_strided_slice_descriptor.xhtml">StridedSliceDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:ac054cb25099005eac854afb1511340f0"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:af6c947e4d4b25bc49d92d18d4ff26736"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#af6c947e4d4b25bc49d92d18d4ff26736">IsSubtractionSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input0, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input1, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:af6c947e4d4b25bc49d92d18d4ff26736"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a8c12a49b0d261836c11a57916e01805d"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a8c12a49b0d261836c11a57916e01805d">IsSwitchSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input0, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input1, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output0, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output1, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a8c12a49b0d261836c11a57916e01805d"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0c69484f19ed650ad48b716719114e51"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a0c69484f19ed650ad48b716719114e51">IsTransposeConvolution2dSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_transpose_convolution2d_descriptor.xhtml">TransposeConvolution2dDescriptor</a> &descriptor, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &weights, const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> > &biases, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a0c69484f19ed650ad48b716719114e51"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0189645f33641b280877a1b2f6ba9fee"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#a0189645f33641b280877a1b2f6ba9fee">IsTransposeSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="structarmnn_1_1_transpose_descriptor.xhtml">TransposeDescriptor</a> &descriptor, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:a0189645f33641b280877a1b2f6ba9fee"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aceff0e3aa5ba49b0fdcfc66f2bd31b5c"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml#aceff0e3aa5ba49b0fdcfc66f2bd31b5c">IsUnidirectionalSequenceLstmSupported</a> (const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &input, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &outputStateIn, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &cellStateIn, const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> &output, const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> > &hiddenStateOutput, const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> > &cellStateOutput, const <a class="el" href="structarmnn_1_1_lstm_descriptor.xhtml">LstmDescriptor</a> &descriptor, const <a class="el" href="structarmnn_1_1_lstm_input_params_info.xhtml">LstmInputParamsInfo</a> &paramsInfo, <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> reasonIfUnsupported=<a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()) const override</td></tr> +<tr class="separator:aceff0e3aa5ba49b0fdcfc66f2bd31b5c"><td class="memSeparator" colspan="2"> </td></tr> +</table><table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a> +Additional Inherited Members</h2></td></tr> +<tr class="inherit_header 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="-"/> Protected Member Functions inherited from <a class="el" href="classarmnn_1_1_i_layer_support.xhtml">ILayerSupport</a></td></tr> +<tr class="memitem:aab2a487bc88047443d8a0f87c3c40b8d inherit pro_methods_classarmnn_1_1_i_layer_support"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_i_layer_support.xhtml#aab2a487bc88047443d8a0f87c3c40b8d">ILayerSupport</a> ()</td></tr> +<tr class="separator:aab2a487bc88047443d8a0f87c3c40b8d inherit pro_methods_classarmnn_1_1_i_layer_support"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a9e7f4f28576904804cd759e49173beeb inherit pro_methods_classarmnn_1_1_i_layer_support"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a9e7f4f28576904804cd759e49173beeb">~ILayerSupport</a> ()</td></tr> +<tr class="separator:a9e7f4f28576904804cd759e49173beeb inherit pro_methods_classarmnn_1_1_i_layer_support"><td class="memSeparator" colspan="2"> </td></tr> +</table> +<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> +<div class="textblock"> +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8hpp_source.xhtml#l00013">13</a> of file <a class="el" href="_layer_support_base_8hpp_source.xhtml">LayerSupportBase.hpp</a>.</p> +</div><h2 class="groupheader">Member Function Documentation</h2> +<a id="ab3adb3a28736529682e4ff0ea976dcd3"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ab3adb3a28736529682e4ff0ea976dcd3">◆ </a></span>IsActivationSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsActivationSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_activation_descriptor.xhtml">ActivationDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a787fcb2a22d45abc7b75644fd1c45743">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#ab3adb3a28736529682e4ff0ea976dcd3">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#ab3adb3a28736529682e4ff0ea976dcd3">ClLayerSupport</a>, and <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#ab3adb3a28736529682e4ff0ea976dcd3">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00040">40</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00044"></a><span class="lineno"> 44</span> {</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a48177e22e47448adb3d83e145dadf735"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a48177e22e47448adb3d83e145dadf735">◆ </a></span>IsAdditionSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsAdditionSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input0</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input1</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a09e005510eccbbfa14bed9205c27523a">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_mock_layer_support.xhtml#a7eff21a4ed5128387ad7683ba89b61ad">MockLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a48177e22e47448adb3d83e145dadf735">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a48177e22e47448adb3d83e145dadf735">ClLayerSupport</a>, <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a48177e22e47448adb3d83e145dadf735">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_mock_import_layer_support.xhtml#a48177e22e47448adb3d83e145dadf735">MockImportLayerSupport</a>, and <a class="el" href="classsdb_1_1_sample_dynamic_layer_support.xhtml#a941ad65e8bbba9bda7e96805c1d6999c">SampleDynamicLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00048">48</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00052"></a><span class="lineno"> 52</span> {</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a0f4841f89f21fd794786b4c03c2425fd"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a0f4841f89f21fd794786b4c03c2425fd">◆ </a></span>IsArgMinMaxSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsArgMinMaxSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_arg_min_max_descriptor.xhtml">ArgMinMaxDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#afb1f9c150c3705ccdff06d3bda0f705d">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a0f4841f89f21fd794786b4c03c2425fd">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a0f4841f89f21fd794786b4c03c2425fd">ClLayerSupport</a>, and <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a0f4841f89f21fd794786b4c03c2425fd">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00056">56</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00060"></a><span class="lineno"> 60</span> {</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a67c970dd054b991e14369de523ca3a5a"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a67c970dd054b991e14369de523ca3a5a">◆ </a></span>IsBatchNormalizationSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsBatchNormalizationSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>mean</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>var</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>beta</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>gamma</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_batch_normalization_descriptor.xhtml">BatchNormalizationDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a3ebfb6e31ffd51c948ebf4e668ee6a13">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a67c970dd054b991e14369de523ca3a5a">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a67c970dd054b991e14369de523ca3a5a">ClLayerSupport</a>, and <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a67c970dd054b991e14369de523ca3a5a">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00064">64</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00072"></a><span class="lineno"> 72</span> {</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="adc5695cc25f4055c7ed54bdc8604a098"></a> +<h2 class="memtitle"><span class="permalink"><a href="#adc5695cc25f4055c7ed54bdc8604a098">◆ </a></span>IsBatchToSpaceNdSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsBatchToSpaceNdSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_batch_to_space_nd_descriptor.xhtml">BatchToSpaceNdDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a3a2d1bd9f4db345c6e8cbebe507e1220">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#adc5695cc25f4055c7ed54bdc8604a098">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#adc5695cc25f4055c7ed54bdc8604a098">ClLayerSupport</a>, and <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#adc5695cc25f4055c7ed54bdc8604a098">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00076">76</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00080"></a><span class="lineno"> 80</span> {</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="ae18f598a589683c3094a7bb41dcd3a3e"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ae18f598a589683c3094a7bb41dcd3a3e">◆ </a></span>IsCastSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsCastSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#ae26f93e4cf5936a15e91f354741f9751">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#ae18f598a589683c3094a7bb41dcd3a3e">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#ae18f598a589683c3094a7bb41dcd3a3e">ClLayerSupport</a>, and <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#ae18f598a589683c3094a7bb41dcd3a3e">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00084">84</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00087"></a><span class="lineno"> 87</span> {</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a6f1cae30d95bbd28dbac2a570c26c5f7"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a6f1cae30d95bbd28dbac2a570c26c5f7">◆ </a></span>IsChannelShuffleSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsChannelShuffleSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_channel_shuffle_descriptor.xhtml">ChannelShuffleDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a3f97ee2a1fefb86249657ffda23ca096">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a6f1cae30d95bbd28dbac2a570c26c5f7">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a6f1cae30d95bbd28dbac2a570c26c5f7">ClLayerSupport</a>, and <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a6f1cae30d95bbd28dbac2a570c26c5f7">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00091">91</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00095"></a><span class="lineno"> 95</span> {</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a7c52726a684dd76258c61af124012537"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a7c52726a684dd76258c61af124012537">◆ </a></span>IsComparisonSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsComparisonSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input0</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input1</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_comparison_descriptor.xhtml">ComparisonDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#aa9e12845869a571af314feb775bfcf8d">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a7c52726a684dd76258c61af124012537">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#ad16b29b7f1c73187775e7b1d044d7bc0">ClLayerSupport</a>, and <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a7c52726a684dd76258c61af124012537">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00099">99</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00104"></a><span class="lineno"> 104</span> {</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a1542179a03961e3635bb5bef993c8e0e"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a1542179a03961e3635bb5bef993c8e0e">◆ </a></span>IsConcatSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsConcatSupported </td> + <td>(</td> + <td class="paramtype">const std::vector< const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> *> </td> + <td class="paramname"><em>inputs</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_origins_descriptor.xhtml">OriginsDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a48bb43166dd8d7a27428a19738c73e54">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a3dca8ffbcb5f3afa1799aa7d354a3016">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a3dca8ffbcb5f3afa1799aa7d354a3016">ClLayerSupport</a>, and <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a3dca8ffbcb5f3afa1799aa7d354a3016">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00108">108</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00112"></a><span class="lineno"> 112</span> {</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="adf18c4fa8fc9e0cdae1967990aa90fe8"></a> +<h2 class="memtitle"><span class="permalink"><a href="#adf18c4fa8fc9e0cdae1967990aa90fe8">◆ </a></span>IsConstantSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsConstantSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a7e62e57c8c2b25d2b8b657d6c1bedfce">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#adf18c4fa8fc9e0cdae1967990aa90fe8">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#adf18c4fa8fc9e0cdae1967990aa90fe8">ClLayerSupport</a>, and <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#adf18c4fa8fc9e0cdae1967990aa90fe8">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00116">116</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00118"></a><span class="lineno"> 118</span> {</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="ad330b6e7dcf25410ea878af0557f2197"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ad330b6e7dcf25410ea878af0557f2197">◆ </a></span>IsConvertBf16ToFp32Supported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsConvertBf16ToFp32Supported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a64feb74ff84d2b289c088e4ed2f3dbcd">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#ad330b6e7dcf25410ea878af0557f2197">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#ad330b6e7dcf25410ea878af0557f2197">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00122">122</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00125"></a><span class="lineno"> 125</span> {</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a1efcaf6f02892442fefca09f49ea3d7c"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a1efcaf6f02892442fefca09f49ea3d7c">◆ </a></span>IsConvertFp16ToFp32Supported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsConvertFp16ToFp32Supported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a585d0743307644154123b0081c9fddbb">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a1efcaf6f02892442fefca09f49ea3d7c">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a1efcaf6f02892442fefca09f49ea3d7c">ClLayerSupport</a>, and <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a1efcaf6f02892442fefca09f49ea3d7c">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00129">129</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00132"></a><span class="lineno"> 132</span> {</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a0947498c6cc747db6219a22132a1b89a"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a0947498c6cc747db6219a22132a1b89a">◆ </a></span>IsConvertFp32ToBf16Supported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsConvertFp32ToBf16Supported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#af6308f7e194cb757a0782b88b3f3916a">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a0947498c6cc747db6219a22132a1b89a">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a0947498c6cc747db6219a22132a1b89a">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00136">136</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00139"></a><span class="lineno"> 139</span> {</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a91fb5f44d8b9427dc45443aa9ebfe13e"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a91fb5f44d8b9427dc45443aa9ebfe13e">◆ </a></span>IsConvertFp32ToFp16Supported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsConvertFp32ToFp16Supported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#aeacc3d08bdf5c5190a2b6d219e28620f">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a91fb5f44d8b9427dc45443aa9ebfe13e">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a91fb5f44d8b9427dc45443aa9ebfe13e">RefLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a91fb5f44d8b9427dc45443aa9ebfe13e">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00144">144</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00147"></a><span class="lineno"> 147</span> {</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="af7ff06bd8115a6a9cc6d41e5c762798e"></a> +<h2 class="memtitle"><span class="permalink"><a href="#af7ff06bd8115a6a9cc6d41e5c762798e">◆ </a></span>IsConvolution2dSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsConvolution2dSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_convolution2d_descriptor.xhtml">Convolution2dDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>weights</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> > & </td> + <td class="paramname"><em>biases</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a0e8af0ce614d9a30c7398e1aa786d468">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_mock_layer_support.xhtml#ad2e357f943588b241aaa34c9436e716e">MockLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#af7ff06bd8115a6a9cc6d41e5c762798e">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#af7ff06bd8115a6a9cc6d41e5c762798e">RefLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#af7ff06bd8115a6a9cc6d41e5c762798e">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00151">151</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00157"></a><span class="lineno"> 157</span> {</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a052f289a5b4e48bb2b50c732753e2cfa"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a052f289a5b4e48bb2b50c732753e2cfa">◆ </a></span>IsConvolution3dSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsConvolution3dSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_convolution3d_descriptor.xhtml">Convolution3dDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>weights</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> > & </td> + <td class="paramname"><em>biases</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a3df6e19240396c6e428a1d84a3d0ba34">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a052f289a5b4e48bb2b50c732753e2cfa">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a052f289a5b4e48bb2b50c732753e2cfa">RefLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a052f289a5b4e48bb2b50c732753e2cfa">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00161">161</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00167"></a><span class="lineno"> 167</span> {</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a87a66c5e87a19534ce3e6c374c9b8f09"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a87a66c5e87a19534ce3e6c374c9b8f09">◆ </a></span>IsDebugSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsDebugSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a0ec5e547fe4b097ad19b6992e23e267d">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a87a66c5e87a19534ce3e6c374c9b8f09">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00171">171</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00174"></a><span class="lineno"> 174</span> {</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a128fb9890897e08251a3f621e570cd23"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a128fb9890897e08251a3f621e570cd23">◆ </a></span>IsDepthToSpaceSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsDepthToSpaceSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#a3647f60510bc8ddaced01c51b0ee8714">DepthToSpaceDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#ada2ab8d017b73994f8cdc38c29e0fb60">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a128fb9890897e08251a3f621e570cd23">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a128fb9890897e08251a3f621e570cd23">RefLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a128fb9890897e08251a3f621e570cd23">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00178">178</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00182"></a><span class="lineno"> 182</span> {</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="adc84390751f227fe03a115b5fa10b0fc"></a> +<h2 class="memtitle"><span class="permalink"><a href="#adc84390751f227fe03a115b5fa10b0fc">◆ </a></span>IsDepthwiseConvolutionSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsDepthwiseConvolutionSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml">DepthwiseConvolution2dDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>weights</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> > & </td> + <td class="paramname"><em>biases</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a38078f04a0521624c71262291252dedd">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#adc84390751f227fe03a115b5fa10b0fc">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#adc84390751f227fe03a115b5fa10b0fc">RefLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#adc84390751f227fe03a115b5fa10b0fc">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00186">186</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00192"></a><span class="lineno"> 192</span> {</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a2e89c72cf60df7c2d2d7e5d98822b672"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a2e89c72cf60df7c2d2d7e5d98822b672">◆ </a></span>IsDequantizeSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsDequantizeSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#aeff699f129c41cdd7b4a49569aa4fffb">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a2e89c72cf60df7c2d2d7e5d98822b672">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a2e89c72cf60df7c2d2d7e5d98822b672">RefLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a2e89c72cf60df7c2d2d7e5d98822b672">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00196">196</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00199"></a><span class="lineno"> 199</span> {</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a50af275d7755a5bb1be69736d7e4b02f"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a50af275d7755a5bb1be69736d7e4b02f">◆ </a></span>IsDetectionPostProcessSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsDetectionPostProcessSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>boxEncodings</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>scores</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>anchors</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>detectionBoxes</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>detectionClasses</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>detectionScores</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>numDetections</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_detection_post_process_descriptor.xhtml">DetectionPostProcessDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a1aecac7de9b71cfaaadecda47edc56c0">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a50af275d7755a5bb1be69736d7e4b02f">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00203">203</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00212"></a><span class="lineno"> 212</span> {</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a55d91a97ff664f42cd5cd62b60c15f80"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a55d91a97ff664f42cd5cd62b60c15f80">◆ </a></span>IsDilatedDepthwiseConvolutionSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsDilatedDepthwiseConvolutionSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_depthwise_convolution2d_descriptor.xhtml">DepthwiseConvolution2dDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>weights</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> > & </td> + <td class="paramname"><em>biases</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a4bee87b6d7a78ee4a3d6cecc7ad8a77a">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a55d91a97ff664f42cd5cd62b60c15f80">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a16c8cd49a7fa487b904b5c9cc83673e7">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a16c8cd49a7fa487b904b5c9cc83673e7">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00216">216</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00222"></a><span class="lineno"> 222</span> {</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a08f55136b1f0907e7083d70d719f697f"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a08f55136b1f0907e7083d70d719f697f">◆ </a></span>IsDivisionSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsDivisionSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input0</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input1</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#aca2cc0ccc6a468bc5374fa2839258802">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a08f55136b1f0907e7083d70d719f697f">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a08f55136b1f0907e7083d70d719f697f">RefLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a08f55136b1f0907e7083d70d719f697f">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00226">226</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00230"></a><span class="lineno"> 230</span> {</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a61c5b4e5dc224ef0c876e43353b34030"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a61c5b4e5dc224ef0c876e43353b34030">◆ </a></span>IsElementwiseUnarySupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsElementwiseUnarySupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_elementwise_unary_descriptor.xhtml">ElementwiseUnaryDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a4a6603d415b4e963cacd9ede220b8119">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a61c5b4e5dc224ef0c876e43353b34030">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a61c5b4e5dc224ef0c876e43353b34030">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a5d99bdae7b6b2d5d1243f21cd59befb8">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00234">234</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00238"></a><span class="lineno"> 238</span> {</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="aab7318aa8adc0a8a3b6a1780cfc1f90b"></a> +<h2 class="memtitle"><span class="permalink"><a href="#aab7318aa8adc0a8a3b6a1780cfc1f90b">◆ </a></span>IsFakeQuantizationSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsFakeQuantizationSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_fake_quantization_descriptor.xhtml">FakeQuantizationDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#aa467d4de09eb4bd51e02122fb3d6e7c0">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#aab7318aa8adc0a8a3b6a1780cfc1f90b">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00242">242</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00245"></a><span class="lineno"> 245</span> {</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="acc5d9a4c8f29984de3bbdca87684f317"></a> +<h2 class="memtitle"><span class="permalink"><a href="#acc5d9a4c8f29984de3bbdca87684f317">◆ </a></span>IsFillSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsFillSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_fill_descriptor.xhtml">FillDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a2fc14db765754af18a4724e678720b7b">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#acc5d9a4c8f29984de3bbdca87684f317">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#acc5d9a4c8f29984de3bbdca87684f317">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#acc5d9a4c8f29984de3bbdca87684f317">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00249">249</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00253"></a><span class="lineno"> 253</span> {</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a53c7593d1aa26207eac5d5814a9d56dc"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a53c7593d1aa26207eac5d5814a9d56dc">◆ </a></span>IsFloorSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsFloorSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a0683efc6cc81f888eccab0c637674f7a">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a53c7593d1aa26207eac5d5814a9d56dc">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a53c7593d1aa26207eac5d5814a9d56dc">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a53c7593d1aa26207eac5d5814a9d56dc">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00257">257</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00260"></a><span class="lineno"> 260</span> {</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="aeaf971dd9dffd6f6bc7e5a1ae6b6af5c"></a> +<h2 class="memtitle"><span class="permalink"><a href="#aeaf971dd9dffd6f6bc7e5a1ae6b6af5c">◆ </a></span>IsFullyConnectedSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsFullyConnectedSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>weights</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>biases</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_fully_connected_descriptor.xhtml">FullyConnectedDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#af5f8d5b50e69b8003357895450ee57bd">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#aeaf971dd9dffd6f6bc7e5a1ae6b6af5c">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#aeaf971dd9dffd6f6bc7e5a1ae6b6af5c">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#aeaf971dd9dffd6f6bc7e5a1ae6b6af5c">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00264">264</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00270"></a><span class="lineno"> 270</span> {</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a2f51fda38409c3768a7bd28cedf3f075"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a2f51fda38409c3768a7bd28cedf3f075">◆ </a></span>IsGatherSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsGatherSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input0</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input1</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_gather_descriptor.xhtml">GatherDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#abd9c6124747e300449bff6287d96cd73">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a2f51fda38409c3768a7bd28cedf3f075">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a5e8fbdda1125eb5e22f14eacbe9fb351">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a5e8fbdda1125eb5e22f14eacbe9fb351">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00274">274</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00279"></a><span class="lineno"> 279</span> {</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="ad29d99ecd719c640ed22dcf5c688c6a5"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ad29d99ecd719c640ed22dcf5c688c6a5">◆ </a></span>IsInputSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsInputSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a302869e220458e13c7e82c2671e5280c">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_mock_layer_support.xhtml#a005f361b64a45d4e3fe6bff24697048c">MockLayerSupport</a>, <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#ad29d99ecd719c640ed22dcf5c688c6a5">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#ad29d99ecd719c640ed22dcf5c688c6a5">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#ad29d99ecd719c640ed22dcf5c688c6a5">ClLayerSupport</a>, <a class="el" href="classarmnn_1_1_mock_import_layer_support.xhtml#a49cf9ce84cb5e9624ad15ae1e78f9380">MockImportLayerSupport</a>, and <a class="el" href="classsdb_1_1_sample_dynamic_layer_support.xhtml#ac700e1056f8bc863563a7aeb0f0265fd">SampleDynamicLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00283">283</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00285"></a><span class="lineno"> 285</span> {</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a0813546a09bf2caba6794014d1960624"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a0813546a09bf2caba6794014d1960624">◆ </a></span>IsInstanceNormalizationSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsInstanceNormalizationSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_instance_normalization_descriptor.xhtml">InstanceNormalizationDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a7e16e155e7f7445789e68424a9a870c5">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a0813546a09bf2caba6794014d1960624">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a0813546a09bf2caba6794014d1960624">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a0813546a09bf2caba6794014d1960624">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00289">289</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00293"></a><span class="lineno"> 293</span> {</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="aca4acda7ab553edfda828658d8f3882b"></a> +<h2 class="memtitle"><span class="permalink"><a href="#aca4acda7ab553edfda828658d8f3882b">◆ </a></span>IsL2NormalizationSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsL2NormalizationSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_l2_normalization_descriptor.xhtml">L2NormalizationDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#af189848668211807688a56aac54978bf">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#aca4acda7ab553edfda828658d8f3882b">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#aca4acda7ab553edfda828658d8f3882b">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#aca4acda7ab553edfda828658d8f3882b">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00297">297</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00301"></a><span class="lineno"> 301</span> {</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a8fab6937a1010b5ed674b930b4f143cb"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a8fab6937a1010b5ed674b930b4f143cb">◆ </a></span>IsLogicalBinarySupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsLogicalBinarySupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input0</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input1</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_logical_binary_descriptor.xhtml">LogicalBinaryDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a91bb1a44f9d05a4d6a4c6fedbf596c06">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a772790c60d70814e30b5bec70fd98776">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a772790c60d70814e30b5bec70fd98776">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a772790c60d70814e30b5bec70fd98776">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00305">305</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00310"></a><span class="lineno"> 310</span> {</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a20134883695508a2192eecd403e7c44b"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a20134883695508a2192eecd403e7c44b">◆ </a></span>IsLogicalUnarySupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsLogicalUnarySupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_elementwise_unary_descriptor.xhtml">ElementwiseUnaryDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a9a6774ab8ad711b7fc48b8372279b3fc">ILayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00314">314</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00318"></a><span class="lineno"> 318</span> {</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="aa0380b797cb9932fb03067dbe2cdecfb"></a> +<h2 class="memtitle"><span class="permalink"><a href="#aa0380b797cb9932fb03067dbe2cdecfb">◆ </a></span>IsLogSoftmaxSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsLogSoftmaxSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="namespacearmnn.xhtml#ac14705405cbcdd580df613de6766fe65">LogSoftmaxDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#ab5d791a3bc50549b3805a982bf4959d8">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a6d414f4983a5ca9596d84e340e6fd895">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#aa0380b797cb9932fb03067dbe2cdecfb">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#aa0380b797cb9932fb03067dbe2cdecfb">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00322">322</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00326"></a><span class="lineno"> 326</span> {</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a862535721737220f62a49f14ff494dd5"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a862535721737220f62a49f14ff494dd5">◆ </a></span>IsLstmSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsLstmSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>outputStateIn</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>cellStateIn</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>scratchBuffer</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>outputStateOut</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>cellStateOut</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_lstm_descriptor.xhtml">LstmDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_lstm_input_params_info.xhtml">LstmInputParamsInfo</a> & </td> + <td class="paramname"><em>paramsInfo</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a5942cec16b5719b59c4e80bc8be90342">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a862535721737220f62a49f14ff494dd5">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a862535721737220f62a49f14ff494dd5">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a862535721737220f62a49f14ff494dd5">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00330">330</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00340"></a><span class="lineno"> 340</span> {</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="afef9436c86b37b973471f2ae546ac00a"></a> +<h2 class="memtitle"><span class="permalink"><a href="#afef9436c86b37b973471f2ae546ac00a">◆ </a></span>IsMaximumSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsMaximumSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input0</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input1</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#aeeb17ef5763db43063b6e98d0a692e1f">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#afef9436c86b37b973471f2ae546ac00a">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#afef9436c86b37b973471f2ae546ac00a">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#afef9436c86b37b973471f2ae546ac00a">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00344">344</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00348"></a><span class="lineno"> 348</span> {</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="ab268618580d4f53bf5e9b5a47dee3f6a"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ab268618580d4f53bf5e9b5a47dee3f6a">◆ </a></span>IsMeanSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsMeanSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_mean_descriptor.xhtml">MeanDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a4fc33395e8e392ba59eedcb721dc6d3d">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#ab268618580d4f53bf5e9b5a47dee3f6a">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#ab268618580d4f53bf5e9b5a47dee3f6a">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#ab268618580d4f53bf5e9b5a47dee3f6a">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00352">352</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00356"></a><span class="lineno"> 356</span> {</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a9d25fabf725313fda40a41400155bafe"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a9d25fabf725313fda40a41400155bafe">◆ </a></span>IsMemCopySupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsMemCopySupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#aef4d9a4b703b1a15558633b5802c663b">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a9d25fabf725313fda40a41400155bafe">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00360">360</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00363"></a><span class="lineno"> 363</span> {</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a334181d8098b943d03ccd820753ace75"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a334181d8098b943d03ccd820753ace75">◆ </a></span>IsMemImportSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsMemImportSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#af0cb232661c1e1bf9d253f396b6b4f4c">ILayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00367">367</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00370"></a><span class="lineno"> 370</span> {</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="aa9bbc383cac59d6f02d2ef7d2cc0076f"></a> +<h2 class="memtitle"><span class="permalink"><a href="#aa9bbc383cac59d6f02d2ef7d2cc0076f">◆ </a></span>IsMergeSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsMergeSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input0</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input1</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#ad30162aa20f5484d48982537fdd42a04">ILayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00374">374</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00378"></a><span class="lineno"> 378</span> {</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a3d0eafb3de560b3482f857b56b2b2116"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a3d0eafb3de560b3482f857b56b2b2116">◆ </a></span>IsMinimumSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsMinimumSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input0</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input1</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a76e472f67b857c5619c1751e0cd20a5c">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a3d0eafb3de560b3482f857b56b2b2116">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a3d0eafb3de560b3482f857b56b2b2116">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a3d0eafb3de560b3482f857b56b2b2116">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00382">382</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00386"></a><span class="lineno"> 386</span> {</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a421e1f3865d99d52613003048342c49a"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a421e1f3865d99d52613003048342c49a">◆ </a></span>IsMultiplicationSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsMultiplicationSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input0</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input1</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#aacb0b7d0aa3b7c495981f3e7ae6108e5">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a421e1f3865d99d52613003048342c49a">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a421e1f3865d99d52613003048342c49a">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a421e1f3865d99d52613003048342c49a">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00390">390</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00394"></a><span class="lineno"> 394</span> {</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a994c2065561141bf37fcd2ff7bb4af4d"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a994c2065561141bf37fcd2ff7bb4af4d">◆ </a></span>IsNormalizationSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsNormalizationSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_normalization_descriptor.xhtml">NormalizationDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a09beb238888a3795a11e28b2f439a2c7">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a994c2065561141bf37fcd2ff7bb4af4d">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a994c2065561141bf37fcd2ff7bb4af4d">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a994c2065561141bf37fcd2ff7bb4af4d">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00398">398</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00402"></a><span class="lineno"> 402</span> {</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="aef3244c0ef64c8f2f352d21ce0c06985"></a> +<h2 class="memtitle"><span class="permalink"><a href="#aef3244c0ef64c8f2f352d21ce0c06985">◆ </a></span>IsOutputSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsOutputSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a3852eb9f8af92ee3dc7ddcbb3590d9e2">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#aef3244c0ef64c8f2f352d21ce0c06985">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#aef3244c0ef64c8f2f352d21ce0c06985">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#aef3244c0ef64c8f2f352d21ce0c06985">ClLayerSupport</a>, <a class="el" href="classarmnn_1_1_mock_layer_support.xhtml#ad407693360ac4e742adb5ec76f84a948">MockLayerSupport</a>, <a class="el" href="classarmnn_1_1_mock_import_layer_support.xhtml#a204bfa8f305f067b488e9c384c1ccd32">MockImportLayerSupport</a>, and <a class="el" href="classsdb_1_1_sample_dynamic_layer_support.xhtml#ad0e86b8bcd1e2f43c0d686bb17115c39">SampleDynamicLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00406">406</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00408"></a><span class="lineno"> 408</span> {</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a0534291adf9f3436ba331552eba29a43"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a0534291adf9f3436ba331552eba29a43">◆ </a></span>IsPadSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsPadSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_pad_descriptor.xhtml">PadDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a521e7f59a1ca7699c5182245fb52fb68">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a0534291adf9f3436ba331552eba29a43">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a0534291adf9f3436ba331552eba29a43">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a0534291adf9f3436ba331552eba29a43">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00412">412</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00416"></a><span class="lineno"> 416</span> {</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a9d553495d9a94fa55588ae159d8bda30"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a9d553495d9a94fa55588ae159d8bda30">◆ </a></span>IsPermuteSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsPermuteSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_permute_descriptor.xhtml">PermuteDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#aaa4433e57a90fc106e9ca227cbf21acc">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a9d553495d9a94fa55588ae159d8bda30">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a9d553495d9a94fa55588ae159d8bda30">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a9d553495d9a94fa55588ae159d8bda30">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00420">420</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00424"></a><span class="lineno"> 424</span> {</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="aa955675303d67b1d1fb51fb7f09d8c21"></a> +<h2 class="memtitle"><span class="permalink"><a href="#aa955675303d67b1d1fb51fb7f09d8c21">◆ </a></span>IsPooling2dSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsPooling2dSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_pooling2d_descriptor.xhtml">Pooling2dDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a7d355424568d0383d53da623d88e4002">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#aa955675303d67b1d1fb51fb7f09d8c21">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#aa955675303d67b1d1fb51fb7f09d8c21">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#aa955675303d67b1d1fb51fb7f09d8c21">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00428">428</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00432"></a><span class="lineno"> 432</span> {</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="adc1a598f2f572564818e3d343af93486"></a> +<h2 class="memtitle"><span class="permalink"><a href="#adc1a598f2f572564818e3d343af93486">◆ </a></span>IsPreCompiledSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsPreCompiledSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_pre_compiled_descriptor.xhtml">PreCompiledDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a645dc9fbc6b5da2c9b3124eea544044e">ILayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00436">436</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00439"></a><span class="lineno"> 439</span> {</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a93cf81b28c4275a338f41c536a451158"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a93cf81b28c4275a338f41c536a451158">◆ </a></span>IsPreluSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsPreluSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>alpha</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a8356620b4723ae24b897940a44cca12e">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a4b36dcedd5edbd5142b3548967aadc2f">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a4b36dcedd5edbd5142b3548967aadc2f">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a4b36dcedd5edbd5142b3548967aadc2f">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00443">443</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00447"></a><span class="lineno"> 447</span> {</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="adf54bcad228c0ac21f6735d31460cf31"></a> +<h2 class="memtitle"><span class="permalink"><a href="#adf54bcad228c0ac21f6735d31460cf31">◆ </a></span>IsQLstmSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsQLstmSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>previousOutputIn</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>previousCellStateIn</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>outputStateOut</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>cellStateOut</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_q_lstm_descriptor.xhtml">QLstmDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_lstm_input_params_info.xhtml">LstmInputParamsInfo</a> & </td> + <td class="paramname"><em>paramsInfo</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a9ff96df741a96f76dec45a4f119d9f29">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#adf54bcad228c0ac21f6735d31460cf31">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#adf54bcad228c0ac21f6735d31460cf31">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#adf54bcad228c0ac21f6735d31460cf31">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00458">458</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00467"></a><span class="lineno"> 467</span> {</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="af1be52d9f968bfab069344756bf232c4"></a> +<h2 class="memtitle"><span class="permalink"><a href="#af1be52d9f968bfab069344756bf232c4">◆ </a></span>IsQuantizedLstmSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsQuantizedLstmSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>previousCellStateIn</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>previousOutputIn</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>cellStateOut</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_quantized_lstm_input_params_info.xhtml">QuantizedLstmInputParamsInfo</a> & </td> + <td class="paramname"><em>paramsInfo</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#acbd0bc4ae2c7dafaa43a1f4558dec9e9">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a281eb6ce87b6ca147e681dd3f6483a87">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#af1be52d9f968bfab069344756bf232c4">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00471">471</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00478"></a><span class="lineno"> 478</span> {</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="ad2c7be6b84b04444e514f52f593b3df7"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ad2c7be6b84b04444e514f52f593b3df7">◆ </a></span>IsQuantizeSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsQuantizeSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a2e700405a95007bf3cdcfee4edd5faf6">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#ad2c7be6b84b04444e514f52f593b3df7">NeonLayerSupport</a>, <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#ad2c7be6b84b04444e514f52f593b3df7">RefLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#ad2c7be6b84b04444e514f52f593b3df7">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00451">451</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00454"></a><span class="lineno"> 454</span> {</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a707638bc045d261dff4faaf4a2acc72b"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a707638bc045d261dff4faaf4a2acc72b">◆ </a></span>IsRankSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsRankSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#aabe9e99096ebc1e0ac3231ae19f45d58">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#ae106544a060930a518ae0a003a3e9a64">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00482">482</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00485"></a><span class="lineno"> 485</span> {</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a917c126e64314263b8b5f7bca455ddfb"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a917c126e64314263b8b5f7bca455ddfb">◆ </a></span>IsReduceSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsReduceSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_reduce_descriptor.xhtml">ReduceDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a7058dbce479bec37843a972e0bc4f1e5">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a917c126e64314263b8b5f7bca455ddfb">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a917c126e64314263b8b5f7bca455ddfb">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a917c126e64314263b8b5f7bca455ddfb">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00489">489</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00493"></a><span class="lineno"> 493</span> {</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="aa02f01bbcb48c67f5b2efc4132ec5e86"></a> +<h2 class="memtitle"><span class="permalink"><a href="#aa02f01bbcb48c67f5b2efc4132ec5e86">◆ </a></span>IsReshapeSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsReshapeSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_reshape_descriptor.xhtml">ReshapeDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a5b4e5775549210130fda73dbf9ff5805">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#aa02f01bbcb48c67f5b2efc4132ec5e86">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#aa02f01bbcb48c67f5b2efc4132ec5e86">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#aa02f01bbcb48c67f5b2efc4132ec5e86">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00497">497</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00501"></a><span class="lineno"> 501</span> {</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a3d27a3fc6a7df0b68d80cb113aff8b6c"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a3d27a3fc6a7df0b68d80cb113aff8b6c">◆ </a></span>IsResizeSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsResizeSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_resize_descriptor.xhtml">ResizeDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a139c7fa3f4d25a1f8e63c4db26ed882a">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a3d27a3fc6a7df0b68d80cb113aff8b6c">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a3d27a3fc6a7df0b68d80cb113aff8b6c">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a3d27a3fc6a7df0b68d80cb113aff8b6c">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00505">505</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00509"></a><span class="lineno"> 509</span> {</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a3c6816950ad290155bde03b7fb31e160"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a3c6816950ad290155bde03b7fb31e160">◆ </a></span>IsShapeSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsShapeSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a6f0a2a44b9994418ab59814f0b105c30">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a3c6816950ad290155bde03b7fb31e160">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00513">513</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00516"></a><span class="lineno"> 516</span> {</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a0e14dafa85cfcd4a6b6b752284b51e63"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a0e14dafa85cfcd4a6b6b752284b51e63">◆ </a></span>IsSliceSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsSliceSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_slice_descriptor.xhtml">SliceDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a5176e7f87f418561082d8c6310215cf7">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a0e14dafa85cfcd4a6b6b752284b51e63">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a0e14dafa85cfcd4a6b6b752284b51e63">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a0e14dafa85cfcd4a6b6b752284b51e63">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00520">520</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00524"></a><span class="lineno"> 524</span> {</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a8385cf8227907904a6a86fac318fc099"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a8385cf8227907904a6a86fac318fc099">◆ </a></span>IsSoftmaxSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsSoftmaxSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_softmax_descriptor.xhtml">SoftmaxDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a0653b070e13f6003314ff70c83dfdf82">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a8385cf8227907904a6a86fac318fc099">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a8385cf8227907904a6a86fac318fc099">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a8385cf8227907904a6a86fac318fc099">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00528">528</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00532"></a><span class="lineno"> 532</span> {</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a3adfc31e079a970e028e537ec05fabf5"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a3adfc31e079a970e028e537ec05fabf5">◆ </a></span>IsSpaceToBatchNdSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsSpaceToBatchNdSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_space_to_batch_nd_descriptor.xhtml">SpaceToBatchNdDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a72900e5d5a48a3f5bab04b9bc53ad4cb">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a3adfc31e079a970e028e537ec05fabf5">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a3adfc31e079a970e028e537ec05fabf5">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a3adfc31e079a970e028e537ec05fabf5">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00536">536</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00540"></a><span class="lineno"> 540</span> {</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="ab2af1e7da9490d29e569d271e16b0d5c"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ab2af1e7da9490d29e569d271e16b0d5c">◆ </a></span>IsSpaceToDepthSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsSpaceToDepthSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_space_to_depth_descriptor.xhtml">SpaceToDepthDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#aad5b9a346998e69ce24668f474e8a41f">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#ab2af1e7da9490d29e569d271e16b0d5c">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#ab2af1e7da9490d29e569d271e16b0d5c">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#ab2af1e7da9490d29e569d271e16b0d5c">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00544">544</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00548"></a><span class="lineno"> 548</span> {</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="aa746e752ce8874669ea549f8e50896da"></a> +<h2 class="memtitle"><span class="permalink"><a href="#aa746e752ce8874669ea549f8e50896da">◆ </a></span>IsSplitterSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsSplitterSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const std::vector< std::reference_wrapper< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> >> & </td> + <td class="paramname"><em>outputs</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_views_descriptor.xhtml">ViewsDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#ac2a17ba940c5ae8718306929c4fbcc49">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#aa746e752ce8874669ea549f8e50896da">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#aa746e752ce8874669ea549f8e50896da">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#aa746e752ce8874669ea549f8e50896da">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00552">552</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00556"></a><span class="lineno"> 556</span> {</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="ab4609f1baf5fcd295951f3c8abdffd90"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ab4609f1baf5fcd295951f3c8abdffd90">◆ </a></span>IsStackSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsStackSupported </td> + <td>(</td> + <td class="paramtype">const std::vector< const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> *> & </td> + <td class="paramname"><em>inputs</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_stack_descriptor.xhtml">StackDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a3c875cde7fb98d33b415361653fe170e">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#ab4609f1baf5fcd295951f3c8abdffd90">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#ab4609f1baf5fcd295951f3c8abdffd90">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#ab4609f1baf5fcd295951f3c8abdffd90">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00560">560</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00564"></a><span class="lineno"> 564</span> {</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a68a4c180fc48e266995db8596f6279d3"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a68a4c180fc48e266995db8596f6279d3">◆ </a></span>IsStandInSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsStandInSupported </td> + <td>(</td> + <td class="paramtype">const std::vector< const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> *> & </td> + <td class="paramname"><em>inputs</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const std::vector< const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> *> & </td> + <td class="paramname"><em>outputs</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_stand_in_descriptor.xhtml">StandInDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#ab44a343d43671032ae1395b06508ac36">ILayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00568">568</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> + +<p class="reference">References <a class="el" href="_optional_8hpp_source.xhtml#l00146">OptionalReferenceSwitch< std::is_reference< T >::value, T >::value()</a>.</p> +<div class="fragment"><div class="line"><a name="l00572"></a><span class="lineno"> 572</span> {</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>  <span class="keywordflow">if</span> (reasonIfUnsupported)</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>  {</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>  std::stringstream message;</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>  message << <span class="stringliteral">"StandIn layer is not executable via backends"</span>;</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span> </div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>  reasonIfUnsupported.value() = message.str();</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>  }</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span> </div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="ac054cb25099005eac854afb1511340f0"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ac054cb25099005eac854afb1511340f0">◆ </a></span>IsStridedSliceSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsStridedSliceSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_strided_slice_descriptor.xhtml">StridedSliceDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#aec35c53952d13100216d2a2b9f63b98c">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#ac054cb25099005eac854afb1511340f0">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#ac054cb25099005eac854afb1511340f0">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#ac054cb25099005eac854afb1511340f0">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00584">584</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00588"></a><span class="lineno"> 588</span> {</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="af6c947e4d4b25bc49d92d18d4ff26736"></a> +<h2 class="memtitle"><span class="permalink"><a href="#af6c947e4d4b25bc49d92d18d4ff26736">◆ </a></span>IsSubtractionSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsSubtractionSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input0</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input1</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#af76dce64a3338e037bb8eb41e5a219aa">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#af6c947e4d4b25bc49d92d18d4ff26736">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#af6c947e4d4b25bc49d92d18d4ff26736">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#af6c947e4d4b25bc49d92d18d4ff26736">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00592">592</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00596"></a><span class="lineno"> 596</span> {</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a8c12a49b0d261836c11a57916e01805d"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a8c12a49b0d261836c11a57916e01805d">◆ </a></span>IsSwitchSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsSwitchSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input0</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input1</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output0</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output1</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#af05157bd75bb2a7a3a942be85945321a">ILayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00600">600</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00605"></a><span class="lineno"> 605</span> {</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="a0c69484f19ed650ad48b716719114e51"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a0c69484f19ed650ad48b716719114e51">◆ </a></span>IsTransposeConvolution2dSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsTransposeConvolution2dSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_transpose_convolution2d_descriptor.xhtml">TransposeConvolution2dDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>weights</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> > & </td> + <td class="paramname"><em>biases</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a0cd42985d5a85895204331e19d2e4c75">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a0c69484f19ed650ad48b716719114e51">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a0c69484f19ed650ad48b716719114e51">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a0c69484f19ed650ad48b716719114e51">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00609">609</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00615"></a><span class="lineno"> 615</span> {</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span> } </div></div><!-- fragment --> +</div> +</div> +<a id="a0189645f33641b280877a1b2f6ba9fee"></a> +<h2 class="memtitle"><span class="permalink"><a href="#a0189645f33641b280877a1b2f6ba9fee">◆ </a></span>IsTransposeSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsTransposeSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_transpose_descriptor.xhtml">TransposeDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#a4d18c121fd6e27cceda23776e3418be5">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#a0189645f33641b280877a1b2f6ba9fee">RefLayerSupport</a>, <a class="el" href="classarmnn_1_1_neon_layer_support.xhtml#a0189645f33641b280877a1b2f6ba9fee">NeonLayerSupport</a>, and <a class="el" href="classarmnn_1_1_cl_layer_support.xhtml#a0189645f33641b280877a1b2f6ba9fee">ClLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00619">619</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00623"></a><span class="lineno"> 623</span> {</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span> }</div></div><!-- fragment --> +</div> +</div> +<a id="aceff0e3aa5ba49b0fdcfc66f2bd31b5c"></a> +<h2 class="memtitle"><span class="permalink"><a href="#aceff0e3aa5ba49b0fdcfc66f2bd31b5c">◆ </a></span>IsUnidirectionalSequenceLstmSupported()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">bool IsUnidirectionalSequenceLstmSupported </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>input</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>outputStateIn</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>cellStateIn</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> & </td> + <td class="paramname"><em>output</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> > & </td> + <td class="paramname"><em>hiddenStateOutput</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< <a class="el" href="classarmnn_1_1_tensor_info.xhtml">TensorInfo</a> > & </td> + <td class="paramname"><em>cellStateOutput</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_lstm_descriptor.xhtml">LstmDescriptor</a> & </td> + <td class="paramname"><em>descriptor</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="structarmnn_1_1_lstm_input_params_info.xhtml">LstmInputParamsInfo</a> & </td> + <td class="paramname"><em>paramsInfo</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classarmnn_1_1_optional.xhtml">Optional</a>< std::string &> </td> + <td class="paramname"><em>reasonIfUnsupported</em> = <code><a class="el" href="structarmnn_1_1_empty_optional.xhtml">EmptyOptional</a>()</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td> const</td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Implements <a class="el" href="classarmnn_1_1_i_layer_support.xhtml#ad64bc4f5d9bc533f94a389ee48a65f8f">ILayerSupport</a>.</p> + +<p>Reimplemented in <a class="el" href="classarmnn_1_1_ref_layer_support.xhtml#ab1f992cbbbaf1f084d31cbe283d8ce6e">RefLayerSupport</a>.</p> + +<p class="definition">Definition at line <a class="el" href="_layer_support_base_8cpp_source.xhtml#l00627">627</a> of file <a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a>.</p> +<div class="fragment"><div class="line"><a name="l00636"></a><span class="lineno"> 636</span> {</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>  <span class="keywordflow">return</span> DefaultLayerSupport(__func__, __FILE__, __LINE__, reasonIfUnsupported);</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span> }</div></div><!-- fragment --> +</div> +</div> +<hr/>The documentation for this class was generated from the following files:<ul> +<li>src/backends/backendsCommon/<a class="el" href="_layer_support_base_8hpp_source.xhtml">LayerSupportBase.hpp</a></li> +<li>src/backends/backendsCommon/<a class="el" href="_layer_support_base_8cpp_source.xhtml">LayerSupportBase.cpp</a></li> +</ul> +</div><!-- contents --> +</div><!-- doc-content --> +<!-- start footer part --> +<div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> + <ul> + <li class="navelem"><a class="el" href="namespacearmnn.xhtml">armnn</a></li><li class="navelem"><a class="el" href="classarmnn_1_1_layer_support_base.xhtml">LayerSupportBase</a></li> + <li class="footer">Generated on Wed Nov 17 2021 12:59:43 for ArmNN by + <a href="http://www.doxygen.org/index.html"> + <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li> + </ul> +</div> +</body> +</html> |