<!-- 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: src/backends/backendsCommon/test/IsLayerSupportedTestImpl.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 10rem; margin-top: .5rem; margin-left 10px"/>
  <td style="padding-left: 0.5em;">
   <div id="projectname">
   &#160;<span id="projectnumber">20.02</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('_is_layer_supported_test_impl_8hpp.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="#define-members">Macros</a>  </div>
  <div class="headertitle">
<div class="title">IsLayerSupportedTestImpl.hpp File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;<a class="el" href="_graph_8hpp_source.xhtml">Graph.hpp</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="_workload_factory_8hpp_source.xhtml">backendsCommon/WorkloadFactory.hpp</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="_ignore_unused_8hpp_source.xhtml">armnn/utility/IgnoreUnused.hpp</a>&gt;</code><br />
</div>
<p><a href="_is_layer_supported_test_impl_8hpp_source.xhtml">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a22fc459f237f3214c9e5efbada894a28"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml#a22fc459f237f3214c9e5efbada894a28">DECLARE_LAYER_POLICY_CUSTOM_PARAM</a>(name,  descType)</td></tr>
<tr class="separator:a22fc459f237f3214c9e5efbada894a28"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c90603b8bd4980b6f211b07f710454a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml#a3c90603b8bd4980b6f211b07f710454a">DECLARE_LAYER_POLICY_1_PARAM</a>(name)&#160;&#160;&#160;<a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml#a22fc459f237f3214c9e5efbada894a28">DECLARE_LAYER_POLICY_CUSTOM_PARAM</a>(name, void)</td></tr>
<tr class="separator:a3c90603b8bd4980b6f211b07f710454a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f1733a5293675a821587ff5b022246d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml#a6f1733a5293675a821587ff5b022246d">DECLARE_LAYER_POLICY_2_PARAM</a>(name)&#160;&#160;&#160;<a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml#a22fc459f237f3214c9e5efbada894a28">DECLARE_LAYER_POLICY_CUSTOM_PARAM</a>(name, armnn::name##Descriptor)</td></tr>
<tr class="separator:a6f1733a5293675a821587ff5b022246d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09b96516eb25d6389075296cbb95b3b9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml#a09b96516eb25d6389075296cbb95b3b9">DECLARE_LAYER_POLICY_EXCEPTION</a>(name,  descType)</td></tr>
<tr class="separator:a09b96516eb25d6389075296cbb95b3b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a611ebd58835be1bc1460c44ccccbc4c8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml#a611ebd58835be1bc1460c44ccccbc4c8">DECLARE_LAYER_POLICY_EXCEPTION_1_PARAM</a>(name)&#160;&#160;&#160;<a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml#a09b96516eb25d6389075296cbb95b3b9">DECLARE_LAYER_POLICY_EXCEPTION</a>(name, void)</td></tr>
<tr class="separator:a611ebd58835be1bc1460c44ccccbc4c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a26c3597a39bf385163bc2cc79d2de4a7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml#a26c3597a39bf385163bc2cc79d2de4a7">DECLARE_LAYER_POLICY_EXCEPTION_2_PARAM</a>(name)&#160;&#160;&#160;<a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml#a09b96516eb25d6389075296cbb95b3b9">DECLARE_LAYER_POLICY_EXCEPTION</a>(name, armnn::name##Descriptor)</td></tr>
<tr class="separator:a26c3597a39bf385163bc2cc79d2de4a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a3c90603b8bd4980b6f211b07f710454a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3c90603b8bd4980b6f211b07f710454a">&#9670;&nbsp;</a></span>DECLARE_LAYER_POLICY_1_PARAM</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DECLARE_LAYER_POLICY_1_PARAM</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">name</td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml#a22fc459f237f3214c9e5efbada894a28">DECLARE_LAYER_POLICY_CUSTOM_PARAM</a>(name, void)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_is_layer_supported_test_impl_8hpp_source.xhtml#l00398">398</a> of file <a class="el" href="_is_layer_supported_test_impl_8hpp_source.xhtml">IsLayerSupportedTestImpl.hpp</a>.</p>

</div>
</div>
<a id="a6f1733a5293675a821587ff5b022246d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6f1733a5293675a821587ff5b022246d">&#9670;&nbsp;</a></span>DECLARE_LAYER_POLICY_2_PARAM</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DECLARE_LAYER_POLICY_2_PARAM</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">name</td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml#a22fc459f237f3214c9e5efbada894a28">DECLARE_LAYER_POLICY_CUSTOM_PARAM</a>(name, armnn::name##Descriptor)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_is_layer_supported_test_impl_8hpp_source.xhtml#l00402">402</a> of file <a class="el" href="_is_layer_supported_test_impl_8hpp_source.xhtml">IsLayerSupportedTestImpl.hpp</a>.</p>

</div>
</div>
<a id="a22fc459f237f3214c9e5efbada894a28"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a22fc459f237f3214c9e5efbada894a28">&#9670;&nbsp;</a></span>DECLARE_LAYER_POLICY_CUSTOM_PARAM</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DECLARE_LAYER_POLICY_CUSTOM_PARAM</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">name, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">descType&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">template</span>&lt;armnn::DataType DataType&gt; \</div><div class="line">struct LayerTypePolicy&lt;armnn::LayerType::name, DataType&gt; \</div><div class="line">{ \</div><div class="line">    using Type = armnn::name##Layer; \</div><div class="line">    using Desc = descType; \</div><div class="line">    using QueueDesc = armnn::name##QueueDescriptor; \</div><div class="line">    constexpr <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* NameStr = #name; \</div><div class="line">    constexpr <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> IsException = <span class="keyword">false</span>; \</div><div class="line">    \</div><div class="line">    static std::unique_ptr&lt;armnn::IWorkload&gt; MakeDummyWorkload(<a class="code" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> *factory, \</div><div class="line">        <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nIn, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nOut) \</div><div class="line">    { \</div><div class="line">        QueueDesc desc; \</div><div class="line">        armnn::WorkloadInfo <a class="code" href="namespacearmnn.xhtml#a4dc0adc6737b5944e7671bee71788407acaf9b6b99962bf5c2264824231d7a40c">info</a> = MakeDummyWorkloadInfo&lt;DataType&gt;(nIn, nOut); \</div><div class="line">        return factory-&gt;Create##name(desc, info); \</div><div class="line">    } \</div><div class="line">};</div><div class="ttc" id="classarmnn_1_1_i_workload_factory_xhtml"><div class="ttname"><a href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a></div><div class="ttdef"><b>Definition:</b> <a href="_workload_factory_8hpp_source.xhtml#l00021">WorkloadFactory.hpp:21</a></div></div>
<div class="ttc" id="namespacearmnn_xhtml_a4dc0adc6737b5944e7671bee71788407acaf9b6b99962bf5c2264824231d7a40c"><div class="ttname"><a href="namespacearmnn.xhtml#a4dc0adc6737b5944e7671bee71788407acaf9b6b99962bf5c2264824231d7a40c">armnn::BoostLogSeverityMapping::info</a></div></div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="_is_layer_supported_test_impl_8hpp_source.xhtml#l00377">377</a> of file <a class="el" href="_is_layer_supported_test_impl_8hpp_source.xhtml">IsLayerSupportedTestImpl.hpp</a>.</p>

</div>
</div>
<a id="a09b96516eb25d6389075296cbb95b3b9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a09b96516eb25d6389075296cbb95b3b9">&#9670;&nbsp;</a></span>DECLARE_LAYER_POLICY_EXCEPTION</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DECLARE_LAYER_POLICY_EXCEPTION</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">name, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">descType&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">template</span>&lt;armnn::DataType DataType&gt; \</div><div class="line">struct LayerTypePolicy&lt;armnn::LayerType::name, DataType&gt; \</div><div class="line">{ \</div><div class="line">    using Type = armnn::name##Layer; \</div><div class="line">    using Desc = descType; \</div><div class="line">    constexpr <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* NameStr = #name; \</div><div class="line">    constexpr <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> IsException = <span class="keyword">true</span>; \</div><div class="line">    \</div><div class="line">    static std::unique_ptr&lt;armnn::IWorkload&gt; MakeDummyWorkload(<a class="code" href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a> *factory, \</div><div class="line">        <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nIn, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nOut) \</div><div class="line">    { \</div><div class="line">        IgnoreUnused(factory, nIn, nOut); \</div><div class="line">        return std::unique_ptr&lt;armnn::IWorkload&gt;(); \</div><div class="line">    } \</div><div class="line">};</div><div class="ttc" id="classarmnn_1_1_i_workload_factory_xhtml"><div class="ttname"><a href="classarmnn_1_1_i_workload_factory.xhtml">armnn::IWorkloadFactory</a></div><div class="ttdef"><b>Definition:</b> <a href="_workload_factory_8hpp_source.xhtml#l00021">WorkloadFactory.hpp:21</a></div></div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="_is_layer_supported_test_impl_8hpp_source.xhtml#l00405">405</a> of file <a class="el" href="_is_layer_supported_test_impl_8hpp_source.xhtml">IsLayerSupportedTestImpl.hpp</a>.</p>

</div>
</div>
<a id="a611ebd58835be1bc1460c44ccccbc4c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a611ebd58835be1bc1460c44ccccbc4c8">&#9670;&nbsp;</a></span>DECLARE_LAYER_POLICY_EXCEPTION_1_PARAM</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DECLARE_LAYER_POLICY_EXCEPTION_1_PARAM</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">name</td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml#a09b96516eb25d6389075296cbb95b3b9">DECLARE_LAYER_POLICY_EXCEPTION</a>(name, void)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_is_layer_supported_test_impl_8hpp_source.xhtml#l00422">422</a> of file <a class="el" href="_is_layer_supported_test_impl_8hpp_source.xhtml">IsLayerSupportedTestImpl.hpp</a>.</p>

</div>
</div>
<a id="a26c3597a39bf385163bc2cc79d2de4a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a26c3597a39bf385163bc2cc79d2de4a7">&#9670;&nbsp;</a></span>DECLARE_LAYER_POLICY_EXCEPTION_2_PARAM</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DECLARE_LAYER_POLICY_EXCEPTION_2_PARAM</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">name</td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml#a09b96516eb25d6389075296cbb95b3b9">DECLARE_LAYER_POLICY_EXCEPTION</a>(name, armnn::name##Descriptor)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_is_layer_supported_test_impl_8hpp_source.xhtml#l00423">423</a> of file <a class="el" href="_is_layer_supported_test_impl_8hpp_source.xhtml">IsLayerSupportedTestImpl.hpp</a>.</p>

</div>
</div>
</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="dir_68267d1309a1af8e8297ef4c3efbcdba.xhtml">src</a></li><li class="navelem"><a class="el" href="dir_0f3cdec46afbc61a1ded8e1687c9c9a0.xhtml">backends</a></li><li class="navelem"><a class="el" href="dir_797a213d7d01b98ef12d53b0820ea64e.xhtml">backendsCommon</a></li><li class="navelem"><a class="el" href="dir_28bfe507f7e135bdae07c2a6b7f66696.xhtml">test</a></li><li class="navelem"><a class="el" href="_is_layer_supported_test_impl_8hpp.xhtml">IsLayerSupportedTestImpl.hpp</a></li>
    <li class="footer">Generated on Fri Mar 13 2020 16:09:14 for ArmNN by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>
