aboutsummaryrefslogtreecommitdiff
path: root/22.02/est_utils_2_unit_tests_8hpp.xhtml
diff options
context:
space:
mode:
authorNikhil Raj <nikhil.raj@arm.com>2022-03-08 20:01:38 +0000
committerNikhil Raj <nikhil.raj@arm.com>2022-03-09 12:26:14 +0000
commitf4019872c1134c6fcc1d6993e5746f55c1e79208 (patch)
treeb07ea8bdd70d696adfa3814344e210ea67be1e8c /22.02/est_utils_2_unit_tests_8hpp.xhtml
parent0d75c02b21b919b81035205f3914ee273b93b30c (diff)
downloadarmnn-f4019872c1134c6fcc1d6993e5746f55c1e79208.tar.gz
IVGCVSW-6819 Fix the directory structure and broken link to latest docu
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com> Change-Id: I05b559d15faf92c76ff536719693b361316be4f3
Diffstat (limited to '22.02/est_utils_2_unit_tests_8hpp.xhtml')
-rw-r--r--22.02/est_utils_2_unit_tests_8hpp.xhtml806
1 files changed, 806 insertions, 0 deletions
diff --git a/22.02/est_utils_2_unit_tests_8hpp.xhtml b/22.02/est_utils_2_unit_tests_8hpp.xhtml
new file mode 100644
index 0000000000..e4987ac119
--- /dev/null
+++ b/22.02/est_utils_2_unit_tests_8hpp.xhtml
@@ -0,0 +1,806 @@
+<!-- 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/armnnTestUtils/UnitTests.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">22.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('est_utils_2_unit_tests_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> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">UnitTests.hpp File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="include_2armnn_test_utils_2_tensor_helpers_8hpp_source.xhtml">armnnTestUtils/TensorHelpers.hpp</a>&quot;</code><br />
+<code>#include &lt;<a class="el" href="_logging_8hpp_source.xhtml">armnn/Logging.hpp</a>&gt;</code><br />
+<code>#include &lt;<a class="el" href="_utils_8hpp_source.xhtml">armnn/Utils.hpp</a>&gt;</code><br />
+<code>#include &lt;<a class="el" href="_ref_workload_factory_8hpp_source.xhtml">reference/RefWorkloadFactory.hpp</a>&gt;</code><br />
+<code>#include &lt;<a class="el" href="_ref_workload_factory_helper_8hpp_source.xhtml">reference/test/RefWorkloadFactoryHelper.hpp</a>&gt;</code><br />
+<code>#include &lt;<a class="el" href="_workload_factory_helper_8hpp_source.xhtml">backendsCommon/test/WorkloadFactoryHelper.hpp</a>&gt;</code><br />
+<code>#include &lt;<a class="el" href="include_2armnn_test_utils_2_layer_test_result_8hpp_source.xhtml">armnnTestUtils/LayerTestResult.hpp</a>&gt;</code><br />
+<code>#include &lt;<a class="el" href="include_2armnn_test_utils_2_tensor_copy_utils_8hpp_source.xhtml">armnnTestUtils/TensorCopyUtils.hpp</a>&gt;</code><br />
+<code>#include &lt;<a class="el" href="include_2armnn_test_utils_2_workload_test_utils_8hpp_source.xhtml">armnnTestUtils/WorkloadTestUtils.hpp</a>&gt;</code><br />
+<code>#include &lt;doctest/doctest.h&gt;</code><br />
+</div>
+<p><a href="est_utils_2_unit_tests_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:a44ea827d997f1aa0e39d9a6d6675465c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#a44ea827d997f1aa0e39d9a6d6675465c">ARMNN_SIMPLE_TEST_CASE</a>(TestName, TestFunction)</td></tr>
+<tr class="separator:a44ea827d997f1aa0e39d9a6d6675465c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6ce9102495fab6e3957f61281238e3d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#ae6ce9102495fab6e3957f61281238e3d">ARMNN_AUTO_TEST_CASE</a>(TestName, TestFunction, ...)</td></tr>
+<tr class="separator:ae6ce9102495fab6e3957f61281238e3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4628f323c7af33f559cb2642d94f0194"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#a4628f323c7af33f559cb2642d94f0194">ARMNN_AUTO_TEST_FIXTURE</a>(TestName, Fixture, TestFunction, ...)</td></tr>
+<tr class="separator:a4628f323c7af33f559cb2642d94f0194"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ab6cdd4f66de9300527359858cbe5af"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#a0ab6cdd4f66de9300527359858cbe5af">ARMNN_AUTO_TEST_CASE_WITH_THF</a>(TestName, TestFunction, ...)</td></tr>
+<tr class="separator:a0ab6cdd4f66de9300527359858cbe5af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aceaf1e66bde6deb47e5243c3d03b8fd4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#aceaf1e66bde6deb47e5243c3d03b8fd4">ARMNN_AUTO_TEST_FIXTURE_WITH_THF</a>(TestName, Fixture, TestFunction, ...)</td></tr>
+<tr class="separator:aceaf1e66bde6deb47e5243c3d03b8fd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a07e04849fc0700facf91fecce71ff733"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#a07e04849fc0700facf91fecce71ff733">ARMNN_COMPARE_REF_AUTO_TEST_CASE</a>(TestName, TestFunction, ...)</td></tr>
+<tr class="separator:a07e04849fc0700facf91fecce71ff733"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d0f84912baa7b88f72c8df1b904aa20"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#a2d0f84912baa7b88f72c8df1b904aa20">ARMNN_COMPARE_REF_AUTO_TEST_CASE_WITH_THF</a>(TestName, TestFunction, ...)</td></tr>
+<tr class="separator:a2d0f84912baa7b88f72c8df1b904aa20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2016edd458865d471fe1afc82b3c126"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#af2016edd458865d471fe1afc82b3c126">ARMNN_COMPARE_REF_FIXTURE_TEST_CASE</a>(TestName, Fixture, TestFunction, ...)</td></tr>
+<tr class="separator:af2016edd458865d471fe1afc82b3c126"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a27949c8e47f407cf0d135c96ed969cf9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#a27949c8e47f407cf0d135c96ed969cf9">ARMNN_COMPARE_REF_FIXTURE_TEST_CASE_WITH_THF</a>(TestName, Fixture, TestFunction, ...)</td></tr>
+<tr class="separator:a27949c8e47f407cf0d135c96ed969cf9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:af9e4dd62da9266a1364032ada0267f9b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#af9e4dd62da9266a1364032ada0267f9b">ConfigureLoggingTest</a> ()</td></tr>
+<tr class="separator:af9e4dd62da9266a1364032ada0267f9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acbe506e0365feeed352effe52b1e4852"><td class="memTemplParams" colspan="2">template&lt;typename T , std::size_t n&gt; </td></tr>
+<tr class="memitem:acbe506e0365feeed352effe52b1e4852"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a> (const std::string &amp;testName, const <a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; T, n &gt; &amp;testResult)</td></tr>
+<tr class="memdesc:acbe506e0365feeed352effe52b1e4852"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes CHECK_MESSAGE on <a class="el" href="include_2armnn_test_utils_2_tensor_helpers_8hpp.xhtml#a5fea88a1c3398e303fb83b6db155ff2d">CompareTensors()</a> return value so that the predicate_result message is reported. <a href="#acbe506e0365feeed352effe52b1e4852">More...</a><br /></td></tr>
+<tr class="separator:acbe506e0365feeed352effe52b1e4852"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d26216e495ef45a749c03e6c6edcd38"><td class="memTemplParams" colspan="2">template&lt;typename T , std::size_t n&gt; </td></tr>
+<tr class="memitem:a8d26216e495ef45a749c03e6c6edcd38"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#a8d26216e495ef45a749c03e6c6edcd38">CompareTestResultIfSupported</a> (const std::string &amp;testName, const std::vector&lt; <a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; T, n &gt;&gt; &amp;testResult)</td></tr>
+<tr class="separator:a8d26216e495ef45a749c03e6c6edcd38"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10075eca890bd829a87b914c5aa18cb3"><td class="memTemplParams" colspan="2">template&lt;typename FactoryType , typename TFuncPtr , typename... Args&gt; </td></tr>
+<tr class="memitem:a10075eca890bd829a87b914c5aa18cb3"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#a10075eca890bd829a87b914c5aa18cb3">RunTestFunction</a> (const char *testName, TFuncPtr testFunction, Args... args)</td></tr>
+<tr class="separator:a10075eca890bd829a87b914c5aa18cb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae9222f9685bc46d77397c262858172c3"><td class="memTemplParams" colspan="2">template&lt;typename FactoryType , typename TFuncPtr , typename... Args&gt; </td></tr>
+<tr class="memitem:ae9222f9685bc46d77397c262858172c3"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#ae9222f9685bc46d77397c262858172c3">RunTestFunctionUsingTensorHandleFactory</a> (const char *testName, TFuncPtr testFunction, Args... args)</td></tr>
+<tr class="separator:ae9222f9685bc46d77397c262858172c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d8f71b48349370e1d5c0a9b39e3d162"><td class="memTemplParams" colspan="2">template&lt;typename FactoryType , typename TFuncPtr , typename... Args&gt; </td></tr>
+<tr class="memitem:a2d8f71b48349370e1d5c0a9b39e3d162"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#a2d8f71b48349370e1d5c0a9b39e3d162">CompareRefTestFunction</a> (const char *testName, TFuncPtr testFunction, Args... args)</td></tr>
+<tr class="separator:a2d8f71b48349370e1d5c0a9b39e3d162"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82ab208235e164dca8c02f925e03dc44"><td class="memTemplParams" colspan="2">template&lt;typename FactoryType , typename TFuncPtr , typename... Args&gt; </td></tr>
+<tr class="memitem:a82ab208235e164dca8c02f925e03dc44"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml#a82ab208235e164dca8c02f925e03dc44">CompareRefTestFunctionUsingTensorHandleFactory</a> (const char *testName, TFuncPtr testFunction, Args... args)</td></tr>
+<tr class="separator:a82ab208235e164dca8c02f925e03dc44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="ae6ce9102495fab6e3957f61281238e3d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae6ce9102495fab6e3957f61281238e3d">&#9670;&nbsp;</a></span>ARMNN_AUTO_TEST_CASE</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ARMNN_AUTO_TEST_CASE</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestName, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestFunction, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#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">TEST_CASE(#TestName) \</div><div class="line"> { \</div><div class="line"> RunTestFunction&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div><div class="line"> }</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00117">117</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_neon_layer_tests_8cpp_source.xhtml#l00019">TEST_SUITE()</a>.</p>
+
+</div>
+</div>
+<a id="a0ab6cdd4f66de9300527359858cbe5af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0ab6cdd4f66de9300527359858cbe5af">&#9670;&nbsp;</a></span>ARMNN_AUTO_TEST_CASE_WITH_THF</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ARMNN_AUTO_TEST_CASE_WITH_THF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestName, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestFunction, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#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">TEST_CASE(#TestName) \</div><div class="line"> { \</div><div class="line"> RunTestFunctionUsingTensorHandleFactory&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div><div class="line"> }</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00129">129</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_cl_layer_tests_8cpp_source.xhtml#l00027">TEST_SUITE()</a>.</p>
+
+</div>
+</div>
+<a id="a4628f323c7af33f559cb2642d94f0194"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4628f323c7af33f559cb2642d94f0194">&#9670;&nbsp;</a></span>ARMNN_AUTO_TEST_FIXTURE</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ARMNN_AUTO_TEST_FIXTURE</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestName, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">Fixture, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestFunction, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#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"><a class="code" href="_mem_copy_tests_8cpp.xhtml#a3df1acc0ccc35bce0bd6c027e23e2c45">TEST_CASE_FIXTURE</a>(Fixture, #TestName) \</div><div class="line"> { \</div><div class="line"> RunTestFunction&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div><div class="line"> }</div><div class="ttc" id="_mem_copy_tests_8cpp_xhtml_a3df1acc0ccc35bce0bd6c027e23e2c45"><div class="ttname"><a href="_mem_copy_tests_8cpp.xhtml#a3df1acc0ccc35bce0bd6c027e23e2c45">TEST_CASE_FIXTURE</a></div><div class="ttdeci">TEST_CASE_FIXTURE(ClContextControlFixture, &quot;CopyBetweenNeonAndGpu&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="_mem_copy_tests_8cpp_source.xhtml#l00089">MemCopyTests.cpp:89</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00123">123</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_cl_layer_tests_8cpp_source.xhtml#l00027">TEST_SUITE()</a>.</p>
+
+</div>
+</div>
+<a id="aceaf1e66bde6deb47e5243c3d03b8fd4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aceaf1e66bde6deb47e5243c3d03b8fd4">&#9670;&nbsp;</a></span>ARMNN_AUTO_TEST_FIXTURE_WITH_THF</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ARMNN_AUTO_TEST_FIXTURE_WITH_THF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestName, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">Fixture, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestFunction, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#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"><a class="code" href="_mem_copy_tests_8cpp.xhtml#a3df1acc0ccc35bce0bd6c027e23e2c45">TEST_CASE_FIXTURE</a>(Fixture, #TestName) \</div><div class="line"> { \</div><div class="line"> RunTestFunctionUsingTensorHandleFactory&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div><div class="line"> }</div><div class="ttc" id="_mem_copy_tests_8cpp_xhtml_a3df1acc0ccc35bce0bd6c027e23e2c45"><div class="ttname"><a href="_mem_copy_tests_8cpp.xhtml#a3df1acc0ccc35bce0bd6c027e23e2c45">TEST_CASE_FIXTURE</a></div><div class="ttdeci">TEST_CASE_FIXTURE(ClContextControlFixture, &quot;CopyBetweenNeonAndGpu&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="_mem_copy_tests_8cpp_source.xhtml#l00089">MemCopyTests.cpp:89</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00135">135</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_cl_layer_tests_8cpp_source.xhtml#l00027">TEST_SUITE()</a>.</p>
+
+</div>
+</div>
+<a id="a07e04849fc0700facf91fecce71ff733"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a07e04849fc0700facf91fecce71ff733">&#9670;&nbsp;</a></span>ARMNN_COMPARE_REF_AUTO_TEST_CASE</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ARMNN_COMPARE_REF_AUTO_TEST_CASE</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestName, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestFunction, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#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">TEST_CASE(#TestName) \</div><div class="line"> { \</div><div class="line"> CompareRefTestFunction&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div><div class="line"> }</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00169">169</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+</div>
+</div>
+<a id="a2d0f84912baa7b88f72c8df1b904aa20"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d0f84912baa7b88f72c8df1b904aa20">&#9670;&nbsp;</a></span>ARMNN_COMPARE_REF_AUTO_TEST_CASE_WITH_THF</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ARMNN_COMPARE_REF_AUTO_TEST_CASE_WITH_THF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestName, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestFunction, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#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">TEST_CASE(#TestName) \</div><div class="line"> { \</div><div class="line"> CompareRefTestFunctionUsingTensorHandleFactory&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div><div class="line"> }</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00175">175</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_cl_layer_tests_8cpp_source.xhtml#l00027">TEST_SUITE()</a>.</p>
+
+</div>
+</div>
+<a id="af2016edd458865d471fe1afc82b3c126"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af2016edd458865d471fe1afc82b3c126">&#9670;&nbsp;</a></span>ARMNN_COMPARE_REF_FIXTURE_TEST_CASE</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ARMNN_COMPARE_REF_FIXTURE_TEST_CASE</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestName, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">Fixture, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestFunction, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#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"><a class="code" href="_mem_copy_tests_8cpp.xhtml#a3df1acc0ccc35bce0bd6c027e23e2c45">TEST_CASE_FIXTURE</a>(Fixture, #TestName) \</div><div class="line"> { \</div><div class="line"> CompareRefTestFunction&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div><div class="line"> }</div><div class="ttc" id="_mem_copy_tests_8cpp_xhtml_a3df1acc0ccc35bce0bd6c027e23e2c45"><div class="ttname"><a href="_mem_copy_tests_8cpp.xhtml#a3df1acc0ccc35bce0bd6c027e23e2c45">TEST_CASE_FIXTURE</a></div><div class="ttdeci">TEST_CASE_FIXTURE(ClContextControlFixture, &quot;CopyBetweenNeonAndGpu&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="_mem_copy_tests_8cpp_source.xhtml#l00089">MemCopyTests.cpp:89</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00181">181</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+</div>
+</div>
+<a id="a27949c8e47f407cf0d135c96ed969cf9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a27949c8e47f407cf0d135c96ed969cf9">&#9670;&nbsp;</a></span>ARMNN_COMPARE_REF_FIXTURE_TEST_CASE_WITH_THF</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ARMNN_COMPARE_REF_FIXTURE_TEST_CASE_WITH_THF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestName, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">Fixture, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestFunction, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#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"><a class="code" href="_mem_copy_tests_8cpp.xhtml#a3df1acc0ccc35bce0bd6c027e23e2c45">TEST_CASE_FIXTURE</a>(Fixture, #TestName) \</div><div class="line"> { \</div><div class="line"> CompareRefTestFunctionUsingTensorHandleFactory&lt;FactoryType&gt;(#TestName, &amp;TestFunction, ##__VA_ARGS__); \</div><div class="line"> }</div><div class="ttc" id="_mem_copy_tests_8cpp_xhtml_a3df1acc0ccc35bce0bd6c027e23e2c45"><div class="ttname"><a href="_mem_copy_tests_8cpp.xhtml#a3df1acc0ccc35bce0bd6c027e23e2c45">TEST_CASE_FIXTURE</a></div><div class="ttdeci">TEST_CASE_FIXTURE(ClContextControlFixture, &quot;CopyBetweenNeonAndGpu&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="_mem_copy_tests_8cpp_source.xhtml#l00089">MemCopyTests.cpp:89</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00187">187</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_cl_layer_tests_8cpp_source.xhtml#l00027">TEST_SUITE()</a>.</p>
+
+</div>
+</div>
+<a id="a44ea827d997f1aa0e39d9a6d6675465c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a44ea827d997f1aa0e39d9a6d6675465c">&#9670;&nbsp;</a></span>ARMNN_SIMPLE_TEST_CASE</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ARMNN_SIMPLE_TEST_CASE</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestName, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">TestFunction&#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">TEST_CASE(#TestName) \</div><div class="line"> { \</div><div class="line"> TestFunction(); \</div><div class="line"> }</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00111">111</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="_infer_output_tests_8cpp_source.xhtml#l00010">TEST_SUITE()</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a2d8f71b48349370e1d5c0a9b39e3d162"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d8f71b48349370e1d5c0a9b39e3d162">&#9670;&nbsp;</a></span>CompareRefTestFunction()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void CompareRefTestFunction </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>testName</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">TFuncPtr&#160;</td>
+ <td class="paramname"><em>testFunction</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">Args...&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00142">142</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+<p class="reference">References <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00043">CompareTestResultIfSupported()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;{</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keyword">auto</span> memoryManager = WorkloadFactoryHelper&lt;FactoryType&gt;::GetMemoryManager();</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; FactoryType workloadFactory = WorkloadFactoryHelper&lt;FactoryType&gt;::GetFactory(memoryManager);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <a class="code" href="classarmnn_1_1_ref_workload_factory.xhtml">armnn::RefWorkloadFactory</a> refWorkloadFactory;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keyword">auto</span> testResult = (*testFunction)(workloadFactory, memoryManager, refWorkloadFactory, args...);</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <a class="code" href="est_utils_2_unit_tests_8hpp.xhtml#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a>(testName, testResult);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;}</div><div class="ttc" id="est_utils_2_unit_tests_8hpp_xhtml_acbe506e0365feeed352effe52b1e4852"><div class="ttname"><a href="est_utils_2_unit_tests_8hpp.xhtml#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a></div><div class="ttdeci">void CompareTestResultIfSupported(const std::string &amp;testName, const LayerTestResult&lt; T, n &gt; &amp;testResult)</div><div class="ttdoc">Executes CHECK_MESSAGE on CompareTensors() return value so that the predicate_result message is repor...</div><div class="ttdef"><b>Definition:</b> <a href="est_utils_2_unit_tests_8hpp_source.xhtml#l00043">UnitTests.hpp:43</a></div></div>
+<div class="ttc" id="classarmnn_1_1_ref_workload_factory_xhtml"><div class="ttname"><a href="classarmnn_1_1_ref_workload_factory.xhtml">armnn::RefWorkloadFactory</a></div><div class="ttdef"><b>Definition:</b> <a href="_ref_workload_factory_8hpp_source.xhtml#l00030">RefWorkloadFactory.hpp:30</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a82ab208235e164dca8c02f925e03dc44"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a82ab208235e164dca8c02f925e03dc44">&#9670;&nbsp;</a></span>CompareRefTestFunctionUsingTensorHandleFactory()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void CompareRefTestFunctionUsingTensorHandleFactory </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>testName</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">TFuncPtr&#160;</td>
+ <td class="paramname"><em>testFunction</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">Args...&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00154">154</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+<p class="reference">References <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00043">CompareTestResultIfSupported()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;{</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">auto</span> memoryManager = WorkloadFactoryHelper&lt;FactoryType&gt;::GetMemoryManager();</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; FactoryType workloadFactory = WorkloadFactoryHelper&lt;FactoryType&gt;::GetFactory(memoryManager);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keyword">auto</span> tensorHandleFactory = WorkloadFactoryHelper&lt;FactoryType&gt;::GetTensorHandleFactory(memoryManager);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="classarmnn_1_1_ref_workload_factory.xhtml">armnn::RefWorkloadFactory</a> refWorkloadFactory;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keyword">auto</span> refMemoryManager = WorkloadFactoryHelper&lt;armnn::RefWorkloadFactory&gt;::GetMemoryManager();</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keyword">auto</span> refTensorHandleFactory = RefWorkloadFactoryHelper::GetTensorHandleFactory(refMemoryManager);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keyword">auto</span> testResult = (*testFunction)(</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; workloadFactory, memoryManager, refWorkloadFactory, tensorHandleFactory, refTensorHandleFactory, args...);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="est_utils_2_unit_tests_8hpp.xhtml#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a>(testName, testResult);</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;}</div><div class="ttc" id="est_utils_2_unit_tests_8hpp_xhtml_acbe506e0365feeed352effe52b1e4852"><div class="ttname"><a href="est_utils_2_unit_tests_8hpp.xhtml#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a></div><div class="ttdeci">void CompareTestResultIfSupported(const std::string &amp;testName, const LayerTestResult&lt; T, n &gt; &amp;testResult)</div><div class="ttdoc">Executes CHECK_MESSAGE on CompareTensors() return value so that the predicate_result message is repor...</div><div class="ttdef"><b>Definition:</b> <a href="est_utils_2_unit_tests_8hpp_source.xhtml#l00043">UnitTests.hpp:43</a></div></div>
+<div class="ttc" id="classarmnn_1_1_ref_workload_factory_xhtml"><div class="ttname"><a href="classarmnn_1_1_ref_workload_factory.xhtml">armnn::RefWorkloadFactory</a></div><div class="ttdef"><b>Definition:</b> <a href="_ref_workload_factory_8hpp_source.xhtml#l00030">RefWorkloadFactory.hpp:30</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="acbe506e0365feeed352effe52b1e4852"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acbe506e0365feeed352effe52b1e4852">&#9670;&nbsp;</a></span>CompareTestResultIfSupported() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void CompareTestResultIfSupported </td>
+ <td>(</td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>testName</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; T, n &gt; &amp;&#160;</td>
+ <td class="paramname"><em>testResult</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Executes CHECK_MESSAGE on <a class="el" href="include_2armnn_test_utils_2_tensor_helpers_8hpp.xhtml#a5fea88a1c3398e303fb83b6db155ff2d">CompareTensors()</a> return value so that the predicate_result message is reported. </p>
+<p>If the test reports itself as not supported then the tensors are not compared. Additionally this checks that the supportedness reported by the test matches the name of the test. Unsupported tests must be 'tagged' by including "UNSUPPORTED" in their name. This is useful because it clarifies that the feature being tested is not actually supported (a passed test with the name of a feature would imply that feature was supported). If support is added for a feature, the test case will fail because the name incorrectly contains UNSUPPORTED. If support is removed for a feature, the test case will fail because the name doesn't contain UNSUPPORTED. </p>
+
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00043">43</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+<p class="reference">References <a class="el" href="include_2armnn_test_utils_2_tensor_helpers_8hpp_source.xhtml#l00073">CompareTensors()</a>, <a class="el" href="include_2armnn_test_utils_2_layer_test_result_8hpp_source.xhtml#l00052">LayerTestResult&lt; T, n &gt;::m_ActualData</a>, <a class="el" href="include_2armnn_test_utils_2_layer_test_result_8hpp_source.xhtml#l00054">LayerTestResult&lt; T, n &gt;::m_ActualShape</a>, <a class="el" href="include_2armnn_test_utils_2_layer_test_result_8hpp_source.xhtml#l00058">LayerTestResult&lt; T, n &gt;::m_CompareBoolean</a>, <a class="el" href="include_2armnn_test_utils_2_layer_test_result_8hpp_source.xhtml#l00053">LayerTestResult&lt; T, n &gt;::m_ExpectedData</a>, <a class="el" href="include_2armnn_test_utils_2_layer_test_result_8hpp_source.xhtml#l00055">LayerTestResult&lt; T, n &gt;::m_ExpectedShape</a>, and <a class="el" href="include_2armnn_test_utils_2_layer_test_result_8hpp_source.xhtml#l00057">LayerTestResult&lt; T, n &gt;::m_Supported</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00142">CompareRefTestFunction()</a>, <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00154">CompareRefTestFunctionUsingTensorHandleFactory()</a>, <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00079">RunTestFunction()</a>, and <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00095">RunTestFunctionUsingTensorHandleFactory()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;{</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordtype">bool</span> testNameIndicatesUnsupported = testName.find(<span class="stringliteral">&quot;UNSUPPORTED&quot;</span>) != std::string::npos;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; CHECK_MESSAGE(testNameIndicatesUnsupported != testResult.<a class="code" href="struct_layer_test_result.xhtml#a803952d7c2fd093757ed85279063ab2a">m_Supported</a>,</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="stringliteral">&quot;The test name does not match the supportedness it is reporting&quot;</span>);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">if</span> (testResult.<a class="code" href="struct_layer_test_result.xhtml#a803952d7c2fd093757ed85279063ab2a">m_Supported</a>)</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; {</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keyword">auto</span> result = <a class="code" href="include_2armnn_test_utils_2_tensor_helpers_8hpp.xhtml#a5fea88a1c3398e303fb83b6db155ff2d">CompareTensors</a>(testResult.<a class="code" href="struct_layer_test_result.xhtml#a744f7791c7f88a945817d375cd754061">m_ActualData</a>,</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; testResult.<a class="code" href="struct_layer_test_result.xhtml#afe2a527d7250fb113121b70e29c6bed5">m_ExpectedData</a>,</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; testResult.<a class="code" href="struct_layer_test_result.xhtml#a74a0abe714f3fe5b9ca7023409833fb5">m_ActualShape</a>,</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; testResult.<a class="code" href="struct_layer_test_result.xhtml#acd2a9d8ba7ceee9a10e3f2826cca22c1">m_ExpectedShape</a>,</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; testResult.<a class="code" href="struct_layer_test_result.xhtml#a81f7c8835f58879cff48641c8f533e27">m_CompareBoolean</a>);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; CHECK_MESSAGE(result.m_Result, result.m_Message.str());</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; }</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;}</div><div class="ttc" id="struct_layer_test_result_xhtml_acd2a9d8ba7ceee9a10e3f2826cca22c1"><div class="ttname"><a href="struct_layer_test_result.xhtml#acd2a9d8ba7ceee9a10e3f2826cca22c1">LayerTestResult::m_ExpectedShape</a></div><div class="ttdeci">armnn::TensorShape m_ExpectedShape</div><div class="ttdef"><b>Definition:</b> <a href="include_2armnn_test_utils_2_layer_test_result_8hpp_source.xhtml#l00055">LayerTestResult.hpp:55</a></div></div>
+<div class="ttc" id="struct_layer_test_result_xhtml_a81f7c8835f58879cff48641c8f533e27"><div class="ttname"><a href="struct_layer_test_result.xhtml#a81f7c8835f58879cff48641c8f533e27">LayerTestResult::m_CompareBoolean</a></div><div class="ttdeci">bool m_CompareBoolean</div><div class="ttdef"><b>Definition:</b> <a href="include_2armnn_test_utils_2_layer_test_result_8hpp_source.xhtml#l00058">LayerTestResult.hpp:58</a></div></div>
+<div class="ttc" id="struct_layer_test_result_xhtml_afe2a527d7250fb113121b70e29c6bed5"><div class="ttname"><a href="struct_layer_test_result.xhtml#afe2a527d7250fb113121b70e29c6bed5">LayerTestResult::m_ExpectedData</a></div><div class="ttdeci">std::vector&lt; T &gt; m_ExpectedData</div><div class="ttdef"><b>Definition:</b> <a href="include_2armnn_test_utils_2_layer_test_result_8hpp_source.xhtml#l00053">LayerTestResult.hpp:53</a></div></div>
+<div class="ttc" id="include_2armnn_test_utils_2_tensor_helpers_8hpp_xhtml_a5fea88a1c3398e303fb83b6db155ff2d"><div class="ttname"><a href="include_2armnn_test_utils_2_tensor_helpers_8hpp.xhtml#a5fea88a1c3398e303fb83b6db155ff2d">CompareTensors</a></div><div class="ttdeci">armnn::PredicateResult CompareTensors(const std::vector&lt; T &gt; &amp;actualData, const std::vector&lt; T &gt; &amp;expectedData, const armnn::TensorShape &amp;actualShape, const armnn::TensorShape &amp;expectedShape, bool compareBoolean=false, bool isDynamic=false)</div><div class="ttdef"><b>Definition:</b> <a href="include_2armnn_test_utils_2_tensor_helpers_8hpp_source.xhtml#l00073">TensorHelpers.hpp:73</a></div></div>
+<div class="ttc" id="struct_layer_test_result_xhtml_a803952d7c2fd093757ed85279063ab2a"><div class="ttname"><a href="struct_layer_test_result.xhtml#a803952d7c2fd093757ed85279063ab2a">LayerTestResult::m_Supported</a></div><div class="ttdeci">bool m_Supported</div><div class="ttdef"><b>Definition:</b> <a href="include_2armnn_test_utils_2_layer_test_result_8hpp_source.xhtml#l00057">LayerTestResult.hpp:57</a></div></div>
+<div class="ttc" id="struct_layer_test_result_xhtml_a744f7791c7f88a945817d375cd754061"><div class="ttname"><a href="struct_layer_test_result.xhtml#a744f7791c7f88a945817d375cd754061">LayerTestResult::m_ActualData</a></div><div class="ttdeci">std::vector&lt; T &gt; m_ActualData</div><div class="ttdef"><b>Definition:</b> <a href="include_2armnn_test_utils_2_layer_test_result_8hpp_source.xhtml#l00052">LayerTestResult.hpp:52</a></div></div>
+<div class="ttc" id="struct_layer_test_result_xhtml_a74a0abe714f3fe5b9ca7023409833fb5"><div class="ttname"><a href="struct_layer_test_result.xhtml#a74a0abe714f3fe5b9ca7023409833fb5">LayerTestResult::m_ActualShape</a></div><div class="ttdeci">armnn::TensorShape m_ActualShape</div><div class="ttdef"><b>Definition:</b> <a href="include_2armnn_test_utils_2_layer_test_result_8hpp_source.xhtml#l00054">LayerTestResult.hpp:54</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a8d26216e495ef45a749c03e6c6edcd38"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8d26216e495ef45a749c03e6c6edcd38">&#9670;&nbsp;</a></span>CompareTestResultIfSupported() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void CompareTestResultIfSupported </td>
+ <td>(</td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>testName</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const std::vector&lt; <a class="el" href="struct_layer_test_result.xhtml">LayerTestResult</a>&lt; T, n &gt;&gt; &amp;&#160;</td>
+ <td class="paramname"><em>testResult</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00060">60</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+<p class="reference">References <a class="el" href="include_2armnn_test_utils_2_tensor_helpers_8hpp_source.xhtml#l00073">CompareTensors()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;{</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordtype">bool</span> testNameIndicatesUnsupported = testName.find(<span class="stringliteral">&quot;UNSUPPORTED&quot;</span>) != std::string::npos;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; testResult.size(); ++i)</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; {</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; CHECK_MESSAGE(testNameIndicatesUnsupported != testResult[i].m_Supported,</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="stringliteral">&quot;The test name does not match the supportedness it is reporting&quot;</span>);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">if</span> (testResult[i].m_Supported)</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; {</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">auto</span> result = <a class="code" href="include_2armnn_test_utils_2_tensor_helpers_8hpp.xhtml#a5fea88a1c3398e303fb83b6db155ff2d">CompareTensors</a>(testResult[i].m_ActualData,</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; testResult[i].m_ExpectedData,</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; testResult[i].m_ActualShape,</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; testResult[i].m_ExpectedShape);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; CHECK_MESSAGE(result.m_Result, result.m_Message.str());</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; }</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;}</div><div class="ttc" id="include_2armnn_test_utils_2_tensor_helpers_8hpp_xhtml_a5fea88a1c3398e303fb83b6db155ff2d"><div class="ttname"><a href="include_2armnn_test_utils_2_tensor_helpers_8hpp.xhtml#a5fea88a1c3398e303fb83b6db155ff2d">CompareTensors</a></div><div class="ttdeci">armnn::PredicateResult CompareTensors(const std::vector&lt; T &gt; &amp;actualData, const std::vector&lt; T &gt; &amp;expectedData, const armnn::TensorShape &amp;actualShape, const armnn::TensorShape &amp;expectedShape, bool compareBoolean=false, bool isDynamic=false)</div><div class="ttdef"><b>Definition:</b> <a href="include_2armnn_test_utils_2_tensor_helpers_8hpp_source.xhtml#l00073">TensorHelpers.hpp:73</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="af9e4dd62da9266a1364032ada0267f9b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af9e4dd62da9266a1364032ada0267f9b">&#9670;&nbsp;</a></span>ConfigureLoggingTest()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigureLoggingTest </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00022">22</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+<p class="reference">References <a class="el" href="_utils_8cpp_source.xhtml#l00018">armnn::ConfigureLogging()</a>, and <a class="el" href="namespacearmnn.xhtml#a93a3ba385cad27c4774e5fe64c025d3da882384ec38ce8d9582b57e70861730e4">armnn::Fatal</a>.</p>
+<div class="fragment"><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;{</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <span class="comment">// Configures logging for both the ARMNN library and this test program.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <a class="code" href="namespacearmnn.xhtml#aa59f7a819c3e29d10ffc41e5c0616872">armnn::ConfigureLogging</a>(<span class="keyword">true</span>, <span class="keyword">true</span>, <a class="code" href="namespacearmnn.xhtml#a93a3ba385cad27c4774e5fe64c025d3da882384ec38ce8d9582b57e70861730e4">armnn::LogSeverity::Fatal</a>);</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;}</div><div class="ttc" id="namespacearmnn_xhtml_aa59f7a819c3e29d10ffc41e5c0616872"><div class="ttname"><a href="namespacearmnn.xhtml#aa59f7a819c3e29d10ffc41e5c0616872">armnn::ConfigureLogging</a></div><div class="ttdeci">void ConfigureLogging(bool printToStandardOutput, bool printToDebugOutput, LogSeverity severity)</div><div class="ttdoc">Configures the logging behaviour of the ARMNN library. </div><div class="ttdef"><b>Definition:</b> <a href="_utils_8cpp_source.xhtml#l00018">Utils.cpp:18</a></div></div>
+<div class="ttc" id="namespacearmnn_xhtml_a93a3ba385cad27c4774e5fe64c025d3da882384ec38ce8d9582b57e70861730e4"><div class="ttname"><a href="namespacearmnn.xhtml#a93a3ba385cad27c4774e5fe64c025d3da882384ec38ce8d9582b57e70861730e4">armnn::LogSeverity::Fatal</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="a10075eca890bd829a87b914c5aa18cb3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10075eca890bd829a87b914c5aa18cb3">&#9670;&nbsp;</a></span>RunTestFunction()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void RunTestFunction </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>testName</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">TFuncPtr&#160;</td>
+ <td class="paramname"><em>testFunction</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">Args...&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00079">79</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+<p class="reference">References <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00043">CompareTestResultIfSupported()</a>, <a class="el" href="_profiling_8cpp_source.xhtml#l00568">ProfilerManager::GetInstance()</a>, and <a class="el" href="_profiling_8cpp_source.xhtml#l00575">ProfilerManager::RegisterProfiler()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;{</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; std::unique_ptr&lt;armnn::IProfiler&gt; profiler = std::make_unique&lt;armnn::IProfiler&gt;();</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="classarmnn_1_1_profiler_manager.xhtml#a93857080c2523bf3395e7aa7e6024d5c">armnn::ProfilerManager::GetInstance</a>().<a class="code" href="classarmnn_1_1_profiler_manager.xhtml#a7b1e3e5bf386004541be2b5b22443208">RegisterProfiler</a>(profiler.get());</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keyword">auto</span> memoryManager = WorkloadFactoryHelper&lt;FactoryType&gt;::GetMemoryManager();</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; FactoryType workloadFactory = WorkloadFactoryHelper&lt;FactoryType&gt;::GetFactory(memoryManager);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keyword">auto</span> testResult = (*testFunction)(workloadFactory, memoryManager, args...);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="est_utils_2_unit_tests_8hpp.xhtml#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a>(testName, testResult);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="classarmnn_1_1_profiler_manager.xhtml#a93857080c2523bf3395e7aa7e6024d5c">armnn::ProfilerManager::GetInstance</a>().<a class="code" href="classarmnn_1_1_profiler_manager.xhtml#a7b1e3e5bf386004541be2b5b22443208">RegisterProfiler</a>(<span class="keyword">nullptr</span>);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;}</div><div class="ttc" id="est_utils_2_unit_tests_8hpp_xhtml_acbe506e0365feeed352effe52b1e4852"><div class="ttname"><a href="est_utils_2_unit_tests_8hpp.xhtml#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a></div><div class="ttdeci">void CompareTestResultIfSupported(const std::string &amp;testName, const LayerTestResult&lt; T, n &gt; &amp;testResult)</div><div class="ttdoc">Executes CHECK_MESSAGE on CompareTensors() return value so that the predicate_result message is repor...</div><div class="ttdef"><b>Definition:</b> <a href="est_utils_2_unit_tests_8hpp_source.xhtml#l00043">UnitTests.hpp:43</a></div></div>
+<div class="ttc" id="classarmnn_1_1_profiler_manager_xhtml_a93857080c2523bf3395e7aa7e6024d5c"><div class="ttname"><a href="classarmnn_1_1_profiler_manager.xhtml#a93857080c2523bf3395e7aa7e6024d5c">armnn::ProfilerManager::GetInstance</a></div><div class="ttdeci">static ProfilerManager &amp; GetInstance()</div><div class="ttdef"><b>Definition:</b> <a href="_profiling_8cpp_source.xhtml#l00568">Profiling.cpp:568</a></div></div>
+<div class="ttc" id="classarmnn_1_1_profiler_manager_xhtml_a7b1e3e5bf386004541be2b5b22443208"><div class="ttname"><a href="classarmnn_1_1_profiler_manager.xhtml#a7b1e3e5bf386004541be2b5b22443208">armnn::ProfilerManager::RegisterProfiler</a></div><div class="ttdeci">void RegisterProfiler(IProfiler *profiler)</div><div class="ttdef"><b>Definition:</b> <a href="_profiling_8cpp_source.xhtml#l00575">Profiling.cpp:575</a></div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a id="ae9222f9685bc46d77397c262858172c3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae9222f9685bc46d77397c262858172c3">&#9670;&nbsp;</a></span>RunTestFunctionUsingTensorHandleFactory()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void RunTestFunctionUsingTensorHandleFactory </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>testName</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">TFuncPtr&#160;</td>
+ <td class="paramname"><em>testFunction</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">Args...&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00095">95</a> of file <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml">UnitTests.hpp</a>.</p>
+
+<p class="reference">References <a class="el" href="est_utils_2_unit_tests_8hpp_source.xhtml#l00043">CompareTestResultIfSupported()</a>, <a class="el" href="_profiling_8cpp_source.xhtml#l00568">ProfilerManager::GetInstance()</a>, and <a class="el" href="_profiling_8cpp_source.xhtml#l00575">ProfilerManager::RegisterProfiler()</a>.</p>
+<div class="fragment"><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;{</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; std::unique_ptr&lt;armnn::IProfiler&gt; profiler = std::make_unique&lt;armnn::IProfiler&gt;();</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="classarmnn_1_1_profiler_manager.xhtml#a93857080c2523bf3395e7aa7e6024d5c">armnn::ProfilerManager::GetInstance</a>().<a class="code" href="classarmnn_1_1_profiler_manager.xhtml#a7b1e3e5bf386004541be2b5b22443208">RegisterProfiler</a>(profiler.get());</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">auto</span> memoryManager = WorkloadFactoryHelper&lt;FactoryType&gt;::GetMemoryManager();</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; FactoryType workloadFactory = WorkloadFactoryHelper&lt;FactoryType&gt;::GetFactory(memoryManager);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keyword">auto</span> tensorHandleFactory = WorkloadFactoryHelper&lt;FactoryType&gt;::GetTensorHandleFactory(memoryManager);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">auto</span> testResult = (*testFunction)(workloadFactory, memoryManager, tensorHandleFactory, args...);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="est_utils_2_unit_tests_8hpp.xhtml#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a>(testName, testResult);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="classarmnn_1_1_profiler_manager.xhtml#a93857080c2523bf3395e7aa7e6024d5c">armnn::ProfilerManager::GetInstance</a>().<a class="code" href="classarmnn_1_1_profiler_manager.xhtml#a7b1e3e5bf386004541be2b5b22443208">RegisterProfiler</a>(<span class="keyword">nullptr</span>);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;}</div><div class="ttc" id="est_utils_2_unit_tests_8hpp_xhtml_acbe506e0365feeed352effe52b1e4852"><div class="ttname"><a href="est_utils_2_unit_tests_8hpp.xhtml#acbe506e0365feeed352effe52b1e4852">CompareTestResultIfSupported</a></div><div class="ttdeci">void CompareTestResultIfSupported(const std::string &amp;testName, const LayerTestResult&lt; T, n &gt; &amp;testResult)</div><div class="ttdoc">Executes CHECK_MESSAGE on CompareTensors() return value so that the predicate_result message is repor...</div><div class="ttdef"><b>Definition:</b> <a href="est_utils_2_unit_tests_8hpp_source.xhtml#l00043">UnitTests.hpp:43</a></div></div>
+<div class="ttc" id="classarmnn_1_1_profiler_manager_xhtml_a93857080c2523bf3395e7aa7e6024d5c"><div class="ttname"><a href="classarmnn_1_1_profiler_manager.xhtml#a93857080c2523bf3395e7aa7e6024d5c">armnn::ProfilerManager::GetInstance</a></div><div class="ttdeci">static ProfilerManager &amp; GetInstance()</div><div class="ttdef"><b>Definition:</b> <a href="_profiling_8cpp_source.xhtml#l00568">Profiling.cpp:568</a></div></div>
+<div class="ttc" id="classarmnn_1_1_profiler_manager_xhtml_a7b1e3e5bf386004541be2b5b22443208"><div class="ttname"><a href="classarmnn_1_1_profiler_manager.xhtml#a7b1e3e5bf386004541be2b5b22443208">armnn::ProfilerManager::RegisterProfiler</a></div><div class="ttdeci">void RegisterProfiler(IProfiler *profiler)</div><div class="ttdef"><b>Definition:</b> <a href="_profiling_8cpp_source.xhtml#l00575">Profiling.cpp:575</a></div></div>
+</div><!-- fragment -->
+</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_f574f3650e467f7ec35d628d20229555.xhtml">armnnTestUtils</a></li><li class="navelem"><a class="el" href="est_utils_2_unit_tests_8hpp.xhtml">UnitTests.hpp</a></li>
+ <li class="footer">Generated on Wed Mar 9 2022 12:01:02 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>