blob: 8677afd01963ce746a6cdb43fe9c10fdc0be6ff2 [file] [log] [blame]
<!-- HTML header for doxygen 1.8.9.1-->
<!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.11"/>
<meta name="robots" content="NOINDEX, NOFOLLOW" /> <!-- Prevent indexing by search engines -->
<title>Compute Library: arm_compute::test Namespace 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);
$(window).load(resizeHeight);
</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/javascript">
$(document).ready(function() { init_search(); });
</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" />
</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;">
<td style="padding-left: 0.5em;">
<div id="projectname">Compute Library
&#160;<span id="projectnumber">v17.06</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.xhtml"><span>Main&#160;Page</span></a></li>
<li><a href="pages.xhtml"><span>Related&#160;Pages</span></a></li>
<li class="current"><a href="namespaces.xhtml"><span>Namespaces</span></a></li>
<li><a href="annotated.xhtml"><span>Data&#160;Structures</span></a></li>
<li><a href="files.xhtml"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="namespaces.xhtml"><span>Namespace&#160;List</span></a></li>
<li><a href="namespacemembers.xhtml"><span>Namespace&#160;Members</span></a></li>
</ul>
</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('namespacearm__compute_1_1test.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="#namespaces">Namespaces</a> &#124;
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">arm_compute::test Namespace Reference</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacearm__compute_1_1test_1_1benchmark"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1benchmark.xhtml">benchmark</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespacearm__compute_1_1test_1_1cl"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1cl.xhtml">cl</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespacearm__compute_1_1test_1_1cpp11"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1cpp11.xhtml">cpp11</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespacearm__compute_1_1test_1_1cpp14"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1cpp14.xhtml">cpp14</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespacearm__compute_1_1test_1_1fixed__point__arithmetic"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic.xhtml">fixed_point_arithmetic</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespacearm__compute_1_1test_1_1model__objects"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1model__objects.xhtml">model_objects</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespacearm__compute_1_1test_1_1neon"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1neon.xhtml">neon</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespacearm__compute_1_1test_1_1performance"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1performance.xhtml">performance</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespacearm__compute_1_1test_1_1traits"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1traits.xhtml">traits</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespacearm__compute_1_1test_1_1validation"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml">validation</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_activation_functions.xhtml">ActivationFunctions</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing all possible activation functions. <a href="classarm__compute_1_1test_1_1_activation_functions.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_activation_layer_data_object.xhtml">ActivationLayerDataObject</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_alex_net_activation_layer_dataset.xhtml">AlexNetActivationLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_alex_net_convolution_layer_dataset.xhtml">AlexNetConvolutionLayerDataset</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">AlexNet's convolution layers tensor shapes. <a href="classarm__compute_1_1test_1_1_alex_net_convolution_layer_dataset.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_alex_net_fully_connected_layer_dataset.xhtml">AlexNetFullyConnectedLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_alex_net_normalization_layer_dataset.xhtml">AlexNetNormalizationLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_alex_net_pooling_layer_dataset.xhtml">AlexNetPoolingLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_all_data_types.xhtml">AllDataTypes</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing all data types. <a href="classarm__compute_1_1test_1_1_all_data_types.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_batch_normalization_layer_data_object.xhtml">BatchNormalizationLayerDataObject</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_border_modes.xhtml">BorderModes</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing all possible border modes. <a href="classarm__compute_1_1test_1_1_border_modes.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_c_n_n_data_types.xhtml">CNNDataTypes</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Supported CNN types. <a href="classarm__compute_1_1test_1_1_c_n_n_data_types.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_c_n_n_fixed_point_data_types.xhtml">CNNFixedPointDataTypes</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Supported CNN fixed point types. <a href="classarm__compute_1_1test_1_1_c_n_n_fixed_point_data_types.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_c_n_n_float_data_types.xhtml">CNNFloatDataTypes</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Supported CNN float types. <a href="classarm__compute_1_1test_1_1_c_n_n_float_data_types.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1test_1_1common__promoted__signed__type.xhtml">common_promoted_signed_type</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Find the signed promoted common type. <a href="structarm__compute_1_1test_1_1common__promoted__signed__type.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_convert_policies.xhtml">ConvertPolicies</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing all possible convert/overflow policies. <a href="classarm__compute_1_1test_1_1_convert_policies.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_convolution_layer_data_object.xhtml">ConvolutionLayerDataObject</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convolution Layer data object. <a href="classarm__compute_1_1test_1_1_convolution_layer_data_object.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_data_types.xhtml">DataTypes</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract data set containing data types. <a href="classarm__compute_1_1test_1_1_data_types.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_direct_convolution_shapes.xhtml">DirectConvolutionShapes</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing direct convolution tensor shapes. <a href="classarm__compute_1_1test_1_1_direct_convolution_shapes.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_fixed_point_data_types.xhtml">FixedPointDataTypes</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing all fixed point data types. <a href="classarm__compute_1_1test_1_1_fixed_point_data_types.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_float_data_types.xhtml">FloatDataTypes</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing all floating point data types. <a href="classarm__compute_1_1test_1_1_float_data_types.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_fully_connected_layer_data_object.xhtml">FullyConnectedLayerDataObject</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_g_e_m_m_data_object.xhtml">GEMMDataObject</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_generic_dataset.xhtml">GenericDataset</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract data set containing multiple objects T. <a href="classarm__compute_1_1test_1_1_generic_dataset.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_goog_le_net_activation_layer_dataset.xhtml">GoogLeNetActivationLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_goog_le_net_convolution_layer_dataset1.xhtml">GoogLeNetConvolutionLayerDataset1</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GoogleLeNet v1 convolution layers tensor shapes (Part 1). <a href="classarm__compute_1_1test_1_1_goog_le_net_convolution_layer_dataset1.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_goog_le_net_convolution_layer_dataset2.xhtml">GoogLeNetConvolutionLayerDataset2</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">GoogleLeNet v1 convolution layers tensor shapes (Part 2). <a href="classarm__compute_1_1test_1_1_goog_le_net_convolution_layer_dataset2.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_goog_le_net_fully_connected_layer_dataset.xhtml">GoogLeNetFullyConnectedLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_goog_le_net_g_e_m_m_dataset1.xhtml">GoogLeNetGEMMDataset1</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_goog_le_net_g_e_m_m_dataset2.xhtml">GoogLeNetGEMMDataset2</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_goog_le_net_normalization_layer_dataset.xhtml">GoogLeNetNormalizationLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_goog_le_net_pooling_layer_dataset.xhtml">GoogLeNetPoolingLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_i_accessor.xhtml">IAccessor</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface to provide information and access to tensor like structures. <a href="classarm__compute_1_1test_1_1_i_accessor.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_image_dataset.xhtml">ImageDataset</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract data set containing image names. <a href="classarm__compute_1_1test_1_1_image_dataset.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_interpolation_policies.xhtml">InterpolationPolicies</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing all possible interpolation policies. <a href="classarm__compute_1_1test_1_1_interpolation_policies.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_large_fully_connected_layer_dataset.xhtml">LargeFullyConnectedLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_large_g_e_m_m_dataset.xhtml">LargeGEMMDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_large_images.xhtml">LargeImages</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing names of large images. <a href="classarm__compute_1_1test_1_1_large_images.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_large_shapes.xhtml">LargeShapes</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing large tensor shapes. <a href="classarm__compute_1_1test_1_1_large_shapes.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_le_net5_activation_layer_dataset.xhtml">LeNet5ActivationLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_le_net5_convolution_layer_dataset.xhtml">LeNet5ConvolutionLayerDataset</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">LeNet5's convolution layers tensor shapes. <a href="classarm__compute_1_1test_1_1_le_net5_convolution_layer_dataset.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_le_net5_fully_connected_layer_dataset.xhtml">LeNet5FullyConnectedLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_le_net5_pooling_layer_dataset.xhtml">LeNet5PoolingLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_normalization_layer_data_object.xhtml">NormalizationLayerDataObject</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_normalization_types.xhtml">NormalizationTypes</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing all possible normalization types. <a href="classarm__compute_1_1test_1_1_normalization_types.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_pooling_layer_data_object.xhtml">PoolingLayerDataObject</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_program_options.xhtml">ProgramOptions</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines available commandline arguments and allows to parse them. <a href="classarm__compute_1_1test_1_1_program_options.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_random_batch_normalization_layer_dataset.xhtml">RandomBatchNormalizationLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_random_pooling_layer_dataset.xhtml">RandomPoolingLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_raw_tensor.xhtml">RawTensor</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Simple tensor object that stores elements in a consecutive chunk of memory. <a href="classarm__compute_1_1test_1_1_raw_tensor.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_rounding_policies.xhtml">RoundingPolicies</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing all possible rounding policies. <a href="classarm__compute_1_1test_1_1_rounding_policies.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_shape_dataset.xhtml">ShapeDataset</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract data set containing tensor shapes. <a href="classarm__compute_1_1test_1_1_shape_dataset.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_signed_data_types.xhtml">SignedDataTypes</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing all signed data types. <a href="classarm__compute_1_1test_1_1_signed_data_types.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_small1_d_shape.xhtml">Small1DShape</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing one 1D tensor shape. <a href="classarm__compute_1_1test_1_1_small1_d_shape.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_small_convolution_layer_dataset.xhtml">SmallConvolutionLayerDataset</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing small convolution layer shapes. <a href="classarm__compute_1_1test_1_1_small_convolution_layer_dataset.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_small_fully_connected_layer_dataset.xhtml">SmallFullyConnectedLayerDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_small_g_e_m_m_dataset.xhtml">SmallGEMMDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_small_images.xhtml">SmallImages</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing names of small images. <a href="classarm__compute_1_1test_1_1_small_images.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_small_shapes.xhtml">SmallShapes</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing small tensor shapes. <a href="classarm__compute_1_1test_1_1_small_shapes.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_tensor_cache.xhtml">TensorCache</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores <a class="el" href="classarm__compute_1_1test_1_1_raw_tensor.xhtml">RawTensor</a> categorised by the image they are created from including name, format and channel. <a href="classarm__compute_1_1test_1_1_tensor_cache.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_tensor_library.xhtml">TensorLibrary</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Factory class to create and fill tensors. <a href="classarm__compute_1_1test_1_1_tensor_library.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_threshold_data_object.xhtml">ThresholdDataObject</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_threshold_dataset.xhtml">ThresholdDataset</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1test_1_1_unsigned_data_types.xhtml">UnsignedDataTypes</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data set containing all unsigned data types. <a href="classarm__compute_1_1test_1_1_unsigned_data_types.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarm__compute_1_1test_1_1_user_configuration.xhtml">UserConfiguration</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Container providing easy access to runtime options provided by the user. <a href="structarm__compute_1_1test_1_1_user_configuration.xhtml#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:aa1a629d971f45dc8c4cb7ec2d5c8728e"><td class="memTemplParams" colspan="2">template&lt;unsigned int Size&gt; </td></tr>
<tr class="memitem:aa1a629d971f45dc8c4cb7ec2d5c8728e"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#aa1a629d971f45dc8c4cb7ec2d5c8728e">ActivationLayerDataset</a> = <a class="el" href="classarm__compute_1_1test_1_1_generic_dataset.xhtml">GenericDataset</a>&lt; <a class="el" href="classarm__compute_1_1test_1_1_activation_layer_data_object.xhtml">ActivationLayerDataObject</a>, Size &gt;</td></tr>
<tr class="separator:aa1a629d971f45dc8c4cb7ec2d5c8728e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b006671b13de04edb1001f32966d9de"><td class="memTemplParams" colspan="2">template&lt;unsigned int Size&gt; </td></tr>
<tr class="memitem:a6b006671b13de04edb1001f32966d9de"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a6b006671b13de04edb1001f32966d9de">BatchNormalizationLayerDataset</a> = <a class="el" href="classarm__compute_1_1test_1_1_generic_dataset.xhtml">GenericDataset</a>&lt; <a class="el" href="classarm__compute_1_1test_1_1_batch_normalization_layer_data_object.xhtml">BatchNormalizationLayerDataObject</a>, Size &gt;</td></tr>
<tr class="separator:a6b006671b13de04edb1001f32966d9de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18ed03ad3383da62aec512f04372d2f7"><td class="memTemplParams" colspan="2">template&lt;unsigned int Size&gt; </td></tr>
<tr class="memitem:a18ed03ad3383da62aec512f04372d2f7"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a18ed03ad3383da62aec512f04372d2f7">ConvolutionLayerDataset</a> = <a class="el" href="classarm__compute_1_1test_1_1_generic_dataset.xhtml">GenericDataset</a>&lt; <a class="el" href="classarm__compute_1_1test_1_1_convolution_layer_data_object.xhtml">ConvolutionLayerDataObject</a>, Size &gt;</td></tr>
<tr class="separator:a18ed03ad3383da62aec512f04372d2f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad41fe013a10729c8790f3d30bfeac8f1"><td class="memTemplParams" colspan="2">template&lt;unsigned int Size&gt; </td></tr>
<tr class="memitem:ad41fe013a10729c8790f3d30bfeac8f1"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#ad41fe013a10729c8790f3d30bfeac8f1">FullyConnectedLayerDataset</a> = <a class="el" href="classarm__compute_1_1test_1_1_generic_dataset.xhtml">GenericDataset</a>&lt; <a class="el" href="classarm__compute_1_1test_1_1_fully_connected_layer_data_object.xhtml">FullyConnectedLayerDataObject</a>, Size &gt;</td></tr>
<tr class="separator:ad41fe013a10729c8790f3d30bfeac8f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62dd75dba5587b539e722ea857347c26"><td class="memTemplParams" colspan="2">template&lt;unsigned int Size&gt; </td></tr>
<tr class="memitem:a62dd75dba5587b539e722ea857347c26"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a62dd75dba5587b539e722ea857347c26">NormalizationLayerDataset</a> = <a class="el" href="classarm__compute_1_1test_1_1_generic_dataset.xhtml">GenericDataset</a>&lt; <a class="el" href="classarm__compute_1_1test_1_1_normalization_layer_data_object.xhtml">NormalizationLayerDataObject</a>, Size &gt;</td></tr>
<tr class="separator:a62dd75dba5587b539e722ea857347c26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af11de09f727dca1d78602572247fa5ff"><td class="memTemplParams" colspan="2">template&lt;unsigned int Size&gt; </td></tr>
<tr class="memitem:af11de09f727dca1d78602572247fa5ff"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#af11de09f727dca1d78602572247fa5ff">PoolingLayerDataset</a> = <a class="el" href="classarm__compute_1_1test_1_1_generic_dataset.xhtml">GenericDataset</a>&lt; <a class="el" href="classarm__compute_1_1test_1_1_pooling_layer_data_object.xhtml">PoolingLayerDataObject</a>, Size &gt;</td></tr>
<tr class="separator:af11de09f727dca1d78602572247fa5ff"><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:ac04d36ea1fb41a3dfd3afd4a89ef2470"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#ac04d36ea1fb41a3dfd3afd4a89ef2470">swap</a> (<a class="el" href="classarm__compute_1_1test_1_1_raw_tensor.xhtml">RawTensor</a> &amp;tensor1, <a class="el" href="classarm__compute_1_1test_1_1_raw_tensor.xhtml">RawTensor</a> &amp;tensor2)</td></tr>
<tr class="separator:ac04d36ea1fb41a3dfd3afd4a89ef2470"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa337ab76176f3c4193642ac6de3a61cf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#aa337ab76176f3c4193642ac6de3a61cf">get_format_for_channel</a> (<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> channel)</td></tr>
<tr class="memdesc:aa337ab76176f3c4193642ac6de3a61cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Look up the format corresponding to a channel. <a href="#aa337ab76176f3c4193642ac6de3a61cf">More...</a><br /></td></tr>
<tr class="separator:aa337ab76176f3c4193642ac6de3a61cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7dbe33793790fc37a5eda11ed6b0273"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#ac7dbe33793790fc37a5eda11ed6b0273">get_channel_format</a> (<a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a> channel)</td></tr>
<tr class="memdesc:ac7dbe33793790fc37a5eda11ed6b0273"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the format of a channel. <a href="#ac7dbe33793790fc37a5eda11ed6b0273">More...</a><br /></td></tr>
<tr class="separator:ac7dbe33793790fc37a5eda11ed6b0273"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ebbb23b0094d47c51226d58e17e6447"><td class="memTemplParams" colspan="2">template&lt;typename F , typename T &gt; </td></tr>
<tr class="memitem:a1ebbb23b0094d47c51226d58e17e6447"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a1ebbb23b0094d47c51226d58e17e6447">foldl</a> (F &amp;&amp;, const T &amp;value)</td></tr>
<tr class="memdesc:a1ebbb23b0094d47c51226d58e17e6447"><td class="mdescLeft">&#160;</td><td class="mdescRight">Base case of foldl. <a href="#a1ebbb23b0094d47c51226d58e17e6447">More...</a><br /></td></tr>
<tr class="separator:a1ebbb23b0094d47c51226d58e17e6447"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad933f996ccb22854ae56dd86de8cbbfe"><td class="memTemplParams" colspan="2">template&lt;typename F , typename T , typename U &gt; </td></tr>
<tr class="memitem:ad933f996ccb22854ae56dd86de8cbbfe"><td class="memTemplItemLeft" align="right" valign="top">auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#ad933f996ccb22854ae56dd86de8cbbfe">foldl</a> (F &amp;&amp;func, T &amp;&amp;value1, U &amp;&amp;value2) -&gt; decltype(func(value1, value2))</td></tr>
<tr class="memdesc:ad933f996ccb22854ae56dd86de8cbbfe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Base case of foldl. <a href="#ad933f996ccb22854ae56dd86de8cbbfe">More...</a><br /></td></tr>
<tr class="separator:ad933f996ccb22854ae56dd86de8cbbfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89322cccde5e0a27d3a41085d3fd366c"><td class="memTemplParams" colspan="2">template&lt;typename F , typename I , typename T , typename... Vs&gt; </td></tr>
<tr class="memitem:a89322cccde5e0a27d3a41085d3fd366c"><td class="memTemplItemLeft" align="right" valign="top">I&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a89322cccde5e0a27d3a41085d3fd366c">foldl</a> (F &amp;&amp;func, I &amp;&amp;initial, T &amp;&amp;value, Vs &amp;&amp;...values)</td></tr>
<tr class="memdesc:a89322cccde5e0a27d3a41085d3fd366c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fold left. <a href="#a89322cccde5e0a27d3a41085d3fd366c">More...</a><br /></td></tr>
<tr class="separator:a89322cccde5e0a27d3a41085d3fd366c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a670cba074b4be0bf9af03e48250bd616"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a670cba074b4be0bf9af03e48250bd616">shape_to_valid_region</a> (<a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> shape)</td></tr>
<tr class="memdesc:a670cba074b4be0bf9af03e48250bd616"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a valid region covering the enitre tensor shape. <a href="#a670cba074b4be0bf9af03e48250bd616">More...</a><br /></td></tr>
<tr class="separator:a670cba074b4be0bf9af03e48250bd616"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b97d7bba7b5cee833eb5c2282e8d246"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a6b97d7bba7b5cee833eb5c2282e8d246">shape_to_valid_region_undefined_border</a> (<a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> shape, <a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a> border_size)</td></tr>
<tr class="memdesc:a6b97d7bba7b5cee833eb5c2282e8d246"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a valid region covering the tensor shape with UNDEFINED border mode and specified border size. <a href="#a6b97d7bba7b5cee833eb5c2282e8d246">More...</a><br /></td></tr>
<tr class="separator:a6b97d7bba7b5cee833eb5c2282e8d246"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a356470553f2afd5673a41cf4da48e33b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a356470553f2afd5673a41cf4da48e33b">required_padding</a> (int size, int step)</td></tr>
<tr class="memdesc:a356470553f2afd5673a41cf4da48e33b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the required padding given the available <code>size</code> and the required. <a href="#a356470553f2afd5673a41cf4da48e33b">More...</a><br /></td></tr>
<tr class="separator:a356470553f2afd5673a41cf4da48e33b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08e86555c8b4d8ae148173d0bda4552f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a08e86555c8b4d8ae148173d0bda4552f">required_padding_undefined_border_write</a> (int size, int step, int border_size)</td></tr>
<tr class="memdesc:a08e86555c8b4d8ae148173d0bda4552f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the required padding for writing operation with UNDEFINED border mode. <a href="#a08e86555c8b4d8ae148173d0bda4552f">More...</a><br /></td></tr>
<tr class="separator:a08e86555c8b4d8ae148173d0bda4552f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaaa9677420848c94f3a8fd0c3bb0d1fc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#aaaa9677420848c94f3a8fd0c3bb0d1fc">required_padding_undefined_border_read</a> (int size, int read_step, int process_step)</td></tr>
<tr class="memdesc:aaaa9677420848c94f3a8fd0c3bb0d1fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the required padding for reading operation with UNDEFINED border mode. <a href="#aaaa9677420848c94f3a8fd0c3bb0d1fc">More...</a><br /></td></tr>
<tr class="separator:aaaa9677420848c94f3a8fd0c3bb0d1fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e6934e95738573214c2ce1d6648d116"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a1e6934e95738573214c2ce1d6648d116"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a1e6934e95738573214c2ce1d6648d116">store_value_with_data_type</a> (void *ptr, T value, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a> data_type)</td></tr>
<tr class="memdesc:a1e6934e95738573214c2ce1d6648d116"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write the value after casting the pointer according to <code>data_type</code>. <a href="#a1e6934e95738573214c2ce1d6648d116">More...</a><br /></td></tr>
<tr class="separator:a1e6934e95738573214c2ce1d6648d116"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4965b2f6821e0cf0afee738158bd8377"><td class="memTemplParams" colspan="2">template&lt;typename U , typename T &gt; </td></tr>
<tr class="memitem:a4965b2f6821e0cf0afee738158bd8377"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a4965b2f6821e0cf0afee738158bd8377">saturate_cast</a> (T val)</td></tr>
<tr class="memdesc:a4965b2f6821e0cf0afee738158bd8377"><td class="mdescLeft">&#160;</td><td class="mdescRight">Saturate a value of type T against the numeric limits of type U. <a href="#a4965b2f6821e0cf0afee738158bd8377">More...</a><br /></td></tr>
<tr class="separator:a4965b2f6821e0cf0afee738158bd8377"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24d8c0391cfa38e78969b6ad97c0ff09"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a24d8c0391cfa38e78969b6ad97c0ff09">index2coord</a> (const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape, int index)</td></tr>
<tr class="memdesc:a24d8c0391cfa38e78969b6ad97c0ff09"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a linear index into n-dimensional coordinates. <a href="#a24d8c0391cfa38e78969b6ad97c0ff09">More...</a><br /></td></tr>
<tr class="separator:a24d8c0391cfa38e78969b6ad97c0ff09"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9be4cb7e6ee20063a4a10bc3abb750b9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a9be4cb7e6ee20063a4a10bc3abb750b9">coord2index</a> (const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;shape, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;coord)</td></tr>
<tr class="memdesc:a9be4cb7e6ee20063a4a10bc3abb750b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Linearise the given coordinate. <a href="#a9be4cb7e6ee20063a4a10bc3abb750b9">More...</a><br /></td></tr>
<tr class="separator:a9be4cb7e6ee20063a4a10bc3abb750b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58ee979a599b3b6a2587964106b1910c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a58ee979a599b3b6a2587964106b1910c">is_in_valid_region</a> (const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;valid_region, const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;coord)</td></tr>
<tr class="memdesc:a58ee979a599b3b6a2587964106b1910c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if a coordinate is within a valid region. <a href="#a58ee979a599b3b6a2587964106b1910c">More...</a><br /></td></tr>
<tr class="separator:a58ee979a599b3b6a2587964106b1910c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a8f4fc4a0603d589eb1db7a8f539a6279"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structarm__compute_1_1test_1_1performance_1_1_performance_user_configuration.xhtml">PerformanceUserConfiguration</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a8f4fc4a0603d589eb1db7a8f539a6279">user_config</a></td></tr>
<tr class="separator:a8f4fc4a0603d589eb1db7a8f539a6279"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ced6442a379a75e8a6c4be093fb666b"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classarm__compute_1_1test_1_1_tensor_library.xhtml">TensorLibrary</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearm__compute_1_1test.xhtml#a4ced6442a379a75e8a6c4be093fb666b">library</a></td></tr>
<tr class="separator:a4ced6442a379a75e8a6c4be093fb666b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Typedef Documentation</h2>
<a class="anchor" id="aa1a629d971f45dc8c4cb7ec2d5c8728e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="namespacearm__compute_1_1test.xhtml#aa1a629d971f45dc8c4cb7ec2d5c8728e">ActivationLayerDataset</a> = <a class="el" href="classarm__compute_1_1test_1_1_generic_dataset.xhtml">GenericDataset</a>&lt;<a class="el" href="classarm__compute_1_1test_1_1_activation_layer_data_object.xhtml">ActivationLayerDataObject</a>, Size&gt;</td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="_activation_layer_dataset_8h_source.xhtml#l00062">62</a> of file <a class="el" href="_activation_layer_dataset_8h_source.xhtml">ActivationLayerDataset.h</a>.</p>
</div>
</div>
<a class="anchor" id="a6b006671b13de04edb1001f32966d9de"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="namespacearm__compute_1_1test.xhtml#a6b006671b13de04edb1001f32966d9de">BatchNormalizationLayerDataset</a> = <a class="el" href="classarm__compute_1_1test_1_1_generic_dataset.xhtml">GenericDataset</a>&lt;<a class="el" href="classarm__compute_1_1test_1_1_batch_normalization_layer_data_object.xhtml">BatchNormalizationLayerDataObject</a>, Size&gt;</td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="_batch_normalization_layer_dataset_8h_source.xhtml#l00070">70</a> of file <a class="el" href="_batch_normalization_layer_dataset_8h_source.xhtml">BatchNormalizationLayerDataset.h</a>.</p>
</div>
</div>
<a class="anchor" id="a18ed03ad3383da62aec512f04372d2f7"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="namespacearm__compute_1_1test.xhtml#a18ed03ad3383da62aec512f04372d2f7">ConvolutionLayerDataset</a> = <a class="el" href="classarm__compute_1_1test_1_1_generic_dataset.xhtml">GenericDataset</a>&lt;<a class="el" href="classarm__compute_1_1test_1_1_convolution_layer_data_object.xhtml">ConvolutionLayerDataObject</a>, Size&gt;</td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="_convolution_layer_dataset_8h_source.xhtml#l00073">73</a> of file <a class="el" href="_convolution_layer_dataset_8h_source.xhtml">ConvolutionLayerDataset.h</a>.</p>
</div>
</div>
<a class="anchor" id="ad41fe013a10729c8790f3d30bfeac8f1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="namespacearm__compute_1_1test.xhtml#ad41fe013a10729c8790f3d30bfeac8f1">FullyConnectedLayerDataset</a> = <a class="el" href="classarm__compute_1_1test_1_1_generic_dataset.xhtml">GenericDataset</a>&lt;<a class="el" href="classarm__compute_1_1test_1_1_fully_connected_layer_data_object.xhtml">FullyConnectedLayerDataObject</a>, Size&gt;</td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="_fully_connected_layer_dataset_8h_source.xhtml#l00071">71</a> of file <a class="el" href="_fully_connected_layer_dataset_8h_source.xhtml">FullyConnectedLayerDataset.h</a>.</p>
</div>
</div>
<a class="anchor" id="a62dd75dba5587b539e722ea857347c26"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="namespacearm__compute_1_1test.xhtml#a62dd75dba5587b539e722ea857347c26">NormalizationLayerDataset</a> = <a class="el" href="classarm__compute_1_1test_1_1_generic_dataset.xhtml">GenericDataset</a>&lt;<a class="el" href="classarm__compute_1_1test_1_1_normalization_layer_data_object.xhtml">NormalizationLayerDataObject</a>, Size&gt;</td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="_normalization_layer_dataset_8h_source.xhtml#l00063">63</a> of file <a class="el" href="_normalization_layer_dataset_8h_source.xhtml">NormalizationLayerDataset.h</a>.</p>
</div>
</div>
<a class="anchor" id="af11de09f727dca1d78602572247fa5ff"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="namespacearm__compute_1_1test.xhtml#af11de09f727dca1d78602572247fa5ff">PoolingLayerDataset</a> = <a class="el" href="classarm__compute_1_1test_1_1_generic_dataset.xhtml">GenericDataset</a>&lt;<a class="el" href="classarm__compute_1_1test_1_1_pooling_layer_data_object.xhtml">PoolingLayerDataObject</a>, Size&gt;</td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="_pooling_layer_dataset_8h_source.xhtml#l00070">70</a> of file <a class="el" href="_pooling_layer_dataset_8h_source.xhtml">PoolingLayerDataset.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a9be4cb7e6ee20063a4a10bc3abb750b9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int arm_compute::test::coord2index </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;&#160;</td>
<td class="paramname"><em>shape</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;&#160;</td>
<td class="paramname"><em>coord</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</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>Linearise the given coordinate. </p>
<p>Transforms the given coordinate into a linear offset in terms of elements.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">shape</td><td>Shape of the n-dimensional tensor. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">coord</td><td>The to be converted coordinate.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Linear offset to the element. </dd></dl>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00640">640</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<p>References <a class="el" href="_error_8h_source.xhtml#l00115">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00109">Dimensions&lt; T &gt;::num_dimensions()</a>, and <a class="el" href="_tensor_shape_8h_source.xhtml#l00106">TensorShape::total_size()</a>.</p>
<p>Referenced by <a class="el" href="_raw_tensor_8cpp_source.xhtml#l00158">RawTensor::operator()()</a>.</p>
<div class="fragment"><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160;{</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(shape.total_size() == 0, <span class="stringliteral">&quot;Cannot get index from empty shape&quot;</span>);</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(coord.num_dimensions() == 0, <span class="stringliteral">&quot;Cannot get index of empty coordinate&quot;</span>);</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160;</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; <span class="keywordtype">int</span> index = 0;</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; <span class="keywordtype">int</span> dim_size = 1;</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160;</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; coord.num_dimensions(); ++i)</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; {</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; index += coord[i] * dim_size;</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; dim_size *= shape[i];</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; }</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; <span class="keywordflow">return</span> index;</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a5bbdcf574d3f5e412fa6a1117911e67b"><div class="ttname"><a href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_MSG(cond,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00115">Error.h:115</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="a1ebbb23b0094d47c51226d58e17e6447"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">T arm_compute::test::foldl </td>
<td>(</td>
<td class="paramtype">F &amp;&amp;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</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>Base case of foldl. </p>
<dl class="section return"><dt>Returns</dt><dd>value. </dd></dl>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00418">418</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<p>Referenced by <a class="el" href="tests_2_utils_8h_source.xhtml#l00441">foldl()</a>.</p>
<div class="fragment"><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;{</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">return</span> value;</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ad933f996ccb22854ae56dd86de8cbbfe"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">auto arm_compute::test::foldl </td>
<td>(</td>
<td class="paramtype">F &amp;&amp;&#160;</td>
<td class="paramname"><em>func</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">T &amp;&amp;&#160;</td>
<td class="paramname"><em>value1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">U &amp;&amp;&#160;</td>
<td class="paramname"><em>value2</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> -&gt; decltype(func(value1, value2))
</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>Base case of foldl. </p>
<dl class="section return"><dt>Returns</dt><dd>func(value1, value2). </dd></dl>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00428">428</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<div class="fragment"><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160;{</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="keywordflow">return</span> func(value1, value2);</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a class="anchor" id="a89322cccde5e0a27d3a41085d3fd366c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">I arm_compute::test::foldl </td>
<td>(</td>
<td class="paramtype">F &amp;&amp;&#160;</td>
<td class="paramname"><em>func</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">I &amp;&amp;&#160;</td>
<td class="paramname"><em>initial</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">T &amp;&amp;&#160;</td>
<td class="paramname"><em>value</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Vs &amp;&amp;...&#160;</td>
<td class="paramname"><em>values</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</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>Fold left. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">func</td><td>Binary function to be called. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">initial</td><td>Initial value. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Argument passed to the function. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">values</td><td>Remaining arguments. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00441">441</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<p>References <a class="el" href="tests_2_utils_8h_source.xhtml#l00418">foldl()</a>.</p>
<div class="fragment"><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160;{</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1test.xhtml#a89322cccde5e0a27d3a41085d3fd366c">foldl</a>(std::forward&lt;F&gt;(func), func(std::forward&lt;I&gt;(initial), std::forward&lt;T&gt;(value)), std::forward&lt;Vs&gt;(values)...);</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_xhtml_a89322cccde5e0a27d3a41085d3fd366c"><div class="ttname"><a href="namespacearm__compute_1_1test.xhtml#a89322cccde5e0a27d3a41085d3fd366c">arm_compute::test::foldl</a></div><div class="ttdeci">I foldl(F &amp;&amp;func, I &amp;&amp;initial, T &amp;&amp;value, Vs &amp;&amp;...values)</div><div class="ttdoc">Fold left. </div><div class="ttdef"><b>Definition:</b> <a href="tests_2_utils_8h_source.xhtml#l00441">Utils.h:441</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ac7dbe33793790fc37a5eda11ed6b0273"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> arm_compute::test::get_channel_format </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a>&#160;</td>
<td class="paramname"><em>channel</em></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>Return the format of a channel. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">channel</td><td>Channel type.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Format of the given channel. </dd></dl>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00400">400</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<p>References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">arm_compute::B</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">arm_compute::G</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">arm_compute::R</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">arm_compute::U8</a>.</p>
<p>Referenced by <a class="el" href="_tensor_library_8cpp_source.xhtml#l00234">TensorLibrary::fill()</a>.</p>
<div class="fragment"><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160;{</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; {</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordflow">case</span> Channel::R:</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">case</span> Channel::G:</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <span class="keywordflow">case</span> Channel::B:</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="keywordflow">return</span> Format::U8;</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <span class="keywordflow">throw</span> std::runtime_error(<span class="stringliteral">&quot;Unsupported channel&quot;</span>);</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; }</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a class="anchor" id="aa337ab76176f3c4193642ac6de3a61cf"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58">Format</a> arm_compute::test::get_format_for_channel </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455a">Channel</a>&#160;</td>
<td class="paramname"><em>channel</em></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>Look up the format corresponding to a channel. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">channel</td><td>Channel type.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Format that contains the given channel. </dd></dl>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00381">381</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<p>References <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aa9d5ed678fe57bcca610140957afab571">arm_compute::B</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aadfcf28d0734569a6a693bc8194de62bf">arm_compute::G</a>, <a class="el" href="namespacearm__compute.xhtml#a1ce9b523fd4f3b5bbcadcd796183455aae1e1d3d40573127e9ee0480caf1283d6">arm_compute::R</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a30ff380a3be74628024063a99fba10f0">arm_compute::RGB888</a>.</p>
<p>Referenced by <a class="el" href="_tensor_library_8cpp_source.xhtml#l00229">TensorLibrary::fill()</a>, and <a class="el" href="_tensor_library_8cpp_source.xhtml#l00450">TensorLibrary::get()</a>.</p>
<div class="fragment"><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;{</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">switch</span>(channel)</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; {</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">case</span> Channel::R:</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">case</span> Channel::G:</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">case</span> Channel::B:</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">return</span> Format::RGB888;</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordflow">throw</span> std::runtime_error(<span class="stringliteral">&quot;Unsupported channel&quot;</span>);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; }</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a class="anchor" id="a24d8c0391cfa38e78969b6ad97c0ff09"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> arm_compute::test::index2coord </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a> &amp;&#160;</td>
<td class="paramname"><em>shape</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>index</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</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>Convert a linear index into n-dimensional coordinates. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">shape</td><td>Shape of the n-dimensional tensor. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">index</td><td>Linear index specifying the i-th element.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>n-dimensional coordinates. </dd></dl>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00611">611</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<p>References <a class="el" href="_error_8h_source.xhtml#l00115">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00109">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00074">TensorShape::set()</a>, and <a class="el" href="_tensor_shape_8h_source.xhtml#l00106">TensorShape::total_size()</a>.</p>
<p>Referenced by <a class="el" href="_tensor_operations_8h_source.xhtml#l00397">arm_compute::test::validation::tensor_operations::box3x3()</a>, <a class="el" href="_tensor_library_8h_source.xhtml#l00401">TensorLibrary::fill()</a>, and <a class="el" href="_validation_8cpp_source.xhtml#l00196">arm_compute::test::validation::validate()</a>.</p>
<div class="fragment"><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;{</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; <span class="keywordtype">int</span> num_elements = shape.total_size();</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160;</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(index &lt; 0 || index &gt;= num_elements, <span class="stringliteral">&quot;Index has to be in [0, num_elements]&quot;</span>);</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(num_elements == 0, <span class="stringliteral">&quot;Cannot create coordinate from empty shape&quot;</span>);</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160;</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; Coordinates coord{ 0 };</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160;</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">int</span> d = shape.num_dimensions() - 1; d &gt;= 0; --d)</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; {</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; num_elements /= shape[d];</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; coord.set(d, index / num_elements);</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; index %= num_elements;</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; }</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160;</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; <span class="keywordflow">return</span> coord;</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a5bbdcf574d3f5e412fa6a1117911e67b"><div class="ttname"><a href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_MSG(cond,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00115">Error.h:115</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="a58ee979a599b3b6a2587964106b1910c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool arm_compute::test::is_in_valid_region </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> &amp;&#160;</td>
<td class="paramname"><em>valid_region</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classarm__compute_1_1_coordinates.xhtml">Coordinates</a> &amp;&#160;</td>
<td class="paramname"><em>coord</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</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>Check if a coordinate is within a valid region. </p>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00658">658</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<p>References <a class="el" href="_error_8h_source.xhtml#l00115">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00113">ValidRegion::end()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00109">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00119">ValidRegion::shape</a>, and <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00107">ValidRegion::start()</a>.</p>
<p>Referenced by <a class="el" href="_tensor_operations_8h_source.xhtml#l00397">arm_compute::test::validation::tensor_operations::box3x3()</a>, and <a class="el" href="_validation_8cpp_source.xhtml#l00196">arm_compute::test::validation::validate()</a>.</p>
<div class="fragment"><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160;{</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(valid_region.shape.num_dimensions() != coord.num_dimensions(), <span class="stringliteral">&quot;Shapes of valid region and coordinates do not agree&quot;</span>);</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">int</span> d = 0; <span class="keyword">static_cast&lt;</span><span class="keywordtype">size_t</span><span class="keyword">&gt;</span>(d) &lt; coord.num_dimensions(); ++d)</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; {</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; <span class="keywordflow">if</span>(coord[d] &lt; valid_region.start(d) || coord[d] &gt;= valid_region.end(d))</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; {</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; }</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; }</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a5bbdcf574d3f5e412fa6a1117911e67b"><div class="ttname"><a href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_MSG(cond,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00115">Error.h:115</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="a356470553f2afd5673a41cf4da48e33b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int arm_compute::test::required_padding </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>step</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</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>Calculate the required padding given the available <code>size</code> and the required. </p>
<p><code>step</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>Available size. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">step</td><td>Required step size.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Difference between next greater multiple of <code>step</code> and <code>size</code>. </dd></dl>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00486">486</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<p>Referenced by <a class="el" href="tests_2_utils_8h_source.xhtml#l00512">required_padding_undefined_border_read()</a>, and <a class="el" href="tests_2_utils_8h_source.xhtml#l00499">required_padding_undefined_border_write()</a>.</p>
<div class="fragment"><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;{</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <span class="keywordflow">return</span> ((size + step - 1) / step) * step - size;</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a class="anchor" id="aaaa9677420848c94f3a8fd0c3bb0d1fc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int arm_compute::test::required_padding_undefined_border_read </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>read_step</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>process_step</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</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>Calculate the required padding for reading operation with UNDEFINED border mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>Available size. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">read_step</td><td>Required step size; number of elements to read at each iteration. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">process_step</td><td>Required step size; number of elements to process at each iteration.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Required padding size. </dd></dl>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00512">512</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<p>References <a class="el" href="tests_2_utils_8h_source.xhtml#l00486">required_padding()</a>.</p>
<div class="fragment"><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;{</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1test.xhtml#a356470553f2afd5673a41cf4da48e33b">required_padding</a>(size, process_step) + read_step - process_step;</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_xhtml_a356470553f2afd5673a41cf4da48e33b"><div class="ttname"><a href="namespacearm__compute_1_1test.xhtml#a356470553f2afd5673a41cf4da48e33b">arm_compute::test::required_padding</a></div><div class="ttdeci">int required_padding(int size, int step)</div><div class="ttdoc">Calculate the required padding given the available size and the required. </div><div class="ttdef"><b>Definition:</b> <a href="tests_2_utils_8h_source.xhtml#l00486">Utils.h:486</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="a08e86555c8b4d8ae148173d0bda4552f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int arm_compute::test::required_padding_undefined_border_write </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>step</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>border_size</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</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>Calculate the required padding for writing operation with UNDEFINED border mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>Available size. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">step</td><td>Required step size; number of elements to write at each iteration. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">border_size</td><td>Border size.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Required padding size plus border size. </dd></dl>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00499">499</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<p>References <a class="el" href="tests_2_utils_8h_source.xhtml#l00486">required_padding()</a>.</p>
<div class="fragment"><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;{</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacearm__compute_1_1test.xhtml#a356470553f2afd5673a41cf4da48e33b">required_padding</a>(size, step) + border_size;</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_xhtml_a356470553f2afd5673a41cf4da48e33b"><div class="ttname"><a href="namespacearm__compute_1_1test.xhtml#a356470553f2afd5673a41cf4da48e33b">arm_compute::test::required_padding</a></div><div class="ttdeci">int required_padding(int size, int step)</div><div class="ttdoc">Calculate the required padding given the available size and the required. </div><div class="ttdef"><b>Definition:</b> <a href="tests_2_utils_8h_source.xhtml#l00486">Utils.h:486</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="a4965b2f6821e0cf0afee738158bd8377"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">T arm_compute::test::saturate_cast </td>
<td>(</td>
<td class="paramtype">T&#160;</td>
<td class="paramname"><em>val</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Saturate a value of type T against the numeric limits of type U. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>Value to be saturated.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>saturated value. </dd></dl>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00581">581</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<p>References <a class="el" href="tests_2validation_2_fixed_point_8h_source.xhtml#l00880">arm_compute::test::fixed_point_arithmetic::detail::max()</a>.</p>
<p>Referenced by <a class="el" href="_tensor_operations_8h_source.xhtml#l00270">arm_compute::test::validation::tensor_operations::absolute_difference()</a>, <a class="el" href="_tensor_operations_8h_source.xhtml#l00283">arm_compute::test::validation::tensor_operations::accumulate()</a>, and <a class="el" href="_tensor_operations_8h_source.xhtml#l00296">arm_compute::test::validation::tensor_operations::accumulate_squared()</a>.</p>
<div class="fragment"><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160;{</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keywordflow">if</span>(val &gt; static_cast&lt;T&gt;(<a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#ad91bb73431b4de1f4946ed949d444849">std::numeric_limits&lt;U&gt;::max</a>()))</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; {</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; val = <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(<a class="code" href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#ad91bb73431b4de1f4946ed949d444849">std::numeric_limits&lt;U&gt;::max</a>());</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; }</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; <span class="keywordflow">if</span>(val &lt; static_cast&lt;T&gt;(std::numeric_limits&lt;U&gt;::lowest()))</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; {</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; val = <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(std::numeric_limits&lt;U&gt;::lowest());</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; }</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; <span class="keywordflow">return</span> val;</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail_xhtml_ad91bb73431b4de1f4946ed949d444849"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1fixed__point__arithmetic_1_1detail.xhtml#ad91bb73431b4de1f4946ed949d444849">arm_compute::test::fixed_point_arithmetic::detail::max</a></div><div class="ttdeci">fixed_point&lt; T &gt; max(fixed_point&lt; T &gt; x, fixed_point&lt; T &gt; y)</div><div class="ttdef"><b>Definition:</b> <a href="tests_2validation_2_fixed_point_8h_source.xhtml#l00880">FixedPoint.h:880</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="a670cba074b4be0bf9af03e48250bd616"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> arm_compute::test::shape_to_valid_region </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a>&#160;</td>
<td class="paramname"><em>shape</em></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>Create a valid region covering the enitre tensor shape. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">shape</td><td>Shape used as size of the valid region.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A valid region starting at (0, 0, ...) with size of <code>shape</code>. </dd></dl>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00452">452</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<p>References <a class="el" href="_dimensions_8h_source.xhtml#l00109">Dimensions&lt; T &gt;::num_dimensions()</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>.</p>
<p>Referenced by <a class="el" href="_validation_8cpp_source.xhtml#l00190">arm_compute::test::validation::validate()</a>.</p>
<div class="fragment"><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160;{</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; Coordinates anchor;</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; anchor.set(std::max&lt;int&gt;(0, shape.num_dimensions() - 1), 0);</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; <span class="keywordflow">return</span> ValidRegion(std::move(anchor), std::move(shape));</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a class="anchor" id="a6b97d7bba7b5cee833eb5c2282e8d246"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structarm__compute_1_1_valid_region.xhtml">ValidRegion</a> arm_compute::test::shape_to_valid_region_undefined_border </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classarm__compute_1_1_tensor_shape.xhtml">TensorShape</a>&#160;</td>
<td class="paramname"><em>shape</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structarm__compute_1_1_border_size.xhtml">BorderSize</a>&#160;</td>
<td class="paramname"><em>border_size</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</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>Create a valid region covering the tensor shape with UNDEFINED border mode and specified border size. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">shape</td><td>Shape used as size of the valid region. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">border_size</td><td>Border size used to specify the region to exclude.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A valid region starting at (<code>border_size.left</code>, <code>border_size.top</code>, ...) with reduced size of <code>shape</code>. </dd></dl>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00466">466</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<p>References <a class="el" href="_error_8h_source.xhtml#l00124">ARM_COMPUTE_ERROR_ON</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00197">BorderSize::bottom</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00198">BorderSize::left</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00109">Dimensions&lt; T &gt;::num_dimensions()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00196">BorderSize::right</a>, <a class="el" href="_tensor_shape_8h_source.xhtml#l00074">TensorShape::set()</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00074">Dimensions&lt; T &gt;::set()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00195">BorderSize::top</a>, <a class="el" href="_dimensions_8h_source.xhtml#l00081">Dimensions&lt; T &gt;::x()</a>, and <a class="el" href="_dimensions_8h_source.xhtml#l00086">Dimensions&lt; T &gt;::y()</a>.</p>
<p>Referenced by <a class="el" href="_tensor_operations_8h_source.xhtml#l00397">arm_compute::test::validation::tensor_operations::box3x3()</a>.</p>
<div class="fragment"><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;{</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(shape.num_dimensions() &lt; 2);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; Coordinates anchor;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; anchor.set(std::max&lt;int&gt;(0, shape.num_dimensions() - 1), 0);</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; anchor.set(0, border_size.left);</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; anchor.set(1, border_size.top);</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; shape.set(0, shape.x() - border_size.left - border_size.right);</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; shape.set(1, shape.y() - border_size.top - border_size.bottom);</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="keywordflow">return</span> ValidRegion(std::move(anchor), shape);</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00124">Error.h:124</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="a1e6934e95738573214c2ce1d6648d116"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void arm_compute::test::store_value_with_data_type </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>ptr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">T&#160;</td>
<td class="paramname"><em>value</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6">DataType</a>&#160;</td>
<td class="paramname"><em>data_type</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Write the value after casting the pointer according to <code>data_type</code>. </p>
<dl class="section warning"><dt>Warning</dt><dd>The type of the value must match the specified data type.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[out]</td><td class="paramname">ptr</td><td>Pointer to memory where the <code>value</code> will be written. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value that will be written. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">data_type</td><td>Data type that will be written. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="tests_2_utils_8h_source.xhtml#l00526">526</a> of file <a class="el" href="tests_2_utils_8h_source.xhtml">Utils.h</a>.</p>
<p>References <a class="el" href="_error_8h_source.xhtml#l00031">ARM_COMPUTE_ERROR</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a56d8353718e6fdc78b8d69078a2cdb94">arm_compute::F16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a44ad4ef5a76e6aa6fb3e3fa079a54fda">arm_compute::F32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a1ad5f6f3069070ec4cbbdc94d5e61e0e">arm_compute::F64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a11cde4d3551db3f9498d339a67189543">arm_compute::QS8</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6e0b0886efb94aec797f6b830329b72c">arm_compute::S16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aa1e28eee0339658d39a8b4d325b56e9c">arm_compute::S32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a115dca124dc6423c7a400b8a8a0270cc">arm_compute::S64</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6aafb0fced528eaac5fe170b763cda5975">arm_compute::S8</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6abd7ef6d4f35bc7d05c559b65032f15d1">arm_compute::SIZET</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58aef9ef3ebca4d2b64b6ec83808bafa5f2">arm_compute::U16</a>, <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58ac8bd5bedff8ef192d39a962afc0e19ee">arm_compute::U32</a>, <a class="el" href="namespacearm__compute.xhtml#ad8ed01ff3ff33333d8e19db4d2818bb6a31d65cccd6593e4101db93fb878abcaa">arm_compute::U64</a>, and <a class="el" href="namespacearm__compute.xhtml#ab4e88c89b3b7ea1735996cc4def22d58a6669348b484e3008dca2bfa8e85e40b5">arm_compute::U8</a>.</p>
<p>Referenced by <a class="el" href="_tensor_library_8h_source.xhtml#l00368">TensorLibrary::fill()</a>, and <a class="el" href="_tensor_library_8h_source.xhtml#l00621">TensorLibrary::fill_layer_data()</a>.</p>
<div class="fragment"><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160;{</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; <span class="keywordflow">switch</span>(data_type)</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; {</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; <span class="keywordflow">case</span> DataType::U8:</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; *<span class="keyword">reinterpret_cast&lt;</span>uint8_t *<span class="keyword">&gt;</span>(ptr) = value;</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; <span class="keywordflow">case</span> DataType::S8:</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; <span class="keywordflow">case</span> DataType::QS8:</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; *<span class="keyword">reinterpret_cast&lt;</span>int8_t *<span class="keyword">&gt;</span>(ptr) = value;</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <span class="keywordflow">case</span> DataType::U16:</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; *<span class="keyword">reinterpret_cast&lt;</span>uint16_t *<span class="keyword">&gt;</span>(ptr) = value;</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; <span class="keywordflow">case</span> DataType::S16:</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; *<span class="keyword">reinterpret_cast&lt;</span>int16_t *<span class="keyword">&gt;</span>(ptr) = value;</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <span class="keywordflow">case</span> DataType::U32:</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; *<span class="keyword">reinterpret_cast&lt;</span>uint32_t *<span class="keyword">&gt;</span>(ptr) = value;</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; <span class="keywordflow">case</span> DataType::S32:</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; *<span class="keyword">reinterpret_cast&lt;</span>int32_t *<span class="keyword">&gt;</span>(ptr) = value;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; <span class="keywordflow">case</span> DataType::U64:</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; *<span class="keyword">reinterpret_cast&lt;</span>uint64_t *<span class="keyword">&gt;</span>(ptr) = value;</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <span class="keywordflow">case</span> DataType::S64:</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; *<span class="keyword">reinterpret_cast&lt;</span>int64_t *<span class="keyword">&gt;</span>(ptr) = value;</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;<span class="preprocessor">#ifdef ENABLE_FP16</span></div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; <span class="keywordflow">case</span> DataType::F16:</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; *<span class="keyword">reinterpret_cast&lt;</span>float16_t *<span class="keyword">&gt;</span>(ptr) = value;</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* ENABLE_FP16 */</span><span class="preprocessor"></span></div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; <span class="keywordflow">case</span> DataType::F32:</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; *<span class="keyword">reinterpret_cast&lt;</span><span class="keywordtype">float</span> *<span class="keyword">&gt;</span>(ptr) = value;</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; <span class="keywordflow">case</span> DataType::F64:</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; *<span class="keyword">reinterpret_cast&lt;</span><span class="keywordtype">double</span> *<span class="keyword">&gt;</span>(ptr) = value;</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <span class="keywordflow">case</span> DataType::SIZET:</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; *<span class="keyword">reinterpret_cast&lt;</span><span class="keywordtype">size_t</span> *<span class="keyword">&gt;</span>(ptr) = value;</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; <a class="code" href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a>(<span class="stringliteral">&quot;NOT SUPPORTED!&quot;</span>);</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; }</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;}</div><div class="ttc" id="_error_8h_xhtml_a05b19c75afe9c24200a62b9724734bbd"><div class="ttname"><a href="_error_8h.xhtml#a05b19c75afe9c24200a62b9724734bbd">ARM_COMPUTE_ERROR</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR(...)</div><div class="ttdoc">Print the given message then throw an std::runtime_error. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00031">Error.h:31</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ac04d36ea1fb41a3dfd3afd4a89ef2470"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void arm_compute::test::swap </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classarm__compute_1_1test_1_1_raw_tensor.xhtml">RawTensor</a> &amp;&#160;</td>
<td class="paramname"><em>tensor1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classarm__compute_1_1test_1_1_raw_tensor.xhtml">RawTensor</a> &amp;&#160;</td>
<td class="paramname"><em>tensor2</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in,out]</td><td class="paramname">tensor1</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface. ">Tensor</a> to be swapped. </td></tr>
<tr><td class="paramdir">[in,out]</td><td class="paramname">tensor2</td><td><a class="el" href="classarm__compute_1_1_tensor.xhtml" title="Basic implementation of the tensor interface. ">Tensor</a> to be swapped. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="_raw_tensor_8cpp_source.xhtml#l00168">168</a> of file <a class="el" href="_raw_tensor_8cpp_source.xhtml">RawTensor.cpp</a>.</p>
<p>References <a class="el" href="_raw_tensor_8cpp_source.xhtml#l00168">RawTensor::swap</a>.</p>
<div class="fragment"><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;{</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="comment">// Use unqualified call to swap to enable ADL. But make std::swap available</span></div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="comment">// as backup.</span></div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keyword">using</span> <a class="code" href="namespacearm__compute_1_1test.xhtml#ac04d36ea1fb41a3dfd3afd4a89ef2470">std::swap</a>;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <a class="code" href="namespacearm__compute_1_1test.xhtml#ac04d36ea1fb41a3dfd3afd4a89ef2470">swap</a>(tensor1._shape, tensor2._shape);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <a class="code" href="namespacearm__compute_1_1test.xhtml#ac04d36ea1fb41a3dfd3afd4a89ef2470">swap</a>(tensor1._format, tensor2._format);</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <a class="code" href="namespacearm__compute_1_1test.xhtml#ac04d36ea1fb41a3dfd3afd4a89ef2470">swap</a>(tensor1._data_type, tensor2._data_type);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="namespacearm__compute_1_1test.xhtml#ac04d36ea1fb41a3dfd3afd4a89ef2470">swap</a>(tensor1._num_channels, tensor2._num_channels);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <a class="code" href="namespacearm__compute_1_1test.xhtml#ac04d36ea1fb41a3dfd3afd4a89ef2470">swap</a>(tensor1._buffer, tensor2._buffer);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_xhtml_ac04d36ea1fb41a3dfd3afd4a89ef2470"><div class="ttname"><a href="namespacearm__compute_1_1test.xhtml#ac04d36ea1fb41a3dfd3afd4a89ef2470">arm_compute::test::swap</a></div><div class="ttdeci">void swap(RawTensor &amp;tensor1, RawTensor &amp;tensor2)</div><div class="ttdef"><b>Definition:</b> <a href="_raw_tensor_8cpp_source.xhtml#l00168">RawTensor.cpp:168</a></div></div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a class="anchor" id="a4ced6442a379a75e8a6c4be093fb666b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::unique_ptr&lt; <a class="el" href="classarm__compute_1_1test_1_1_tensor_library.xhtml">TensorLibrary</a> &gt; library</td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="benchmark_2main_8cpp_source.xhtml#l00050">50</a> of file <a class="el" href="benchmark_2main_8cpp_source.xhtml">main.cpp</a>.</p>
<p>Referenced by <a class="el" href="_reference_8cpp_source.xhtml#l00056">Reference::compute_reference_absolute_difference()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00073">Reference::compute_reference_accumulate()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00089">Reference::compute_reference_accumulate_squared()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00106">Reference::compute_reference_accumulate_weighted()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00331">Reference::compute_reference_activation_layer()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00122">Reference::compute_reference_arithmetic_addition()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00139">Reference::compute_reference_arithmetic_subtraction()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00361">Reference::compute_reference_batch_normalization_layer()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00156">Reference::compute_reference_bitwise_and()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00207">Reference::compute_reference_bitwise_not()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00173">Reference::compute_reference_bitwise_or()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00190">Reference::compute_reference_bitwise_xor()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00222">Reference::compute_reference_box3x3()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00405">Reference::compute_reference_convolution_layer()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00237">Reference::compute_reference_depth_convert()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00555">Reference::compute_reference_fixed_point_operation()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00298">Reference::compute_reference_fixed_point_pixel_wise_multiplication()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00435">Reference::compute_reference_fully_connected_layer()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00251">Reference::compute_reference_gemm()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00042">Reference::compute_reference_integral_image()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00475">Reference::compute_reference_normalization_layer()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00280">Reference::compute_reference_pixel_wise_multiplication()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00499">Reference::compute_reference_pooling_layer()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00530">Reference::compute_reference_softmax_layer()</a>, <a class="el" href="_reference_8cpp_source.xhtml#l00316">Reference::compute_reference_threshold()</a>, <a class="el" href="_c_l_2_helper_8h_source.xhtml#l00062">arm_compute::test::cl::create_tensor()</a>, <a class="el" href="_n_e_o_n_2_helper_8h_source.xhtml#l00063">arm_compute::test::neon::create_tensor()</a>, <a class="el" href="model__objects_2_le_net5_8h_source.xhtml#l00135">LeNet5&lt; TensorType, Accessor, ActivationLayerFunction, ConvolutionLayerFunction, FullyConnectedLayerFunction, PoolingLayerFunction, SoftmaxLayerFunction &gt;::fill_random()</a>, <a class="el" href="model__objects_2_alex_net_8h_source.xhtml#l00338">AlexNet&lt; ITensorType, TensorType, SubTensorType, Accessor, ActivationLayerFunction, ConvolutionLayerFunction, FullyConnectedLayerFunction, NormalizationLayerFunction, PoolingLayerFunction, SoftmaxLayerFunction, dt &gt;::fill_random()</a>, <a class="el" href="benchmark_2main_8cpp_source.xhtml#l00054">main()</a>, <a class="el" href="_activation_layer_8h_source.xhtml#l00047">ActivationLayer&lt; DataSet, TensorType, Accessor, Function, dt &gt;::SetUp()</a>, <a class="el" href="_convolution_layer_8h_source.xhtml#l00047">ConvolutionLayer&lt; DataSet, TensorType, Accessor, Function, dt &gt;::SetUp()</a>, <a class="el" href="_pooling_layer_8h_source.xhtml#l00047">PoolingLayer&lt; DataSet, TensorType, Accessor, Function, dt &gt;::SetUp()</a>, <a class="el" href="_normalization_layer_8h_source.xhtml#l00048">NormalizationLayer&lt; DataSet, TensorType, Accessor, Function, dt &gt;::SetUp()</a>, and <a class="el" href="_fully_connected_layer_8h_source.xhtml#l00048">FullyConnectedLayer&lt; DataSet, TensorType, Accessor, Function, dt &gt;::SetUp()</a>.</p>
</div>
</div>
<a class="anchor" id="a8f4fc4a0603d589eb1db7a8f539a6279"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacearm__compute_1_1test_1_1validation.xhtml#a1042f1d7928dbde7edd7791e5b3a171b">validation::ValidationUserConfiguration</a> user_config</td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="benchmark_2main_8cpp_source.xhtml#l00049">49</a> of file <a class="el" href="benchmark_2main_8cpp_source.xhtml">main.cpp</a>.</p>
<p>Referenced by <a class="el" href="validation_2main_8cpp_source.xhtml#l00071">init_unit_test()</a>, and <a class="el" href="benchmark_2main_8cpp_source.xhtml#l00054">main()</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="namespacearm__compute.xhtml">arm_compute</a></li><li class="navelem"><a class="el" href="namespacearm__compute_1_1test.xhtml">test</a></li>
<li class="footer">Generated on Fri Jun 23 2017 15:44:35 for Compute Library by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
</ul>
</div>
</body>
</html>